在 2006/6/23 上午 9:50 時,chromatic 寫到:
On Friday 23 June 2006 00:04, Swaroop C H wrote:So, as of now, you envision svn:/pugs/misc/pX/Common/Pugs-Compiler- Perl6 tobe the "main" engine for Perl 6 ?I believe Audrey's point was that it is the most complete implementation rightnow.
No, that is not my point at all. It's not even true. :-) The Pugs/ Haskell runtime is currently the most complete, and I wouldn't suggest deploying that in production for most places currently using Perl 5 at this point, because for that a runtime needs to guarantee compatibility with Perl 5 XS modules and interoperability with the Perl 5 calling convention (e.g. what Ponie set out to do), which the Haskell runtime only does partially with significant GC/memory-leak issues.
The Perl 5 runtime/emitter of P::C::P is currently at a comparable state as Parrot/Perl6 -- neither of them handle the calling convention, neither runs the toned-down Perl4-level Test.pm, and their object space support is "basically" working at the internals level (ParrotObject and Moose), but still entirely hidden from the userland.
Of course, I'd like to get Test.pm working for both, and try to agree on the calling convention and object space semantics, at the Chicago hackathon.
Makes sense. It's good to have different engines suitable for differentpurposes ...Yes and no. Having multiple incomplete and incompatible implementations is fairly uninteresting. (Multiple complete and incompatible implementations isn't much better; try writing a complex CL program on one platform anddeploying it to another sometime.)
Indeed. So instead of having the implementions define the language, this time around the specs, and tests, and API documentations, need to be adhered closely by implementors, which is why we're all talking together in #perl6 in the past few months or so. :-)
Multiple implementations that are compatible to the spec, like the R5RS Scheme, are really a very good thing.
Thanks, Audrey
PGP.sig
Description: This is a digitally signed message part