v1.3.0 - Community Contributions
It's time for a minor version bump - this time, with some awesome contributions from the community!
We now have a math library, fully tested and integrated into the repl, as well as a bytecode disassembler in the tools (simply run make
in the tools/disassembler
directory to build it) - both of these were written by members of the community. It's awesome getting feedback and contributions from outside help - I hope to continue growing this little group for as long as people are interested!
I've also made some adjustments to how the core language behaves, as well - short-circuits now work as they were originally intended to:
fn doA() {
print "doA() called";
return true;
}
fn doB() {
print "doB() called";
return true;
}
//prints "doA() called"
doA() || doB();
For some reason, indexing an array/dictionary within an argument list wasn't working - this has been fixed.
doAThing(a[0]); //A-OK!
Finally, a small bit of memory was reclaimed by removing a superfluous scope creation around function bodies - this matters most to users who are interested in running Toy on a microcontroller.
I'm really looking forward to what the future holds for Toy!
What's Changed
- Adding a math library to toy by @Add00 in #94
- Added disassembler tool, thanks @hiperiondev
- Short circuits are now functioning correctly
- Added int to float coercions to function args and returns, when specified
- Removed an extra pair of SCOPE_BEGIN and SCOPE_END from function bytecode
- Fixed indexing in argument lists
- Minor house cleaning
Full Changelog: v1.2.1...v1.3.0