2018.49/50 Diwali Landed

Aleks-Daniel Jakimenko-Aleksejev and Samantha McVey have released the 2018.11 Rakudo Compiler, which is the first Rakudo compiler release that standardizes on Perl 6.d, the second major version of Perl 6 (PDF version). Claudio Ramirez immediately followed up on that with an update of all of the Linux packages.

So why is this important? After all, most of the 6.d changes had already been active in previous Rakudo compiler releases. Therefore one should really look at the list of version controlled changes. From a performance point of view for heavily concurrent programs, making await non-blocking by default is probably the most important.

In Perl 6.d you can easily run many thousands of simultaneous jobs. That’s because if something is awaiting an external result, it will no longer block the thread it is in (which it did in Perl 6.c, severely limiting doing many asynchronous operations simultaneously and adding a very real possibility of deadlocking). Instead it now relinquishes control of the thread so another job can make use of it.

Easily run examples from documentation

Aaron Sherman thinks it would be a good idea to add links to 6pad from the Perl 6 documentation. Additional comments / views welcome!

German Perl Workshop

The dates for the German Perl Workshop 2019 have been set: 6 – 8 March in Munich at the Hochschule für Angewandte Wissenschaften München. There’s a list of suggested talk subjects and a CFP. Please submit your Perl 6 talk proposal: Munich is a cool city and the German Perl Workshop is one of the oldest Perl Workshops in the world!

The Perl Conference in Pittsburgh

The website for the Perl Conference 2019 is now live: it will be held from 16 to 21 June at the DoubleTree by Hilton Hotel & Suites Pittsburgh Downtown in Pittsburgh, PA. Talk proposals can be submitted from the 15th of December, so you will have to be a little patient!

Perl at 35C3

Perl will be present at the 35th Chaos Computer Congress from 27 to 30 December in Leipzig. Kudos to all the people making that happen. It’s too late to get tickets now. But if you already have a ticket and want to help, check out the #35c3 IRC channel on irc.perl.org.

YAPC::Tokyo 2019

Almost slipped by without yours truly noticing: the YAPC::Tokyo 2019 on 26 January 2019. With some Perl 6 related talks:

  • Perl in the winter of 2019 by Kenichi Ishigaki.
  • Application Development in Perl 6 by risou.
  • Revive to modern Perl by 八雲アナグラ.

You will need to brush up on your Japanese though, by the looks of it.

Tis the time of year

This year, Perl  does not have 1 but 2 Advent calendars: the tenth edition of the Perl 6 Advent Calendar (which is a community effort) and the first edition of the Perl 6 One-Liner Advent Calendar (by Andrew Shitov). So what are the posts so far?

Perl 6 Advent Calendar:

Perl 6 One-Liner Advent Calendar:

Regexes and guesses

Jo Christian Oterhals has published another story about his use of Perl 6: Small stuff #14: Regexes and guesses (name extraction). If you don’t learn anything about Perl 6 there (which yours truly finds unlikely), you will at least learn about the difference between Bokmål and Nynorsk!

Go 2, here we come!

Robert Griesemer has published a blog post about the future of Go: Go 2, here we come. In an earlier version, this contained the phrase “Don’t be Perl 6”. This caused quite some discussion about Perl 6 on Reddit and Hacker News. Read at your own peril.

Haskell to Perl 6

voihannena posted a link to the Haskell to Perl 6 documentation page, which spurred a top-20 place on the Hacker News front page and a quite some positive (and some negative) comments. An interesting read if you want to know about how some people look at Perl 6.

