1
0
Commit Graph

580 Commits

Author SHA1 Message Date
b9ded3ea78 Begin refactoring the lexer 2024-11-07 17:59:28 -05:00
bb345a7938 Fix argument retrieval in native functions 2024-11-07 03:05:32 -05:00
04a1c81a2a Add parents to the VM; Improve the disassembler 2024-11-07 02:10:02 -05:00
f54d2d0d22 Clean up 2024-11-07 00:49:36 -05:00
ea88ffc451 Move the disassembler to its own module 2024-11-06 18:39:09 -05:00
a997665d1a Write docs; Improve disassembly output 2024-11-06 17:59:16 -05:00
dc9b451b37 Clean up and add docs 2024-11-06 15:50:05 -05:00
e99a7b5e1e Rename Parser to Compiler 2024-11-06 15:40:37 -05:00
74bb8a429a Clean up 2024-11-06 15:14:12 -05:00
d587d87ed7 Refine chunk poisoning and optimize taking values from registers 2024-11-06 15:08:51 -05:00
87f597624a Begin fixing control flow 2024-11-06 14:46:23 -05:00
78840cf3e7 Bring back chunk errors 2024-11-06 13:50:49 -05:00
c0b998c0d8 Add optimizer 2024-11-06 13:09:29 -05:00
e2df823566 Clean up value methods 2024-11-06 03:54:58 -05:00
f08c7c6f1f Refine values to be either abstract or concrete 2024-11-06 03:36:46 -05:00
a16f7795de Continue addind type evaluation 2024-11-06 00:57:54 -05:00
314913dbf5 Begin adding type evaluation to the parser 2024-11-05 23:20:58 -05:00
9294b8f7ed Use macro to simplify operation code 2024-11-05 22:28:10 -05:00
ea46bfe5da Simplify the parser by removing a value 2024-11-05 22:10:13 -05:00
9650183c73 Replace some "if let" statements with "matches!" macro for better formatting 2024-11-05 22:07:54 -05:00
3330939128 Add docs 2024-11-05 19:38:26 -05:00
b0af1609f0 Improve chunk disassembly code 2024-11-05 17:35:54 -05:00
80b6380255 Clean up 2024-11-05 16:33:56 -05:00
5ff5568e95 Clean up 2024-11-05 16:25:55 -05:00
cfb4fa66b5 Fix scopes 2024-11-05 16:07:51 -05:00
8c72e921dc Rework how scopes work to support excluding sibling scopes 2024-11-05 12:44:16 -05:00
0dcfcd5375 Clean up 2024-11-04 21:32:00 -05:00
a2fa5afcd4 Clean up 2024-11-04 21:30:23 -05:00
c77e1c89a9 Update dependencies and allow compiling to wasm 2024-11-04 21:29:20 -05:00
34dca01d85 Modicy native functions to have a full type specification 2024-11-04 19:16:19 -05:00
0e7aae79f9 Change identifiers to be constant values 2024-11-04 18:07:58 -05:00
a2e7a4e73e Begin removing chunk errors; Use constants for identifiers 2024-11-04 15:38:58 -05:00
a9e675cb4f Clean up native functions 2024-11-04 09:34:26 -05:00
60535e20d6 Deduplication of constants in the chunk; Clean up 2024-11-04 08:08:56 -05:00
e85297bcbb Extend macro use in native functions 2024-11-03 01:30:41 -05:00
1947d66be5 Overhaul implicit returns and add lots of new native functions 2024-11-02 21:24:41 -04:00
ae6d3d7a82 Add new implicit return for end of file 2024-11-01 09:55:15 -04:00
7e4f6654a4 Add move instruction to fix assignment to conditionals 2024-11-01 02:51:18 -04:00
32ff52d9b3 Change binary argument handling to fix expression chaining 2024-10-31 21:40:42 -04:00
febd7bb054 Fix while loop jumps; Pass tests 2024-10-31 20:33:46 -04:00
604962c535 Begin refactoring jump instructions 2024-10-30 14:48:30 -04:00
1f9adfab2f Fix test 2024-10-30 10:30:56 -04:00
10abd91c85 Add failing control flow test with new panic function 2024-10-30 09:50:45 -04:00
bd23853657 Add native function errors 2024-10-30 09:32:46 -04:00
382d43ef77 Add NativeFunction macro and implement read_line 2024-10-30 09:11:28 -04:00
4d6412006a Add lots of new native functions 2024-10-30 08:02:22 -04:00
d7be203bfc Fix write and write_line 2024-10-30 05:31:46 -04:00
c264aaeb13 Add the to_string, write and write_line natives 2024-10-30 05:16:34 -04:00
af4e43fc9f Add native calls and the panic native 2024-10-30 03:08:25 -04:00
caf1c22af0 Clean up 2024-10-30 00:16:10 -04:00