Update README

This commit is contained in:
Daniel M 2022-02-02 16:48:26 +01:00
parent 771a858da3
commit 308bc5b34e

View File

@ -5,7 +5,6 @@
- [x] Lexer: Transforms text into Tokens - [x] Lexer: Transforms text into Tokens
- [x] Parser: Transforms Tokens into Abstract Syntax Tree - [x] Parser: Transforms Tokens into Abstract Syntax Tree
- [x] Interpreter (tree-walk-interpreter): Walks the tree and evaluates the expressions / statements - [x] Interpreter (tree-walk-interpreter): Walks the tree and evaluates the expressions / statements
- [ ] Abstract Syntax Tree Optimizer
## Language features ## Language features
@ -37,16 +36,16 @@
- [x] Declaration - [x] Declaration
- [x] Assignment - [x] Assignment
- [x] Statements with semicolon & Multiline programs - [x] Statements with semicolon & Multiline programs
- [ ] Control flow - [x] Control flow
- [x] While loop `while X { ... }` - [x] While loop `while X { ... }`
- [ ] If else statement `if X { ... } else { ... }` - [x] If else statement `if X { ... } else { ... }`
- [ ] If Statement - [x] If Statement
- [ ] Else statement - [x] Else statement
- [x] Line comments `//` - [x] Line comments `//`
- [ ] Strings - [ ] Strings
- [ ] IO Intrinsics - [ ] IO Intrinsics
- [x] Print - [x] Print
- [ ] ReadLine - [ ] ReadInt
## Grammar ## Grammar
@ -66,6 +65,7 @@ expr = expr_bor
### Statements ### Statements
``` ```
stmt_if = "if" expr "{" stmt* "}" ("else" "{" stmt* "}")?
stmt_loop = "loop" expr (";" expr)? "{" stmt* "}" stmt_loop = "loop" expr (";" expr)? "{" stmt* "}"
stmt_expr = expr ";" stmt_expr = expr ";"
stmt = stmt_expr | stmt_loop stmt = stmt_expr | stmt_loop