Core Developments

  • Ticket status: last week, the week before that and the month of November.
  • Timo Paulssen fixed a memory leak with spesh logging on long running (otherwise idle) processes such as a Cro app. He also micro-optimized an internal Match method that may be noticeable when using a lot of regular expressions in a program.
  • Samantha McVey fixed a lot of build warnings on MoarVM. She also worked on improving building of MoarVM on AIX systems.
  • Ben Davies fixed a double free.
  • Petr Rockai fixed a file-descriptor leak by adding a cancel handler for filewatch tasks. And fixed an unnecessary warning in IO::Notification.
  • Stefan Seifert fixed a problem with writing bytecode on big-endian systems, recently introduced by the MAST-stage refactor.
  • Paweł Murias did a lot of work on the Javascript backend, about which he reported very succinctly.
  • Elizabeth Mattijsen fixed a few edge cases with set operators. She also made Attribute‘s get_value and set_value fully transparent.
  • And many other smaller fixes and improvements.

Questions about Perl 6

Meanwhile on Twitter

Meanwhile on FaceBook

Meanwhile on perl6-users

Perl 6 in comments

Perl 6 Modules

New Modules:

Updated Modues:

Winding Down

Due to being down with the flu, yours truly could not make a Perl 6 Weekly last week.  So therefore this week’s covers two weeks of events in the Perl 6 universe.  Hope to see you next week for yet another batch of Perl 6 goodies!

Advertisements

2018.48 Groonga Grep!

Kenichi Ishigaki (aka charsbar) has announced yet another CPAN Grep that allows you to search the contents of distributions on CPAN. And it also works on Perl 6 distributions! The search engine is powered by Groonga, an open source fulltext search engine and column store that yours truly had not heard of before.

London Perl Workshop

Both Mohammad S. Anwar and Dave Cross mentioned Perl 6 in their reports about the London Perl Workshop. Unfortunately, all of the Perl 6 related presentations where in a room that did not have video capture. But Simon Proctor released the slides of his presentation “24 Uses for Perl 6”, and JJ Merelo also did that for his Perl 6 in Academia.

Perl 6 mode in Ace

Naoum Hankache (of Perl 6 Intro fame) provided Perl 6 support for the Ace editor (Reddit comments). Always good to see more Perl 6 support being integrated into products!

Failure is an option

Elizabeth Mattijsen has had part 8 of her Migrating To Perl 6 series published on opensource.com: Failure is an option in Perl 6 (/r/perl, /r/perl6 comments). It even made it to last weeks most read top 10!

Renaming Debate

Nikos Vaggalis announced that he has written a blog post about the backgrounds of the Perl Renaming Debate.

Upcoming Squashathon

Next Saturday, 3 December, will see another Squashathon. At the moment of this writing, the target of this Squashathon is not yet officially known. But yours truly would bet on another round of Documentation Bug Squashing!

Core Developments

  • Ticket status of last week.
  • A lot of expression JIT templates offered by Jeremy Studer were finally merged into the master branch.
  • Samantha McVey fixed several issues in the MoarVM build process.
  • Elizabeth Mattijsen made infix meta operators about 1.5x as fast for core operators such as +=, ~=, etc. She also fixed an issue with .values on object hashes.
  • Nick Logan fixed an issue with IO.resolve on Windows.
  • Stefan Seifert made timing based tests optional to support clean building on slow build servers.
  • Rob Hoelz improved the error message when using placeholder slurpies.
  • And some other smaller fixes and improvements.

Questions about Perl 6

Meanwhile on Twitter

Meanwhile on FaceBook

Meanwhile on perl6-users

Perl 6 in comments

Perl 6 Modules

Updated Modules:

Winding Down

A slow week, but given Thanksgiving / Black Friday / Cyber Monday / London Perl Workshop perhaps understandable. It looks like next week yours truly have more Perl 6 news. So see you next week!

2018.47 Piensa en Perl 6

Luis F. Uceta has created a Spanish version of Think Perl 6 (by Laurent Rosenfeld, based on a book by Allan Downey), teaching you the art of programming using Perl 6. Luis is looking for people proofreading / commenting on Piensa en Perl 6. So if you have mastered Spanish and you want your name in a book as a proofreader, this is your chance! Oh, and of course, you can download either book for free!

Rakudo Star 2018.10 in Chocolatey

