2024-04-24 12:08:32 +00:00
|
|
|
# CompilerNichtHaskell
|
2024-04-24 12:35:09 +00:00
|
|
|
|
2024-06-25 15:26:56 +00:00
|
|
|
## Teamrollen
|
|
|
|
|
2024-04-24 12:35:09 +00:00
|
|
|
- Scanner & Parser: Julian Kraus und Laurenz Schleicher
|
|
|
|
- Semantische Analyse: Juha Ahmad
|
|
|
|
- Code-Generierung: Simon Wittmann
|
|
|
|
- Testen: Jonathan Fleischmann
|
2024-06-22 15:20:18 +00:00
|
|
|
|
2024-06-25 15:47:40 +00:00
|
|
|
## Erbrachte Leistungen
|
|
|
|
- Laura Schleicher: Grammatik entwickeln, Records, Statements als Liste zurückgeben, Generator, Syntactic Sugar auflösen
|
2024-06-23 16:35:57 +00:00
|
|
|
- Julian Kraus: Grammatik entwickeln, Generator, Syntactic Sugar auflösen
|
|
|
|
- Ahmad Juha: Typcheck
|
|
|
|
- Simon Wittmann: Codegen und Tool für ASM
|
|
|
|
- Jonathan Fleischmann: Tests
|
|
|
|
|
2024-06-25 15:26:56 +00:00
|
|
|
## Fehlende Tests für Features (positive Tests)
|
|
|
|
|
2024-06-23 12:05:22 +00:00
|
|
|
- Main-Methode
|
2024-06-25 15:26:56 +00:00
|
|
|
- Klammern von Expressions
|
|
|
|
|
|
|
|
## Besonderheiten unserer Implementierung
|
|
|
|
|
2024-06-25 15:47:40 +00:00
|
|
|
- Zugriff auf Felder nur über `this`-Referenz möglich
|
2024-06-25 15:26:56 +00:00
|
|
|
- `print()`statt `System.out.println()`
|
2024-06-25 15:47:40 +00:00
|
|
|
- keine Accessmodifier/alles ist public
|
2024-06-28 20:57:43 +00:00
|
|
|
- logische Statements MÜSSEN geklammert werden, ansonsten wird ununterbrochen von links nach rechts berechnet
|
|
|
|
(so würde z.B. (true || false == false) false zurückgeben)
|
|
|
|
- i++ und i-- sind nicht erlaubt, stattdessen i = i + 1 und i = i - 1 bzw i += 1 und i -= 1
|