[BioRuby] SciRuby (The first BioRuby IRC conference on Dec 19th)

John Woods john.woods at marcottelab.org
Wed Dec 15 23:02:27 UTC 2010

Hi everyone,

I wanted to put in my two cents about this (not this specific email, but the

I come from a CS background, and so when I began working in bioinformatics,
I shifted from C++ to Python, Perl, back to Python, and finally to Ruby (and

Working in a bioinformatics lab, my experience has been that most people go
with Python over Ruby because of SciPy and NumPy (and matplotlib). At least
for us, it's not because of speed at all. If I need something speedy, I code
it in C++ and use Rice to build a Ruby adapter.

Anyway, a couple of us (me, John Prince, Ara Howard, a few others) have been
brainstorming a bit. We think the #1 thing Ruby is missing is SciRuby (and
with it, good numerical support).

To that end, we've been working a bit to put together a spec for how a
SciRuby with plotting and numeric capabilities would work.

I'm not quite ready to say anything specific about it publicly just yet, but
if you're interested in being involved, please write me back.

John O. Woods
NSF Fellow
The University of Texas at Austin

On Mon, Dec 13, 2010 at 3:48 PM, Chris Fields <cjfields at illinois.edu> wrote:

> On Dec 13, 2010, at 12:16 PM, Pjotr Prins wrote:
> > On Mon, Dec 13, 2010 at 06:57:39PM +0100, Raoul Bonnal wrote:
> >>> Part of how we try to handle big data files in Biopython is using
> >>> Python iterators, whereby the file is loaded record by record (how
> >>> depends on the file format - for BLAST we do this query by query),
> >>> not all into memory in one go. I think BioPerl does something very
> >>> similar in their parsers, I'm not so familiar with BioJava.
> >
> > BioJava uses a visitor pattern. In effect an iterator.
> >
> > With all current implementations IO runs, then code, the IO, etc.
> > While we are IO constrained, we are actually doing worse.
> >
> > What I want is an IO thread going at maximum throughput. Every item
> > should get parcelled out for further parsing and processing, in
> > parallel to the IO thread.
> >
> > We should do better, and make it a generalization. I think we can do
> > it by using Scala and the standard BioJava iterators. With Scala it
> > can be turned in a parallelized iterator. That is a fun project.
> >
> >> From my point of view Python guys are doing a very good job on all
> fields.
> >> Unfortunately I'm in love with ruby :-)
> >
> > All you need is love :)
> >
> > Pj.
> At some point the choice of a language will not matter as much, as long as
> it is implemented in a VM (something Perl 5 cannot claim at the moment, but
> Perl 6 does with the Parrot VM).
> chris
> _______________________________________________
> BioRuby Project - http://www.bioruby.org/
> BioRuby mailing list
> BioRuby at lists.open-bio.org
> http://lists.open-bio.org/mailman/listinfo/bioruby

More information about the BioRuby mailing list