Inspired by the mention of increased number of visitors to the 2021 Raku Advent Calendar (up 180% from 2020), and an article about the cycle of adoption of technology, Steve Roe created a Pull Request for the Raku’s Most Wanted list, which describes a plan to make the Raku Programming Language the tool of choice for the scientist / programmer that is hitting the limits of Python. Hopefully, a Python Perch for all the people working on this in the Rakudo Weekly News, will become a thing!
FOSDEM 2022 Status
The Call for Participation for the Raku DevRoom at FOSDEM 2022 is closed. Andrew Shitov lists the 10 presentations accepted for the Raku DevRoom, and the two that were submitted to other FOSDEM tracks. Looks like an exciting program to be seen on the 5th of February!
Complete Course of Raku
Andrew Shitov also reported on the progress of the Complete Course of the Raku Programming Language.
On Wolfram and Mathematica
Anton Antonov has written a blog post about connecting Mathematica and Raku (/r/rakulang comments).
Another Speedrun
Tomasz Wegrzanowski did another of their Speedrun blog posts, this time about the regular expressions of the Raku Programming Language. This caused quite some discussion. Specifically because of deciding that the behaviour of \d
in Raku’s regular expressions is a design bug (/r/rakulang comments). But it is good to see such an article about Raku “outside” of the bubble!
Looking forward / backward
Several people looked forward and/or backward at the start of the new year:
- My new modules in 2021 by Leon Timmermans.
- New Years Resolutions by Matthew Stuckwisch.
Sylvain’s Corner
Sylvain Colinet continued their series of articles about writing an SNES assembler / compiler / disassembler in Raku: Day 4 -Testing.
Flavio’s Corner
- Fishy Accordion
- GPS is smarter – part 2
- GPS is smarter – part 3
- Flashy Enhancements
- Many-Worlds over Copenhagen
- Add and remove
- Then came amphipods…
Weeklies
Weekly Challenge #147 is available for your perusal (and of course, you can also still have a look at #146 because the Weekly Challenge did not skip a week)!
New Pull Requests
- Add resolution document for #135 (Add
Dict
/Tuple
to the core) - Fix possible access to fromspace after deopt materialization
- Update
libuv
to version 1.43.0 - Add
mimalloc
submodule, and default tomimalloc
where possible - More preparations for fixing unsigned handling (MoarVM)
- Support using
C11
atomics as an alternative libatomic_ops - Replace flatnamed arg flag by flat | named
- More preparations for fixing unsigned handling (NQP)
- Make
Int.roll
/pick
act as(^Int).roll
/pick
on 6.e - Preparations for fixing unsigned handling (Rakudo)
Core Developments
- Stefan Seifert merged a lot of their work (of the past month or so) on properly supporting native unsigned integers in
MoarVM
andNQP
. More to follow. - Daniel Green optimized various allocations in
MoarVM
, and optimized the use ofnqp::radix
(_I
). - Samantha McVey worked a bit on the Unicode Collation Data logic.
- Nicholas Clark fixed an issue with include (
.h
) files onMoarVM
. - Vadim Belman made improvements on
given
/when
, smartmatching and their relation to junctions. They also added support for a$RAKUDO_OPT
environment variable to set command line options, and fixed documentation of parametric roles with#=
. - Wenzel P.P. Peppmeyer implemented a sub version of the
rotor
functionality. - Elizabeth Mattijsen removed the undocumented and untested
uniprop-int
/str
/bool
functionality, introduced the$*RAT-OVERFLOW
dynamic variable, which governs the behaviour of overflowingRat
values (downgrade toNum
, upgrade toFatRat
,fail
ordie
), added anOrder
coercer forCool
values, made creation ofComplex
values about 30x as fast, added a:slip
named argument toroundrobin()
, and added the.infer
method on any iterable (returning the tightest common type). - Christian Bartolomäus fixed various issues on the
JVM
backend. - moon-chilled made creating
Uni
objects for invalid code points an error. - Oleksandr Kiryuhin added tests for “closed handle” error messages.
- Jonathan Worthington changed the way attribute initialization is handled, replacing the slightly brittle approach that was used so far, and made
.WHY
on role groups delegate to the default role. - Martin Kealy fixed an issue with the interpretaton of
$x ** ±Inf
(which can be 0 sometimes). - Aleks-Daniel Jakimenko-Aleksejev removed the now considered ineffective
RESTRICTED
setting. - Steve Dondley inspired Patrick Böker to fix a problem with the
set-env.sh
script on MacOS. - And quite a few other smaller tweaks and fixes.
Questions about Raku
- Apply one signature test to multiple positionals by Steve Roe.
- Using
.subst
with a partial regex match by Mariano R. - Library for manipulating matrices? by Suman Khanal.
- Ambiguous call to
infix(Hyper: Dan::Series, Int)
by Steve Roe. - Possible to get arrow keys working with REPL on MacOS? by anki_steve.
- Use a different precompilation folder? by Ali.
- Of Integers and Rats… by s-ro_mojosa.
- I don’t think I’m using the
multi
feature very well in my code. How can I improve it? by anki_steve. - Getting error trying to install
Inline::Perl5
by anki_steve. - Trouble understanding junctions by glacierdweller.
- How do I make an argument optional, have a default, with a
where
test? by StevieD.
Meanwhile on Twitter
- Times I don’t want this by Curtis Poe.
- Trapped in a loop by ɱҽƚҽσɾ ƈυʅƚιʂƚ☄️🦕.
- It’s on! by Jonathan Stowe.
- More
App::RaCoCo
by Mikhail Khorkov. - Steal these ideas! by Elizabeth Mattijsen.
- Contributing in 5 languages by Mohammad S Anwar.
- Added
softmax
example by Suman Khanal. - Completed Passage Pathing by Julio.
- Testing in under a minute by JJ Merelo.
- Designing containers for Github Actions by JJ Merelo.
Sparky
can run in cluster mode by Alexey Melezhik.bash
in Raku by Marc Chantreux.- Failing at something by JJ Merelo.
Sparky
now has job stashes by Alexey Melezhik.- Complete Transparent Origami by Julio.
- Looking for feedback by Elizabeth Mattijsen.
- The promise of code by Mohammad S Anwar.
- Over 3 years old by mennof.
- Wonder if it slows down by やっさん🍶.
Github::Actions
has been released by JJ Merelo.- Playing with records by JJ Merelo.
- Didn’t come out by PiTTAYA⊿⚡️👾.
- An example of
Sparky
pipelines by Alexey Melezhik. - Not a bug by Jonathan Stowe.
- Another language by MATUKEN.
- Parallel installation of multiple ado builds by Alexey Melezhik.
- When learning about the
\d
bug by Tomasz Wegrzanowski. - A bonus issue by Tomasz Wegrzanowski.
- A new trend by Mohammad S Anwar.
- A great summary of type systems and how they work by JJ Merelo.
- Feature of the day by Jonathan Stowe.
- Register based? by Chris in the garden.
- Raku Github Action for testing by JJ Merelo.
- Real soon by JJ Merelo.
Meanwhile on the mailing list
- Is
use v6
still a thing? by Marc Chantreux. - About binary protocol porting by Jon Smart.
- The
MAIN
questions by Marc Chantreux. - File format extensions by Richard Hainsworth.
- Implementation of documented POD6 behaviour by Richard Hainsworth.
- Last day for FOSDEM submission by Marc Chantreux.
- Continuous testing by Richard Hainsworth.
- Should I start learning Perl? by Turritopsis Dohrnii Teo En Ming.
- Raku name change by Richard Hainsworth.
- Probably worth a bug report ? by Marc Chantreux.
- Update: meta data in Pod Block by Richard Hainsworth.
- Full blown macros? by rir.
Comments about Raku
- Raku Influence Network
- How much I’ve learned the past 3 years by Ralph Mellor.
- Fitting multiple paradigms more smoothly by dan-robertson.
- Summing by PinkMilkshake.
- Not offering a viable migration path by byron4242.
- Maybe epsilon closely related elements by Ralph Mellor.
- Mindboggling by unixhero.
- Reminds me of
ACCEPTS
by Ralph Mellor. - One of the most advanced languages today by GuB-42.
New Raku modules
- Protocol::MQTT “A networking and timing independent implementation of the MQTT protocol” by Leon Timmermans.
- Updown “Provide basic API to Updown.io” by Elizabeth Mattijsen.
- Shareable “Provide a parent class with shareable and semi-persistent state” by Tom Browder.
- Physics::Navigation “Some units for navigation” by Steve Roe.
- uniprop “Provide
uniprop-
subs” by Elizabeth Mattijsen. - Mac::Applications::List “List installed apps found in standard and other directories” by Steve Dondley.
- GitHub::Actions “Write GitHub Actions using Raku” by JJ Merelo.
- Env::File “Read files specified in Environment” by S. Thiriet.
- Sustenance “Calorie tracker and diet planner” by Andy Weidenbaum.
- ValueList “Provide an immutable
List
value type” by Elizabeth Mattijsen. - ValueMap “Provide an immutable
Map
value type” by Elizabeth Mattijsen.
Updated Raku Modules
- App::Racoco::Report::ReporterCoveralls by Mikhail Khorkov.
- Cairo by Timo Paulssen.
- Gnome::Cairo, Gnome::N, Gnome::Gtk3 by Marcel Timmerman.
- Pod::To::PDF::Lite, PDF::Content, PDF by David Warring.
- TinyFloats, Text::MiscUtils by Geoffrey Broadwell.
- Hash2Class, IRC::Client, IRC::Client::Plugin::Logger, uniname-words, Tuple by Elizabeth Mattijsen.
- Storable::Lite, Date::Easter by Tom Browder.
- TAP by Leon Timmermans.
- Transit::Network by Arne Sommer.
- Physics::Measure by Steve Roe.
- raku-pod-extraction, Raku::Pod::Render by Richard Hainsworth.
- Data::Reshapers, Data::Summarizers, Data::ExampleDatasets by Anton Antonov.
- Inline::Perl5 by Stefan Seifert.
- Testo, Test::Output, Subset::Helper by JJ Merelo.
- Sway::Config by Siavash Askari Nasr.
- Chronic by Jonathan Stowe.
Winding down
With a very filled first Rakudo Weekly News of 2022! And still many things in the pipeline! Hope you had a good time during this holiday season. May 2022 be for you what 2021 was most definitely not! Meanwhile, continue to stay healthy and safe! See you next week for the second Rakudo Weekly News of 2022!