[Bioperl-l] Other object oddities
Kevin Brown
Kevin.M.Brown at asu.edu
Mon May 4 15:31:30 UTC 2009
I don't mind that Bio::Seq uses seq to return a string. In fact I prefer
that. Just would be nice if other objects obeyed the same convention.
Bio::SeqFeature::Generic returns an object for both entire_seq and seq,
but uses attach_seq to store the Bio::Seq object into the Feature.
Maybe SeqFeature could be adjusted so that ->seq returns the sequence
string of the feature (just like Bio::Seq) and ->feature_seq returns the
Bio::Seq object.
> -----Original Message-----
> From: Hilmar Lapp [mailto:hlapp at gmx.net]
> Sent: Sunday, May 03, 2009 11:37 AM
> To: Kevin Brown
> Cc: BioPerl List
> Subject: Re: [Bioperl-l] Other object oddities
>
> I agree, $seq->seq() could possibly be better named. Maybe $seq-
> >seqstr()?
>
> The thing is that having $seq->seq() return an object would be
> meaningless - it would be $self.
>
> You can test what kind of object you have using ref() or isa():
>
> $seq = $obj->seq();
> # we need the sequence string
> $seq = $seq->seq() if ref($seq) &&
> $seq->isa("Bio::PrimarySeqI");
>
> There has been a naming consistency review, but it's been a long time.
>
> -hilmar
>
>
> On Apr 30, 2009, at 5:56 PM, Kevin Brown wrote:
>
> > So, I'm using quite a bit of bioperl code in my own stuff and have
> > been
> > seeing some oddities with the naming of methods. A good example
> > would be
> > in the Bio::Seq and Bio::SeqFeature::Generic. Both have a method
> > called
> > "seq" but in the latter case it returns an object (and expects an
> > object
> > when doing a Set) and in the former it returns a string and
> expects a
> > string when doing a Set.
> >
> > This makes for a bit of brain freeze on my part when the return from
> > another object might be a Bio::Seq or
> Bio::SeqFeature::Generic and now
> > calling the ->seq returns different things.
> >
> > Guess I'm just curious if anyone has done an audit of the
> methods of
> > the
> > various objects and their return types to see how
> consistent they are
> > across even a subsection of the codebase?
> >
> > _______________________________________________
> > Bioperl-l mailing list
> > Bioperl-l at lists.open-bio.org
> > http://lists.open-bio.org/mailman/listinfo/bioperl-l
>
> --
> ===========================================================
> : Hilmar Lapp -:- Durham, NC -:- hlapp at gmx dot net :
> ===========================================================
>
>
>
>
More information about the Bioperl-l
mailing list