scripting languages...

Alex Zbyslaw xfb52 at
Thu Apr 27 09:21:57 UTC 2006

Gary Kline wrote:

>	I am NOT trying to start any kind of flame debate, but would 
>	like to know what real advantage perl has over the newer
>	so-called all-in-one language, ch.   (Other than the obvious
>	fact that there are literally billions of lines of perl existant.)
I don't  know ch from Adam so can't comment on that but really, the 
questions what are you trying to do?  Is this for a pet programming 
project?  For work?  Maintained just by you?  By others?  What's your 
programming experience?

Perl has the advantage that it is ubiquitous and has loads of library 
modules at CPAN.  There are reasonable(*) books about it and you should 
never be short of someone who can read perl if your software needs 
maintaining.  Perl has the disadvantage that it's a cobbled together, 
vile little language that teaches bad programming habits(**) and has the 
worst thread support ever.  I could go on with it's flaws, but as 
someone who has to program in it daily, suffice to say that I loathe 
it.  Perl is the new Basic.

There are plenty of more modern interpreted languages which have much 
better design (they *have* a design which is one up from Perl).  With 
the availability of rpms, ports, package systems, and downloadable 
binaries for Windows,  installing most of them should be easy-peasy.  
They'll encourage you to write better programs; most have a growing 
collection of library software and may even have decent documentation.  
My own fave would be python ( and I suspect ruby of being 
worth a look but just never had the time.

Just my $2.00 (hey, it's a good opinion :-))


(*) The so-called "Camel book" ("Programming Perl" from O'Reilly), at 
least in the edition I have, is the second worst programming book I have 
ever read.  Poorly organised, poorly indexed, missing details and full 
of poor examples.  "Advanced Perl Programming", also O'Reilly, is much 
better but does assume you know the basics and isn't really a reference 

(**) If you do start learning Perl, the this is my one piece of advice.  
Start every script and module with "use strict".  It catches the worst 
mistakes that you might make and at least forces a small amount of 
decent programming on you.

(**) If you do start programming in Perl, then this is my other one 
piece of advice.  Start your scripts with "/usr/bin/env perl -w" which 
catches some of the other worst mistakes, but also whinges on about 
things that aren't actually a problem.  (OK, that has windows 
portability problems; tough; install Cygwin :-)).

More information about the freebsd-questions mailing list