Commit Graph

24 Commits

Author SHA1 Message Date
Nocturn9x 2f7a628d79 Added Makefile, prettyfied code, initial work on pragmas 2022-05-18 13:32:32 +02:00
Nocturn9x 9360aca647 Made function jumps absolute 2022-05-16 19:31:17 +02:00
Nocturn9x a0d312736f Fixed an issue with jump offsets and with functions return types 2022-05-16 19:23:38 +02:00
Nocturn9x 98e6d91ba1 Implemented jump opcodes and LoadUInt64 in the VM, some style and proc changes in the compiler, chunk constants are now type-aware, fixed various inheritance mistakes in the AST node, refined type inference system, moved types back to the compiler and completely redesigned operator parsing to be more modular 2022-05-07 10:48:42 +02:00
Nocturn9x f778ec99e5 Added missing typing module 2022-05-04 14:28:36 +02:00
Nocturn9x 0d48f86149 Collections are no longer a compiler intrinsic. Added parser support for ptr/ref arguments 2022-05-04 14:01:38 +02:00
Nocturn9x 1ceedde8e9 Completely reworked the type inference system. Initial work on specializing the constants table in the bytecode chunk 2022-05-02 17:26:38 +02:00
Mattia Giambirtone 8ca5caabb7 Experimental support for multiple arguments of the same type using only one type declaration + various compiler fixes 2022-05-01 13:08:02 +02:00
Mattia Giambirtone eea6137df5 Name stropping, added NoOp, minor AST fixes, removed builtin opcodes for most operations 2022-04-29 23:04:53 +02:00
Mattia Giambirtone cc9cd9f877 Name stropping now is generic to identifiers 2022-04-29 17:15:57 +02:00
Nocturn9x 85fb778647 Removed old JAPL type system. Initial dummy VM for testing purposes 2022-04-28 18:06:53 +02:00
Nocturn9x c3c4804320 Fixed AST inheritance issues and got back to a working state 2022-04-28 11:50:10 +02:00
Nocturn9x 78d955541d BROKEN: Initial work on closed-over variables and attempt to cleanup the AST type structure 2022-04-27 16:03:48 +02:00
Nocturn9x ff7dc450ae Turned off optimizer (breaks compiler) further work on closures and scope resolution 2022-04-26 09:29:59 +02:00
Nocturn9x 36a3a1e810 Initial work on type inference and variable declarations. Minor changes to the optimizer 2022-04-21 15:25:29 +02:00
Nocturn9x 7d409b6070 Initial work on inferring types 2022-04-12 12:18:25 +02:00
Nocturn9x 8175c990d7 Fixed parsing of argument-less function. Removed main.nim 2022-04-12 10:56:05 +02:00
Nocturn9x 5202bf5489 Minor changes 2022-04-11 14:41:20 +02:00
Nocturn9x 9588ace741 Hooked up old JAPL components 2022-04-07 15:06:15 +02:00
Nocturn9x 64ff6a12ca Hooked up the compiler and debugger (VERY experimental) 2022-04-07 13:02:23 +02:00
Nocturn9x ce82517f14 Fixed a bug with parsing non base-10 numbers in the lexer. Minor fixes to the parser and updated docs and comments 2022-04-06 12:09:19 +02:00
Nocturn9x 7edf072093 Initial work on adding type support to the parser for declarations + fixes for lambdas 2022-04-05 15:52:58 +02:00
Nocturn9x 5ea6f91ce4 Huge lexer refactoring 2022-04-05 00:26:01 +02:00
Nocturn9x 3862c6ba36 Initial commit from JAPL with some changes 2022-04-04 12:29:23 +02:00