brian d foy tells us that Rakudo Star 2018.10 is now available on Windows using Chocolatey. Not sure who to thank for this, but kudos to brian d foy to let us know it’s out there!

London Perl Workshop

Next weekend will see the 20th anniversary of the London Perl Workshop, a free one-day workshop of all things Perl in London. With a pre and post social event. And a full schedule of which the following presentations are about Perl 6:

There is still some room in the program, so if you’re going to be in London and you want to do a Perl presentation, it is not too late to submit a talk yet!

The European Perl Conference 2019

Andrew Shitov plugs the European Perl Conference in a lightning talk at the Barcelona Perl Workshop the other day. Main points: it’s in Riga, Latvia from Wed 7 to Fri 9 August 2019, with workshops on Mon 5 and Tue 6 August. The cost will be approximately 150 euros. Start planning your trips!

An interpreter in 4 minutes

Andrew Shitov also did a lightning talk on how to create a simple interpreter. Check it out if you want to get an idea of how simple the use of grammars can be!

Did you mean X?

Jo Christian Oterhals shows how he really uses Perl 6 code at work to improve the functionality of his company’s web site (Reddit comments).

Progress with RED ORM

Fernando Correa de Oliveira shows a really nice new feature of RED that allows you to express a SQL statement as Perl 6 code in a .map. Very cool abstractions there!

Core Developments

  • Ticket status of last week and the week before that. There is also more generic weekly and monthly overview.
  • Bart Wiegmans fixed a signedness issue in the JIT.
  • Jonathan Worthington fixed a segfault by correcting an index value on named parameters. He also made sure that buggy behaviour of Proxy in 6.c only applies when use v6.c is active.
  • Paweł Murias continued his work to have Perl 6 run in more browsers than just Chrome.
  • Elizabeth Mattijsen made sure that object hashes and QuantHashes can be used in meta-operators. She also made operations like %a >>+<< %b about 8x as fast, and %a >>+=<< %b about 1.3x as fast. And she made slices without adverbs on hashes about 5x as fast.
  • Timo Paulssen and Elizabeth Mattijsen fixed several cases where re-initialization of an array would not remove the older values.
  • And many more smaller fixes and improvements.

Questions about Perl 6

Meanwhile on Twitter

Meanwhile on FaceBook

Meanwhile on perl6-users

Perl 6 in comments

Three weeks worth, as promised last week:

Perl 6 Modules

New Modules:

Updated Modules:

Winding Down

Some nice speed improvements this week. Aleks-Daniel Jakimenko-Aleksejev is still busy shaking out the final blockers for the 2018.11 release of the Rakudo Perl 6 Compiler. That will be the first compiler release that defaults to 6.d. Hope to be able to tell you all about that next week. Until then!

2018.45/46 Post Diwali

It doesn’t happen often (anymore) that a Perl 6 Weekly is not published for a given week. In the past week, yours truly was more or less at the center of a large discussion about how Perl 6 should be (nick)named. This drained yours truly of the energy to write the Perl 6 Weekly. If you haven’t heard about this new episode in the naming debate yet and you do want to know about it, then please see the summary at the far end of this Perl 6 Weekly. Meanwhile, a lot of other things happened. So let’s get on with that!

Rakudo Star 2018.10

Steve Mynott has released the latest version of Rakudo Star, based on the Rakudo 2018.10 Compiler release (Reddit comments). This marks the end of an era in more than one way: this is the last Rakudo Star release that is based on the 6.c language definition of Perl 6. It is also the last Rakudo Star release that Steve Mynott committed to doing. So we’re on the lookout for a new Rakudo Star release manager to perform the release.

Yours truly would like to thank Steve Mynott on behalf of the Perl 6 community for this work. He definitely deserves a lot of kudos for having done this for basically the past 3 years (2016.04 .. 2018.10)!

1000 Rosettacode Entries

