Most of the bytecode optimazations are now done locally for each statement that is compiled. This reduces the search time for uses of temporary variables. With this the compilation time should be close to linearly proportional to the size of the source code.
I've enhanced the bytecode optimizations to remove some more redundant code. Especially some common instruction sequences that would make unnecessary work on object handles has been improved a lot.
The engine has been improved to avoid notifying the garbage collector of internal objects, e.g. functions, object types, and properties, when it is known that they are still in use. This will reduce the amount of time the gc spends trying to detect garbage for these kind of objects, and thus allow it spend that time elsewhere.
Finally the script language has received an enhancement. The mixin classes can now implement interfaces. When a class includes a mixin class that class will also implement all the interfaces that are in the mixin class.
Regards,
Andreas