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-OVERFLOWdynamic variable to govern overflow behaviour of
Rats (upgrade to
- Add an
Iterable.aremethod to check if all elements in an
Iterablematch a type.
Complexnumbers 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.
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!
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
Steve Roe published two blog posts this week:
- Raku on the M1 – up to 2.4x faster (/r/rakulang comments)
- Raku for yachting (about Physics::Navigation)
Wenzel P.P. Peppmeyer wrote one blog post this week: Fuzzy commands.
Weekly Challenge #152 is available for your perusal.
New Pull Requests
- Remove incorrect text & non-compiling example
- Minor tweak to make xt/aspell’s output better/less verbose
- Remove temporary define for migrating Rakudo extops
&[min]return RHS for ties
- Improve error msg for traits passed invalid args
- Remove unneeded/confusing
- Stefan Seifert fixed an issue with speshing of
NativeCallfor types other than
- Christian Bartolomäus added the (
lex_u_sion the JVM backend.
- Vadim Belman turned
Junctions into value objects, so that they can be used in
.uniquewith fewer surprises. They also changed the handling of
- Daniel Green removed some (now) unnecessary
- Elizabeth Mattijsen made
.chomptake 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
- And quite a few other smaller fixes and improvements.
Questions about Raku
- Escaping metacharacters in a Raku regex (like Perl’s
\Q...\E)? by Daniel Sockwell.
- What’s the point of Raku’s
modoperator? by Daniel Sockwell.
%_and detecting unwanted named arguments to a method by does it matter.
- Throw my own exception by Felix.
- How to generate a
DateTimerange by step of 5 minutes? by chenyf.
- Why can’t pass a manually created
Pairto method without a slip? by chenyf.
Meanwhile on Twitter
- Always interesting in seeing code by Jonathan Stowe.
- Changed its name? by てつを.
- Don’t hear much by GANBE.
- Reading can make one learned by Dr. Roy Schestowitz.
- Reverse, functional style by Felix.
- Super brilliant by Felix.
- Most popularly renewed by JJ Merelo.
- Running with a Raku harness by Solomon Foster.
- Not justifiable by Markus Holzer.
- Run jobs on a Sparky cluster by Alexey Melezhik.
- Already talked about it then by Stéphane Lavergne.
- Will it run Perl? by Pengy.
- Available packages by The King of Wrong.
- A Debugger for Raku! by JJ Merelo.
- Add validation for your META by Mikhail Khorkov.
- The most two’s and zeroes ever! by JJ Merelo.
- Test by adding pod at the end by JJ Merelo.
- Same like Airflow? by Alexey Melezhik.
- Easy way of writing test assertions by Siavash Askari Nasr.
- Container image updated by JJ Merelo.
- Trans goes go by Siavash Askari Nasr.
- Crypto in 50 lines by Zhuowei Zhang.
- Donated a long time ago by 結城 あゆむ.
Comments about Raku
- A spin-off language by Seth Kenion.
- Shape-shifting Ship of Theseus by Ralph Mellor.
- Inspired by Raku by Tomasz Wegrzanowski.
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
- Crypt::TweetNacl by soundart.
- CSS::Properties, CSS::Font::Resources, HTML::Canvas, HarfBuzz , HarfBuzz::Shaper::Cairo by David Warring.
- Deepgrep, Point by Joshua Yeshouroun.
- shorten-sub-commands, Ecosystem, Rakudo::CORE::META, MIME::Base64, Ecosystem::Archive::Update, Identity::Utils, JSON::Fast::Hyper, IRC::Channel::Log, App::IRC::Log, App::Raku::Log, Benchmark,Test::Class, IRC::Client by Elizabeth Mattijsen.
- Net::Ethereum by Konstantin Narkhov.
- LR1 by codechurch.
- JSON::Fast by Timo Paulssen.
- Terminal::UI by Brian Duggan.
- Raku::Pod::Render by Richard Hainsworth.
- Gnome::N by Marcel Timmerman.
- IO::Socket::Async::SSL by Jonathan Worthington.
- Test::Script::Output, Pod::Load by JJ Merelo.
- Sparrow6, Sparrowdo, Sparky by Alexey Melezhik.
- Intl::CLDR by Matthew “Stephen” Stuckwisch.
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!
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!