- Overview
- About the speaker
- History of Parrot
- Parrot
- Parrot
- --- Overview of Parrot ---
- What is Parrot?
- Parrot status
- Parrot languages (various stages)
- Key Parrot Goals
- Just In Time (JIT) compilation
- Python implementations on Parrot
- Python implementations on Parrot
- Python implementations on Parrot
- --- Under the hood ---
- Parrot Assembly Language
- Basic Parrot Opcodes (PASM)
- Parrot Magic Cookies (PMCs)
- PMC opcodes
- Parrot built-in types / objects
- PIR - Parrot Intermediate Representation
- PIR
- Native Calling Interface (NCI)
- Dynamic compilation
- --- Compiler tools ---
- Creating compilers in Parrot
- Basic compilation overview, June 2007
- Basic compilation overview, June 2007
- Basic compilation overview, June 2007
- Basic compilation overview, June 2007
- Basic compilation overview, June 2007
- Basic compilation overview, June 2007
- What the compiler writer needs to create
- Steps to writing a compiler
- Building parsers in Parrot
- What is "parsing"?
- Perl 6 regular expressions
- Pattern matching for languages
- Syntax
- Syntax
- A more relevant example
- Another Python example
- Regexes, tokens, rules
- Parser Grammar Engine (PGE)
- Custom parsing subroutines
- Custom parsing subroutines
- Expression parsing
- Operator precedence parsing
- Operator precedence parsing
- Parsing, concluded
- Parsing Python's indent rules
- Parsing Python's indent rules
- Parsing Python's indent rules
- Parsing Python's indent rules
- Pynie parsing example
- Abstract Syntax Tree (PAST)
- Current PAST-pm node types
- Transforming parse to PAST
- Transforming parse to PAST
- Executing the code
- Performance
- Performance, PGE
- How effective are the tools?
- More demonstrations of Pynie (time permitting)
- Parrot resources
- Conclusion