Last change
on this file since 3799 was
3799,
checked in by orlov, 13 years ago
|
- Refal AST for LFC (not finished yet).
|
-
Property svn:keywords set to
Author Date Id Revision
|
File size:
665 bytes
|
Line | |
---|
1 | /* $Id: lfc.ast 3799 2008-06-02 17:32:55Z orlov $ */ |
---|
2 | |
---|
3 | e.program ::= t.func_def e.func_defs |
---|
4 | |
---|
5 | e.func_defs ::= /*empty*/ | t.func_def e.func_defs |
---|
6 | |
---|
7 | t.func_def ::= (FUNC t.name (e.func_type) (e.var_decls) t.sentence e.sentences) |
---|
8 | |
---|
9 | e.func_type ::= t.type e.types t.type |
---|
10 | |
---|
11 | e.tpyes ::= /*empty*/ | t.type e.types |
---|
12 | |
---|
13 | e.var_decls ::= /*empty*/ | (t.var e.vars t.type) e.var_decls |
---|
14 | |
---|
15 | e.vars ::= /*empty*/ | t.var e.vars |
---|
16 | |
---|
17 | e.sentences ::= /*empty*/ | t.sentence e.sentences |
---|
18 | |
---|
19 | t.sentence ::= (SENTENCE t.name (t.pattern e.patterns) t.term e.exp) |
---|
20 | |
---|
21 | e.patterns ::= /*empty*/ | t.pattern e.patterns |
---|
22 | |
---|
23 | e.exp ::= /*empty*/ | t.term e.exp |
---|
24 | |
---|
25 | t.type ::= (TYPE t.name) |
---|
26 | |
---|
27 | t.var ::= (VAR t.name) |
---|
28 | |
---|
29 | t.name ::= ([characters]) |
---|
30 | |
---|
31 | (e.patterns) e.exp |
---|
Note: See
TracBrowser
for help on using the repository browser.