1.2 In the Beginning . . .
Let's pause and consider Perl development up to that
fateful meeting. Perl 6 is just another link in the chain. The
motivations behind it and the directions it will take are partially
guided by history.
Perl was first developed in 1987 by Larry Wall while he was working
as a programmer for Unisys. After creating a configuration and
monitoring system for a network that spanned the two American coasts,
he was faced with the task of assembling usable reports from log
files scattered across the network. The available tools simply
weren't up to the job. A linguist at heart, Larry
set out to create his own programming language, which he called
perl. He released the first version of Perl on
December 18, 1987. He made it freely available on Usenet (this was
before the Internet took over the world, remember), and quickly a
community of Perl programmers grew.
The early adopters of Perl were system administrators who had hit the
wall with shell scripting, awk, and
sed. However, in the mid-1990s
Perl's audience exploded with the advent of the Web,
as Perl was tailor-made for CGI scripting and other web-related
programming.
Meantime, the Perl language itself kept growing, as Larry and others
kept adding new features. Probably the most revolutionary change in
Perl (until Perl 6, of course) was the addition of packages, modules,
and object-oriented programming with Perl 5. While this made the
transition period from Perl 4 to Perl 5 unusually long, it breathed
new life into the language by providing a modern, modular interface.
Before Perl 5, Perl was considered simply a scripting language; after
Perl 5, it was considered a full-fledged programming language.
Larry, meanwhile, started taking a back seat to Perl development and
allowed others to take responsibility for adding new features and
fixing bugs in Perl. The Perl 5 Porters (p5p) mailing list became the
central clearinghouse for bug reports or proposed changes to the Perl
language, with the "pumpkin holder"
(also known as the "pumpking")
being the programmer responsible for implementing the patches and
distributing them to the rest of the list for review. Larry continued
to follow Perl development, but like a parent determined not to
smother his children, he stayed out of the day-to-day development,
limiting his involvement to situations in which he was truly needed.
Although you might think that the birth of the Perl 6 project would
be the first nail in the coffin for Perl 5, that's
far from the case. If anything, Perl 5 has had a huge resurgence of
development, with Perl 5.7.0 released only two weeks after the
initial decision to go ahead with Perl 6. Perl 5.8, spearheaded by
Jarkko Hietaniemi and released in July 2002, includes usable Unicode
support, a working threads interface, safe signals, and a significant
improvement of the internals with code cleanup, bug fixes, better
documentation, and more than quadrupled test coverage. Hugo van der
Sanden is the pumpking for 5.9-5.10. Plans for those releases include
enhancements to the regular expression engine, further internals
cleanup and a "use perl6ish" pragma
that will integrate many of the features of Perl 6. Perl 5 is active
and thriving, and will continue to be so even after the release of
Perl 6.0.
|