The TIOBE index for June 2023 puts the Raku Programming Language at #48, so inside the top 50 for the first time! With an actual mention by TIOBE’s CEO: “…we see two interesting new languages entering the top 50 for the first time this month: … and Raku (the fork/successor of Perl)” (/r/rakulang comments).
2023.05 Release
In the nick of time Justin DeVuyst managed to produce the 2023.05 release of the Rakudo Compiler. Some binary packages are not available yet, while others are. This will be fixed with either an update, or with the next release.
Conference News
Sadly, the Raku 2023 in-person Conference in Riga, Latvia has been cancelled. Instead, an online Raku 2023 Conference will be organized in either September or October 2023 (dates to be announced).
In related news: there’s only one week left to book your rooms cheaply at the in-person TPRC in Toronto that has these Raku Programming Language presentations:
- Raku for Beginners by Bruce Gray.
- Sorting Whatever* in $LANG by Bruce Gray.
- Towards Slangs and DSLs by Matthew Stuckwisch.
- Optimize your private blockchain storage with Raku language by Konstantin Narkhov.
- Brainf**king with RakuAST by Matthew Stuckwisch.
Wanted: Raku Video Curator
Ralph Mellor is looking for someone to help setup a playlist / YouTube channel of curated Raku videos, being able to provide such a person with a flying start! An excellent chance for someone with love for Raku to provide an important (non-technical) contribution!
Steering Council Update
Richard Hainsworth, recently very much involved in the Raku documentation effort, was invited to join the Raku Steering Council, accepted the invitation and attended the first meeting after accepting.
Raku Core Summit
The first Raku Core Summit! Three+ days of discussions, hacking, making plans and finally having some quality time to work on something that has been bugging for a long time. All participants have returned home safely and will hopefully find time to collect their thoughts about the Raku Core Summit in a blog post. A word of thanks to the sponsors: The Perl and Raku Foundation, WenZPerl, Edument and Rootprompt who made this possible.
And a big thank you to Wendy van Dijk for all the good food / snacks / drinks and general support before, during and after the summit.
Elizabeth’s Corner
Elizabeth Mattijsen published their final installment in the RakuAST for Early Adopters series: Shaking the RakuAST Tree.
Steve’s Corner
Steve Roe tries to give an answer to the question whether the anonymous state variable is a hack or not in “Cascading Accessors” (/r/rakulang comments).
Bart’s Corner
Bart Wiegmans provided a Retrospective of the MoarVM JIT. Good to see them back again, although the post also feels a bit like a goodbye.
Clifton’s Corner
Clifton Wood is looking into the possibility of porting BQN operators into the Raku Programming Language.
Weeklies
Weekly Challenge #220 and #221 are available for your perusal.
New Pull Requests
- Add ops for unix domain sockets
- Trying mingw64 instead of mingw32
- Don’t collapse a string’s strands when matching against it
- Rename
Pod::Data
toHashray
- Add
connect-path
andlisten-path
toIO::Socket::Async
- Make
IO::Handle.Supply
read character-by-character - Add
X::Temporal::OutOfRange
- RakuAST: Make
$(;)
return an empty list as it should be - Implement
Uni.encode
- Make “string” but
False
eqv “string” butFalse
- Deprecate including an ambiguous
.pm
module file - Make extensions for
CURFS
configurable
Core Developments
- Patrick Böker fixed the Windows build of MoarVM caused by missing libraries introduced by a
libuv
update. - Daniel Green switched the random number generator on MoarVM to JSF64.
- Jonathan Worthington fixed an issue with regexes that used a lot of backtracking, making them run up to 6x as fast with a lot less memory usage.
- Vadim Belman fixed an issue with type checking of roles with any indirect parents.
- Nick Logan fixed a nit in
Compunit::PrecompilationRepository
. - Elizabeth Mattijsen moved roast tests that need a specific Raku language version into dedicated “6.c” and “6.d” subdirectories, and made the error handling of unknown methods a bit smarter.
And in RakuAST developments these two weeks:
- Elizabeth Mattijsen fixed a lot of issues with deparsing, .rakuification and added support for
$=data
(as speculated in S26) and declarator doc support for any variable. And started making the Raku grammar more accessible / documentable / APIable by replacing underscores in identifiers by hyphens. - Jonathan Worthington made type checking of
RakuAST::
classes much faster. - Patrick Böker implemented colonpairs on statement prefixes.
- Stefan Seifert added support for traits on signature declarations, indirect lookups on terms. And improved literalization support and runtime replacement of identifiers looked up at compile time.
- The number of passing test-files with the new Raku grammar are now 140/150 (
make test
) and 880/1355 (make spectest
+55).
Meanwhile on Mastodon
- Completely readable and non-evil by Kay Rhodes.
- An inspiring article by GripNews.
- It’s in the details by Paul Buetow.
- Easy to modify by Joelle Maslak.
- Combining uptime records by Paul Buetow.
- Love the possibilities of Raku by Paul Buetow.
- Not much to do with meta-programming capabilities by Mark Gardner.
- Want to be in there as well by Wendy van Dijk.
Meanwhile still on Twitter
- A gaze of iterators by JJ Merelo.
- Like the informality by Luis F. Uceta.
- It’s in the details by Paul Buetow.
- What would it be? by Chris Jack.
- Satisfying the AI by Jonathan Stowe.
Questions about Raku
- Is there a way to get all files in a directory recursively in a concise manner? by menfon.
- How are Junctions evaluated? by WhiteMist.
Comments
- Sigils are underappreciated (2022) on HackerNews.
- Not passing public judgement by kqr.
- Hard to avoid by flussence.
- Not so pragmatic by bio_risk.
- On hygienic macros by patrec.
- On kebab-case by ibiza.
- No length at all by elcaro.
- Sitting on the sidelines by svieira.
- Something you can attach by theangryepicbanana.
- In many functional languages by klibertp.
- Looks cool. Won’t use it by thunderfault.
New Raku Modules
- AlgorithmsIT “Provides some functions from ‘Introduction to Algorithms'” by Tom Browder.
- Terminal::Capabilities “Container for terminal capabilities, with useful defaults” by Geoffrey Broadwell.
Updated Raku Modules
- LibXML by David Warring.
- SQL::Abstract, Protocol::Postgres, Net::Postgres by Leon Timmermans.
- JSON::Fast::Hyper, Ecosystem::Archive::Update, App::Rak by Elizabeth Mattijsen.
- CLI::AWS::EC2-Simple, CLI::Wordpress, Dan, Dan::Pandas, Dan::Polars, Math::Polygons, Physics::Unit, Physics::Error, Physics::Measure, Physics::Constants, Physics::Navigation by Steve Roe.
- Archive::SimpleZip by Paul Marquess.
- BusyIndicator by Joelle Maslak.
- Data::TypeSystem, Data::Reshapers, DSL::Shared, DSL::Entity::WeatherData by Anton Antonov.
- Raku::Pod::Render, Collection by Richard Hainsworth.
- MUGS::Core, MUGS::Games, MUGS::UI::CLI, Terminal::Widgets, MUGS::UI::TUI, MUGS::UI::WebSimple, MUGS, Terminal::Print, Terminal::LineEditor by Geoffrey Broadwell.
- CSV::Parser by Tony O’Dell.
- PublicSuffix by JJ Atria.
Winding down
A lot more things got done at the Raku Core Summit, but are still in the pipeline. So hopefully you will learn about them in subsequent issues of the Rakudo Weekly News.
The past weeks have also shown events in Ukraine unfolding in expected and unexpected ways, e.g. using flooding as a scorched earth tactic. There is only one way this can and must end. Слава Україні! Героям слава!
Please keep staying safe, keep staying healthy, and keep up the good work!
If you like what I’m doing, committing to a small sponsorship would mean a great deal!