|
|
de0bbb8171
|
Implement logical and / or
|
2022-02-02 18:56:45 +01:00 |
|
|
|
92f59cbf9a
|
Update README
|
2022-02-02 16:48:26 +01:00 |
|
|
|
dd9ca660cc
|
Move ast into separate file
|
2022-02-02 16:43:14 +01:00 |
|
|
|
7e2ef49481
|
Move token into separate file
|
2022-02-02 16:40:05 +01:00 |
|
|
|
86130984e2
|
Add example programs (project euler)
|
2022-02-02 16:26:37 +01:00 |
|
|
|
c4b146c325
|
Refactor interpreter to use borrowed Ast
- Should have been like this from the start
- About 9x performance increase
|
2022-02-02 16:24:42 +01:00 |
|
|
|
7b6fc89fb7
|
Implement if
|
2022-02-02 16:19:46 +01:00 |
|
|
|
8c9756b6d2
|
Implement print keyword
|
2022-02-02 14:05:58 +01:00 |
|
|
|
02993142df
|
Update README
|
2022-01-31 23:49:22 +01:00 |
|
|
|
3348b7cf6d
|
Implement loop keyword
- Loop is a combination of `while` and `for`
- `loop cond { }` acts exactly like `while`
- `loop cond; advance { }` acts like `for` without init
|
2022-01-31 16:58:46 +01:00 |
|
|
|
3098dc7e0a
|
Implement simple CLI
- Implement running files
- Implement interactive mode
- Enable printing tokens & ast with flags
|
2022-01-31 16:24:25 +01:00 |
|
|
|
e0c00019ff
|
Implement line comments
|
2022-01-29 23:29:09 +01:00 |
|
|
|
35fbae8ab9
|
Implement multi statement code
- Add statements
- Add mandatory semicolons after statements
|
2022-01-29 23:18:15 +01:00 |
|
|
|
23d336d63e
|
Implement variables
- Assignment
- Declaration
- Identifier lexing
|
2022-01-29 22:49:15 +01:00 |
|
|
|
39351e1131
|
Slightly refactor lexer
|
2022-01-29 21:59:48 +01:00 |
|
|
|
b7872da3ea
|
Move grammar def. to README
|
2022-01-29 21:54:05 +01:00 |
|
|
|
5cc89b855a
|
Update grammar
|
2022-01-29 21:52:31 +01:00 |
|
|
|
32e4f1ea4f
|
Implement relational binops
|
2022-01-29 21:48:55 +01:00 |
|
|
|
b664297c73
|
Implement comparison binops
|
2022-01-29 21:37:44 +01:00 |
|
|
|
ea60f17647
|
Implement bitwise not
|
2022-01-29 21:26:14 +01:00 |
|
|
|
5ffa0ea2ec
|
Update README
|
2022-01-29 21:18:08 +01:00 |
|
|
|
2a59fe8c84
|
Implement unary negate
|
2022-01-29 21:12:01 +01:00 |
|
|
|
8f79440219
|
Update README
|
2022-01-29 20:52:30 +01:00 |
|
|
|
128b05b8a8
|
Implement parenthesis grouping
|
2022-01-29 20:51:55 +01:00 |
|
|
|
a9ee8eb66c
|
Update grammar definition
|
2022-01-28 14:00:51 +01:00 |
|
|
|
5c7b6a7b41
|
Update README
|
2022-01-28 12:20:59 +01:00 |
|
|
|
a569781691
|
Implement more operators
- Mod
- Bitwise Or
- Bitwise And
- Bitwise Xor
- Shift Left
- Shift Right
|
2022-01-27 23:15:16 +01:00 |
|
|
|
0b75c30784
|
Implement div & sub
|
2022-01-27 22:29:06 +01:00 |
|
|
|
ed2ae144dd
|
Number separator _
|
2022-01-27 21:38:58 +01:00 |
|
|
|
7a69efc240
|
Add test for interpreter
|
2022-01-02 22:02:31 +01:00 |
|
|
|
39dd5e81f2
|
Start implementing interpreter
- Implemented tree-walk-interpreter for expressions only
- Binops Add, Mul
- Value Types I64
|
2022-01-02 21:58:10 +01:00 |
|
|
|
ef4dee98dc
|
Add test for parser
|
2022-01-02 21:28:36 +01:00 |
|
|
|
541d905551
|
Start implementing Parser
- Implemented pratt parser for expressions
- Implemented BinOps Add, Mul
|
2022-01-02 21:03:14 +01:00 |
|
|
|
02f63ad9ad
|
Add test for lexer
|
2022-01-02 18:49:18 +01:00 |
|
|
|
01729beb5f
|
Start implementing lexer
|
2022-01-02 18:44:05 +01:00 |
|
|
|
41348cf4c2
|
Initial commit
|
2022-01-02 18:43:30 +01:00 |
|