On Tue, Jun 04, 2002 at 10:43:02AM +0100, Simon Cozens wrote:
> (Please CC me on replies)
> 
> I don't often express many opinions on Perl 6 these days, but I feel I have to
> warn people about what I see as a potential loss of direction.
> 
> I'm becoming somewhat disillusioned with Perl 6 these days; sometimes because
> it's too radical, more often than not because it's not radical enough, and
> quite often because it's more than a year behind schedule and still slipping.
> But that last point is by the by; with three people now working full-time on
> it, I'm sure we can expect it any day now.
> 
> What's really actually letting me down with it is the half-measures we're
> applying. We seem to be trying to please everyone, and it's not going to work;
> indeed, it's going to end up presenting a burden to the implementors.
> 
> Let's take an example. One of the major points of Perl 6, and one of its major
> attractions for me, was that we finally put the backwards compatibility ghost
> to rest. We can do brave, new, exciting things, without worrying about needing
> to maintain obscure pieces of functionality. Yey! Except that we can't do that
> any more; we've constrained ourselves to faithfully regressing to Perl 5 when
> we see a "package" declaration. Why? Because we're scared. "package parses
> Perl 5" is a sop to people who don't want to program in Perl 6, and we're
> worried about losing those people.

One word: CPAN.

(Okay, that was three words.) It will be a long, long time before all the
CPAN modules are rewritten in Perl 6. In the meantime, Perl 6 code has to
be able to use Perl 5 modules, or it will be crippled, and probably
stillborn.

Having said that, I have real, real doubts that Perl 6 will ever be able
to execute Perl 5 code natively. Its not just a case a writing a new
parser and some P5-specific ops; P5 has so many special features, boundary
conditions and pecularies, that to get P6 to execute P5 is a task
equivalent to reimplementing P5 from scratch. I'm wondering if instead,
we continue to maintain the P5 src tree, and embed P5 within P6 (embed in
the sense of Apache and Mod_perl). Sick and ugly, but maybe more practical
than the alternatives. It also means that the P6 src doesn't have to be
saddled with knowing (much) about P5.  Eventually of course the P5 bit
would have to be thrown away.

Dave.

-- 
"There's something wrong with our bloody ships today, Chatfield."
Admiral Beatty at the Battle of Jutland, 31st May 1916.

Reply via email to