Perl 6 Release Goals: First Grant Extension Completed


Jonathan has successfully completed his first grant extension of his Perl 6 Release Goals grant. He has provided the following report and is asking for another extension to continue with this work.

Before we make a decision on this extension we would like to have a period of community consultation that will last for seven days. Please leave feedback in the comments or, if you prefer, email your comments to karen at

Jonathan Worthington writes:

In September I completed the first round of work under my Perl 6 release goals grant, funded by the Perl 6 Core Development Fund. I requested an extension, which was granted. I have now also completed the work under this grant extension.

With the Perl 6 Christmas release getting closer, I have focused on identifying things that we should deal with ahead of it, and addressing them. I started out by going through the RT queue and selecting over 100 RT tickets that reported issues that I felt should be resolved - or at least explicitly not resolved - ahead of the release. These tickets mostly raised significant semantic issues, and needed attention to help avoid shipping a language release with undesirable semantics and then having to support them going forward as Perl 6 users inevitably come to rely on them.

At the time of writing this report, less than 20 of these RTs remain. The majority were resolved by my work under this grant. They covered a huge range of language features: Unicode support, regexes, heredocs, I/O, concurrency, multiple dispatch, and much more. While in a language of any significant size there will always be edge cases discovered that were not foreseen, and people will come to depend on them, this work has taken on those we already had logged in RT.

At the time of my last report, the work on native and shaped arrays was still very much ongoing, with native arrays existing but shaped not. These are now very much with us. We have left some features relating to them for future Perl 6 language versions, but the heart of the support for them is now in place. This gives us confidence in this area of the design of Perl 6.

In my last report, NFG was considered largely complete. However, since then some issues were raised with regard to its exact semantics, and how we defined a grapheme. These have been fully addressed during this grant extension also, and we are now fully compliant with the Unicode Annex #29 definition of grapheme boundaries. Further, a number of issues involving synthetic graphemes in the regex engine's longest token matcher have been resolved.

Another important area I contributed to was module precompilation management, which we wished to bring into Rakudo. I focused on the overall design of the solution. Thankfully, another contributor was able to take on the implementation work, and did an excellent job of it.

Concurrency support has been improved in various ways. At the heart of these improvements is a re-working of the internals of supplies, which removed a number of undesirable semantics that would have hindered maintainability and refactoring of programs using them. The design improvements also removed some issues that may have led Perl 6 users to accidentally write race conditions into their code, and allowed for improved performance.

Overall, this grant has extension has enabled me to continue to spend very significant amounts of time on Perl 6 (in recent months it accounted for the majority of hours I worked). I'm thankful to all those who contributed to funding this grant, and my fellow Perl 6 contributors for being great people to work with.

Request for Perl 6 release goals grant extension

I'd like to request a extension of my current grant, "Perl 6 release goals". This extension is to fund the work I am doing for the Christmas release, due later in December. Of note, it will cover:

  • Work to resolve the current set of "Christmas RT tickets", as well as a small number of additional tickets that will be added to this set (those that were filed since the queue was last reviewed, and raise a significant semantic issue)
  • Preparations for releasing the Perl 6 Christmas language specification test suite, segregating it from those tests on speculative future features (clearly splitting off those tests that make up the Christmas release will also aid us in not regressing on things we promised to support in the future)

Amount requested: 110 Hours * 40 USD / Hour = 4400 USD


Jonathan is doing an excellent job, as usual. :o)

This is a no-brainer right? He's doing a great job!


This is a no-brainer. Jonathan is the right person for this job.


Jonathan is making consistent, positive progress - please continue his funding.

Work so far is impressive, and Christmas is close.

Jonathan ++

+1 really superious person with great skills and knowledge.

Jonathan is doing excellent work, making real progress, solving a lot of issues, implementing many to-be-implemented items, and cooperating with and motiving many others in the community.
Therefore: extension please.

Yes please, extend the grant for Jonathan who is doing a great job.

Blinking good

The velocity has remained as impressive as it has all year largely because Jonathan is not only enormously productive but also because his work and constant input has provided and anchor that has enabled everyone else involved to work with confidence.

If there was an unlimited supply of cash I'd go with keeping him forever :)

+1 I regularly see Jonathan make commits and fix important issues. I believe they deserve the grant extension.

+1 without question.

(Look at that time estimate. Guy's planning on pulling 11-hour days from now until Christmas. Let's not only fund him; let's name the Perl 6 Developers Hall of Fame after him.)

Please continue funding Jonathan++!

He has a proven record of consistently and continuously delivering his grant goals, while also stimulating others (inside and outside the community) to contribute as well. I expect this time to be no different.

+1 Jonathan is doing a super bang-up job. Keep it up.

In addition to his coding Jonathan also talks and writes about his work and Perl 6 in general.
Any money spent in funding his work is money spent well.


Thank Jonathan for the hard work.

Jnthn has made original, lasting, and team contributions to a number of important topics in perl6. His slides and articles are educational and engaging. Heartily recommend giving him the grant extension. Let's spread christmas.perl6 cheer all around :-)

+1 keep the momentum up

Jonathan is doing amazing work.

Yes to this!! I don't know if there would be a christmas release w/o jnthn++ and his hard work.

+1, also: can other people simply contribute a few hours worth of money? if so: how?

+1 Yes, please extend his grant.

+1 from me, too. Not only does jnthn do great work, but his guidance has allowed me to continue contributing little bits and pieces over the last years :)

Robert Lemmen: There is a "Make a donation" link at the bottom of the page. Follow that, then select "Perl 6 Development". Any support there will be greatly appreciated!

Oh, if this wasn't clear yet: A big fat +1 for extension! :-)

Yes the grant should be extended. He has done a great job overall.

Leave a comment

About TPF

The Perl Foundation - supporting the Perl community since 2000. Find out more at

About this Entry

This page contains a single entry by Karen Pauley published on December 14, 2015 7:30 AM.

Grant Report : RPerl User Documentation - November 2015 was the previous entry in this blog.

Grants Committee Changes, December 2015 is the next entry in this blog.

Find recent content on the main index or look in the archives to find all content.


OpenID accepted here Learn more about OpenID
Powered by Movable Type 6.2.2