|
|
cad6c06607
|
Add JIT library & basic jit interface (not implemented yet)
|
2025-12-18 18:57:55 +03:00 |
|
|
|
d64b6db229
|
Remove interpreter <- parser dependency
|
2025-12-18 17:13:00 +03:00 |
|
|
|
9826961c76
|
Fix unhandled cases of casting to array & function types
|
2025-12-18 17:03:59 +03:00 |
|
|
|
2f5ad00b6d
|
Add char literals
|
2025-12-18 16:39:01 +03:00 |
|
|
|
f22cd63a2a
|
Print function types simpler when they have only 1 argument
|
2025-12-18 16:31:02 +03:00 |
|
|
|
af815e215a
|
Add support for function values & calling non-identifier functions
|
2025-12-18 16:14:51 +03:00 |
|
|
|
61f1a9c079
|
Add support for function types
|
2025-12-18 15:37:38 +03:00 |
|
|
|
53d4e12a09
|
Functions can be any expressions and not just identifiers in function calls (AST only, not implemented in interpreter yet)
|
2025-12-18 14:37:06 +03:00 |
|
|
|
4867c970d8
|
Simplify bison grammar to use precedence rules
|
2025-12-18 13:54:43 +03:00 |
|
|
|
1e6f601f00
|
Remove unused C error reporting code from bison grammar
|
2025-12-18 13:47:54 +03:00 |
|
|
|
16680ad801
|
Add source location to all AST nodes
|
2025-12-18 13:07:42 +03:00 |
|
|
|
6a3835951f
|
Make sure parsed filenames live as long as the AST
|
2025-12-18 12:49:53 +03:00 |
|
|
|
6aaa58f518
|
Refactor interpreter: parse all files before executing them & improve error reporting
|
2025-12-18 11:44:28 +03:00 |
|
|
|
39de1cd73c
|
Switch to a custom source location type
|
2025-12-18 01:11:45 +03:00 |
|
|
|
56c8214f36
|
Don't allow recursive structs
|
2025-12-18 00:54:16 +03:00 |
|
|
|
ddf6d55c54
|
Make sure structs with same name but in different scopes are regarded as different types
|
2025-12-17 23:12:54 +03:00 |
|
|
|
04ee8e28e6
|
Add structures
|
2025-12-17 22:57:10 +03:00 |
|
|
|
fb4877c2ed
|
Impement array element assignment
|
2025-12-17 16:07:39 +03:00 |
|
|
|
ff4d0a9c3e
|
Rename 'interpreter.hpp' -> 'exec.hpp'
|
2025-12-17 15:53:24 +03:00 |
|
|
|
d4a4d4dbef
|
Refactor printing AST
|
2025-12-17 15:51:38 +03:00 |
|
|
|
435aa61fe4
|
Implement array types & array values
|
2025-12-17 15:46:51 +03:00 |
|
|
|
bc7d24ad62
|
Support return statement with no expression
|
2025-12-17 14:22:20 +03:00 |
|
|
|
1f3c495acf
|
Support uppercase letters and decimal digits in identifier names
|
2025-12-17 13:55:18 +03:00 |
|
|
|
41d3bb0f3d
|
Implement functions in parser & interpreter
|
2025-12-16 19:19:46 +03:00 |
|
|
|
7ebf6982e6
|
Add unit type
|
2025-12-16 15:16:06 +03:00 |
|
|
|
ae3e2270c0
|
Add dedicated parse_error exception
|
2025-12-16 15:08:16 +03:00 |
|
|
|
4b3f87718d
|
Check for division by zero in interpreter
|
2025-12-16 15:07:29 +03:00 |
|
|
|
9d7f81d7fc
|
Initial commit: wip spec, ast definition, parser & interpreter
|
2025-12-16 14:01:50 +03:00 |
|