Preface

There is nothing as scary to the average programmer (to the average human, really) as the single word “change.” Change means taking the time to learn a new way of doing things. Changes can be annoying: moving to a new home, finding the shelves reorganized at your neighborhood computer store, or ordering your favorite beer at your favorite pub only to be told they don’t make it anymore. But changes can also be good: a vacation on the beach, a promotion, a raise, finding the perfect shortcut to work that shaves 20 minutes off your commute. This book is all about change . . . the good kind.

Perl 6 isn’t far enough along to support a book on the level of Programming Perl. However, as development goes on, we’ve found that the accumulated lore of the past few years is quite an entry barrier for new people. This book is a snapshot of the current status, designed to ease that first step. It covers the project through Apocalypse 12 and the 0.1.0 release of Parrot. We expect that this will be the last edition of the book, but we will publish updates as needed.

How This Book Is Organized

This book has 11 chapters:

Chapter 1 is a high-level overview of the project, with some history of how and why the project was started.

Chapter 2 provides more detail on life cycles within the project and how to get involved.

Chapter 3 explains some of the principles behind Perl 6 design work.

Chapter 4-Chapter 7 are an introduction to Perl 6 syntax.

Chapter 8 explains the overall architecture of Parrot (the virtual machine that runs Perl 6).

Chapter 9 is an introduction to Parrot assembly language.

Chapter 10 is an introduction to Parrot intermediate representation.

Chapter 11 is a reference for Parrot assembly language, Parrot intermediate representation, and command-line options for the Parrot interpreter.

If you’re a Perl programmer who is completely new to Perl 6, you’ll be interested in this book to get an idea of what it’ll be like to work with Perl 6, why we’re making the changes we’re making, and how the project is going. You’ll want to read the first seven chapters. If you think you might be interested in getting involved in implementation, read the rest as well.

If you’re already involved in the Perl 6 project, you’ll be interested in this book to see how all the pieces fit together, and you may want to use it as a reference while you’re working. If you’ve been involved only on the language side or the internals side, you’ll also get a chance to see what the other half is doing. In this way, the entire book is relevant to you.

If you’re interested in implementing another language on top of Parrot, you’ll want to skim through the Parrot information in Chapter 2, and then skip straight to Chapter 8 and go from there.

If you’re not involved in Perl but just want to see what the “Perl 6” buzz is all about, you’ll want to read Chapter 1, Chapter 3, and Chapter 8. You’ll get an overview of what we’re doing and why, without all the nitty-gritty details.

Get Perl 6 and Parrot Essentials, Second Edition now with the O’Reilly learning platform.

O’Reilly members experience books, live events, courses curated by job role, and more from O’Reilly and nearly 200 top publishers.