- Overview
- About the speaker
- Acknowledgements
- What is "Not Quite Perl"?
- NQP timeline
- A simple NQP program:
- What NQP is really good for
- Some key differences from Perl 6
- A question NQP seeks to answer
- Things NQP explicitly disclaims
- Key features of NQP-rx
- Perl 6 regexes, the heart of NQP-rx
- Self-hosted NQP-rx
- NQP-rx versus older Parrot compiler tools
- Example "compiler", part 1 of 2
- Example "compiler", part 1 of 2
- Example "compiler", part 1 of 2
- Example "compiler", part 2 of 2
- Parse tree (--target=parse)
- Abstract syntax tree (--target=past)
- Generated PIR (--target=pir)
- HLL::Grammar and HLL::Actions
- Compiler with operator precedence parsing
- Compiler with operator precedence parsing
- Example using operator precedence parsing
- Example using operator precedence parsing
- HLL::Grammar predefined operator predecence categories
- <dec_number> from HLL::Grammar
- Accessing PIR opcodes directly from NQP (pir::)
- Embedding PIR directly in NQP (Q:PIR { ... })
- NQP setting
- Summary of NQP components
- Projects using NQP
- Future plans for NQP