change printing
[lambda.git] / grammar.txt
1 program := term ';' program
2 | declaration ';' program
3 declaration := func strictident+ '=' term ';'
4 term := appterm term
5 | appterm
6 appterm := func
7 | ident
8 | '\' strictident+ '.' term
9 | '(' term ')'
10 strictident := '!'? ident
11 func := 'A' | 'B' | ... | 'Z'
12 ident := 'a' | 'b' | ... | 'z'