This will be a lot more fun than "just" using Chez Scheme (to be honest, that's actually a pretty daunting task ... with all the effort and time going into build setup and config; I'd rather spend that time doing fun coding, even if the end result takes longer).
[x] write a response to the next line followed by the prompt
[ ] Parser
[ ] find a good parsing library and integrate into the build process
[ ] find or define a grammar for S-expressions or reverse polish notation
[ ] or use a library to both, in one go
[ ] Memory protection
[ ] add max memory to use for stored environment
[ ] print warning message when max limit is close
[ ] print error message when max limit is reached
[ ] at MAX_HISTORY limit, do not allow for commands to be saved in history/display vecs
[ ] Eval
[ ] Error Handling
[ ] S-expressions
[ ] Garbage Collection
[ ] Built-in Functions
[ ] Variables
[ ] Functions
[ ] Conditionals
[ ] Types
Once this is done, we can move onto the DSL:
23
This Lisp flavour is not general purpose; it is specifically for embedding a DSL in a VCV Rack module. As such, there are features that aren't needed and won't be included:
This will be a lot more fun than "just" using Chez Scheme (to be honest, that's actually a pretty daunting task ... with all the effort and time going into build setup and config; I'd rather spend that time doing fun coding, even if the end result takes longer).
This feature is part of the following epic:
21
Template for development process:
Possible parsers:
Major tasks:
./src
./include
Once this is done, we can move onto the DSL:
23
This Lisp flavour is not general purpose; it is specifically for embedding a DSL in a VCV Rack module. As such, there are features that aren't needed and won't be included: