# 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 - [x] While loop `while X { ... }` - [ ] If else statement `if X { ... } else { ... }` - [ ] If Statement - [ ] Else statement - [ ] Line comments `//` - [ ] Strings - [ ] IO Intrinsics - [ ] Print - [ ] ReadLine