In just over 7 months, the /r/rakulang subreddit has had more than 500 people join it. Although this is still a lot less than the 1631 people that joined the now closed /r/perl6 subreddit, that number was achieved in 8.5 years. It’s good to see interest in Raku growing!
Herbert Breunung has written a multi-page article in a Heise Magazine special edition about programming languages (German), which apparently also includes an interview with Jonathan Worthington. It is behind a paywall, and supposedly you can get a free trial subscription, but yours truly has not been able to make that work.
Algebraic Data Types
Wim Vanderbauwhede, a former lambdacamel, has written an extensive blog post about using roles as algebraic data types in Raku. Specifically on how you can parameterize roles and mixin roles into other roles. You may find this article interesting if you are curious about functional-style static typing or if your would like an alternative to object-oriented programming.
Wenzel P. P. Peppmeyer has written another two blog posts in the past week, each addressing some feature or quirk of the Raku Programming Language.
Easy CLI testing
Alexey Melezhik explains how you, as a Raku module author, simply need to add a
.tomty directory with Tomty scenarios to run, to test your CLI programs that your distribution provides. A great tool just got better!
Tips for working with hashes
Andrew Shitov elaborates on the different ways one can work with hashes in Raku, explaining that a
Pair can be considered a single element element
Hash, and that a list of
Pairs is not the same as a
The champion of the month of May is Shahed Nooshmand, known for their excellent Raku one-liner solutions! The entries for Challenge #63 that have Raku solutions:
- Weekly Challenge #63 by Luca Ferrari.
- The Last Rotation with Raku by Arne Sommer.
- Last Word and Rotate String by Laurent Rosenfeld.
- Weekly Challenge #63 by Javier Luque.
- Weekly Challenge #63 by Mohammad S Anwar.
- Weekly Challenge #63 by Shahed Nooshmand.
- “Drop the Mic” – Chopped and Screwed Remix by Colin Crain.
- Weekly Challenge #63 by Jaldhar H. Vyas.
Challenge #64 is up for your perusal!
- Daniel Green optimized some lexical name lookups in MoarVM, and fixed a potential issue with strings from filenames.
- Dave Lewis fixed
CStructhandling of inlined attributes.
- Tim Smith made sure that an exception in
NativeCalldoes not destroy the name of the library in question.
- Patrick Böker was finally allowed to merge all of the new Windows quoting changes, and continued to work on the Azure CI pipelining.
- Stefan Seifert fixed a number of issues with nested compilation (like having an
BEGIN), specifically when precompiling modules.
- Elizabeth Mattijsen made sure the REPL is started if there is one command-line argument “-” and STDIN is connected to the keyboard. And they made
Str.split(Regex)up to 2x faster and stringification of
Matchobjects up to 20% faster.
- And quite an impressive number of other fixes, optimisations, and improvements.
Questions about Raku
- Behaviour of require (static + dynamic) by jakar.
- How do I check if something is an elem of a
qw? by Electric Coffee.
- Warnings while building Rakudo in Windows by Suman Khanal.
- What’s the benefit of assigning non-scalars to scalars? by Electric Coffee.
- Equivalent of Java
StringBuilder? by Konrad Bocheli.
zefin Rakudo on MacOS by dominix_pf.
- How does Raku deal with the diamond problem? by Electric Coffee.
- How do I take a reference to
new? by Electric Coffee.
- How to provide a non-slurpy array or named array from the command line? by acw.
- Why does direct binding of an
our &foonot work, but indirecting via a dynamic lookup does? by jakar.
- Alter how arguments are processed before they’re passed to sub
- Loop Over Two Arrays In Parallel? by s-ro_mojosa.
- Check if all elements of list are prime by Lars Malmsteen.
- How to get the
Hostor :authority header in Cro when using
Meanwhile on Twitter
- Type coercion in
Signatureby Khalid Elboray.
- Released yet? by Luke Champine.
- More quickly by Charles “👁” Sprickman.
- Crazy SEO by てらまこ.
- Also not true by Elizabeth Mattijsen.
NativeCallby Khalid Elboray.
- A whole language by Tor E Hagemann.
- Hypers, Gathers, Loops by The Perl and Raku Conference.
//by Marc Chantreux.
- Rod Logic by Salve J. Nilsen.
- Signature of a Callable parameter by Khalid Elboray.
- No books yet? by 寿限無.
- Playing Around by Wim Vanderbauwhede.
- A game in 170 lines of Raku by JJ Merelo.
- Don’t understand the name change by LM Mayo.
Meanwhile on perl6-users
- Changing the name of a module by Richard Hainsworth.
Comments about Raku
- Seeking work by clarkema.
- Clearer with Raku regexes by Brad Gilbert.
- Poison Pills by perlfan.
- Don’t burn out by bobthecimmerian.
- Extending your make scripts by Alexey Melezhik.
- Second only to Lisp by draegtun.
makelike tasks by Alexey Melezhik.
- Least competition by Elizabeth Mattijsen.
- An eierlegendewollmilchsau by Reini Urban.
- Don’t want a split by pdimitar.
New Raku Modules
- Math::Libgsl::QuasiRandom by Fernando Santagata.
- Cmark by Khalid Elboray.
- JSON::simd by Curt Tilmes.
Updated Raku Modules
- Math::Libgsl::Constants by Fernando Santagata.
- DB, DB::SQLite by Curt Tilmes.
- Sparrowdo, Tomty, Sparrow6, Tomtit by Alexey Melezhik.
- IRC::Client::Plugin::DiceRolls, Grammar::DiceRolls by Patrick Spek.
- CSS by David Warring.
- Algorithm::AhoCorasick by Itsuki Toyota.
- Red by Fernando Correa de Oliveira.
- MongoDB by Marcel Timmerman.
Sorry to bother you all again after only a week :-). Again a very nice batch of new and updated modules, blog posts and some very nice speedups. Keep healthy, keep safe and see you next week for yet another instalment of the Rakudo Weekly News!