Chapter 2. Perl Development Structure

The aim of this section is to familiarize you with the process by which the Perl interpreter is developed and maintained. Most internals hacking is carried out on the "bleeding edge" of the Perl sources, and so you need to understand what these are and how to get them.

It's also important to understand the structure of the Perl development community; how it's organized, and how it works.

2.1. Perl Versioning

Perl has two types of version number: versions before 5.6.0 used a number of the form x.yyyy_zz; x was the major version number, (Perl 4, Perl 5) y was the minor release number, and z was the patchlevel. Major releases represented, for instance, either a complete rewrite or a major upheaval of the internals; minor releases sometimes added non-essential functionality, and releases changing the patchlevel were primarily to fix bugs. Releases where z was 50 or more were unstable, developers' releases working towards the next minor release.

Now, since, 5.6.0, Perl uses the more standard open source version numbering system - version numbers are of the form x.y.z; releases where y is even are stable releases, and releases where it is odd are part of the development track.