Help biologist choose a new programming language

Simon Andrews simon.andrews at bbsrc.ac.uk
Mon Feb 10 06:15:27 EST 2003


jkb at mrc-lmb.cam.ac.uk wrote:
> 
> > John Ladasky wrote:
> >
> > 1) A low barrier to entry for performing simple tasks, such as
> > processing text files.  This will allow me to accomplish the job I
> > want to do right now.
> 
> In my mind, although Perl is a great language for this sort of thing, 
> it does have the tendency to look like line noise. It's a very powerful 
> and expressive language, but you have be to strict with yourself to make 
> it look nice.

I would class this as both a strength and weaknesses of Perl.  If you
are knocking a quick script together you can write something which may
look a mess, but quickly gets the job done.  If you're after something
more long term then you can write more verbose, but far more readable
code.  The problem comes if you have to maintain code which was
originally written to be quick and dirty.

One of the advantages to the BioPerl modules is that the syntax they use
is pretty easy to read, even if you have no clue about Perl.  The "line
noise" is still there, but it's hidden away behind nice friendly
interfaces.

> Anyway, rather than turn this into a language war I thought I'd supply some
> pointers to objective comparisons between languages.
> 
> An empirical comparison of C, C++, Java, Perl, Python, Rexx, and Tcl for a
> search/string-processing program.
>     www.ipd.uka.de/~prechelt/Biblio/ jccpprt_computer2000.pdf

A very interesting paper.  I would be interested to see the results of a
similar comparison using a more biological example (say parsing
information from Blast files), and allowing the use of any modules which
were available (ie Bio (Perl | Java | Python)).  As I said in my
previous post, I believe that often the most important metric is the
measure of productivity with the language, rather than absolute speed of
execution.  Even measuring lines of code per hour is a bit meaningless
since the same function may take vastly different amounts of code to
accomplish in different languages.

Simon.

[As a (mostly) Perl programmer, I also have to like this report since,
it says "..Perl subjects may be more capable than others, because the
Perl language appears more than others to attract especially capable
people." :-)]
---





More information about the Bio-soft mailing list