2021.40 It’s here!

With a MoarVM, NQP and Rakudo™ merge (at 922 commits and 335 files changed by 16 contributors), the work on the new-disp branch that started about 18 months ago, was finally made mainstream. Special kudos to everybody who was involved in what was the biggest internal change since the MoarVM backend was initially conceived. Jonathan Worthington reports about in The new MoarVM dispatch mechanism is here! (/r/rakulang, Twitter comments).

The coming weeks will be used to iron out the sharp edges that some people that prefer to work bleeding edge, have reported. Many cases show performance improvements (such as the test-t benchmark now being 20% faster), while others are more or less the same. Some severe performance degradations have been tracked and fixed (at least temporarily).

Raku Infrastructure Volunteers

The Raku Steering Council has issued a Call for Raku Infrastructure Volunteers (/r/rakulang comments), noting that much of the essential Raku infrastructure is being run by individuals, causing a very low bus factor on these functionalities.

HacktoberFest 2021

It’s that time of the year again! The HacktoberFest allows you to support open source in the best way you can! And if you’re not interested in yet another T-shirt, you can have a tree planted in your name instead. How green is that? And if you’re a maintainer of an open source project: please don’t forget to mark the appropriate issues as a “HacktoberFest” issue, so that it will be easier for you to be helped!

Simon’s Corner

Simon Proctor returns with a blog post related to the Weekly Challenge: Why not reduction? (/r/rakulang comments).

Vadim’s Corner

Vadim Belman returns with a blog post about stashes and merging of symbols from several compunits in Merging Symbols Issue.


Weekly Challenge #133 is available for your perusal.

New Pull Requests

Core Developments

Changes since the new-disp branch was merged:

  • Jonathan Worthington
    • fixed many issues related to mega-morphic call-sites (which initially introduced a severe performance penalty for those cases)
    • fixed several memory leaks
    • corrected a libffi / dyncall discrepancy
    • fixed an issue with role punning
    • fixed an issue with CALL-ME methods in a role
    • fixed specifying type objects to indicate no callback given in NativeCall.
  • Nicholas Clark fixed an issue with the sp_assertparamcheck and sp_bindcomplete operators that were incorrectly being handled in the run loop (which oddly did not have any consequences on little endian systems, but caused very weird errors on big endian systems).
  • Daniel Green fixed several building issues with Continuous Integration tests, and insured that the JVM backend on NQP tested ok again after the new-disp merge.
  • Vadim Belman introduced generic signature constraints, such as in sub foo(::T, :&fn:(T)) {...}, and made sure that signature constraints are shown in Parameter.raku.
  • Elizabeth Mattijsen fixed a problem in the suggestions for a “method not found” error and marked use of the $*PERL dynamic variable as deprecated.

Questions about Raku

Meanwhile on Twitter

Meanwhile on the mailing list

Comments about Raku

New Raku modules

  • Hash::str “provide a hash with native string keys” by Elizabeth Mattijsen.
  • Pod::Contents “a module for getting Pod contents as a list or string” by Siavash Askari Nasr.
  • Curry “module for currying functions” by Siavash Askari Nasr.
  • Protobuf “Parse and manage Protobufs” by Brian Duggan.

Updated Raku Modules

Winding down

With apologies for the late delivery, but then again the past week had a lot to take in. A week with the culmination of 18 months of effort, a bunch of interesting new modules and some cool blog posts. Please check in again next week for more news about the Raku® Programming Language!

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out /  Change )

Twitter picture

You are commenting using your Twitter account. Log Out /  Change )

Facebook photo

You are commenting using your Facebook account. Log Out /  Change )

Connecting to %s