Commit Graph

42 Commits

Author SHA1 Message Date
nocturn9x 683588f693 Experimental unicode support (yay) + fixed a bug with string indexing at the last element that caused an out of bounds exception 2021-10-10 23:27:48 +02:00
nocturn9x c2aa8752f4 Edited comment on linear probing/tombstones 2021-10-03 12:29:02 +02:00
nocturn9x b66cd7bf4e Fixed broken linear probe sequence in our hashmap 2021-10-03 12:23:20 +02:00
nocturn9x 408d8cbeaa The REPL no longer shows the last pop value if an error occurs 2021-09-30 19:38:35 +02:00
nocturn9x b9b5301ad4 laid out basic closure object 2021-04-19 15:01:00 +02:00
nocturn9x 2fb0a9a621 Added missing license header 2021-04-18 19:27:53 +02:00
nocturn9x a14d9a7882 Added simpleHashMap for internal use 2021-04-18 13:45:38 +02:00
nocturn9x 22d6408236 Moved to custom hashmap 2021-03-18 15:09:36 +01:00
nocturn9x cd180fe4d7 Added value checking with 'as' conversion + minor fixes to testmarkup.md 2021-03-01 19:28:58 +01:00
Productive2 5d98814d7d improve debug vm
improved coloring
removed d:danger so debug output is present
fixed frame length debug output
2021-02-28 17:00:12 +01:00
nocturn9x 5d8c31fb07 Fixed identity operator bug and added isnot for consistency. Changed behavior for gt/lt comparisons to account for more complex expressions 2021-02-26 12:27:10 +01:00
nocturn9x 86fc8b9ca3 Disabled dead code after return check (bug) + use non GC'ed memory in chunks and function objects 2021-02-20 14:10:47 +01:00
nocturn9x 7c1cd5df8e Removed binary file 2021-02-09 18:49:50 +01:00
nocturn9x b67ec65a33 Minor fixes and cleanups 2021-02-09 18:49:34 +01:00
nocturn9x 9ffff11bf9 Added an optional prompt parameter to readline and renamed it to readLine. Added string support in toInt 2021-02-04 12:03:10 +01:00
nocturn9x 95522cd3c7 Minor style fixes to jats and fixed debug logs clashing when debug_vm and debug_alloc are both enabled 2021-01-31 10:51:29 +01:00
nocturn9x c621ce09b3 Changed equality for function objects (moved to pointer equality). TODO: Fix integer identity bug 2021-01-29 15:34:05 +01:00
nocturn9x 807237b884 Removed binary file 2021-01-27 15:51:29 +01:00
nocturn9x 787d34a8b5 Added WIP implementation of a generic hashmap that should behave better with JAPL's own memory manager 2021-01-27 15:51:15 +01:00
nocturn9x fb34faac2d Added a generic custom sequence implementation to replace nim's seq type and moved as much functionality as possible from nim to us in order to avoid GC clashes 2021-01-17 16:54:55 +01:00
nocturn9x 71f79d8174 Fixed various minor bugs, improved debugger output and consistency 2021-01-16 18:14:22 +01:00
nocturn9x e15e03764e Added support for 0-argument functions and lambdas without parentheses 2021-01-16 15:11:09 +01:00
Productive2 22788fad3b Fix #25 2021-01-16 11:58:56 +00:00
nocturn9x f8ac8d08cb Removed short version of constants for benchmarking purposes and refactored the type system's behavior to return more consistent values 2021-01-16 11:47:01 +01:00
nocturn9x 882efd28da Separated string interning tests in compile-time vs runtime, fixed a bug in the build script and added some comments to the VM as well as a toStr function to obtain objects representations as strings 2021-01-14 22:37:11 +01:00
nocturn9x 2e60ab9fb6 Added a beta implementation for arrow functions 2021-01-14 12:55:51 +01:00
nocturn9x 56938897d6 Fixed precedence of is added beta support for the as operator for casting 2021-01-12 12:10:15 +01:00
nocturn9x 3eeffabe7d Added the retNative enum for native functions to handle singletons properly, minor refactoring in the parser and the vm 2021-01-11 13:17:01 +01:00
nocturn9x cb5eb78ff7 Fixed a bug in the debugger regarding the output of the global scope. Re-added the del statement + small fixes 2021-01-05 14:55:37 +01:00
nocturn9x d05e45d3b6 Changed native's string repr 2021-01-05 13:15:47 +01:00
Productive2 586522ce44 Added Natives
Added stdlib.nim
Added print
2021-01-05 00:32:17 +01:00
nocturn9x 1e8b4632e9 Attempt to fix function calls by using ref seqs (failed, lol). Now all math operations on nan raise a TypeError 2020-12-26 17:01:03 +01:00
nocturn9x 18823ccf0d Fixed some of the bugs with function calls (recursion needs revision) and locals resolution. JumpIfFalse now always pops its operand even when the condition isn't met. Fixed a lot of typos inside types/jobject.nim caused by copy-paste errors and got rid of newString in favor of asStr 2020-12-21 18:37:08 +01:00
nocturn9x dba31dfba1 (Re-)Added bitwise operators and strings multiplication 2020-10-28 17:19:41 +01:00
nocturn9x 1b8b8d9096 Type system refactoring complete, some recursion debugging. Bumped up version to 0.3.0 2020-10-27 18:59:36 +01:00
nocturn9x ef08fee976 Base structure for some methods ready 2020-10-27 14:38:28 +01:00
nocturn9x 09e543d786 Fixed typos, minor improvements, added isCallable for objects 2020-10-26 22:55:20 +01:00
nocturn9x e87096ce71 Type system refactoring partially done, the VM is now at a compilable and semi-runnable state 2020-10-26 20:29:35 +01:00
Productive2 b79d7e4f7a just starting to add methods 2020-10-26 16:29:00 +01:00
Productive2 44aab6f5fc a few minor changes, so it compiles 2020-10-25 17:47:53 +01:00
nocturn9x b93643e5b5 Moved object structure to a single file + random stuff idk I'm tired 2020-10-25 15:08:08 +01:00
nocturn9x 673b88f9de Huge refactoring for the type system and object structure, VM needs opcode refactoring 2020-10-25 12:45:03 +01:00