April 12, 2005
Bioinformatics for Lisp

this is the least dirty of the old dirty pictures i have

Via del.icio.us, here are some bioinformatics resources for Lisp:

BioLisp.org is for “scientists who use Lisp to develop intelligent applications in the biological sciences.” I'm not sure if the mailing list still exists, but there are some bits of collected code. For example,

  • ace, by Jeff Shrager, is “An intricate microarray development package that interacts with phred, phrap, blast, cross_match, primer3, and other common packages to guide, analyze, and clean up genome assemblies, call primers, program cherry-picking robots, and other tools needed for genome assembly, simple knowledge-based analysis, and cDNA chip construction.”
  • BioDB-Loader, by Peter Karp, is a “toolkit for loading and querying bioinformatic databases” and “contains utilities for loading flatfiles from the Swiss-Prot, Prosite, Enzyme, EcoCyc, and MetaCyc databases.”

Alberto Riva of the Children's Hospital Informatics Program has collected a list of Lisp bioinformatics tools developed there, which includes SNPper, which retrieves and analyzes Single Nucleotide Polymorphisms (SNPs) from the human genome; unCHIP, for decoding and annotating Affymetrix® microarray data files; chipperDB, for storing and analyzing gene expression microarray data; BEST, for identifying the minimum set of SNPs tagging a haplotype block, and CAGED, which does analysis of temporal profiles of gene expression data. I, of course, have only the barest glimmer of an idea of what these descriptions mean.

Biolingua is an “interactive, web-based programming environment that enables biologists to analyze biological systems by combining knowledge and data through direct end-user programming,” which I think means it's trying to be the biological equivalent of Matlab or Mathematica.

The devlopers of Biolingua defend their use of Lisp.

Lisp is also the only programming language with certain very useful features, such as true macros, that are critical when you are inventing a new programming language, like BioLingua, because they enable you to extend Lisp's syntax. Lisp is the most natural language in which to write complex 'symbolic reasoning' programs, which are the heart of BioLingua's novel capabilities. Symbolic reasoning involves manipulating conceptual objects, such as 'genes', 'ontologies', 'pathway models', and the like, and Lisp was built specifically for this sort of manipulation (although not specifically for biology at the time). This is why it has remained popular in the most advanced computing circles, esp. in Artificial Intelligence.

The journal Bioinformatics recently published a paper on Biolingua. (Ah, now I see what Michael Travers has been up to lately).

Posted by jjwiseman at April 12, 2005 09:12 AM

This post might be worth linking from the various Lisp Advocacy pages that are knocking around on the Web.

I've got no experience in bioinformatics, but that's a gorgeous photograph!

Posted by: Rich on April 12, 2005 09:55 AM

I may do some work on the biolisp.org site soon. If you know of any relevant links that need to be added, send me an email: jason.public@gmail.com

Posted by: Jason Dunsmore on April 12, 2005 09:36 PM

> Biolingua ...
> which I think means it's trying to be the
> biological equivalent of Matlab or
> Mathematica.

Two comments:

1. Your URL to BioLingua is wrong; Should be www.biolingua.org (not just biolingua.org)

2. That's approximately correct: the biological equivalent of MatLab; But in an operating system-like multi-user client server modality, and with a huge amount of preloaded biological knowledge.

Posted by: Jeff Shrager on April 13, 2005 09:31 PM
Post a comment

Email Address:


Unless you answer this question, your comment will be classified as spam and will not be posted.
(I'll give you a hint: the answer is “lisp”.)


Remember info?