Perl 6
When will Perl 6 be released?: Revision 19

Perl 6 will be released when it's done (i.e. meets its specs and passes its test suite) and is ready to be released (i.e. is industrial-strength production-worthy). When all the work to be done has been done, by all the people that there are to work on it, then it's ready to go.

We realize that's not a very satisfying answer, but that's the best we can do right now. To try to assign a date, even a year, would be disingenuous. However, although the design of Perl 6 got underway around 2001, serious hacking on the Perl 6 compiler only started in early 2005. Here is the tentative timeline from 2005:


We've obviously got a ways to go (for example, getting Perl 6 compiled to Perl 5), but there's been considerable year-to-year compounding of progress. 2007 was a great year for getting a lot of important infrastructure into place.

Larry Wall has said "We're done with the first 80%, and well into the second 80%" of the project. Of course, Larry would be quick to add "Unless there's a third 80%". But the point is that project timeline estimation is very difficult (especially for as complex and relatively unfunded a project as this one), and the people working on it feel they are much closer to the end of the project than they are to the beginning.

What's left to be done?

We're working on making that list happen over at Development Dashboard. The fact that we're getting to a point where we're starting to nail down specific deliverables should be somewhat reassuring. Besides the Perl 6 compiler and Parrot virtual machine, there are many Perl 6 modules to produce, among other things. (Although they are not officially required for release, the more that are available, the better.)

Can I help somehow?

Absolutely! This is a large project, and there are many contributing roles.

You don't even have to know Perl 6, or Parrot, or even Perl 5 (although any or all of those skills can be used, even beginner-level).

If you want to help out on development-related tasks (including testing and documentation), see:

If you want to help expand and update this wiki, see:

  • About This Website for information on how to use this wiki editing features, etc.
  • Content Wanted to view any outstanding requests (infrequently used at present).
  • Mail Lists, IRC, Archives to lurk or inquire about timely and important content to add.
  • Check the What's New link near the top of the wiki page to get a list of recently changed pages that you can peruse. You can help fill in missing pieces, check links, fix typos, add graphics, and so on.

And of course, anything you could do in the way of fundraising and soliciting $$$ to support Perl 6 and Parrot development would be wonderful. Every year, people, companies, and foundations give numerous multi-million donations to universities for new buildings, new faculty, and so on. Perl 6 is at least as important, and will have far greater ultimate techno-economic leverage in the great majority of cases. (Also, don't just think about Perl 6.0 — you want to establish major momentum to carry on through Perl 6.2, Perl 6.4, and so on — including the production of a growing series of CPAN6 power modules.)

Upload Files

Click "Browse" to find the file you want to upload. When you click "Upload file" your file will be uploaded and added to the list of attachments for this page.

Maximum file size: 50MB

File Name Author Date Uploaded Size

Save Page As

Enter a meaningful and distinctive title for your page.

Page Title:

Tip: You'll be able to find this page later by using the title you choose.

Page Already Exists

There is already a page named XXX. Would you like to:

Save with a different name:

Save the page with the name "XXX"

Append your text to the bottom of the existing page named: "XXX"

Upload Files

Click "Browse" to find the file you want to upload. When you click "Add file" this file will be added to the list of attachments for this page, and uploaded when you save the page.

Add Tags

Enter a tag and click "Add tag". The tag will be saved when you save the page.