V7 v2.0 Release NotesRelease Date: 2016-03-08 // over 5 years ago
- 📜 Parser's stack usage does not grow as expression nesting grows, it allows v7 to run in stack-constrained environment;
- Interpreter is reimplemented completely: instead of AST-based VM runtime with long jumps, the bytecode is generated and then evaluated. Again, it allowed to get rid of deep stack usage and make the whole runtime more straightforward;
- Freezing: the ability to take a snapshot of v7's RAM usage, and then put that snapshot in flash instead. This way, the whole standard library can reside in flash, therefore saving several kilobytes of RAM, which is very expensive on embedded devices;
- The ability to run from unmanaged (typically,
mmap-ed) memory. This way, scripts can be precompiled, put in flash, and run straight from there. Again, it saves RAM;
- API is cleaned up;
- 🛠 Lots of bugfixes and stability improvements.