Because I want to embed PGE in Pugs, I end up embedding the entire libparrot. :-)
As of two hours ago, if you set the PUGS_EMBED environment variable to "parrot" and run perl Makefile.PL, Pugs will build and link against Parrot, and provide a require_parrot() primitive for you. JIT works as one owuld expecte, too. Jeff Horwitz (of mod_parrot and more recently, mod_pugs fame) is now hacking away on hooking Pugs's IMC generator with the embedded Parrot, so we can have on-the-fly compilation without the need to call external "pugscc". In other news, the Grin intermediate language used by JHC Haskell compiler looks very promising: http://repetae.net/john/computer/jhc/jhc.html Jhc's Grin -> C compiler is only some 300 lines long, and unlike GHC, it does not link against a runtime system (RTS), so it should be relatively straightforward to make a Grin -> Parrot compiler -- or even a Grin -> Perl 6 compiler. Once that happens, we can then recompile Pugs with it, and finish the circle of bootstrapping. There are many other bootstrapping routes, but this one looks interesting. :-) Thanks, /Autrijus/
pgpXzN09530bV.pgp
Description: PGP signature