Google Groups no longer supports new Usenet posts or subscriptions. Historical content remains viewable.
Dismiss

v6.pm now runs Test.pm!

11 views
Skip to first unread message

Audrey Tang

unread,
Jul 6, 2006, 12:29:19 AM7/6/06
to perl6-c...@perl.org
(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.

PGP.sig
0 new messages