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

v6.pm now runs Test.pm!

4 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