|
|
## Stufenbeschreibung (ENTWURF)
|
|
|
|
|
|
**Stufe 1:**
|
|
|
+ Hiding von Prelude Standardfunktionen (z.B.: map, reverse, list, etc.)
|
|
|
+ Hiding von Prelude Standardfunktionen (z.B.: map, reverse, list, >=, >> etc.)
|
|
|
+ Imports verbieten
|
|
|
+ Module verbieten
|
|
|
+ Higher-Order-Funktionen ausschließen
|
|
|
+ Higher-Order-Funktionen verbieten
|
|
|
+ Eigene Datentypen verbieten
|
|
|
+ Typsignaturen erzwingen
|
|
|
+ check-expect erzwingen
|
|
|
+ do Notation verbieten
|
|
|
|
|
|
**Stufe 2:**
|
|
|
- Hiding einige Predudefunktionen aufheben (z.B.: list)
|
|
|
+ Showinstanzen für Datentypen
|
|
|
- Eigene Datentypen erlauben
|
|
|
+ Typvariablen verbieten
|
|
|
+ Showinstanzen für Datentypen generieren
|
|
|
|
|
|
**Stufe 3:**
|
|
|
- Preludehiding deaktivieren
|
|
|
- Imports erlauben
|
|
|
- Typvariablen erlauben
|
|
|
- Higher-Order-Funktionen erlauben
|
|
|
- Showinstanzen für Datentypen nicht mehr generieren
|
|
|
- check-expect in quick check überführen
|
|
|
|
|
|
**Stufe 4 (Standardhaskell):**
|
|
|
- Module aktivieren
|
|
|
|
|
|
|
|
|
Sinnvolle Fehlermeldungen für:
|
|
|
## Sinnvolle Fehlermeldungen
|
|
|
- Erkennen von Funktionen die mit Großbuchstaben anfangen
|
|
|
- Erkennen wenn der Datentypname vor der Typkonstruktor verwendet wird
|
|
|
- Vergessene (oder zu viel gesetzte) Klammern bei z.B.: Pattern Matching |
|
|
\ No newline at end of file |
|
|
- Vergessene (oder zu viel gesetzte) Klammern bei z.B.: Pattern Matching
|
|
|
|
|
|
## Diskussionthemen
|
|
|
- CheckExpect Syntax (wie sollen die Aufrufe im Programm untergebracht werden? Langer Kommentar? Kurzer Kommentar? Eigene Syntax?)
|
|
|
- Code Coverage aus hpc oder ähnlichem mit aufnehmen
|
|
|
- Arbitrary Instanzen für primitive Datentypen, Listen, Bäume (einfach) und Tupel generieren
|
|
|
- chocolate cookies einführen?
|
|
|
- Record Syntax? |
|
|
\ No newline at end of file |