2018.39 Less Than Two

The speed canary script run daily by Merijn H. Brand has dropped below 2 seconds wallclock time for the first time in the history of the test being run (FaceBook comments). Since then, this has happened one more time (at moment of writing): there’s always a bit of noise involved with these timings. Check out the raw version of the speed log, if you want to keep up to date.

Rakudo 2018.09 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. Kudos to all involved!

Thoughts on using Perl 6

Alex Schroeder explains in his blog post how he has been maintaining the Oddmuse wiki software since 2003, and that he is now learning Perl 6 using a real project (Reddit comments).

Math::Matrix

Herbert Breunung continued his series of blog posts about Math::Matrix:

Documentation from the CLI

bdmatatu describes the quick hack with which it is possible to look at the documentation of docs.perl6.org from the command line.

Worth learning

EarlTheGray enquired about Perl 6 on Reddit, specifically about the functional programming side of it. And that there didn’t appear to be much of an active Perl 6 community. Yours truly guesses we need to get out more 🙂

Core Developments

  • Ticket status of last week.
  • Samantha McVey implemented the UTF16le and UTF16be streaming encoding / decoding while following the behaviour of Perl 5 with regards to BOMs.
  • Tobias Boege fixed an issue with the recursion check of non-dwimmy hyperops.
  • Zoffix Znet continued his tireless work in preparation for the 6.d release, specifically focussing on consistent behaviour of Rats.
  • Elizabeth Mattijsen fixed an issue with QuantHash.ACCCEPTS with regards to other QuantHashes of the same type.
  • And many other smaller fixes and improvements.

Meanwhile on Twitter

Meanwhile on StackOverflow

Meanwhile on FaceBook

Meanwhile on perl6-users

Perl 6 in comments

Perl 6 Modules

New Modules:

Updated Modules:

Winding Down

A week with relatively little happening in the Perl 6 core, but all the more outside of it, judging by the number of tweets and the number of new / updated modules in the ecosystem. With the release now out of the door, a backlog of optimizations will see the spotlight in the week to come. Hopefully giving some really good news next week. See you then!

Advertisements

2018.38 Three Versus Six

Patrick Spek has written a nice blog post about some Hackerrank solutions for Python 3 and Perl 6. Which created quite a few comments on /r/python, /r/programming and /r/perl6. For some people it provided a nice way to show off their versions of the code in question!

A new Oddmuse?

Something yours truly forgot to mention last week. Alex Schroeder has been thinking about re-implementing the Oddmuse wiki using Cro (FaceBook comments). Your views are very welcome!

Thoughts on sigils?

An interesting thread caused by the question: What are your thoughts on sigils? on Reddit. A good read, with even some APL mixed in.

Signatures in Perl 6

Yours truly had the fourth installment of her series on migrating code from Perl 5 to Perl 6 published on opensource.com. Which caused some comments on Reddit: /r/perl and /r/perl6.

The 128-Language Quine Relay

An interesting blog post on esoteric.codes of last April actually also contains Perl 6! As ab6tract noticed.

Core Developments

  • Ticket status of last week.
  • Ben Davies fixed a recent regression in state and once blocks.
  • Paweł Murias fixed an optimizer issue related to +=. He also added a nqp::decodelocaltime NQP op.
  • Stefan Seifert optimized booleanification at the NQP level, by a nqp::hllbool op that replaces the nqp::p6bool op.
  • Zoffix Znet continued his preparatory work on the 6.d release of Perl 6, specifically in the area of cleaning up the test-suite (aka roast).
  • Jeremy Studer provided a bunch more JIT templates.
  • Tom Browder (partially) implemented the ‘#’ alias for %config :numbered.
  • Elizabeth Mattijsen improved the speed of the various .lines and .words methods. She also introduced a PredictiveIterator role for those Iterators that can predict the number of values that they will produce, without actually having to produce them. She also generalized the use isms feature to also include use isms 'C++'.
  • Samantha McVey implemented reading and writing files encoded in utf16 (machine order only). She’s also working on supporting utf16le and utf16be, and would like to have feedback on how to handle BOMs (aka ByteOrderMarkers). Comments welcome!
  • Aleks-Daniel Jakimenko-Aleksejev worked on improving the toaster to make things faster and more useful (failing modules are now bisected automatically). Still a work in progress. In the process Whateverable got a noticeable refactor to make parts of it reusable.
  • And many other smaller fixes, improvements and speedups.

