Re:In sum... CCL:pythonVSperl...



 Drs. Ehrlich and Dalke are thanked for their contributions
 to addressing my query concerning the current use of python
 vs. perl in chem-bioinformatics. Dr. Hinsen is on vacation;
 I am sure he'll have some input on this as well...Iam anxiously
 awaiting his return to hear what he has to say...
 Thanks again...iraj,
 Iraj Daizadeh, Ph.D.
 Harvard University
 Department of Cellular and Molecular Biology
 The Biological Laboratories
 16 Divinity Avenue
 Cambridge, MA 02138
 Phone:   (617) 495-0783
          (617) 495-0560
 Fax:     (617) 496-4313
 Email:   daizadeh ^at^ nucleus.harvard.edu
 WebPage: http://mcb.harvard.edu/gilbert/daizadeh
 xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
 Original Query:
 Hello. Perl seems to dominate the
 chem(bio)-informatical sciences these
 days. An example of such dominance is
 descibed on papers describing the BioPerl consortium
 http://bio.perl.org (see,
 e.g., an article in
 http://www.bitsjournal.com
 Bioperl:Standard perl modules for bioinformatics)...
 The question is why...why has python been neglected
 >from its role in the informatics fields....
 Your responses would be appreciated...Iraj.
 xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
 xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
 xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
 xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
 Hello Iraj,
 I think you'll have to note a clear separation here; in the bioinformatics
 (read sequence analysis as opposed to structure analysis) field, Perl had
 strong support from the start on. When I speak to bioinfo people here at
 EMBL, code reuse seems to be the dominant motive for choosing Perl.
 In my eyes, things are different in the structure-related comp chem
 field. Right now,  I see a lot of projects which use Python in favor
 of Perl; for example look at Konrad Hinsen's excellent Molecular
 Modelling Toolkit
 (http://starship.python.net/crew/hinsen/mmtk.html). Companies
 like
 Bioreason or Exelyxis are now looking for people with Python coding
 experience.  People here in NMR at EMBL even dream about developing a
 next-generation XPLOR as libraries to be used as Python modules.
 Given Python's excellent CORBA, number crunching and XML support, as
 well as the Java integration and existing class libraries relevant to
 the comp chem field, I think it's just a matter of time when Python
 catches up. Tight integration with web application servers like
 Zope (http://www.zope.org)
 could make a big difference in  writing web
 services for the biocomputing community.
 After having used Perl4 and Perl5 for years, I wonder where people see
 advantages of Perl in the comp chem field? Comments anybody?
 Regards,
         Lutz
 ______________________________________________________________________
 Lutz Ehrlich                    http://www.embl-heidelberg.de/~ehrlich
                                 mailto:lutz.ehrlich ^at^
 embl-heidelberg.de
 European Molecular Biology Laboratory           phone: +49-6221-387-140
 Meyerhofstr. 1                                  fax  : +49-6221-387-517
 D-69012 Heidelberg, Germany
 xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
 xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
 ---------- Forwarded message ----------
 Date: Thu, 29 Jul 1999 17:24:27 -0600
 From: Andrew Dalke <dalke ^at^ bioreason.com>
 To: Iraj Daizadeh <daizadeh ^at^ nucleus.harvard.edu>
 Subject: Re: CCL:pythonVSperl...
 Here are some bioinformatics/chemical inforamtics/structural
 biology Python references:
 http://theopenlab.uml.edu/development.html
 http://starship.python.net/crew/hinsen/mmtk.html
 http://starship.python.net/crew/dalke/
 http://www.scripps.edu/pub/olson-web/people/sanner/html/cv.html
   (search for Python)
 You'll notice most of these are structural based.  That's
 probably from a combination of biases.  My background is in
 protein structure modeling, so I'm prone to know more about those
 types of efforts.
 More relevant to your question, I've found that Perl is harder to
 use for developing complicated data structures (eg, describing a
 molecule in 3D) than Python.  On the other hand, most of the
 traditional bioinformatics work seems heavily string based,
 which is Perl's bread&butter.
 I also know that Perl is still better in I/O performance than
 Python.  I hear that the Perl implementation muck around with
 implementation differences in the FILE* for STDIO to get about
 a two-fold speed advantage over even generic C code.  Since for
 many sorts of bioinformatics work, the needs are "traverse that
 gigabyte file and extract this information", which is I/O
 bound, perl makes sense.
 Python's advantage comes with building larger or more complicated
 programs, especially when several people are involved and the
 code needs to be more maintainable and easier to read.  (The
 Python community calls this "programming in the large").  It
 is much easier to write reusable libraries -- and actually have
 someone else understand them enough to reuse them -- in Python
 than Perl.  That's why we've chosen Python over Perl for our
 <plug>LeadFinder package for high-throughput screening
 analysis</plug>.
 						Andrew Dalke
 						dalke ^at^ bioreason.com
 xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
 xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx