Version 0.4.8 Released
Changelog
-
Added a standard library that will be included by default introducing common functionality for buffers, math, json, net, fs, and more. See full reference here: lovm2_std.
-
Implemented a new iterator value for
Str
,List
, andDict
. This allows us to replicate aforeach
construct using a new repeat variant:
gen::Repeat::repeat_iterating(<collection_expr>, <item_variable>)
- Implemented exclusive or, shift left and shift right:
Expr::xor(<op1>, <op2>)
Expr::shl(<op>, <n>)
Expr::shr(<op>, <n>)
- The project layout changed removing
lovm2_error
andlovm2_internals
completely:
lovm2_core - Bytecode, Vm, Errors
lovm2_std - Implementation of the standard library
-
Serialized modules now have a special four byte sequence at the start. This will improve correctness when loading modules from file.
-
Modules will be cached at
Vm
level. -
Improved
HIR -> LIR
lowering performance significantly.