29 lines
707 B
Markdown
29 lines
707 B
Markdown
# NEK-Lang
|
|
|
|
## High level Components
|
|
|
|
- [x] Lexer: Transforms text into Tokens
|
|
- [x] Parser: Transforms Tokens into Abstract Syntax Tree
|
|
- [x] Interpreter (tree-walk-interpreter): Walks the tree and evaluates the expressions / statements
|
|
- [ ] Abstract Syntax Tree Optimizer
|
|
|
|
## Language features
|
|
|
|
- [x] Math expressions
|
|
- [x] Unary operators
|
|
- [x] Negate `-X`
|
|
- [x] Parentheses `(X+Y)*Z`
|
|
- [x] Logical boolean operators
|
|
- [x] Variables
|
|
- [x] Declaration
|
|
- [x] Assignment
|
|
- [ ] While loop `while X { ... }`
|
|
- [ ] If else statement `if X { ... } else { ... }`
|
|
- [ ] If Statement
|
|
- [ ] Else statement
|
|
- [ ] Line comments `//`
|
|
- [ ] Strings
|
|
- [ ] IO Intrinsics
|
|
- [ ] Print
|
|
- [ ] ReadLine
|