Zoffix Znet has been very busy again. Not only did he create and release a new 6.d
teaser document, he also did most of the work of making 6.d
the default implementation of Rakudo in the bleeding edge version of the code. Looks like a release on Diwali 2018 is getting more and more certain. The biggest breakage so far has been the (too) late usage of the version pragma.
Rakudo 2018.10 Compiler Release
Aleks-Daniel Jakimenko-Aleksejev and Samantha McVey have done it again: release MoarVM and the Rakudo Compiler. Claudio Ramirez took this as an immediate cue to update the directly installable Linux distributions. Rakudo Star 2018.10 will be based on this release. Kudos again to all involved! Note for the curious: this is the last release of the Rakudo compiler that implements version 6.c
of Perl 6 by default.
Rakudo running on AIX 7.1
Someone named ItchyPlant performed a lot of research and work to get Rakudo working on AIX 7.1/2. Kudos! Yet another operating system and a whole family of hardware now also support Rakudo!
Perl 6 Media Group
Zoffix Znet is looking for people to participate in a Perl 6 Core Media Group to improve consistency in Perl 6 marketing / messaging. Interested, please participate in the discussion. Yours truly hopes for a lot of participants!
Full Screen Ahead
Timo Paulssen shows off the improvements to the new MoarVM profiler user interface in his latest TPF Grant Report. It’s especially great to hear that this work is already paying off by helping Stefan Seifert with his work on the bytecode writing refactor (which should be in a mergeable state soon). You can directly follow this work in the associated repo: comments, suggestions and Pull Requests are welcomed!
Blin is Toast
Well, actually quite the opposite! Aleks-Daniel Jakimenko-Aleksejev is re-imagining the toaster functionality (basically spectesting the whole Perl 6 ecosystem) with Blin, which is capable of checking the ecosystem (1251 modules at time of writing) in about 60 minutes (on a 24 core machine) for any version of Rakudo Perl 6. But you can also use Blin on a single module to see which commit introduced a regression! A word of caution: only run this on throw-away virtual machines!
Small stuff #12
Jo Christian Oterhals added another episode to his “small stuff” series called Cobol precision, revisited (or… even more fun with FatRats)
Math Matrix
Herbert Breunung continued his series of blog posts about Math::Matrix with Part 5: Patient with docs.
Hackerrank solutions (part 2)
Patrick Spek has published part 2 of his Python 3 and Perl 6 solutions to Hackkerrank challenges (Reddit comments). Always nice to see Perl 6 and Python 3 solutions side by side.
Exportation Exploration
Joshua Yeshouroun wrote a blog post about his (dis)taste of modules that export symbols willy-nilly, followed by an update (Reddit comments). Recommended for those of you trying to grok the EXPORT
semantics of Perl 6.
Meanwhile on Codegolf
Jo King created a nice Perl 6 solution to the Written Digits Sequence problem using Unicode introspection.
How phasers work
Elizabeth Mattijsen had the sixth article about migrating Perl 5 code to Perl 6 published: How phasers work in Perl 6. Which generated a lot of tweets (reaching up to 99000 people) (Reddit comments).
perl11.org
Someone posted a link to the perl11.org website on Hacker News which set of a barrage of comments (r/perl, r/programming, r/programmingcirclejerk). Some Perl 6 specific comments on Hacker News:
- Perl 6 is called Python 3
- A nice concept, but not going anywhere
- Perl 6 people are generally very nice
- Excited about it, at least at one point
- Will go for Haskell before trying Perl 6
- I will believe it when I see it
Go 2 Transition Proposal
Ian Lance Taylor wrote a proposal on how to make incompatible changes from Go 1 to Go 2 while breaking as little as possible. It mentions Perl 6 specifically (Reddit, Hacker News comments).
Other Core Developments
- Ticket Status of last week and the week before that.
- Samantha McVey fixed a problem with
nqp::sleep
that caused it to use CPU unnecessarily. - Stefan Seifert introduced a new set of nqp:: operations specifically geared towards handling binary data, while refactoring the way MoarVM writes out bytecode during pre-compilation. He also made sure that a lot of other nqp:: ops are properly handled by the expression JIT compiler.
- Timo Paulssen focused on the new profiler, and did the groundwork for some new optimizations related to native variables.
- Elizabeth Mattijsen improved the introspection of
Parameter
and fixed a problem with.assuming
. She also made sure that the.cando
method works on allCallable
s. - Tom Browder continued his documentation of
NQP
traps. - Jonathan Worthington finally found the source of a nasty serialization context issue with parameterized types, that caused type checking to fail when it shouldn’t.
- And many, many smaller fixes, changes and other improvements.
Questions about Perl 6
- Perl 6 on AIX by ItchyPlant.
- Installing Perl 6 to
MSYS2
on Windows 10 by ismailarilik. - Is it possible to terminate a promise’s code block from another promise? by Fernando Santagata.
- Why does the sequence
'A' … 'AA'
have only one element? by Sean. - Wrong
Signature.ACCEPTS
after.wrap
sub by Mikhail Khorkov. - How to use
:since
withCompUnit
by Richard Hainsworth. KEEP/UNDO
phaser question by Norman Gaywood.- Backslashes in transliteration (
tr///
) by Jo King. - How to find what kind of data type is contained in a variable? by fenster25.
- Project Ideas or Use Cases by xohmz.
Meanwhile on Twitter
- A promise by Jo Christian Oterhals.
- A result of drinking? by とまと.
- First doc issue by Herbert Breunung.
- Go to Rust by Brad Gilbert.
- Mind slightly blown by Ninji 🔜 ScotiaCon.
- A lot to like by Not Jack.
- Not Perl 6 by Arne `Extract Services` Claassen.
- Something to brag about by Salve J. Nilsen.
MoarVM
onwasm
by トーカナイザの守護霊.~~
instead of=~
by Regular Expression.- to-camel-case by Tweet Perl6 IDE.
- Pluggable VM’s by kn.
- Golang’s Perl 6 moment by Dave Hall.
- A different language by Joaquín Ferrero.
- Not come out yet by Inetgate Writer.
- A time machine in Perl 6 by Danny McClanahan.
- Released? by Marcin Krzyzanowski.
- Verges on the baroque by Stewart Russell.
- Moved to ‘call by object’ by tef e.books.
- Tryless catch by David Nicol.
- Number one disappointment by Andy Lester.
- Pathfinder by Tweet Perl6 IDE.
- Catch, skipping by Brad Gilbert.
classify
inRed
by Fernando Correa de Oliveira.- What is Diwali by トーカナイザの守護霊.
6.d
released? by chenyf.- But more by Tweet Perl6 IDE.
- Skip 6 by Ruben if err != nil Orduz.
- Narcissistic by Tweet Perl6 IDE.
- Automatic ASCII -> Unicode by Jonathan Worthington.
- Lazy also in Perl 6 by 毎週歯医者に通っています.
- Do you think about Perl 6? by KIKUCHI Koichiro.
- Missed opportunity by Travis Campbell.
- Reduced fractions by Tweet Perl6 IDE.
choco install
by Robert Threet.- Okinawa to Perl 6 by OGATA Tetsuji.
- wew by アノ二ネコ・Stellar Catgirl.
- So damn cool by Palash Nigam.
- Love the power by Joelle Maslak.
- Big O chart by Zoffix Znet.
- How could I not by Brian Wisti.
- Inevitable threshold by ELIN.
- Connected 3 microservices by JJ Merelo.
- You could do worse by Jonathan Stowe.
- Let’s build great products by Douglas L. Jenkins.
- Using some descendant by Joelle Maslak.
- Coercers in return type constraints by Zoffix Znet.
- Handy to view the code by Joelle Maslak.
- Biggest breakage on 6.d by Zoffix Znet.
- A true Parrot Project by 毎週歯医者に通っています.
- No idea Comma existed by mikejw.
Meanwhile on FaceBook
- Articles on opensource.com by Wendy van Dijk.
- A flash from the past by Emil Perhinschi.
Meanwhile on perl6-users
- Sub name has unexpected interaction with
s///
by Richard Hogaboom. - Accessing
CompUnit
by Richard Hainsworth. - What type
$in
,$out
and$err
is by Xiao Yafeng.
Perl 6 in other comments
- Perl 5/6/Other? by auto.
- On continuations by Ralph Mellor.
- Continuations a dead end? by Ralph Mellor.
- How bad things can go by protomyth.
- Perl 6 is a joke by DonHopkins.
- In-source dynamic lexing by exikyut.
- String concatenation by Ralph Mellor.
Perl 6 Modules
New Modules:
- Blin by Aleks-Daniel Jakimenko-Aleksejev.
- Math::Vector3D, Algorithm::SkewHeap by Jeff Ober.
- Zodiac::Chinese by Tim van den Langenbergh.
- Libclang by Ahmad M. Zawawi.
- Math::Factorial::Operator by Ribbon Otter.
- API::Discord by Alastair Douglas.
- Exportable by Joshua Yeshouroun.
Updated Modules:
- VSTS::YAML::Angular::Build by Alexey Melezhik.
- JSON::Path by Jonathan Worthington.
- DOM::Tiny by Sterling Hanenkamp.
- App::Mi6 by Shoichi Kaji.
- Font::FreeType by David Warring.
- Math::Matrix by Herbert Breunung.
Winding Down
Ginormous. That is the phrase yours truly used earlier today about this Perl 6 Weekly. Having 6.d now being default language implementation, is something that will need to sink in the coming weeks. All great stuff. Hope there will be more great stuff next week. Well, pretty sure of that. So please check in again next week for more Perl 6 news!