|Version 2 (modified by kjs, 5 years ago)|
PIRC is a fresh implementation of the PIR language. It was developed as a replacement for the current PIR compiler, IMCC. The lexer and parser are implemented with Flex and Bison specifications. During the parsing phase, a data structure is built that represents the parse. After the parse, this data structure is traversed and for each instruction the appropriate bytecode is emitted.
PIRC is not complete yet. All stages are implemented (lexer, parser, bytecode generator), but all of them need some additional work to complete them.
PIRC Development Tasks
* Fix parser to accept syntax such as:
$P0 = new ['Integer']
* Convert all C strings in PIRC into STRINGs. All identifiers and strings that are scanned should be stored as STRING objects, not C strings.
* Fix bugs related to storing NUM and STRING constants. In certain cases, the generated bytecode is not correct. (tickets will follow shortly)