On Mon, 2010-01-25 at 10:45 +0800, atex.way wrote: > since parrot is a vm for dynamic languages, and mostly written in c , > i have suggestions for the ways of implementing a HLL. > 1. can completely implement a HLL in c. for c is a common > language for most people, the c APIs should be the inner interface to > pir. > 2. implementing a HLL in pir(allow c modules embeded). > 3. through a common extention interface for other lanuages to > implement a HLL. the parrot core should include the interfaces of > perl, php,python . (perl may be a language running on parrot, also a > language for implementing a HLL, instead of a language to be used to > compiling parrot, certainly, except for parrot being implemented in > perl completely) > 2010-01-25
Generally (yes I know there are exceptions!), new HLL implementations for Parrot are done in NQP (in particular, the NQP-rx variant), because it is much more succinct than raw PIR or especially C. There is always an opportunity to drop down to PIR as needed; NQP provides deep integration for users needing access to raw PIR features not exposed through standard syntax. NQP stands for 'Not Quite Perl (6)', and is a subset of Perl 6 syntax that can be implemented in Parrot without needing a supporting library. It ships with (and is built and installed by) Parrot, and thus is always available. NQP and the PCT (Parrot Compiler Toolkit) together provide an extremely productive platform for writing HLL implementations, vastly easier to work with than PIR or C alone. -'f _______________________________________________ http://lists.parrot.org/mailman/listinfo/parrot-dev
