2022.07 Unsigned Released

Justin DeVuyst has released the 2022.02 version of the Rakudo Compiler. Some of the more interesting additions:

  • Native unsigned integers have become first class citizens on all levels (up to 18446744073709551615, aka 64-bit resolution).
  • Addition of $*RAT-OVERFLOW dynamic variable to govern overflow behaviour of Rats (upgrade to Num, FatRat, warn or die).
  • Add an Iterable.are method to check if all elements in an Iterable match a type.
  • Creating Complex numbers about 30x faster.

But there’s just so much more. Check it out. All of the binary packages and containers have also been updated! And kudos to Justin for making the release happen again, and everybody involved in this super release that actually broke the speed record in the test-t canary.

Podlite 0.3.0

Alexandr Zahatski has released version 0.3.0 of Podlite, the open source desktop pod6 editor, and blogged about its new features (/r/rakulang comments).

Co-operating Grammars

Mike Clarke has written a blog post about how they managed to have multiple Raku grammars inter-operate for a custom language project at work. They seemed to have bumped into a not very well documented part of Raku: calling one grammar from another. With a little help from Moritz Lenz it all worked out!

Foundation News

Please contact Makoto Nozaki if you would like to become a mentor in the Foundation’s Outreachy effort. This would be your chance to give something back to the Raku Community, to grow the Raku Community and to improve the gender balance in the Raku Community!

A dream language

Magne has written a blog post about their idea of the ideal programming language, which made Brixes wonder if the Raku Programming Language could be moulded into that vision.

Steve’s Corner

Steve Roe published two blog posts this week:

Wenzel’s Corner

Wenzel P.P. Peppmeyer wrote one blog post this week: Fuzzy commands.

Weeklies

Weekly Challenge #152 is available for your perusal.

New Pull Requests

Core Developments

  • Stefan Seifert fixed an issue with speshing of NativeCall for types other than int, long and long long.
  • Christian Bartolomäus added the (bind|get)lex_u_si on the JVM backend.
  • Vadim Belman turned Junctions into value objects, so that they can be used in Sets and .unique with fewer surprises. They also changed the handling of Junctions in .classify and .categorize.
  • Daniel Green removed some (now) unnecessary try statements.
  • Elizabeth Mattijsen made .chomp take an optional target to remove from the end of a string. And did a lot of preliminary work on using unsigned native integers optimally within the Raku core.
  • Daniel Sockwell fixed an issue in Parameter.nominal_type.
  • And quite a few other smaller fixes and improvements.

Questions about Raku

Meanwhile on Twitter

Comments about Raku

New Raku modules

  • Protocol::MQTT “A (sans-io) MQTT client implementation” by Leon Timmermans.
  • as-cli-arguments “stringify a Capture as command-line arguments” by Elizabeth Mattijsen.
  • Auth::SCRAM::Async “Salted Challenge Response Authentication Mechanism” by Leon Timmermans.
  • Dawa “A runtime debugger for Raku programs” by Brian Duggan.
  • T “An easy way of writing test assertions which output good test descriptions and error messages” by Siavash Askari Nasr.
  • Sparky-Job-Api “Api to run Sparky Jobs” by Alexey Melezhik.

Updated Raku Modules

As a side note, if you are on Twitter: @raku_new_module tweets about new and updated modules, not just on CPAN, but also on the zef ecosystem!

Winding down

A week in anticipation of the first Rakudo compiler release of 2022. And a few interesting blog posts. And some really nice modules, including an actual Raku interactive debugger! Cool stuff. See you next week for more news about the Raku Programming Language. In the meantime, stay healthy and stay safe!

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 )

Facebook photo

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

Connecting to %s