Meanwhile on Twitter

Meanwhile on StackOverflow

Meanwhile on FaceBook

Meanwhile on perl6-users

Perl  in comments

Perl 6 Modules

New modules:

Updated Modules:

Winding Down

Even though this week was a day shorter (on account of last week’s Perl 6 Weekly being a day late), there was plenty to mention and research. As you may have noticed. See you again next week!

2018.37 A DEtour of Damian

Out of the blue, or so it seemed, Damian Conway has appeared to do a Tour of Germany, giving presentations in Frankfurt, Erlangen, Dresden and Berlin. The last day will be a full-day Advanced Technical Presentation class (thanks to Strato AG). Entrance is always free, thanks to sponsoring by the Frankfurt Perl Mongers (FaceBook comments).

Linux packages updated

Thanks to the tireless work of Claudio Ramirez, the Linux packages for the Rakudo 2018.08 Compiler Release have been updated. Which now also include support for Alpine 3.8 and openSUSE 15.0. Check them out at https://github.com/nxadm/rakudo-pkg/.

Improved hygiene in JIT templating

After last week’s Rakudo Compiler release, Bart Wiegmans has merged a branch that provided many updates to the JIT expression template compiler in MoarVM. This should make it easier and less error-prone to write JIT expression templates, as he explains in a blog post.

What I did not steal from Perl 6

Ilya Sher, the author of the Next Generation Shell describes in his blog post things that he would (like to) steal from Perl 6, or not (Reddit comments).

Math::Matrix Introduction

Herbert Breunung introduces the Math::Matrix module in the first
blog post of a series (Reddit comments).

Tailgrepping Spinners

Brian Matatu has written a nice blog post about grepping the output of a tail -f (aka looking for things from a process that writes lines to standard output as they are written) (Reddit comments). Then Ralph Mellor took the idea to ask a question about the readability of the script. One interesting quote from the responses:

The start react ... whenever { } stuff looks interesting enough for me to stick this on my Big Pile of Stuff to Look intho, though.

Twisting the Rationals

Donaldh dug deeper into the performance of rational numbers (aka Rats) in a blog post titled A Twist To The Rational Story. It also showed a nice way to use a combination of [+] and race that yours truly hadn’t thought of yet!

Spotlight on Timo Paulssen

Timo Paulssen responded to a question on the new Curious Cat platform on how he got involved with Perl 6. He further described how he made videos of cellular automata in Perl 6. Interesting stuff!

Jo Christian Oterhals at it again!

The past week did not see 1, not 2 but 3 blog posts by Jo Christian Oterhals:

All very interesting reads!

I Am Sparrowdo

Alexey Melezhik has written an introduction on how to use Sparrowdo on Windows. Cool to see a nice tool getting a proper introduction!

Swiss Perl Workshop

The past weekend also saw the Swiss Perl Workshop 2018. Separate videos of each presentation are not available yet, but since everything was live streamed, there are archives available of the raw streams: Day 1 and Day 2. Kudos to the SPW organizers and to Lee Johnson to make all of the streaming and recording seem so easy.

Core Developments

  • Ticket status of past week.
  • Since this weekly is already very late and very full, yours truly will summarize next week for two weeks.

Meanwhile on Twitter

Meanwhile on StackOverflow

Meanwhile on FaceBook

Meanwhile on perl6-users

Perl 6 in comments

Perl 6 Modules

New Modules:

Updated Modules:

Winding Down

So. Much. Happening. And not enough time. Hopefully next week’s Perl 6 Weekly will be more in time than this one. See you then!

2018.36 Normality Returns

A little later than originally anticipated, but Rakudo has had another compiler release: 2018.08, thanks to Samantha McVey (MoarVM release) and Aleks-Daniel Jakimenko-Aleksejev. After it turned out impossible to make 2018.07 stable enough for a release, it was decided to scrap that release. The 2018.08 release had a few stability issues as well, but these were all fixed in the past week. This means we’re ready for a new round of optimizations to be tried and tested!

London Perl Workshop on 24 November

Due to a planning conflict, most notably with freenode #live, the London Perl Workshop has been moved from 3 November to 24 November. You can still submit your Perl 6 related presentation!

“Learning Perl 6” Available

brian d foy tells us that Learning Perl 6 is now available as ebook in various formats. Some reviews are already available. If you contributed to the Kickstarter, you should have been notified by now.

More about “AAA” .. “ABS” Strangeness

