This release include several major changes :
runtime exceptions : several operations that were returning null
before are now raising an exception. This is the case for invalid function calls (not a function or invalid number of arguments), object field access (for example null.x) , array access (still null if outside of bounds) and numerical operations.
linker : using nekoc -link
you can now link a lot of .n bytecode files together into a single standalone .n file
nekoboot : this utility enable you to create standalone executables from a single bytecode file
renaming : the neko virtual machine is now named neko
(instead of nekovm) and both neko and nekoml compilers are named nekoc
and nekoml
. Compilers are built using nekoboot and are then standalon executables (this is more easy to use, simply nekoc myfile.neko
).
TCO : tail recursion optimizations in Neko
Object Prototypes : object can now have chained prototype (see Language Reference Documentation)
standard library : added UTF8 support, improved XML parser, and other useful primitives as well
licence change : Neko 1.2 is now LGPL while Neko 1.1 was GPL