[Bioperl-l] Computation.pm

Hilmar Lapp lapp@gnf.org
Wed, 13 Dec 2000 17:48:07 -0800

"Fiers, M.W.E.J." wrote:
> Hi
> I've commited a Bio::SeqFeature::Computation.pm to the cvs. It is a
> variation on the Generic.pm SeqFeature object but more geared towards
> containing the results of a computation result.
> A big goal of writing this is also to make the game export more
> straightforward.
> Since I'm kind of new to this, I hope I did everything alright.
> Biggest changes are
> * The subSeqFeature's are grouped into subset's. i.e.
>       $feat->add_sub_SeqFeature($subfeat,'repeat')
> * There is a data structure exactly like tag, but named score
> * It contains a computation_id (like game does)
> * Lot of items like program_name and database_version added

Thanks for the submission Mark. Have you checked against
Bio::Tools::AnalysisResult? This one is supposed to be the base class for
analysis result parsers. It's not a feature though.

Do we really want to have all-encompassing feature objects? Could it be
smarter to have features which can have an object attached that describes
their computational origin?

I personally tend to prefer to have classes as slim as they can be, and
rather have more classes and a more complex object tree (objects having
several other objects attached) which of course increases the traversing

In addition I think we need to keep the number of classes in
Bio::SeqFeature as comprehensive as possible, because people using the
package will try to comprehend which class to use for what. That is, the
extent of overlap between classes should be as little as possible. In the
case of SeqFeature::Computation this would mean that _every_ feature object
derived from a computation shall inherit from it (rather than some do and
some deliberately don't).

What do people feel about these aspects? Do you disagree, do you think this
would lead us towards imposing to strict requirements on module
implementors? In other words, what degree of controlling the bazaar's
growth is sensible?

Hilmar Lapp                            email: lapp@gnf.org
GNF, San Diego, Ca. 92121              phone: +1-858-812-1757