I want to learn a new language...

garth h thaabit at gmail.com
Wed Feb 14 16:00:06 MST 2007


Disclaimer: avowed Perl bigot speaking.

Here's why I would learn Perl before the other two:

 I have minimal experience with Ruby and Python, and so can't comment on
their abilities.  But as for Perl, regardless of whatever language I may use
in the future, having the Perl tool in the my belt will always serve me
well.  I don't know of any other language that gives you the ability to
write throw-away programs with such ease.  Larger programs are also
possible, but I don't think anyone shines brighter when it comes to getting
something hard done quick and easy.  Want to do significant regex work in
multiple files?  You can do it commandline.  Want to do something a little
more complicated?  A short script will do.  I don't know of any other
language that steps out of your way better when it comes to IO and text
manipulation.  I think Larry Wall stated the philosophy of Perl as something
like "make easy things easy and hard things possible."  In the end, if you
don't use it for the final form of something, it's the best scratch paper
language that exists.

Also, I would say one of the most important keys in learning any language is
simply how much you *like* it, regardless of its speed or elegance or
whatever.  I couldn't care less how Java isn't as sucky as it used to be, I
simply don't like it.  I don't like the syntax, I don't like the verbosity,
I don't like the control it exerts over me.  Sure, it's a great language and
has its place.  I think arguing "speed" or something like that is just too
subjective.  I bet my mod_perl app runs just as fast as whatever web app you
come up with.  And I bet my C for loop beats your Java for loop.  But, who
cares?  The most important time factor is *your* time--how much time you're
going to spend learning and churning the language.

And yes, I do have experience programming in C/C++, Java, Visual Basic,
Pascal, Basic, etc.  Perl opened my eyes to some new ideas that changed how
I think about programming in any language.  And it kept me from wasting my
time on things that didn't matter to the task at hand.  The same has been
said about Lisp, but it's not on your list.

-- 
Garth

A designer knows he has achieved perfection, not when there is nothing left
to add, but when there is nothing left to take away.
~Antoine de Saint-Exupery



More information about the PLUG mailing list