1
0
Commit Graph

674 Commits

Author SHA1 Message Date
eb083c2972 Add some more docs 2024-12-02 02:46:04 -05:00
40bace03f3 Display source with chunk disassembly 2024-12-02 01:20:05 -05:00
215601707b Clean up code and docs 2024-12-02 01:08:41 -05:00
3146e70bf1 Improve CLI 2024-12-01 21:17:22 -05:00
98e9a5ed21 Add more README.md content 2024-11-30 00:00:56 -05:00
3b23136eda Add some more README content 2024-11-29 22:43:13 -05:00
1ef5ddc013 Tweak example and native function logic 2024-11-29 18:10:03 -05:00
36da1d0d7c Add test 2024-11-29 16:24:37 -05:00
12ae935f50 Clean up chunk 2024-11-29 15:48:50 -05:00
dcb590fe07 Add docs 2024-11-29 12:39:51 -05:00
45a55eb12e Clean up VM jump hanlding 2024-11-29 12:07:58 -05:00
8b06af9634 Clean up Operation type 2024-11-29 11:55:38 -05:00
77cb82b9fe Fix bugs with new instruction features 2024-11-29 10:44:35 -05:00
ef01499e38 Use new instruction features 2024-11-28 06:33:29 -05:00
7e2ebf54c7 Use new instruction features 2024-11-28 05:36:10 -05:00
cc6a152f3c Refactor to use new instruction features 2024-11-28 05:02:51 -05:00
b574ecc4cb Clean up 2024-11-28 02:12:59 -05:00
dae5b7678c Clean up 2024-11-28 02:03:58 -05:00
5432001dff Pass all tests 2024-11-28 01:55:35 -05:00
8b360d0825 Continue fixing compiler for new instructions 2024-11-28 01:37:31 -05:00
54ae05844d Clean up 2024-11-28 01:11:54 -05:00
d7880480b5 Add destinations to instructions to support local destinations 2024-11-28 01:10:49 -05:00
ef22fa18b6 Continue fixing the compiler to work with the new instructions 2024-11-27 23:12:10 -05:00
a57268fcba Fix tests 2024-11-27 21:13:35 -05:00
cc963c544f Clean up 2024-11-27 20:36:58 -05:00
d83a470638 Begin fixing comiler to work with new instructions 2024-11-27 19:43:50 -05:00
a94cc11069 Refactor to use 64-bit instructions 2024-11-26 07:14:30 -05:00
c5e0d8ef1e Refactor to use 64-bit instructions 2024-11-26 01:15:31 -05:00
fbaf59abe2 Refactor to use 64-bit instructions 2024-11-25 20:43:18 -05:00
e04ead3848 Refactor library and CLI 2024-11-17 20:32:53 -05:00
0cb96519e2 Fix bugs with arguments for native functions 2024-11-16 08:10:30 -05:00
3143e8c203 Fix control flow and pass all tests 2024-11-16 05:40:31 -05:00
0f3924341f Continue adding type evaluations 2024-11-16 05:16:51 -05:00
960931ce6e Begin wrapping up overhaul 2024-11-16 01:29:21 -05:00
7b91e879b7 Continue Value/VM overhaul 2024-11-15 21:42:27 -05:00
69458a138d Clean up 2024-11-15 19:19:31 -05:00
302bc9ce6c Continue Value/VM overhaul 2024-11-15 19:18:00 -05:00
73247446c7 Major overhaul to VM 2024-11-10 19:28:21 -05:00
8af8e48ebd Begin large refactor to enhance type handling 2024-11-09 21:40:33 -05:00
d82aed1a93 Begin refactoring to avoid mutating locals in the chunk 2024-11-09 13:49:02 -05:00
c343b82873 Finish refactoring lexer 2024-11-09 10:57:00 -05:00
27fa3ef7cf Fix minus sign lexing 2024-11-07 19:23:59 -05:00
d15247a799 Continue revisions to the lexer 2024-11-07 19:22:22 -05:00
2e51112b4b Continue overhauling the lexer 2024-11-07 18:48:53 -05:00
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
e304195661 Change return to use last_assigned_value; Add scopes tests 2024-10-29 23:11:55 -04:00
004cf73959 Pass tests 2024-10-24 22:37:18 -04:00
c0f74f1e09 Tweak control flow jumping and compile-time optimizations 2024-10-20 22:18:58 -04:00
648bbdbc4d Refactor parsing for better jumping and returns 2024-10-20 18:51:04 -04:00
1da61f0873 Begin reworking jump instructions 2024-10-20 10:20:09 -04:00
8db37bcdfd Add LoadSelf instruction to enable recursion 2024-10-20 02:30:22 -04:00