Commit Graph

242 Commits

Author SHA1 Message Date
nocturn9x 74c2684dff Improved consistency of runtime error messages and updated slicing behavior to be more python-like 2020-09-04 09:23:37 +02:00
nocturn9x cb384aaf5f Minor bug fixes to chunks, function calls are still broken 2020-09-03 19:24:18 +02:00
nocturn9x 0fd7cea1e1 Minor bugfix 2020-09-01 21:02:47 +02:00
nocturn9x 53c5c83258 Removed test file 2020-09-01 18:09:59 +02:00
nocturn9x 42e6970e16 Added more operations on nan and inf types. Added bitwise operators (last commit), function calls need fix 2020-09-01 18:09:36 +02:00
nocturn9x dd83ef32a5 Added nan and inf types 2020-08-30 13:08:13 +02:00
nocturn9x cedb3bc44b Added bitwise operators 2020-08-30 12:35:37 +02:00
nocturn9x 556a130172 Added support for default arguments in functions and related error checking. Made the error reporting nicer and more consistent across the runtime 2020-08-30 10:36:13 +02:00
nocturn9x 4f487d357d Fixed a scope edge case 2020-08-29 09:07:32 +02:00
nocturn9x f7ed7193bb Various minor bugfixes and completed the frames implementation 2020-08-28 22:04:02 +02:00
nocturn9x 21ab45ecc4 Minor improvements to debugger experience 2020-08-28 00:05:56 +02:00
nocturn9x 4a1fc8df6d Fixed bugs with some corner cases in binary operations with strings and completed the shift towards manually allocated objects. Started to work on callframes and functions 2020-08-27 18:15:45 +02:00
nocturn9x 633c0f67f6 Moved common objects to a separate module 2020-08-26 11:41:39 +02:00
nocturn9x 458c7ab77e Fixed strings allocation (for real this time) 2020-08-25 11:10:14 +02:00
nocturn9x f0a5f9d3c7 Now strings are truly manually allocated 2020-08-25 10:24:50 +02:00
nocturn9x 49551d817d Added data structures WIP (not working yet) 2020-08-24 11:25:53 +02:00
Mattia 66bf395314
Update README.md 2020-08-24 09:19:46 +02:00
nocturn9x 59e79dddae Removed binary file 2020-08-24 09:00:40 +02:00
nocturn9x f882581e7b Fixed bugs in the memory template and attempt to fix the arraylist 2020-08-24 09:00:23 +02:00
nocturn9x 68b10602b5 Added support for negative slice indexes, fixed a couple bugs and refactored the lexer a bit to use the new methods to convert from and to JAPL values 2020-08-24 08:05:12 +02:00
nocturn9x ff0ec33991 Strings are now implemented in terms of an array of char and are no longer garbage collected by nim automatically 2020-08-23 23:48:38 +02:00
nocturn9x 92e91f2c17 Removed binary file 2020-08-23 16:13:28 +02:00
nocturn9x 3e5c86f1a1 Have to fix weird string type issues 2020-08-23 16:12:54 +02:00
nocturn9x 01b7c6e6a2 Completely revised the object structure, need to fix compiler (nim) crash issue 2020-08-23 12:10:08 +02:00
nocturn9x ea471678ae Breaking changes, starting to work on a new GC 2020-08-21 19:10:33 +02:00
nocturn9x 50d171de83 Added support for break (thanks dictu) 2020-08-20 22:51:56 +02:00
nocturn9x d2910fb13d Fixed while loop 2020-08-20 14:36:58 +02:00
nocturn9x e76534f8f2 Empty strings are now falsey 2020-08-20 14:30:00 +02:00
nocturn9x bf055191a7 Continue statement implemented, break needs jumping mechanism 2020-08-20 11:23:49 +02:00
nocturn9x d3999887a1 Support for nested loops 2020-08-20 09:29:59 +02:00
nocturn9x b58ea99aed Fixed a bug in the lexer 2020-08-19 21:45:51 +02:00
nocturn9x 9552a1f04f Made the repl exit gracefully after Ctrl+C 2020-08-19 18:15:48 +02:00
nocturn9x 1dadbd0523 Added for and while loop 2020-08-19 16:19:10 +02:00
nocturn9x faf5e6149b Fixed numerous bugs with improper statements in the parser 2020-08-19 14:19:01 +02:00
nocturn9x b9fecca2d9 Fixed a bug in the REPL and added logical operators 2020-08-19 13:24:37 +02:00
nocturn9x 941e728a92 If statement now pops from the stack, added debug machinery for new opcodes 2020-08-19 13:10:34 +02:00
nocturn9x a9f35d2134 Fixed various bugs (scoping, parsing) and added if/else constructs 2020-08-19 12:40:01 +02:00
nocturn9x 7ed7d49ecd Fixed the del statement 2020-08-17 08:55:33 +02:00
nocturn9x ad769ffbaf Added local scoping support 2020-08-17 08:17:27 +02:00
nocturn9x ca2e643e5d Fixed assignment precedence and various minor bugs 2020-08-15 12:07:01 +02:00
nocturn9x 7e40894047 Added support for the del statement 2020-08-15 11:38:36 +02:00
nocturn9x 5667691669 Implemented globals setters and getters, also made the repl friendlier and fixed some minor bugs with strings multiplication 2020-08-15 11:27:04 +02:00
nocturn9x b708340183 Added support for mutually exclusive slice conditions, started to work on the global scope 2020-08-15 08:52:58 +02:00
nocturn9x 810c49f29e Added support for slice ranges 2020-08-14 10:20:42 +02:00
nocturn9x cbe8272ecc Added support for string slicing and integer implicit cinversions with comparison operators 2020-08-14 10:02:13 +02:00
nocturn9x b8ea713312 Added support for string literals and related operations 2020-08-14 08:25:05 +02:00
nocturn9x 3fe0660b32 Removed gitignore and updated old one 2020-08-13 23:47:29 +02:00
nocturn9x 52bd5ad830 Added gitignore 2020-08-13 23:46:33 +02:00
nocturn9x 5ab06455cf Added the new instructions in the debugger 2020-08-13 23:45:25 +02:00
nocturn9x cc1b41e7ed Added comparison operators and logical not 2020-08-13 23:39:26 +02:00