David Larochelle wrote:
> For example, the typical argument for Python in the data analysis
> space is that there are good well documented libraries...

This is a fairly recent turn of events. For the longest time, Perl had
CPAN as a huge advantage over the other languages that were encroaching
into the same space.

But the inertia afforded by vast quantities of ready-built libraries
only lasts for so long. Before it ran out, Perl 5 needed to more
aggressively adopt the new ideas in Perl 6, and work needed to be done
on easing the effort that it takes to deploy Perl in large markets, like
web development.


> Is there a domain in which we could make a similar argument for Perl?

There may be in areas like bioinformatics, that I'm less familiar with.

If you think of how Ruby on Rails put Ruby on the map, it doesn't
necessarily have to be a new vertical, or even an entirely new
framework. It's more about understanding the needs of a particular
market and packaging up a solution that bypasses the barriers that have
traditionally just been tolerated.

At the same time the language itself need to be repackaged. Rebranded as
Perl 7 or something even more radically different. (Some additional
substance changes are needed, but a lot of Perl 6 has already ended up
in Perl 5, and goes largely unnoticed by the people who have left.)
Basically, you need to give the IT press something to write about, and
you need a revised core language that addresses some of the criticisms
that the defectors have made.


> Can anyone come up with a use case in which we could make a
> compelling argument for building a new system in Perl as opposed
> Python or Ruby?

If you know Perl, Python and Ruby are largely redundant. They've found
some verticals where they excel, but for some, like web development,
their advantages aren't substantial if you already have Perl infrastructure.

If you're starting out your career, its harder to make a good argument
for Perl, unless some of the fundamental characteristics of the language
catch up to the state of he art.


> What if other languages such as C++, Java, or Scala are available?

In my opinion, C++ has faded from mainstream to a specialty language.
Tons of legacy C++, but for new stuff, it's used for performance
critical tasks. There's little overlap between C++ and the 3 scripting
languages you list.

As we all know Java has a massive foothold on enterprise software. Great
choice for a new programmer if you want to be a commodity. If it was the
best all around solution, we wouldn't see large communities around PHP,
JavaScript, and Python. Obviously there are plenty of verticals where
these other languages are a better fit.

(In some ways, Java shares similar deployment barriers to Perl,
resulting in it loosing out to PHP, Python, and Ruby on the low end.
Unlike Perl, Java had huge corporate sponsorship, marketing, and buy-in
to get it into large enterprises, where deployment hassles are a
secondary concern.)

I guess Scala is a good pick if you want something less formal than Java
and feel you need strong typing. I remain unconvinced that strong typing
actually catches as may problems as its proponents seem to think it does.

So compared to these three choices, yes, Perl has some benefits, but so
does Python and Ruby.


> (The best I can do is to cite the safety benefits from the compile time
> checking that Perl provides which Python and Ruby do not. This allows bugs
> such as typos in variable names to be caught at compile time.

So no one else "borrowed" Perl's compilation phase?


> The responses I imagine getting would be 1.) you should be using unit
> tests anyway or 2.) use a strongly typed language if you want compile
> time guarantees.)

If #1 is a satisfying response, then you could use the same logic to
argue against strong typing.

 -Tom

-- 
Tom Metro
Venture Logic, Newton, MA, USA
"Enterprise solutions through open source."
Professional Profile: http://tmetro.venturelogic.com/

_______________________________________________
Boston-pm mailing list
[email protected]
http://mail.pm.org/mailman/listinfo/boston-pm

Reply via email to