Changes between Initial Version and Version 1 of PirateTodo

Show
Ignore:
Timestamp:
10/18/10 09:06:24 (11 years ago)
Author:
cotto
Comment:

--

Legend:

Unmodified
Added
Removed
Modified
  • PirateTodo

    v1 v1  
     1This page serves as a todo list for PIRATE, the next generation self-hosted PIR compiler built with nqp-rx.  Once PIRATE emits some form of Lorito, this todo list is complete.  "Some form of Lorito" could be a Lorito-based tree, Lorito bytecode or something else. 
     2 
     3This should be an approximately ordered list of what's necessary to bring PIRATE to completion as Parrot's default PIR compiler. 
     4 
     5* fix examples/pir/make_hello_world_pbc.pir for a post-dynop_mapping parrot 
     6  - OpLib needs to be made aware of op mapping. 
     7  - We need a dedicated PackfileBytecodeSegment PMC to hold the op mapping (and generally be less hacky than a raw segment). 
     8  - this code serves as a minimal test case for the feasibility of our packfile PMCs for pbc generation. 
     9* Update nqp-rx to use PIRATE's POST format. 
     10  - the current version uses strings rather than structure to store data and isn't amenable to PBC generation without a full PIR compiler 
     11  - some discussion with pmichaud is necessary, but he supports the change 
     12  - this is necessary to enable direct POST->pbc translation 
     13* Move PIRATE to compilers/ and make it optional as Parrot's default PIR compiler. 
     14* Make Parrot's build work and tests pass with PIRATE as the PIR compiler. 
     15  - Do the same for Rakudo, Partcl and any other HLLs and libraries that are actively maintained at the time. 
     16* Rip out imcc, delete pirc. 
     17  - A post-imcc party is optional but highly recommended. 
     18* Make PIRATE output Lorito ops (or a LOST tree) based on PIR->Lorito translations. 
     19  - Once this happens, we can use the Lorito to generate C code for a byte-code free bootstrapping build.