On Wed, 2003-11-26 at 11:39, Michael Lazzaro wrote:

> I think we also need to be skeptical of the false economy of putting
> such sugar into CP6AN, if a sizable portion of the community is going
> to download it anyway.

A more interesting question is *when* to put something into the core
language or libraries.

Consider Perl 5, where File::Find is a core module.  While the interface
may have been nice in 1995 (though I doubt even that), it's been widely
regarded as awful for at least three years.  It's likely never to be
removed from the core.  File::Find::Rule is immensely nicer.

Good luck convincing a pumpking to replace File::Find with
File::Find::Rule.  For that even to be considered, File::Find::Rule will
likely need a backwards compatible interface.  Good luck convincing
someone to write it.

Every module or idiom entrenched in the core in Perl 6 will likely stay
there until Perl 7, unless it's an exceedingly bad idea such as 5.005
threads or pseudohashes.  Unfortunately, there are a lot of quite bad
ideas entrenched in Perl 5 that cannot be removed.

While it may be true that this or that construct is clearly the best way
to do something, it's worth asking that the idea prove itself in the
wild world outside the core for a while *unless it absolutely positively
cannot be done without core support*.  Good ideas can be added in future
versions.

Improving module and code installation is one part of that puzzle. 
Allowing local grammar redefinitions and macro support is another.  In
my mind, that relieves a lot of the pressure to ship the entire workshop
by default.

Again, once something goes in the core language, it has to be amazingly
positively unquestionably broken to be removed.  Merely bad things have 
too much staying power.

-- c

Reply via email to