| | 2 | |
| | 3 | {-| |
| | 4 | This module provides 'genPIR', a function which compiles the current |
| | 5 | environment to PIR code. |
| | 6 | |
| | 7 | The general plan is to first compile the environment (subroutines, |
| | 8 | statements, etc.) to an abstract syntax tree ('PIL' -- Pugs Intermediate |
| | 9 | Representation) using the 'compile' function and 'Compile' class, and then |
| | 10 | translate the PIL to a data structure of type 'PIR' using the 'trans' |
| | 11 | function and 'Translate' class. This data structure is then reduced to |
| | 12 | final PIR code by "Emit.PIR". |
| | 13 | -} |