Jo Christian Oterhals continued his quest on finding the difference in behaviour of "AAA" .. "ABS" between Perl 5 and Perl 6 (FaceBook comments).

Containers in Perl 6

Elizabeth Mattijsen had part 3 of her series on the differences between Perl 5 and Perl 6 published on opensource.com (Reddit comments).

Faster FASTA

Timo Paulssen got triggered by a question on StackOverflow, did some research which resulted in an excellent blog post (Reddit comments).

Awesome and Fascinating

Those were the words that Mr. Spaz used to describe a presentation about Perl 6 that JJ Merelo gave at the ZipRecruiter offices to the Los Angeles Perl Mongers: There’s-a.new(:Perl).in-town().

One Year Of Squashathon

Although the past weekend’s documentation Squashathon wasn’t such a big success, it was the 13th Squashathon in a row. Which means we have now over a year of Squashathons! Kudos again to Aleks-Daniel Jakimenko-Aleksejev for setting all of this in motion!

Core Developments

  • Ticket status of last week and the month of August.
  • Jeremy Studer made sure that initializing a native array with a lazy Seq, or splicing a lazy Seq into a native array, throws immediately.
  • Aleks-Daniel Jakimenko-Aleksejev removed support for $*INITTIME, as was promised in the deprecation message.
  • ribbon-otter supplied code that allows support for all coloncircumfix in the form 42.:<->.
  • ryn1x made sure that Regex.ACCEPTS(Uni) sets $/ as expected.
  • Elizabeth Mattijsen made sure that Seqs smartmatch Iterables correctly. She made it also possible to emit Mu values.
  • And some other smaller fixes and improvements.

Meanwhile on Twitter

Meanwhile on StackOverflow

Meanwhile on perl6-users

Perl 6 in comments

Perl Modules

New Modules:

Updated Modules:

Winding Down

It’s good to be back home and be able to write the Perl 6 Weekly in a familiar surrounding for a change. Next week’s Perl 6 Weekly will be coming from somewhere near Switzerland, while returning from the Swiss Perl Workshop. See you next week!

2018.35 A Quick One From Kilfenora

Coming to you while yours truly is enjoying some of the Burren, the Cliffs of Moher and Ireland in general: it’s good to meet up with old friends in Kilfenora.

A Glimpse Of The Future

Bart Wiegmans got inspired by one of Ovid‘s benchmarks to write a blog called “A Curious Benchmark“. Short-term it shows that all of the optimization work that Jonathan Worthington and Timo Paulssen have done over the past weeks (which will be merged after the 2018.08 Rakudo Compiler Release) already made that benchmark about 3x as fast in Perl 6. But maybe even more interestingly, the blog post shows the potential of Perl 6 becoming about 10x as fast than Perl 5 (for this particular benchmark at least) and being only 30% slower than compiled C code (Reddit comments).

Cro Middleware Tweak

Jonathan Worthington is inviting comments on a proposal to rework the functionality of before and after in Cro middleware.

Upcoming Conferences

Early September will see two Perl conferences, which are sadly overlapping: the Nordic Perl Workshop and Mojoconf and the Swiss Perl Workshop. Both will have some Perl 6 related presentations:

Doomed to Extinction

A poorly informed blog post by Nick Kowalski titled 5 Programming Languages Doomed to Extinction mentioned Perl 5 and Perl 6 as one of them. This spurred quite a lot of comments on Reddit.

LinkedIn Languages Index

Francesco Nidito took a fresh approach on trying to figure out the popularity of programming languages. An interesting approach that did not lump together Perl 5 and Perl 6 for a change. Yours truly must disagree with one of the points, though. Since I find Perl 6 being used by more and more people I do not know, the following statement appears to be in error:

«Perl 6» is the only language that permits you to know easily all the community 😊

How many between “AAA”..”ABS”?

Jo Christian Oterhals wrote a blog post about an intriguing difference between Perl 5 and Perl 6: Perl 6 small stuff #7. Your truly initially assumed a bug, fixed it then unfixed it after TimToady showed that the behaviour is intentional (although not tested for and not documented). To be continued…

Free all the butterflies

Nigel Hamilton re-kindled the naming debate with A plan for Perl’s branding – let’s free all the butterflies with quite a few Reddit comments.

The Perl Conference in Glasgow

Patrick Spek has written a nice blog post about his experiences at the Perl Conference in Glasgow (Reddit comments).

Core Developments