thundergnat informed us that of 11 November, Perl 6 has 1000 entries on Rosettacode, and is now tied for third place on the leaderboard. Which should be easy to fix 🙂

Squashathon

Already more than a week ago, but there was another Squashathon, which was focused on fixing documentation issues. Thanks again to Aleks-Daniel Jakimenko-Aleksejev for organising. And the winner was chsanch! The next Squashathon will be on 3 December 2018. The target of that Squashathon has not been set yet: suggestions welcome!

PCiG videos

The videos of the Perl Conference in Glasgow have become available for your perusal. These are the Perl 6 related presentations:

Other things to watch

Simon Proctor gave a talk about writing Perl 6 Command Line Scripts at the last London Perl Mongers meeting.

Not quite a video, but a nice screencast of how to create a compiler with Perl 6 has also become available (from the last Amsterdam Perl Mongers meeting). In it, Andrew Shitov shows the basics and some advanced grammar usages. Which he will most likely use in his next book.

Perl 6 calendar

Andrew Shitov has created a Perl 6 Calendar for 2019 that you can actually put on your wall at the office or at home. Each month highlighting a fascinating Perl 6 feature. A great present to give your friends, co-workers or yourself! And if you were planning on getting Andrew Shitov‘s Using Perl 6 book, you can now get them both using a special XMas offer! (FaceBook comments).

Perl 6 At A Glance for free

The very first Perl 6 book Perl 6 At A Glance (also by Andrew Shitov by the way) is now available for free as a series of blog posts, or as a PDF or as an EPUB. Great to see such a source of information to become available for free! (FaceBook comments: 1, 2).

Les regex et grammaires de Perl 6

Laurent Rosenfeld has written a large tutorial about regular expressions and grammars for the French developpez.com website. Good to see Perl 6 tutorial material in languages other than English! Keep them coming!

Advent Calendar submissions

Zoffix Znet reminds us that to have a successful Perl 6 Advent Calendar, people need to write blog entries for it. So please claim a day in the schedule and start writing about what you like to do with Perl 6!

Running Perl 6 in the browser

Paweł Murias has created a very nice interactive way of running Perl 6 code in the browser, called 6pad. Unfortunately, at the moment of writing you will need a Chrome browser to be able to use it because other browsers do not support bigints (yet).

Where did I leave my AT-KEYs

Timo Paulssen showcased some more features of the upcoming MoarVM Performance tool. Yours truly can’t wait to see that land in master!

How to make Perl more classy

Elizabeth Mattijsen had the 7th instalment of her series of blog posts about the differences and similarities between Perl 5 and Perl 6 published on opensource.com (Reddit, FaceBook comments).

Perl 6 Appetizer

Mauro Panigada wrote a very nice introductory blog post titled: Perl 6 Appetizer. In this blog post, he highlights several features of Perl 6, such as Grammars and the handling of command line arguments (Reddit comments).

Showcase Perl 6 Features

ogniloud asked people on Reddit what they would find interesting and/or fun of Perl 6. And this was the the result.

TPF Grant Reports

The past weeks also saw three TPF Grant reports:

Perl 6 2019 Coding Contest

Moritz Lenz is seeking task masters for the 2019 Perl 6 Coding Contest. In the first phase of setting up this contest, he is looking for volunteers who come up with coding tasks collaboratively. But there are other ways you can contribute as well, such as pledging a prize, creating a website for the contest or ironing out the rules.

