Commit Graph

  • 45ca5e3ef5
    update readme master Art 2022-12-10 17:54:34 +0100
  • 853b4c6256
    revert nim.cfg prod2 2022-12-10 16:52:23 +0100
  • 494d39cdd6 contact info prod2 2022-12-10 15:35:18 +0100
  • 5664024cbc code of conduct prod2 2022-12-07 19:19:47 +0100
  • 7bab153ed5 license change prod2 2022-12-07 19:00:15 +0100
  • e0a93d0940 add nbody benchmark prod2 2022-12-04 14:59:17 +0100
  • 32d643bba0 new danger option in nimble prod2 2022-12-03 20:39:19 +0100
  • 18c71f41fe more polish to .md files prod2 2022-12-03 20:21:18 +0100
  • bd569c7ae2 fixed readme? prod2 2022-12-03 20:14:20 +0100
  • 50b1c53278 update readme prod2 2022-12-03 20:11:45 +0100
  • 09a66b7306 removed old compiler prod2 2022-12-03 20:05:59 +0100
  • 57b3a4863e new compiler now passes test suite, after outdated tests were refactored to match new precedence rules prod2 2022-12-03 20:04:44 +0100
  • 8c90b669e8 emitting variables, scopes prod2 2022-12-03 15:55:47 +0100
  • 6fc8514a6b first version of reference, some new tests prod2 2022-12-03 14:28:09 +0100
  • 3a73ed75ec add key: val syntax to tables, update tests to match replacement of -> with : prod2 2022-12-03 13:16:47 +0100
  • c812d33a77 wrong precedence fixed prod2 2022-12-03 13:11:46 +0100
  • 41e21733d3 control flow emitting prod2 2022-12-03 13:07:05 +0100
  • ef794ea881 add dump AST, make AST printing cleaner prod2 2022-12-03 12:19:35 +0100
  • 04dd2bf73f Simplify config - made assertions always enabled, since they already pretty much were - removed debug compiler/scanner since the whole thing was messy, and not present in compv2 prod2 2022-12-03 12:08:41 +0100
  • 3405c10b08 basic emitter in place prod2 2022-12-03 11:52:51 +0100
  • 9986e96309 fix test prod2 2022-12-03 09:48:31 +0100
  • 27391bdc43 parsing break, var decl prod2 2022-12-03 09:39:26 +0100
  • 1e139194b8 block expressions, improved error reporting prod2 2022-12-03 09:32:41 +0100
  • c36292843a update compv1, remove def from compv1 prod2 2022-12-03 09:02:43 +0100
  • 8d1e9a5318 new test prod2 2022-12-02 21:13:36 +0100
  • a0e5431b0f parsing procs prod2 2022-12-02 21:08:52 +0100
  • e83cd424f9 backtrack in parser + ampersand op support prod2 2022-12-02 20:47:31 +0100
  • b858a066e2 colonCall parsing prod2 2022-12-02 19:27:02 +0100
  • f721d0987d parser progress prod2 2022-12-02 19:14:41 +0100
  • e6a48ccee6 compiler rewrite start updated readme accordingly created node.nim in compv2 changed nds.nim - setup for debugging the parser for now prod2 2022-12-02 15:45:34 +0100
  • 88cc276100 cleanup prod2 2022-12-02 12:15:10 +0100
  • ada87cb01b update gitignore prod2 2022-12-02 12:10:51 +0100
  • c21c797ef4 update prod2 2022-12-02 12:09:10 +0100
  • 70fa10bfa6 readding inline to some stack.nim procs prod2 2022-02-14 10:46:49 +0100
  • 856d1345e4 init the globals table with a larger init cap prod2 2022-02-14 10:33:10 +0100
  • 197d61b112 remove broken closure listing prod2 2022-02-14 07:16:58 +0100
  • 545322bf96 Revert "BROKEN gc" prod2 2022-02-14 07:15:11 +0100
  • 0f9440dfb0 BROKEN gc prod2 2022-02-10 06:44:16 +0100
  • 5963a25f37 def declaration of procedures prod2 2022-02-10 00:35:29 +0100
  • f86cce7977 use stack instead of frames to find current closure prod2 2022-02-09 07:06:40 +0100
  • 7e5dff3263 update benchmarks to match new syntax prod2 2022-02-09 07:01:52 +0100
  • f79f4e47ba rename funct to proc prod2 2022-02-09 06:58:51 +0100
  • 3a9e23b82e implicit return in blocks prod2 2022-02-09 06:55:34 +0100
  • 431e8f9a66 implicit return for functions prod2 2022-02-09 06:47:00 +0100
  • a16026b364 utf8 support prod2 2022-02-08 10:10:07 +0100
  • ece31b11e0 -> method call prod2 2022-02-08 09:23:21 +0100
  • 5f3f61af2d change table declaration syntax prod2 2022-02-08 08:56:47 +0100
  • 8262ca187c sugars: :: and table . op; allow for reading existing locals of the same name in var statements prod2 2022-02-08 08:13:38 +0100
  • 2517439caf mark compiler modules as used, make nimble test rebuild in release mode, make release mode enable all assertions and bounds checks prod2 2022-02-08 06:04:39 +0100
  • d4a6921302 split up expression.nim prod2 2022-02-08 05:50:36 +0100
  • 960be5f0dd split up compiler into multiple files prod2 2022-02-08 05:41:05 +0100
  • 954d1e6de4 expand natives prod2 2022-02-07 06:03:47 +0100
  • 9dc429c92d natives prod2 2022-02-07 05:35:07 +0100
  • d5479a0be7 closures work - test passes now prod2 2022-02-06 10:04:49 +0100
  • 85aa396054 WIP on closures: single layer closures work, nested closures still broken prod2 2022-02-06 07:35:00 +0100
  • 392955e290 WIP closures: unclosed upvalues work; improved vm debugging and changed $ for functions, closures prod2 2022-02-06 04:59:39 +0100
  • f453de631d wip closures: dedupliacation of upvalue references prod2 2022-02-06 04:21:32 +0100
  • 086c6e3c2e WIP closures, fix compiler bug prod2 2022-02-06 03:49:36 +0100
  • 2f790067f3 optimization: inline some things that were procs prod2 2022-02-06 02:46:26 +0100
  • 62995df504 fix string concat prod2 2022-02-06 01:02:22 +0100
  • c04d520561 expand closures test prod2 2022-02-05 12:56:07 +0100
  • 9b3b1056ba WIP closures + important bugfix prod2 2022-02-05 12:37:54 +0100
  • 3e48b1cc52 WIP closures prod2 2022-02-05 12:30:07 +0100
  • 0c4a6553ff factorial benchmark prod2 2022-02-05 06:10:37 +0100
  • af2f639ccc new benchmark, constant reuse (to better fit in the constant limit) prod2 2022-02-05 05:52:45 +0100
  • 05887323c0 new test, bugfix prod2 2022-02-05 03:24:30 +0100
  • 9fdbb1dda6 create an nds testing tool prod2 2022-02-05 02:45:29 +0100
  • ef0775b252 don't add other lang examples that may be there locally prod2 2022-02-03 23:28:45 +0100
  • bdac4fe7fc example bf interpreter prod2 2022-02-03 22:28:25 +0100
  • 0c753dcc00 update readme prod2 2022-02-03 05:13:02 +0100
  • ff9cfd9c39 nicer print output with empty lists/tables prod2 2022-02-03 05:06:05 +0100
  • 2aa3a094bb update tests to match codebase prod2 2022-02-03 05:00:09 +0100
  • c065324168 should have been part of the last commit prod2 2022-02-03 04:59:06 +0100
  • 20022c405a unite stringutils and ndstring prod2 2022-02-03 04:58:34 +0100
  • 159f256a84 add ampersand operator, further work on lists and tables prod2 2022-02-03 04:56:16 +0100
  • 0ec5bfb60a wip lists and tables prod2 2022-02-03 03:18:11 +0100
  • 788ca7eec0 change ^ to :, remove automatic ^ prod2 2022-01-29 22:47:23 +0100
  • 93cae977c6 fix tests prod2 2022-01-29 22:36:07 +0100
  • 13da52ad24 change project structure prod2 2022-01-29 22:33:34 +0100
  • 45e22d9fed expanded the break test, improved compiler error reporting. prod2 2022-01-29 21:22:42 +0100
  • 2651cf3cbd bugfix prod2 2022-01-29 21:11:20 +0100
  • f665efaeed use ip rather than ii for funct prod2 2022-01-29 20:43:13 +0100
  • 71a3d6ad45 fix setglobal popping prod2 2022-01-29 07:24:58 +0100
  • d7f59f5ad7 small fixes prod2 2022-01-29 06:47:34 +0100
  • 3ff351100e change table to array (thx ElegantBeef) prod2 2022-01-29 06:22:52 +0100
  • 6d7337e6f7 fix typo prod2 2022-01-29 06:17:51 +0100
  • a13659e44f cleanup old code in vm, free globals prod2 2022-01-29 06:12:08 +0100
  • 19b8079436 small fix prod2 2022-01-29 06:01:00 +0100
  • 0b41e69007 wip using custom hashtables for globals prod2 2022-01-29 06:00:00 +0100
  • 31b0b28dca WIP switch to custom hashtable for globals prod2 2022-01-29 05:38:16 +0100
  • 2765daa55b nan boxing prod2 2022-01-29 05:12:33 +0100
  • 6961c91468 string interning prod2 2022-01-29 04:22:21 +0100
  • 9d6576aaeb add efib benchmark prod2 2022-01-29 03:29:52 +0100
  • 0dea4e86ec readd nim.cfg prod2 2022-01-28 22:07:41 +0100
  • ded7fd3211 hashtable implementation and test prod2 2022-01-28 22:00:21 +0100
  • 8031c7720d custom string object prod2 2022-01-28 04:17:11 +0100
  • 90d04f13f6 replaced seq with a custom stack object for performance prod2 2022-01-27 18:54:02 +0100
  • 01de21e32e remove error type prod2 2022-01-27 06:09:59 +0100
  • 6cc2406d5f made less/greater implementation consistent prod2 2022-01-27 06:09:04 +0100
  • 215d1539de move arity checking to its own op prod2 2022-01-27 05:56:09 +0100