At 12:46 AM 8/11/00 -0400, [EMAIL PROTECTED] wrote:
>It's easy to make messy Perl programs. Large projects have a few good
>developers, but lots of mediocry and lousy coders doing grunt work. Given
>the nature of Perl, messy, a gazillion ways of doing things, a rich and
>complicated syntax, no typechecking, an OO where "common idiom" means
>no data hiding and no encapsulation, over 12k pages of documentation,
>yet it's not completely documented, and no formal specification, Perl
>is, IMO, unsuited for a large project. Perl is like a Arabian horse. The
>winner of the pack, but only in the hands of an excellent rider. But often,
>it's not about finishing the race. It's getting there, safely. And other
>horses might not be as fast, and they look ugly, but they won't bolt.
What he said. Unfortunately many people see any effort to tame Perl as
being equivalent to breaking it (useful ambiguity of 'break' there).
Perl is still struggling to find its ecological niche. You're not going to
write a device driver in it, or a windowing system, or an air traffic
control center. No-one would get in trouble for picking C++ for those, but
that's okay; Perl doesn't have to be all things to all people.
At some stage, however, we oughtta acknowledge that a language with as many
features as Perl is too big to be considered only for programs of under 100
lines. Something with that much capability oughtta to be a candidate for
complex tasks. The prime niche here is enterprise-wide systems: product
management chains, document management systems, process control, CRM, ERP,
etc. These things don't have to bit-twiddle or require pedal-to-the-metal
optimization, they should be coded at the kind of '30,000 feet view' that
Perl gives you, and need to interface easily with HTTP, databases, XML, etc.
I know Perl's getting plenty of exercise in that area already, but mainly
as glue between COTS products that handle the tough stuff. Perl could
handle the tough stuff. It just needs to be made easy to write large
things in it by large groups of programmers, and possible to ship binary
compiled products so that people who want to protect their intellectual
property and prevent the customer from diddling with the code can do
so. Please don't respond with the arguments against that; I've heard 'em
all many times. They won't change the fact that many people want to do
those things and the lack of them is a barrier to Perl dominating that
market. Fortunately it looks as though Perl 6 will take huge steps in the
right direction.
--
Peter Scott
Pacific Systems Design Technologies