Trying to summarize core developments for 1 week has become more and more problematic. Doing 3 weeks, it feels nearly impossible to do justice to all the work many people have done. So if your work is not mentioned here, please take that as shoddy work by yours truly, rather than anything else.

  • Ticket status of the past 3 weeks.
  • Jonathan Worthington made the spesh thread more responsive by adding GC-points to the optimization process. He also made logging of code inlining settable with an environment variable, fixed a long-standing race condition with the setting of the name of newly generated types, and did a lot of work on providing more information for the code optimization logic to use.
  • Alexius Korzinek fixed several issues when encoding buffers.
  • Timo Paulssen optimized fast loops just a little bit further.
  • Stefan Seifert fixed an issue with JIT compilation related to Inline::Perl5 and a segfault related to NativeCall.
  • Samantha McVey fixed an issue with Unicode Regional Indicators.
  • Jeremy Studer fixed a pesky Travis testing issue on MacOS.
  • Zoffix Znet micro optimized some post-increments into ever-so-slightly smaller/faster pre-increments where possible in NQP.
  • Elizabeth Mattijsen optimized interpolation of variables / expressions into double quoted strings. And she did several large-scale refactors to create better optimizable Perl 6 code in the setting.
  • Rob Hoelz and Nick Logan fixed an issue with mixed slashes / backslashes on Windows in the CompUnit::RepositoryRegistry.
  • And many, many, many other fixes, (efficiency) improvements and other goodies.

Meanwhile on Twitter

Meanwhile on FaceBook

Meanwhile on StackOverflow

Meanwhile on PerlMonks

Perl 6 in comments

Perl 6 Modules

New Modules:

Updated Modules:

Winding Down

The past weeks went by much more quickly than yours truly ever imagined. But on my toes, I will need to be! Aleks-Daniel Jakimenko-Aleksejev found mention of twimbot, that is much like our notable6 bot, but with a twist:

…it either assists the author by making it easier to produce the blog post you’re reading, or it coldly replaces the author…

Hopefully it will not get to that point!. Please check in again next week to see whether yours truly really still is writing the Perl 6 Weekly!

2018.34 A Quick One From Tyndrum

While enjoying some touristic activities in the Northern parts of Scotland (well, North of Glasgow anyway), this Perl 6 Weekly comes from the town of Tyndrum. According to the Wikipedia article:

Thus unusually there are two stations serving the same small village, only a few hundred yards apart, but about 10 miles (16 km) apart by rail.

Which yours truly finds oddly descriptive of the situation in the Perl community: so close, yet seen as so far apart by some.

The Perl Conference in Glasgow

And what an excellent conference it was! And live-streamed as well all over the world. Some blog reports have already surfaced, all of them referencing Perl 6 in some form or another:

By next week, there will be separate videos for each presentation. Until then, you will have to do with the raw recorded live-streams.

Alas, not all things where hunky dory: Mark Keating issued a formal apology for things that had gone wrong (Reddit comments).

Other Blog Posts

Core Developments

Alas, too much R&R to dive into this with the appropriate amount of depth and precision. Hopefully next week a 3-week overview.

Meanwhile on Twitter

Meanwhile on FaceBook

Meanwhile on StackOverflow

Meanwhile on PerlMonks

Meanwhile on perl6-users

Perl 6 in comments

Perl 6 Modules

New Modules:

Updated Modules:

Winding Down

Having done a whole-day workshop + a last-minute presentation has taken a lot of energy from your truly. Good thing the weather cooperated for a time by being typical late-summer weather for Glasgow. Please check in again next week for more Perl 6 news!

2018.33 A Quick One From Glasgow

Greetings from the city that will host The (European) Perl Conference this week. A lot colder and wetter than yours truly got used to the past 6 weeks. It takes a little getting used to.

FOSDEM 2019 – Call for Speakers

Wendy van Dijk has issued a Call for Speakers for the Perl DevRoom at next year’s FOSDEM in Brussels (2/3 February 2019). This would be a good time to send in your Perl 6 related talk proposals!

Blog Posts

Core Developments

More about that next week when yours truly is less tired.

Meanwhile on Twitter

Meanwhile on FaceBook

Meanwhile on StackOverflow

Meanwhile on perl6-users

Perl 6 in comments

Perl 6 Modules

New Modules:

Updated Modules:

Winding Down

As predicted last week, this week’s Perl 6 Weekly is slightly later and smaller than usual. Hopefully next week yours truly will have more time while feeling better. So, see you next week!