Skip to content


Subversion checkout URL

You can clone with
Download ZIP
Fetching contributors…
Cannot retrieve contributors at this time
39 lines (24 sloc) 1.22 KB
This is an overview of tasks in order to complete PIRC.
By "complete", or "completion", it is meant to be able
to use PIRC as a PIR compiler, without needing the current
PIR compiler, IMCC.
Fairly randomly sorted, the tasks are:
[DONE] 1. Emit the actual bytecodes into a PackFile/codesegment.
[DONE] 2.a Create a PMC constant for strings, numbers and
[DONE] 2.b Create a PMC constant for keys
[TODO] 3. Complete PASM output, so it can actually be parsed and run.
[DONE] 4. Handle :multi flag properly.
[TODO] 5. Handle nested macro expansions.
[TODO] 6. Fix all memory leaks. this should be trivial, given PIR's built-in
allocated-memory-pointer-registering infrastructure. In some
places this is not used yet, and in others, it's not necessary
to use it (but in those mem_sys_free() must be called explicitly).
[DONE] 7. Figure out how :named argument passing works in bytecode.
[DONE] 8. Finish the parrot calling conventions ops in the back-end
(var.args must be fixed).
[DONE] 9.a Handle :slurpy
[DONE] 9.b Handle :flat
[DONE] 10. Handle indexed assignments in bytecode.
More tasks will be added as I think of them. --kjs
Jump to Line
Something went wrong with that request. Please try again.