brainterpreter
-
v0.1.0
Published by dimasmith over 1 year ago
Initial implementation of the Brainterpreter to show on the TechIn talk.
Features
-
(tracing) trace after instruction - (3f71716) - Dmytro Kovalchuk
- reduce memory footprint of the example - (5f7a9f7) - Dmytro Kovalchuk
- run brainfuck interpreter - (50ae03b) - Dmytro Kovalchuk
- support arrays - (cc8097b) - Dmytro Kovalchuk
- convert to string - (5afce2a) - Dmytro Kovalchuk
- base support of native functions - (8b0e0a0) - Dmytro Kovalchuk
- write string character by index - (38ea9a1) - Dmytro Kovalchuk
- support function arguments - (cf00b75) - Dmytro Kovalchuk
- access characters in array-like manner - (cb6bbcf) - Dmytro Kovalchuk
- initial support of strings - (0812588) - Dmytro Kovalchuk
- return values from functions - (27a953b) - Dmytro Kovalchuk
- call global functions - (5cc18d6) - Dmytro Kovalchuk
- declare global functions - (67c4c6b) - Dmytro Kovalchuk
- support while loops - (7c29572) - Dmytro Kovalchuk
- support if-else statements - (6993b73) - Dmytro Kovalchuk
- support simple if statements - (75863d4) - Dmytro Kovalchuk
- initialize local variables from upper scopes with shadowing - (c6a9e60) - Dmytro Kovalchuk
- add compilation errors - (b1c7986) - Dmytro Kovalchuk
- support local variables - (04f0b0e) - Dmytro Kovalchuk
- support unary negation and boolean literals - (daae2b1) - Dmytro Kovalchuk
- support comparisons - (c3b01fb) - Dmytro Kovalchuk
- initialize and read global variables - (af334f8) - Dmytro Kovalchuk
- declare global variables - (836543e) - Dmytro Kovalchuk
- compile multiple statements - (4e60d5a) - Dmytro Kovalchuk
- support print statements - (04d8c95) - Dmytro Kovalchuk
- support comment - (f42a95f) - Dmytro Kovalchuk
- track source positions in lexer and parser - (739ac6d) - Dmytro Kovalchuk
- add interpreter binary - (43ed692) - Dmytro Kovalchuk
- add floating point number literals - (b3c6a74) - Dmytro Kovalchuk
- group expressions using parentheses - (7c7aa57) - Dmytro Kovalchuk
- implement unary minus - (30bf787) - Dmytro Kovalchuk
- implement multiplication and division - (4031555) - Dmytro Kovalchuk
- parse operations of the same binding power - (e1a07a1) - Dmytro Kovalchuk
- temporarily add
ret
instruction to expressions - (ac4312f) - Dmytro Kovalchuk
- parse addition operation - (42fdb3a) - Dmytro Kovalchuk
- compile simple arithmetic expression - (adf6a39) - Dmytro Kovalchuk
- start lexer implementation - (662ee80) - Dmytro Kovalchuk
- print last stack value on return - (e169c19) - Dmytro Kovalchuk
- trace program execution - (bd9a6b1) - Dmytro Kovalchuk
- add error reporting - (323eaf8) - Dmytro Kovalchuk