Mattia Giambirtone
|
b99be47556
|
Added compilation mode flag
|
2022-11-23 10:40:45 +01:00 |
Mattia Giambirtone
|
9567319c40
|
Major error formatting refactoring. Improved warning system
|
2022-11-23 01:02:35 +01:00 |
Mattia Giambirtone
|
61aee1c0c4
|
Branch name is now filled in automatically in config.nim
|
2022-11-05 16:41:32 +01:00 |
Mattia Giambirtone
|
26e16e7f8e
|
Reverted to old style REPL and added note in the README
|
2022-11-05 12:38:05 +01:00 |
Mattia Giambirtone
|
1e29796278
|
Simplified reallocate() and more failed attempts at fixing GC issues
|
2022-11-04 15:30:22 +01:00 |
Mattia Giambirtone
|
159530072b
|
Minor fix to getStackPos. Git commit hash is now auto filled in config.nim
|
2022-11-03 12:30:25 +01:00 |
Mattia Giambirtone
|
28798789dd
|
Updated config.nim
|
2022-11-03 11:01:40 +01:00 |
Mattia Giambirtone
|
5e1c16bb39
|
Renamed lookupPaths to moduleLookupPaths
|
2022-11-03 11:01:28 +01:00 |
Mattia Giambirtone
|
6c305d6382
|
Disabled the GC in the entire VM module and updated config.nim
|
2022-10-21 19:50:07 +02:00 |
Mattia Giambirtone
|
9573769868
|
Various fixes to module system
|
2022-10-21 16:10:00 +02:00 |
Mattia Giambirtone
|
d33a597f19
|
Massive improvements to import system (added export statement, initial work on namespaces, module names can now be paths, added module search paths)
|
2022-10-17 11:28:00 +02:00 |
Mattia Giambirtone
|
318f09541a
|
Fixed config.nim
|
2022-10-11 09:36:33 +02:00 |
Mattia Giambirtone
|
3e6e9da475
|
Fixed a bug where regular functions were mistaken for closures
|
2022-10-08 15:48:26 +02:00 |
Mattia Giambirtone
|
ca5a1c1bc9
|
Updated config.nim
|
2022-10-08 15:21:32 +02:00 |
Mattia Giambirtone
|
66cd6be0be
|
Minor additions/changes
|
2022-10-08 15:21:13 +02:00 |
Mattia Giambirtone
|
66b409bbd4
|
Updated config.nim
|
2022-08-19 08:53:49 +02:00 |
Mattia Giambirtone
|
4fdd90614a
|
Various fixes to the GC, added a few more tests
|
2022-08-18 19:18:29 +02:00 |
Mattia Giambirtone
|
ae6da275fa
|
Implement a M&S collector
|
2022-08-18 03:17:52 +02:00 |
Mattia Giambirtone
|
77fd5931fa
|
Further clean up
|
2022-08-17 19:31:27 +02:00 |
Mattia Giambirtone
|
f7733d925f
|
Cleaned up and renamed some things
|
2022-08-17 19:23:11 +02:00 |
Mattia Giambirtone
|
19a089f4a2
|
Move towards unboxed types in the Peon VM
|
2022-08-17 17:31:15 +02:00 |
Mattia Giambirtone
|
7ef5b4dfbf
|
Fixed some issues with strings and added debug print to fibonacci test
|
2022-08-15 17:20:09 +02:00 |
Mattia Giambirtone
|
9cedc72f68
|
Fixed error message when returning values from void functions
|
2022-07-10 15:10:01 +02:00 |
Mattia Giambirtone
|
e38610fdbd
|
Updated Makefile
|
2022-07-09 16:25:19 +02:00 |
Mattia Giambirtone
|
3f5f514259
|
Fixed some issued with scoping and globals
|
2022-07-09 13:36:29 +02:00 |
Mattia Giambirtone
|
cc0aab850e
|
Simplified calling convention, added for PeonObject, added some comments, fixed bug with StoreVar in stack frames, fixed issues with functions assigned to variables, changed the way closures are emitted so that empty jumps are no longer needed
|
2022-07-09 12:47:53 +02:00 |
Mattia Giambirtone
|
d241333047
|
Initial work on closures (again?)
|
2022-06-13 17:28:05 +02:00 |
Mattia Giambirtone
|
e3ab2fbdb6
|
Fixed issues with returning/calling function objects
|
2022-06-13 15:44:53 +02:00 |
Mattia Giambirtone
|
02f1f8a54d
|
Various style fixes with nil checks, added PushC opcode, added support for calling function objects
|
2022-06-13 15:04:53 +02:00 |
Mattia Giambirtone
|
11b15abc01
|
More work on pragmas, returning functions now works
|
2022-06-08 16:07:08 +02:00 |
Mattia Giambirtone
|
1d228c6310
|
Fixed logic bug within if/else construct
|
2022-06-02 12:19:18 +02:00 |
Mattia Giambirtone
|
dfa42d994b
|
Fixed if/else
|
2022-06-02 12:05:22 +02:00 |
Mattia Giambirtone
|
72ba5c7528
|
Updated config.nim
|
2022-06-02 11:48:17 +02:00 |
Mattia Giambirtone
|
e9cb3fca89
|
Fixed local variables
|
2022-06-02 11:45:27 +02:00 |
Mattia Giambirtone
|
f2f0fae36f
|
Fixed inverse parameter ordering (whoops)
|
2022-06-02 01:50:06 +02:00 |
Mattia Giambirtone
|
099f733db6
|
Initial work on a two-stack design
|
2022-06-02 01:33:56 +02:00 |
Mattia Giambirtone
|
369dff7da2
|
Removed debugging print (oops)
|
2022-05-30 12:33:30 +02:00 |
Mattia Giambirtone
|
df105125c4
|
Various fixes to stack frame alignment and added incremental compilation to REPL
|
2022-05-30 12:32:24 +02:00 |
Mattia Giambirtone
|
0887dab246
|
Added lastPop field to VM
|
2022-05-30 09:32:15 +02:00 |
Mattia Giambirtone
|
9dacda4009
|
Various fixes and stack frame changes
|
2022-05-29 17:04:19 +02:00 |
Mattia Giambirtone
|
71c05ec1bf
|
Fixed closure variables and debugger output with nested CFI data (also removed unneeded peon files)
|
2022-05-26 18:32:02 +02:00 |
Mattia Giambirtone
|
0f0a442578
|
Fixed issues with stack frames when returning from functions
|
2022-05-25 14:38:40 +02:00 |
Mattia Giambirtone
|
15f412bcac
|
Updated config.nim and changed mechanism for finding operators (also added binary operator lookup)
|
2022-05-24 09:56:11 +02:00 |
Mattia Giambirtone
|
5f43ea9490
|
Initial work on calls (with runtime support too)
|
2022-05-22 17:23:52 +02:00 |
Mattia Giambirtone
|
751cf644dc
|
Removed unneded flags
|
2022-05-20 16:01:34 +02:00 |
Mattia Giambirtone
|
1a0587d08b
|
Minor style changes, removed findImpl from compiler, made the VM use the multibyte utilities, bytecode chunks now no longer store AST node objects and use a stream of bytes instead, fixed issues with endScope() in the compiler which would not pop properly from self.names, fixed issues with blockStmt in parser, added more multibyte utilities
|
2022-05-20 15:47:04 +02:00 |
Mattia Giambirtone
|
cb21af4aa3
|
Added Makefile, prettyfied code, initial work on pragmas
|
2022-05-18 13:32:32 +02:00 |
Mattia Giambirtone
|
223ba603a7
|
Removed old JAPL type system. Initial dummy VM for testing purposes
|
2022-04-28 18:06:53 +02:00 |
Mattia Giambirtone
|
c1152b8859
|
Updated commit hash in config.nim
|
2022-04-26 13:05:17 +02:00 |
Mattia Giambirtone
|
2c2cd03d4a
|
Minor changes
|
2022-04-11 15:00:15 +02:00 |