|
Expr3.om |
MODULE Expr3; IMPORT Args := UnixArguments, ASCII, Streams, Write; TYPE Attribute = INTEGER; VAR expr: Streams.Stream; at: Attribute; PROCEDURE Parse(s: Streams.Stream; VAR at: Attribute) : BOOLEAN; (* parse input and return TRUE in case of success *) END Parse; BEGIN Args.Init("expression"); Args.Fetch(expr); IF Parse(expr, at) THEN Write.Int(at, 1); Write.Ln; ELSE Write.Line("Not an expression!"); END; Args.AllArgs; END Expr3. |
Parse und alle die Nonterminals repräsentierenden
Prozeduren wurden um den VAR-Parameter at vom Typ
Attribute erweitert.
| |
Da bei einem Taschenrechner nur die Ergebnisse interessant
sind, kommen wir mit Attribute = INTEGER aus.
|
Copyright © 1999 Andreas Borchert, in HTML konvertiert am 29.06.1999 |