Core Developments

  • Ticket status of October, last week and week before that.
  • Zoffix Znet did all the work to have the Rakudo master branch default to the 6.d specification. This means that most likely the next Rakudo Compiler release will be defaulting to 6.d semantics. He also added a .command method for Proc::Async.
  • Stefan Seifert continued his work on rewriting the MAST phase of pre-compilation (the phase that writes out the bytecode to a file) and that work was merged into master. The MAST phase is now slightly faster than before, but more importantly, takes about 15% less memory. This means that building Rakudo Perl 6 has become more feasible on machines with low amounts of memory. He also did more general optimization work on MoarVM, making various JIT settings more easily settable.
  • Timo Paulssen fixed a bug related to marking guards as used in MoarVM, that would cause segfaults in Rakudo in some situations. And continued his work on the profiling tool.
  • Paweł Murias again worked hard on the Javascript and also the JVM backend, implementing support for new MoarVM internal features.
  • Elizabeth Mattijsen removed now obsolete set operators (<+), , (>+), and . She also introduced a compile-time only dynamic variable $*FOLDING, which will be True if your code is called while attempting to constant fold the result of your code. She also optimized eqv, Date, DateTime and general handling of many hyper operators.
  • Donald Hunter fixed a problem with a literal \ in a tr///.
  • Tom Browder continued work on improving pod handling.
  • Aleks-Daniel Jakimenko-Aleksejev made the make t/spec/foo/bar.t rule work again, allowing for selective spectesting of one or more files.
  • Jonathan Worthington made sure that exceptions thrown inside start blocks are no longer ignored if the start is in sink context. He also fixed a race condition in Supplier::Preserving.
  • And many, many, many other smaller fixes, improvements and tweaks.

Questions about Perl 6

Meanwhile on Twitter

Meanwhile on FaceBook

Meanwhile on perl6-users

Perl 6 in other comments

Yours truly did not have the energy anymore to work on this section. Next week should contain a selection of comments of the then past 3 weeks.

Perl 6 Modules

New Modules:

Updated Modules:

Winding Down

This concludes the part of the Perl 6 Weekly that yours truly recommends everybody should read. It was an enormous amount of information to sift through and categorize. Please let yours truly know if you think something has fallen through the cracks. If so, I will mention it next week. Until then!

What follows below is an attempt by yours truly to objectively describe the events related to the naming discussion of Perl 6 in the past week.

On Raku

People have asked to give Perl 6 another name for many, many years. All this time, Larry Wall did not want to change the name of Perl 6. As far as yours truly knows, he mentioned that there potentially could be an alias for Perl 6 for marketing purposes in markets where “perl” is a four-letter word in its worst meaning, at the Perl Conference in Amsterdam (2017). Zoffix Znet started this discussion again early October 2018. While Larry Wall was on vacation, he checked in on the 3rd of November for a little while to let Zoffix Znet know that the alias would be “Raku”. On the 25th of October, Larry Wall explained why “Raku” was on the top of his list as alias.

Zoffix Znet took it from there very expediently (EDIT: this was uncalled for) and used the bump in the language specification to merge with the use of an alias. Except that in a lot of cases(EDIT: at least one case), “Perl 6” was simply omitted, effectively making it a rename of “Perl 6” to “Raku”. And it was welcomed as such by a number of prominent Perl 5 developers. This upset a number of people very much, amongst which yours truly. And that caused quite a few discussions on the various IRC channels, and blog posts and commentaries on sites such as FaceBook, Reddit and Hacker News. This in turn was perceived as an attack on his person by Zoffix Znet, which led to his departure from the IRC channels and cancelling of planned blog posts. Since then, a status quo appears to have arisen, while waiting for a reply by Larry Wall, who was on vacation / helping family evacuating from wild fires in Southern California.

What follows below are places on the Web that mentioned the situation as it developed. Some of this is not nice reading, some posts have been removed (or maybe will be removed after publishing it here). Clearly a lot of people were upset about a lot of things. Read at your own risk for your mental health:

Blog Posts + associated comments

Comments

It’s Raku! /r/perl6, /r/perl, Perl 6 remains Perl 6?, A warning to the community, On Hacker News, Moving forward, Lack of Clarity on Authorized Activities?.

FaceBook

