Diesen Modul bietet Funktionen zur Verwaltung der Beweise (Lösungen). Dazu gehört die
Speicherung auf der Festplatte, wowie das Laden von Beweisen und Überblickslisten.
In dem Problem-Verzeichnis wird zu jeder Instanz eine Datei angelegt Names:
xxxx_beweise.list
. Darin stehen zeilenweise Records vom Typ
Beweis
.
Zu jedem Beweis gibt es eine Datei XXXX_YYYY.beweis
,
wobei XXXX für Instanznummer und YYYY für Beweisnummer steht, in der der Beweis als Haskellstruktur abgespeichert ist.
Die Datenstruktur für einen Beweis:
data Beweis = Beweis
{ instanz :: Ident
, ident :: Int
, korrekt :: Bool
, autor :: String
, kommentar :: String
, datum :: CalendarTime
} deriving (Show,Read)
Das Interface:
- speichere: Speichert einen Beweis
- lade: Lädt einen Beweis
- ladeAlle: Lädt alle Beweise zu einer Instanz
- getAlle: Lädt die Liste der Beweise zu einer Instanz
- getAlleNachString: Lädt die Liste der Beweise zu einer Instanz, aber mit String als Problem.
- nurKorrekte: Filtert die Liste der Bewiese auf korrekte Beweise.
Johannes Waldmann
2009-11-17