ArkScript v4.3.0
·
80 commits
to dev
since this release
Immutable
release. Only release title and notes can be modified.
Breaking change
- in macros,
len,empty?,head,tail,@have been renamed to$len,$empty?,$head,$tailand$at. Those versions only work inside macros too, inside of having a weird dichotomy where they sometimes got applied and sometimes not
Added
applyfunction:(apply func [args...]), to call a function with a set of arguments stored in a list. Works with functions, closures and builtins+,-,*,/and many other operators can now be passed around, like builtins. This now works:(list:reduce [1 2 3] +), where before we would get a compile time error about a "freestanding operator '+'"builtin__slicebuiltin, for strings and lists:(builtin__slice data start end [step=1]); this is an experimentation and may be removed in future versions- arguments of builtin macros are properly type-checked and will now raise runtime errors if the type is incorrect
-fno-cachecli option to disable the creation of the bytecode cache folder__arkscript__- in the CLI,
filecan be-to read code from stdin
Changed
- when using the cli flag
-fdump-ir, the IR is dumped in the cache folder