[Biojava-l] RE: Going in circles (again)!

Thomas Down td2@sanger.ac.uk
Fri, 7 Sep 2001 15:13:25 +0100


On Fri, Sep 07, 2001 at 10:17:42AM -0400, Cox, Greg wrote:
> Hi Mark, I'm glad to see someone else looking at this.  
> 
> I don't know what you mean by a "hospital pass," but handleDecorations() was
> just a convenient way to encapsulate the decoration messiness.  It proably
> doesn't make sense to keep that method around, but that's your call.  There
> were bugs in how BioJava 1.1 handled circular locations, so I don't
> reccommend cutting and pasting directly.  How do you plan to handle
> operations on two circular sequences not in the same base?  For example,
> intersecting 95..10 on a 100 pair plasmid and 100..10 on a 105 pair plasmid?
> That's the case I'm not sure about, but don't have any use case for.

This one's always scared me, too.

If you just failed most of the operations where the circular
length wasn't equal, that would cover all the use cases that
I can think of off the top of my head, and means that you can
at least avoid returning incorrect results if someone does
try something like finding the union of two locations on
different length circles.

> I like the idea for isDecorated changing.  I don't know enough about the
> guts of Java to know if it saves cycles, but it's cleaner.

instanceof is a single pointer comparison on most VMs, so it
should go nice and quickly...


    Thomas.