FOSDEM Community Dinner Information
TPRF sponsor the FOSDEM Perl and Raku community dinner which is is traditionally held on the Saturday evening. All food is included and guests are free to purchase their own drinks. [Ed: guess that’s what they mean by free as in beer?]
31st January 2026 19:30
Please register to attend:
https://perlfoundation.org/fosdem/community-dinner.html
Richard’s Corner
Richard Hainsworth has produced a brand new online browser/editor for RakuDoc (v2).
https://raku.finanalyst.org/rakudoc_editor/ (the final / is important)
There are two sample rakudoc sources via the drop-down; the render test one may take some time to render.
You can upload your own RakuDoc source, and download the RakuDoc source to your download directory.
The docker image that runs this browser contains the latest version of RakuDoc (v2), which includes the enumeration functionality.
Very nice!
Liz’s Corner
This week, Elizabeth Mattijsen (lizmat) has blasted out 4 posts in her series on WHY RAKU GETS SHOUTY SOMETIMES:
Set phasers to stun. Stay tuned for more.
Weeklies
Weekly Challenge #358 is available for your enjoyment.
Raku Tips ‘n Tricks
This week, gleaned from a recent exchange between timo, arkuiat and profoundly nerdy:
In Raku, the
forkeyword is the only looping construct that binds to$_(the topic variable) each time through the loop. Unlike Perl, in Raku there is no usage ofwhilethat does this. Other keywords that also automatically bind$_(but don’t loop) arewithandgiven, but I’m sure there are others that I’m not coming up with with right off the top of my head.
Of course, you can always go something like:
while prompt('>> ') -> $_ { say "I say, $_"; }
Here are the keywords that do bind and use $_:
my @a = <a b c>; my $x = 42;
#for, given and with bind $_
.say for @a;
.say given $x;
.say with $x; #if defined
#when reuses givens $_
given $x {
when 42 { say $_ } # same $_ as given
}
#whenever (Each event emitted by the Supply becomes $_)
my $s = supply { emit 1; emit 2; emit 3; done; }
react {
whenever $s {
say $_; # emitted value
}
}
If you don’t specify a target, regexes default to $_:
#regex matches m//, s///
{ say "match!" if /ell/ } given "hello";
For map, grep and sort $_ exists, but its block magic, not keyword binding:
my @a = <a b c>;
@a.map({ .say });
Your contribution is welcome, please make a gist and share via the #raku channel on IRC or Discord.
New Doc & Web Pull Requests
- Update installation options link in Install.rakumod rcmlz
- Jupyter binder Steve Roe
- Update Unicode version to 17.0 in documentation habere-et-dispertire
Core Developments
-
Improvements:
- Remove meaningless command-line argument “parsetrace” [cff551c8]
- Add infix + – / * candidates for mixed int / num [1b46f713]
- Make -MSIL cleaner by excluding any core BBs [c7e41bd8]
- Test .from-posix versus .from-posix-nanos [f95aefad]
- Add profiling opts (from NQP) [6f087b06]
- Treat .WHERE as a macro, just as .HOW and friends [a0a198dd]
- Give “macro” DEFINITE same treatment as WHO and friends [62927745]
- Give “macro” REPR same treatment as WHO and friends [971b2fa4]
-
Fixes:
- Fix roast test failure caused by 1b46f7135b7776e779 [fbb967b3]
- Rename Test’s exit-ok to exits-ok [24e6ff34]
- MoarVM alignment fix for GCC 15.1/OpenSuse Leap 16 [fb0142fe]
- Fix an inverted logic scenerio for $type_env [3babcc69]
-
RakuAST:
- Fixup handling of =numtable [fcc0e185]
- Allow for =table3 and friends in podification [f3ada07f]
- Prevent execution error if no RakuAST [d1a33cd7]
- Rename =restart to =counter [dc33497f]
- Make rakudoc2text also take a ::CompUnit [81ea8224]
-
Internal:
- MSI: Use $(var.VERSION) For Product Version Instead Of Hardcoded “1.0.0” [a9e53a05]
- Update Copyrights To 2026 [e0797921][33652f14][6f69b3aa][fce89c25] [52995edb][c7e8ffb6][39d5610b][c4efa5f1][422e44d0][8676d9b4][5e10741c]
Extracted from the latest Draft Changelog.
Questions About Raku
- Two level export – help needed please by Steve Roe
Comments About Raku
- Oh God, they actually put that awful logo front and center by preommr
- Draig, a Welsh Programming Language – This is neat! by benrutter
- perl community’s love of complexity, which led to the disaster that was Raku by clay_shirky
Meantime on The Socials
- hear a #RakuLang program¹ playing the Amen Break forever* by Jonathan Stowe
- MoarVM, the virtual machine that runs #rakulang, has a dynamic specializer by timo
- The language is actually supremely nice by David Schultz
- It’s my current fav language by 4zv4l
- rakulang even goes a bit further, by creating grammars by CppGuy
Updated Raku Modules
- Physics::Unit, Air by Steve Roe
- Terminal::UI, App::samaki by Brian Duggan
- Terminal::Tests, Terminal::Widgets, Terminal::Capabilities by Geoffrey Broadwell
- App::Mi6 by skaji
- LLM::RetrievalAugmentedGeneration, LLM::Graph by Anton Antonov
- List::Agnostic, Text::Emoji, MoarVM::Bytecode, MacOS::NativeLib, Array::Agnostic by Elizabeth Mattijsen
Winding down
Dear USA friends & colleagues – on a personal note, I want to be sure you know that you are loved and embraced by the Raku community (I lived for a while in Colo. Spgs and SF), and that any negative view that we hold regarding D. Trump and his entourage is not intended as a general attack on the American people.
Please keep staying safe and healthy, and keep up the good work! Even after week 52 of hopefully only 209.
Meanwhile, still: Слава Україні! Героям слава!
~librasteve
