(Cross-posted from http://pugs.blogs.com/pugs/2006/07/ v6pm_now_runs_t.html)

Due to clkao++ and fglock++'s work, the CPAN version of v6.pm now passes all Pugs sanity tests, up and including the Perl 6 Test.pm:

    # http://search.cpan.org/dist/v6-pugs/
    # http://search.cpan.org/dist/v6-pugs/t/

That makes it the second implementation (after Pugs) and the fourth runtime (after Pugs's Haskell/JavaScript/PIR backends) that has access to the 11,000+ subtests in the test suite. Once the Parrot/ Perl6 implementation support for subroutines, arrays, hashes and use statements, it will join as the third implementation that can run the test suite.

Development of v6.pm, the new AST, a concrete definition of multiple dispatch, etc. continues apace in #perl6; we are seeing nearly more than 50 commits per day in the past few days. (gaal++ describes it's just like the good old days of early Pugs development, but it's actually faster. now :-)) For example, v6.pm can now parse regex/ token/rule declarations natively.

I'm very excited about this new cleanly-partitioned task space of Perl 6 implementation:

(Non-Perl 5 Specific)

    * Descriptions of semantics in the test space;
    * Analytical summaries and stories in the spec space;
* Algorithmic expression of effects and structures in the new AST space;

(Perl 5 Specific)

    * Implementation APIs to embed them as Perl 5 modules;
* Idiomatic, pure-perl5 sugar that makes Perl 6 semantics accessible; * Translation from Perl 6 surface syntax into those new perl 5 idioms;

And the best thing is that, instead of a cyclic dependency as we had before, each layer are independent from the ones after it. It means that CPAN people can use Class::MOP and Data::Bind to improve their own frameworks; or to use the new idioms enabled by Moose.pm et all; all without necessarily switching to the Perl 6 surface syntax. And it also makes v6.pm's output idiomatic -- we just need to incrementally build a new Perl 5 idiom, which, as Bjorn Freeman- Benson noted, is a Very Good Thing.

Attachment: PGP.sig
Description: This is a digitally signed message part

Reply via email to