Rename indeed, Marketing down the drain, Slave master, 6.d is coming, The new p5p nest, No Weekly, Here it was, Perl 6 after all, More and more embarrassing, Documentation?, Positive on Raku, Extremely unhappy, What is Raku, PerlCon 2019 I, PerlCon 2019 II, On Raku, Thanks, On Raku (Again), Tagging on StackOverflow, Changing the Perl 6 group photo, Just an alias?, use raku?, Smashed, No Advent, Back from vacation

Twitter

This is really only a selection of the most prominent tweets about the alias “Raku” (or have a look at all “Perl 6” related tweets):

Its’ Raku!, Kinda meh, Formerly known as…, Now raku?, Tumbleweed, Sebastian Riedel: Raku!, Alternative name, Raku vs Perl 6, A convenient lie,
A new name for Perl 6, Things are settled, Can we get one too?, Official alternate name, Release announcement, DBA as, Three camps, Holding hostage, PerlCon 2019 cancelled?, Fully spelt out (not), Like the new name, Another name for Perl 6, Nicknamed “Raku”, Fumble?, Deleted comments, Also officially known as, Taking a stand, / >♥️ ♥️< \, A warning to the Perl 6 Community, This is worse, Kill off Perl 5?, Completely unrelated?, Just call it “Raku”, Implies Raku Perl 5, Brainfuck, Raku sounds good, Not first, Don’t buy the hype, Makes p5p look almost functional, Une annonce, Whirlpool, Perceived as rebranding, Confusion, Offical alias, Don’t make big announcements.

I hope that this is the last time I had to write about “Raku”, the alias for Perl 6.

2018.44 Diwali Approaching

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:

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 all Callables.
  • 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

Meanwhile on Twitter

Meanwhile on FaceBook

Meanwhile on perl6-users

Perl 6 in other comments

Perl 6 Modules

New Modules:

Updated Modules:

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!

2018.43 Coding Contest

Moritz Lenz is testing the waters to see if there is room for a crowd-sourced Perl 6 Coding Contest, and he’s inviting comments / suggestions / participations. This all models after Carl Mäsak‘s initial Perl 6 Coding Contest from 2010 (Twitter comments).

Perl 6 Deep Dive Free Download

Only 13 hours to go to get your free download of “Perl 6 Deep Dive” by Andrew Shitov. It’s filled with practical examples, exploring all aspects of Perl 6 with different programming paradigms (object oriented, functional, and reactive). On Twitter it had some weird previews: 1, 2.

Sparky

Alexey Melezhik introduces Sparky, a powerful pocket size task runner server. A more flexible and more maintainable alternative to using crontab, written in Perl 6!

Core Developments

  • Bart Wiegmans fixed MoarVM’s jit-bisect.pl to use the new spesh log.
  • Zoffix Znet made the stringification of really big ints (larger than 2⁶⁰) 1.58x as fast.
  • Jonathan Worthington fixed a problem in deserialization introduced in the past month, which was breaking a lot of modules in the ecosystem.
  • Timo Paulssen fixed the heap snapshot profiler.
  • Ben Davies implemented asynchronous socket introspection.
  • Paweł Murias fixed a lot of issues on the new Javascript backend, and fixed some on the JVM backend as well.
  • Tom Browder reported of his experiences in NQP land by documenting traps a Perl 6 programmer could fall into when programming in NQP.
  • Daniel Green speeded up several operators (such as %%) for native variables.
  • Fernando Correa de Oliveira made sure that .[] properly caches on Seqs. And he made sure that eqv between Signatures also check the returns attribute.
  • Nick Logan deprecated the undocumented gethostname for $*KERNEL.hostname.
  • And many other smaller fixes and improvements.

Questions about Perl 6

Meanwhile on Twitter

Meanwhile on FaceBook

Meanwhile on perl6-users

Perl 6 in comments

Perl 6 Modules

New modules:

Updated Modules:

Winding Down

While preparations for the 2018.10 Rakudo compiler release are in full swing (which should also be the basis for the 2018.10 Rakudo Star distribution), this week was mostly about cleanups and fixing. And of course some nice new modules and some nice updates. Please check in again next week for more Perl 6 news! Take care!

