This shows you the differences between two versions of the page.
cpl-atm:laboratoare:laborator5.1 [2013/11/15 13:53] laura.vasilescu |
cpl-atm:laboratoare:laborator5.1 [2013/11/15 13:58] (current) laura.vasilescu |
||
---|---|---|---|
Line 28: | Line 28: | ||
Prelucrați arborele AST și realizați adnotări de calcule intermediare pentru a evalua expresia. | Prelucrați arborele AST și realizați adnotări de calcule intermediare pentru a evalua expresia. | ||
+ | |||
+ | <note> | ||
+ | <code> | ||
+ | var file=require('./jison.js').parser; | ||
+ | var tree=file.parse("1+3+4"); | ||
+ | console.log(JSON.stringify(tree,null, 4)); | ||
+ | </code> | ||
+ | </note> | ||
+ | |||
Pentru expresia ''1+3'' ar trebui să arate de forma: | Pentru expresia ''1+3'' ar trebui să arate de forma: | ||
<code> | <code> | ||
Line 53: | Line 62: | ||
null | null | ||
], | ], | ||
- | "a": 1, | + | "valoare": 3 |
- | "b": 3, | + | |
- | "valoare": 4 | + | |
} | } | ||
], | ], | ||
- | "a": 1, | ||
"valoare": 4 | "valoare": 4 | ||
} | } | ||
Line 66: | Line 72: | ||
<code> | <code> | ||
{ | { | ||
- | "r": "e", | + | "r": "expresie", |
"l": [ | "l": [ | ||
{ | { | ||
- | "r": "n", | + | "r": "numar", |
"l": [ | "l": [ | ||
"1" | "1" | ||
], | ], | ||
- | "val": 1 | + | "valoare": 1 |
}, | }, | ||
{ | { | ||
- | "r": "t", | + | "r": "termen", |
"l": [ | "l": [ | ||
"+", | "+", | ||
{ | { | ||
- | "r": "n", | + | "r": "numar", |
"l": [ | "l": [ | ||
"3" | "3" | ||
], | ], | ||
- | "val": 3 | + | "valoare": 3 |
}, | }, | ||
{ | { | ||
- | "r": "t", | + | "r": "termen", |
"l": [ | "l": [ | ||
"+", | "+", | ||
{ | { | ||
- | "r": "n", | + | "r": "numar", |
"l": [ | "l": [ | ||
"4" | "4" | ||
], | ], | ||
- | "val": 4 | + | "valoare": 4 |
}, | }, | ||
null | null | ||
], | ], | ||
- | "a": 4, | + | "valoare": 4 |
- | "b": 4, | + | |
- | "val": 8 | + | |
} | } | ||
], | ], | ||
- | "a": 1, | + | "valoare": 7 |
- | "b": 3, | + | |
- | "val": 8 | + | |
} | } | ||
], | ], | ||
- | "a": 1, | + | "valoare": 8 |
- | "val": 8 | + | |
} | } | ||
</code> | </code> |