Fork me on GitHub

MoarVM 2017.07

Full Unicode 9.0 and Emoji 4.0 text segmentation support. Faster normalization, string indexing, and string concatenation. Collation improvements, including support for reversing any of the levels. Optional output buffering on file handles. Numerous tweaks to dynamic optimization and JIT compilation to improve code quality, with a focus on Perl 6 I/O code. Asynchronous process handling improvements, including support for retrieving and plumbing together processes at the file descriptor level. And numerous other fixes and enhancements.


What is MoarVM?

Short for "Metamodel On A Runtime", MoarVM is a modern virtual machine built for the Rakudo Perl 6 compiler and the NQP Compiler Toolchain. MoarVM is used by the majority of Perl 6 programmers. Highlights include:

  • Great Unicode support, with strings represented at grapheme level
  • Dynamic analysis of running code to identify hot functions and loops, and perform a range of optimizations, including type specialization and inlining
  • Support for threads, a range of concurrency control constructs, and asynchronous sockets, timers, processes, and more
  • Generational, parallel, garbage collection
  • Support for numerous language features, including first class functions, exceptions, continuations, runtime loading of code, big integers and interfacing with native libraries