[Bioperl-l] Next-gen modules

Robert Buels rmb32 at cornell.edu
Wed Jul 8 22:45:09 UTC 2009


Giles Weaver wrote:
> takes about 15 minutes, so adapter removal is definitely the bottleneck. I'm
> confident that some relatively simple developments in Bioperl and/or EMBOSS
> will yield some big performance improvements - if you see my sample code in

Apropos this kind of thing, have you guys already discussed using lazy 
object creation for objects returned from bioperl parsers?  Not really 
relevant in the short term, but it could be a useful avenue to pursue 
for addressing some performance concerns people (like ebi) have.

In very vague terms, one would probably implement this by defining a 
very light-weight role/class  called something like Bio::LazyInflator, 
that would provide only an `inflate` method.  Parsers would parse into 
lightweight structures (probably arrayrefs) that implement LazyInflator 
and users could choose between grabbing data out of the uninflated 
arrayref directly, or they could call inflate() on it to transform it 
into a real object (like a Bio::Annotation or Bio::Seq or something).

The exact implementation of this would vary depending on whether Moose 
is being used.

This could potentially also be compatible with having some of the tight 
parsing loops be implemented in XS.

Rob



More information about the Bioperl-l mailing list