diff options
Diffstat (limited to 'README')
| -rw-r--r-- | README | 23 |
1 files changed, 23 insertions, 0 deletions
@@ -0,0 +1,23 @@ +# neb + +now in bytecode + +## broken things +[ ] VM immediately returns after a `def` +[ ] lists work for atoms like `(list 1 2 3)` but not evaluated expressions + like `(list (+ 2 3) 4 5)` (i think that only includes 3 4 5). might need + something like a MAKE_LIST op, followed by a length of how many items? + i feel like i'm really bastardizing bytecode instructions. +[ ] the emitted code is lousy with runtime typechecks. these are good to have, + generally speaking, but a) should be able to do more compile time type + checks to avoid some of them, b) should only need to type check certain + things once (so long as variables can't change type), and c) should probably + generalize the typecheck op with a parameter to enable more flexibility +[ ] i mean, nearly nothing works + +## things that hopefully work +[x] addition! +[x] subtraction! +[x] `if`/`and`/`or`! +[x] `>`/`<` and co. +[x] `func` to define a function, assuming it only has ^^ those things |
