- Parrot Compiler Toolkit
- Parrot Compiler Toolkit
- Basic compilation overview
- Basic compilation overview
- Basic compilation overview
- Basic compilation overview
- What the compiler writer needs to create
- Compiler creation in Parrot
- Parrot compiler shell
- Parse grammars in PGE
- Parse grammars in PGE
- calc example - grammar
- calc example -- test parsing
- HLLCompiler class
- Basic HLLCompiler invocation
- Parrot Abstract Syntax Tree (PAST)
- Converting parse tree to PAST
- Example: if_stmt
- Example: if_stmt (cont'd)
- Example: if_stmt (cont'd)
- Example: if_stmt (cont'd)
- Example: if_stmt (cont'd)
- calc example -- adding actions
- calc example -- adding actions
- calc example -- src/parser/actions.pm
- calc example -- PAST output
- calc example -- as PIR!
- calc example -- as executable!
- Operator precedence
- Bottom-up parsing in PCT
- Defining a bottom-up parser
- Defining a bottom-up parser
- Adding a new operator to the parser
- Adding a new operator to the parser
- Syntactic categories
- Operator traits
- Defining an operation
- Defining an operation, cont'd
- PAST:Op nodes
- PAST::Val nodes
- PAST::Var nodes
- PAST::Block nodes