## Official Perl 6 Documentation

The Synopsis documents are to be taken as the formal specification for Perl 6 implementations, while still being reference documentation for Perl 6, like Programming Perl is for Perl 5. Note that while these documents are considered ``formal specifications'', they are still being subjected to the rigours of cross-examination through implementation. In other words, they may change slightly or radically. But the expectation is that they are ``very close'' to the final shape of Perl 6.

However, this HTML version of Synopses is slightly different in that it contains code snippets from the Pugs test suite. In other words, We have divided the .t files in the Pugs test suite into pieces and inserted every resulting snippet after the corresponding paragraph of the Synopses. The job was done by the Perl 5 script util/smartlinks.pl living in the Pugs source tree. And all the web pages listed below are updated every one hour with the latest Synopses and Pugs test suite from their respective SVN repositories.

When we say ``S05'', we mean ``spec'' as well as ``synopsis''.

While the Apocalypses and Exegeses are linked here for reference, note that the Synopses are kept very much more up-to-date and are the primary recommended reference.

|  | (Specification) | (Justification) | (Explanation)
--- | --- | --- | --- | ---
1 | Overview | Synopsis | Apocalypse
2 | Bits and Pieces | Synopsis | Apocalypse | Exegesis
3 | Summary of Perl 6 Operators | Synopsis | Apocalypse | Exegesis
4 | Blocks and Statements | Synopsis | Apocalypse | Exegesis
5 | Regexes and Rules | Synopsis | Apocalypse | Exegesis
6 | Subroutines | Synopsis | Apocalypse | Exegesis
7 | Formats |  | Apocalypse | Exegesis
9 | Data Structures | Synopsis |  |
10 | Packages | Synopsis |  |
11 | Modules | Synopsis |  |
12 | Objects | Synopsis | Apocalypse |
13 | Overloading | Synopsis |  |
16 | IPC / IO / Signals [DRAFT] | Synopsis
26 | Documentation [DRAFT] | Synopsis (link may not be active yet)
29 | Builtin Functions | Synopsis |  |

## DRAFT specifications

The few draft PODs here should probably be cleaned up into Spec-like formats and moved to Perl6::Spec space.

- Debugging
- Perl Culture
- Special Variables

## Frequently Asked Questions

- General Questions about Perl6
- Pugs FAQ
- Fears, Uncertainties and Doubts about Perl6
- Capture Objects

## Differences from Perl 6

- Differences Between Perl 5 and Perl 6

The Differences document is stored in `docs/Perl6/Perl5/Differences.pod` in the pugs repository, if you'd like to make updates to it. Your changes will automatically appear on feather in less than 1 hour.

## Perl6 Cookbooks

- Perl6 Cookbook Currently a work in progress, this cookbook is part of the PLEAC project, following the example of the Perl 5 cookbook.
- Perl6 OO Cookbook (parts may not be current)

## Example Code

Many more examples of Perl6 code are available.

- Examples of Perl6 from the Pugs repository
- Complete distributions from the Pugs repository

## About this page

The page you're currently looking at lives in the Pugs repo as `docs/feather/syn_index.html`, and is resync'd every few minutes.