2018.42 A better Atom for 6

Ahmad M. Zawawi has completed the first version of Perl 6 language support for the Atom IDE, based on an App::Perl6LangServer module that can be used by any editor / IDE that supports the Microsoft AppServer architecture. If you’re a fan of the Atom editor / Atom IDE, this will make it a lot easier to work with Perl 6 in it. So now Perl 6 doesn’t have one IDE, but two (the other one being the Comma IDE of course).

Perl[56] on the 35c3

Daniel Böhmer is trying to get a Perl Assembly together for the 35th Chaos Communication Congress in Leipzig, Germany. So if you would like to hang out together with other Perl people at the CCC, contact Daniel to make this happen! (FaceBook comments).

6.d review completed

Zoffix Znet has completed his pre-release review of 6.d spec (Twitter comments 1, 2). A truly impressive piece of work at almost 3500 commits reviewed and more than 400 corrections and improvements. Kudos!

JIT Grant Proposal

Bart Wiegmans has submitted a Perl Foundation grant request titled: MoarVM JIT Compiler Expression Backend Maturation. Focus of this grant will be on JITting floating point operations, improving generated code quality and improved handling of “irregular” instructions such as div. Comments as always welcome! (Reddit and grant comments).

Stupid Numeric Ticks

scruss got a little bit carried away trying to do as much as possible with Unicode numbers in a blog post titled: 𒐳 / ༳ == ( ⑽ – 𐹭 ) * ( 𒐲 / 𐅉 ), of course. Why does one do this? Well, because one can! In any case, a nice example of the flexibility of Perl 6 (Hacker News, Reddit comments).

Markatu – a lightweight markup language

Brian Duggan dove into the world of markup languages by creating a markup language called Markatu, inspired by markdown’s brevity and slim’s flexibility. In the article he describes the (Perl 6) techniques he used to create this markup language, and also lists the source that he created to render the HTML of the article (Twitter, Reddit comments).

OSCON 2018

Jim Brandt reports on the Perl booth at OSCON in Portland, OR this year. Caution: contains explicit pictures of swag.

No Perl DevRoom at FOSDEM 2019

The organizers of the Perl DevRoom at FOSDEM have been told that there will not be a Perl DevRoom at the coming FOSDEM. This is a big disappointment, but in the view of the number of groups wanting to have a DevRoom (about 140) and the number of rooms available (about 30), Perl has had a good run in the past years (FaceBook comments).

Core Developments

  • Ticket status of past week.
  • Bart Wiegmans fixed several small JIT issues.
  • Tzu-Li Chen performed a lot of code cleanup in NQP for the Java backend.
  • Paweł Murias continued his work on integrating the three backends of Rakudo Perl 6 even better, specifically in the area of native integers and makefiles. He also fixed the REPL on the Javascript backend and removed the undocumented and not correctly functioning --encoding command line parameter.
  • Valentin Anger fixed several problems introduced during the scalar refactor.
  • Elizabeth Mattijsen refactored the handling of MAIN subroutines, allowing for better pluggability. She also documented these new features in a separate Command Line Interface documentation page, and added tests for all these new (and old) features.
  • Tom Browder added a lot of notes and hints on the use of NQP.
  • And some smaller fixes and improvements.

Questions about Perl 6

Meanwhile on Twitter

Meanwhile on FaceBook

Meanwhile on perl6-users

Perl 6 in comments

Perl 6 Modules

New Modules:

Updated Modules:

Winding Down

A busy week again, with some sad news with regards to FOSDEM. But please don’t cancel your travel plans to Brussels because of that: one could also see this as an opportunity to spread knowledge about Perl to other tracks. So if you see an opportunity of submitting a presentation about Perl (be it Perl 5 or Perl 6), please do take that opportunity to get out of the echo chamber! And on that note yours truly wishes everybody a good week. Until next week, for more Perl 6 news!