Commit Graph

242 Commits

Author SHA1 Message Date
nocturn9x 22184a35fd Removed useless files 2021-01-14 16:04:12 +01:00
nocturn9x 28abedf498 Added support for environment variables in build.py and refactored anonymous functions to use the lambda keyword 2021-01-14 16:03:31 +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 15072d3c56 Minor fixes and improvements to README 2021-01-12 10:04:32 +01:00
nocturn9x 766f0162ba Added when clause for strformat import and changed NilAccessError to NilAccessDefect 2021-01-12 09:57:06 +01:00
nocturn9x 1e353ef1cc Fixed a precedence bug with the is operator and added getBoolean to OpCode.Not in the VM 2021-01-12 09:55:41 +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 c882281944 Removed var parameters for the Lexer object and re-added the ! token 2021-01-11 11:31:37 +01:00
nocturn9x a62198a152 Changed the logical not operator from ! to not for consistency with other operators (and, or, is) 2021-01-11 11:07:39 +01:00
nocturn9x 421f93598f Made keeping the testresults.txt file an optional flag in build.py 2021-01-11 10:35:21 +01:00
nocturn9x d0c6240b5a Removed some more duplicate code fragments from some opcodes 2021-01-11 08:42:05 +01:00
nocturn9x 064b3f087b Removed duplicate code fragments from some opcodes 2021-01-11 08:40:28 +01:00
nocturn9x c79095c99b Merge branch 'master' of https://github.com/japl-lang/japl 2021-01-11 08:07:02 +01:00
nocturn9x 410a557ce5 Fixed a bug with the compiler where it would crash with incomplete assignment expressions 2021-01-11 08:06:55 +01:00
Mattia e9a57b8f1e
Merge pull request #32 from Productive2/master
Improving the testing
2021-01-10 20:45:39 +01:00
Productive2 390087dab5 Testing now supports testing for JAPL exceptions... kinda 2021-01-10 20:33:29 +01:00
Productive2 f6d7d82d62 gitignore bump,
working on maketest
2021-01-10 20:03:47 +01:00
Productive2 2f2180b6e7 Maketest prototype 2021-01-10 19:59:05 +01:00
Productive2 338a3b0535 New tests 2021-01-10 19:44:00 +01:00
Productive2 30fb134a74 More tests 2021-01-10 19:32:28 +01:00
nocturn9x b52585817f Typos and small fixes 2021-01-10 10:35:34 +01:00
Mattia 452a7ab02c
Merge pull request #31 from LucaTheHacker/patch-1
General refactor
2021-01-10 10:33:31 +01:00
Dametto Luca 1160d9e4f0
General refactor
Fixed bad markdown usage, added right checkboxes for features (instead of a dumb-choice emoji), fixed spacing between titles and lists.
2021-01-10 10:31:09 +01:00
nocturn9x b3d5f6e317 Updated markdown 2021-01-10 10:15:00 +01:00
nocturn9x 64dfb219f7 Reverted semicolons patch to lexer (rework needed) and removed wrong bounds check from frame.nim 2021-01-10 10:06:20 +01:00
nocturn9x 0b3614d1e7 Improved debugging output 2021-01-10 09:50:43 +01:00
nocturn9x 612ec1bfd0 Made semicolons optional 2021-01-10 09:50:27 +01:00
nocturn9x 89af076ef8 Added the -c command line option to run one-liners 2021-01-10 09:50:02 +01:00
nocturn9x 20b9554362 Changed the way tests are run 2021-01-10 09:49:35 +01:00
nocturn9x 10f250efe3 Updated README with new build options and fixed some typos 2021-01-10 09:49:09 +01:00
nocturn9x feba92912c Added var keyword to nanorc file 2021-01-10 09:02:06 +01:00
nocturn9x 63a7be8c3e Created resources directories and added japl.nanorc syntax highlighting 2021-01-10 08:59:41 +01:00
nocturn9x 5f55ea53ac Minor improvements to build script and fixed a bug in the test suite where it would mark a test as completed before checking its output 2021-01-10 08:24:34 +01:00
nocturn9x 87fa674b15 Fixed a minor bug when calling natives with variadic arguments. Improved tests/runtests.nim and integrated the test suite in the build script. Added type(), round() and toInt() builtins to JAPL as well as the identity operator (revision needed). Got rid of an unused parameter inside frame.nim and cleaned up the VM's code by no longer using var parameters for the VM. Exception objects are now added to the VM's objects stack and variables used for debugging purposes are now only declared/modified when the debug flags are turned on 2021-01-09 18:03:47 +01:00
nocturn9x 90d222a402 Updated gitignore to exclude tests and compiled binaries 2021-01-09 18:00:20 +01:00
Mattia 47aa7b81b0
Merge pull request #29 from Productive2/master
Testing improvements
2021-01-06 16:19:41 +01:00
Productive2 c360f27d8e New working test: problem2
New not working test: problem4
2021-01-05 21:12:32 +01:00
Productive2 5c8b0cb494 Added euler's problem 1 to tests
Added recursion to running tests
2021-01-05 20:51:05 +01:00
Productive2 2d2ef61fa1 Added bitwise operator tests
Fixed bitwise not crashing compiler when used as a binary op
2021-01-05 20:32:50 +01:00
Productive2 ded5b91950 New fibonacci test 2021-01-05 20:22:55 +01:00
nocturn9x a58b8a9ef0 Removed unused/dead code + improved test suite code quality 2021-01-05 16:10:28 +01:00
nocturn9x 97b7c5d91e Minor additions and fixes to README 2021-01-05 15:01:04 +01:00
Mattia aaf2e66528
Merge pull request #28 from Productive2/master
Testing suite + debugger bugs + some binary operator fixes
2021-01-05 14:56:44 +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
Productive2 5aef0654dc Added a few basic tests 2021-01-05 14:02:04 +01:00
Productive2 fb9bfd18e4 Merge remote-tracking branch 'upstream/master' 2021-01-05 13:17:18 +01:00
nocturn9x d05e45d3b6 Changed native's string repr 2021-01-05 13:15:47 +01:00
Productive2 8fe70d2f95 Fixed debugger bugs
Made exponentiation larger precedence than unary
2021-01-05 13:15:43 +01:00
Productive2 9e4329981c Made exponentiation higher precedence than multiplication
Fixed shebang
2021-01-05 13:02:14 +01:00