[Bioperl-l] Query Unigene title from input a ACC number / BioPerl
Object Creation
Ewan Birney
birney at ebi.ac.uk
Tue Mar 25 17:41:24 EST 2003
>
> I believe Ensembl hit this perf problem and went with a simplier object
> initialization scheme to buy them the performance they needed. It means
> that you have to code up more things when you inherit from an object
> (and have to remember to update all child classes when every a parent
> class changes) but you get some performance increase.
>
Yeah - inside Ensembl we make the hash *just right* then bless it, rather
than making an object and filling it in. The main thing you hit is that
Perl is just not optimised to have 100,000 objects
created-and-then-destroyed every 3 function calls.
Nothing much else to do but:
(a) write it in C, bind via XS and in 6 months time spend 1 month
chasing a memory leak/overwrite bug which segfaults your program (my
recommendation - don't do it)
(b) go the Ensembl route - but you have to be damn sure you know what
you put in your hashes (note - because bioperl *interfaces* don't mandate
an implementation, you can still use bioperl interfaces, but stay clear
of implementations)
(c) wait for parrot to work nicely and a nice Perl5 to Parrot compiler
that "does the right thing"
(d) switch languages. I get tempted by python about once every 3 months
but give up trying to rewire my brain to deal with tabs.
> -jason
>
> --
> Jason Stajich
> Duke University
> jason at cgt.mc.duke.edu
> _______________________________________________
> Bioperl-l mailing list
> Bioperl-l at bioperl.org
> http://bioperl.org/mailman/listinfo/bioperl-l
>
More information about the Bioperl-l
mailing list