-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathgit
More file actions
26 lines (19 loc) · 1.32 KB
/
git
File metadata and controls
26 lines (19 loc) · 1.32 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
This is a big commit:
Removed TERMINAL_OP and RESERVED. Replaced with dedicated ASTNode;
Added new ASTNode StatementExpression to support blocks;
Added ast_print_node_lite (without all the baggage of ast_print_node);
Added verbose flag;
Modified reduction function to support StatementExpression, and the rest of the rules that used expressions are translated to this new ASTNode;
BIG:: Added a reduction rule for block statements (Note: this is still kind of ugly but it works)
Finally I padded the values of the token types
END
... I was leaking A LOT of memory with regex. Now all the regex is compiled at the beginning and reused, rather than recompiling over and over again. Much better
Apr 10 9AM
- support for stack operators within expressions
Apr 10 7PM
- Parser: Refactored the function names for converting stringviews to a given datatype (i.e. convert_hex_sv_to_int...) (in convert.h/c)
- Interpreter: Started implementing some builtin function calls such as 'print', 'println' and 'input'
- Interpreter: Implemented '.' stack operator
Apr 13 6PM
- Added support for stack operators to be able to be repeated within a single token. This will allow for peeking more than just the top of the stack. It could allow for peeking 3 items past the top of the stack if needed.
- This support in the interpretter is not present just yet