Benutzer:Grey/pss: Unterschied zwischen den Versionen
(→EBNF) |
|||
| Zeile 3: | Zeile 3: | ||
== EBNF == | == EBNF == | ||
| + | Gegeben ist folgende EBNF Syntax von microOPAL: | ||
| − | Prog -> Def Def * # | + | Prog -> Def Def * # |
| + | Def -> DEF Lhs == Expr | ||
| + | Lhs -> MAIN : Type | id ( [id : Type (, id : Type)*]) : Type | ||
| + | Type -> nat | bool | ||
| + | Expr -> number | true | false | id [ ( [Expr (, Expr)*] ) ] | IF Expr THEN Expr [ELSE Expr] FI | ||
| − | + | == BNF == | |
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
Version vom 21. November 2005, 22:47 Uhr
Milstone 1
- EBNF in BNF Grammatik umwandeln:
EBNF
Gegeben ist folgende EBNF Syntax von microOPAL:
Prog -> Def Def * # Def -> DEF Lhs == Expr Lhs -> MAIN : Type | id ( [id : Type (, id : Type)*]) : Type Type -> nat | bool Expr -> number | true | false | id [ ( [Expr (, Expr)*] ) ] | IF Expr THEN Expr [ELSE Expr] FI