p2: The Design and VM of a Next Generation Perl (11 = 5+6)
As you would expect from a talk on re-implementing the Perl compiler and run-time, this was a really dense talk. Reini definitely has the technical chops to dig into the details and difficulties of this project.
Reini began with discussions about a year ago where a new group of people have decided that we need to clean up the Perl 5 code to make it more maintainable and easier to change. Several different people have made their own attempts to begin this project and the head of Booking.com decided to get them together last year to coordinate.
In the intervening year, the concept of Perl 11, as a target has emerged. This is a combination of Perl 5 and what we have learned from Perl 6. Reini's implementation of Perl 11 is called p2 and is based on the Potion virtual machine.
The main goals of the project are the following:
- Features (must match Perl 5 to be used)
- Performance
- Threads (automatic, rather than explicit)
- Sanity
- Future (must be easier to extend)
This was a much deeper talk than we normally have. There were a lot fewer questions than usual, because people seemed much more overwhelmed.
The slides for this talk are available as a PDF.
We had 11 people attending this month. As always, we'd like to thank cPanel, Inc. for providing the meeting space and food for the group.