Differences
This shows you the differences between two versions of the page.
| Both sides previous revision Previous revision | |||
|
lfa:proiect:etapa3 [2021/12/23 00:49] stefan.stancu [Etapa 3 - Lexer complet si Limbajul Imperative] |
lfa:proiect:etapa3 [2021/12/29 02:02] (current) stefan.stancu [Input] |
||
|---|---|---|---|
| Line 82: | Line 82: | ||
| Folosind lexer-ul scris de voi, implementati un parser simplu pentru limbajul **Imperative** descris mai jos. | Folosind lexer-ul scris de voi, implementati un parser simplu pentru limbajul **Imperative** descris mai jos. | ||
| Folositi aceeasi abordare ca in implementarea parserului pentru expresii regulate. | Folositi aceeasi abordare ca in implementarea parserului pentru expresii regulate. | ||
| - | }==== Input ==== | + | } |
| + | ==== Input ==== | ||
| Input-ul va fi un program a carui descriere sintactica se regaseste mai jos (**//Limbajul Imperative//**): | Input-ul va fi un program a carui descriere sintactica se regaseste mai jos (**//Limbajul Imperative//**): | ||
| Line 93: | Line 94: | ||
| <instruction_list> ::= <prog> | <prog> '\n' <instruction_list> | <instruction_list> ::= <prog> | <prog> '\n' <instruction_list> | ||
| - | <expr> ::= <expr> '+' <expr> | <expr> '>' <expr> | <expr> '==' <expr> | <variable> | <integer> | + | <expr> ::= <expr> '+' <expr> | <expr> '-' <expr> | <expr> '*' <expr> | <expr> '>' <expr> | <expr> '==' <expr> | <variable> | <integer> |
| </code> | </code> | ||