Are there large speed improvements from the previous version?
* Higher order functions now specialize on (and possibly even inline!) passed functions
* Anonymous functions are now fast, too
* Fused broadcasting can avoid intermediate allocations and only make one pass through the array
* User-extensible bounds checks allow custom array types to opt-in to skipping bounds checking, enabling SIMD-ification of some for loops
That said, compilation times may take a bit longer due to the LLVM upgrade… but this resulted in an even stronger push towards better performance in many other areas.