
Grammar extracted by Vadim Zaytsev, see the Grammar Zoo entry for details: toy/fl/abstract/java/om/extracted
Source used for this grammar: Ralf Lämmel, ..., Program.java, Function.java, 17 May – 28 July 2008 [GitHub]
Apply, Argument, Binary, Expr, Function, IfThenElse, Literal, Ops, Program, Visitor), 0 root (—), 2 top (Program, Visitor), 0 bottom (—).[name] 3, [args] 2, [ops], [left], [right], [rhs], [ifExpr], [thenExpr], [elseExpr], [info], [Equal], [Plus], [Minus], [functions].Apply ::=
[name]::string [args]::ExprArgument ::= [name]::string
Binary ::= [ops]::Ops [left]::Expr [right]::Expr
Expr ::= Apply Argument Binary IfThenElse Literal
Function ::=
[name]::string [args]::string [rhs]::ExprIfThenElse ::= [ifExpr]::Expr [thenExpr]::Expr [elseExpr]::Expr
Literal ::= [info]::integer
Ops ::= [Equal]::ε [Plus]::ε [Minus]::ε
Program ::=
[functions]::FunctionVisitor ::= φ