Cover image for Perl 6 essentials
Perl 6 essentials
Randal, Allison.
Personal Author:
Publication Information:
Sebastopol, Calif. : O'Reilly, [2003]

Physical Description:
ix, 195 pages ; 23 cm
General Note:
Includes index.
Format :


Call Number
Material Type
Home Location
Item Holds
QA76.73.P22 R36 2003 Adult Non-Fiction Central Closed Stacks

On Order



Perl 6 Essentials is a sneak-preview of Perl 6, the widely-anticipated rewrite of the Perl programming language. Still in development, the Perl 6 project is a community-based effort to keep Perl vibrant well into the 21st century. This book covers the development not only of Perl 6 syntax but also Parrot, the language-independent interpreter developed as part of the Perl 6 design strategy.Although Perl remains a vibrant language with a fiercely loyal following, it has undergone many changes to keep up with new technologies and applications that were not anticipated when Perl was first introduced in 1987. Through its community-based development model, Perl has kept up with changing times and remained fresh when other languages might have stagnated.Internally, however, there have remained kinks and stumbling blocks that developers have needed to sidestep, long-abandoned features that have been maintained only for backwards compatibility, misdirected phrasings that have hindered more intuitive syntax structures, and a cacophony of modules that sometimes work well together, but occasionally don't. Perl continues to have a strong following devoted to its development, but in the meantime, a group of core Perl developers have begun working on Perl 6, a complete rewrite of the Perl language. While Perl's creative philosophy and common-sense syntax are sure to remain in Perl 6, everything else in the language is being re-examined and recreated. Perl 6 Essentials provides an overview of the current state of Perl 6 for those who await its release. Written by members of the Perl 6 core development team, the book offers an explanation of the various stages of the project, with reference material for programmers who are interested in what changes are planned or who may want to contribute to the project. The book will satisfy their curiosity and show how changes in the language will make it more powerful and easier to use. Perl 6 Essentials is the first book that offers a peek into the next major version of the Perl language. This book is essential reading for anyone interested in the future of Perl.

Author Notes

Allison Randal is the assistant project manager of the Perl 6 core development team. She has been working closely with Damian Conway and Larry Wall on Perl 6 and has co written the "synopses" of Perl 6. She is dedicated to the success of the project and is one of the very first to learn about anything new that's proposed for Perl 6.

Dan Sugalski is the chief architect for Parrot, the interpreter engine for Perl 6. He's been a Perl 5 core developer for years, writing more than a dozen modules in the process. He's been a contributor to The Perl Journal and The Perl Review, as well as the O'Reilly Network.

Leopold Totsch hails from Austria where he first started working with computers in 1976. He is an independent software developer who has been exploring and developing open source software since 1991. He's a frequent contributor to isdnlog (an open source project for monitoring ISDN lines and optimizing telephone costs) and spends the majority of his free time working on Parrot, the language-independent interpreter developed as part of the Perl 6 design strategy. Leopold T tsch is the pumpking for Parrot.

Table of Contents

Prefacep. vii
1. Project Overviewp. 1
The Birth of Perl 6p. 1
In the Beginning...p. 2
The Continuing Missionp. 3
2. Project Developmentp. 9
Language Developmentp. 9
Parrot Developmentp. 11
3. Design Philosophyp. 16
Linguistic and Cognitive Considerationsp. 16
Architectural Considerationsp. 23
4. Syntaxp. 25
Variablesp. 25
Operatorsp. 32
Control Structuresp. 46
Subroutinesp. 53
Classes and Objectsp. 58
Grammars and Rulesp. 61
5. Parrot Internalsp. 70
Core Design Principlesp. 70
Parrot's Architecturep. 71
The Interpreterp. 76
I/O, Events, Signals, and Threadsp. 81
Objectsp. 87
Advanced Featuresp. 89
Conclusionp. 93
6. Parrot Assembly Languagep. 94
Getting Startedp. 94
Basicsp. 95
Working with PMCsp. 111
Flow Controlp. 115
Stacks and Register Framesp. 118
Lexicals and Globalsp. 121
Subroutinesp. 124
Writing Testsp. 133
PASM Quick Referencep. 134
7. The Intermediate Code Compilerp. 158
Getting Startedp. 158
Basicsp. 159
Flow Controlp. 169
Subroutinesp. 171
IMCC Command-Line Optionsp. 176
IMCC Quick Referencep. 179
Indexp. 187