DEFINITION Datum; (* Basistyp Tag ist einfach LONGINT, bezogen auf 1.1.1901 *) PROCEDURE Unpack* (date:LONGINT;VAR jahr, monat, tag : INTEGER); (* internes Datum in Tage zerlegen *) PROCEDURE Pack* (jahr, monat, tag : INTEGER; VAR date: LONGINT); (* internes Datum in Tage zerlegen *) PROCEDURE Wochentag* (date:LONGINT):INTEGER; (* Wochentag bestimmen 0: Montag, 1: Dienstag, ... *) PROCEDURE ToString* (date: LONGINT; format: ARRAY OF CHAR; VAR s: ARRAY OF CHAR); (* Preliminary version, no interpretation of format*) END Datum.