[Mulgara-dev] Removing exclude.

Life is hard, and then you die ronald at innovation.ch
Fri Apr 13 08:46:06 UTC 2007


On Fri, Apr 13, 2007 at 01:58:42PM +1000, Andrae Muys wrote:
> 
> My current focus is on the Non-union compatible disjunction bug.  As  
> a part of this I am back in TuplesOperations.project() and friends,  
> where there is some ugliness resulting from the current  
> implementation of exclude.  I'm not going to get sidetracked on a  
> cleanup job, but it does remind me that we never did reach an  
> agreement on the future of exclude.
> 
> As I recall the conversation we hadn't yet found anyone who actually  
> uses it - and of those who have tried to, no-one has managed to  
> actually use it correctly.

Well, we do use it, and I do think we use it "correctly" in the sense
that given our pattern of triples it will do the right thing (and we
understand that if there are patterns of triples under which it will
not do what we want). But it's horrible, and we will switch to minus
soon.

> It was introduced to provide a limited  
> form of negation, and one that interacts poorly with the open-world  
> assumption.  We also now have minus, which is well defined,  
> corresponds closely to our intuitive understanding of the operation,  
> and is (I am told) what was actually required.
> 
> If my memory is correct we should probably at least deprecate, if not  
> remove exclude entirely from mulgara.
> 
> Do we agree that exclude should be removed?

We don't have a problem with that.

> If it should be removed, when should this occur?

This depends on what the current rules for backwards compatibility
between releases is.

Btw., this reminds me that the next release of mulgara isn't "binary"
compatible with the 1.0.0 release: all third-party resolvers need to
be modified because of the new 'abort()' method. Not saying this is a
major problem, just that it needs to be prominently documented in the
release notes.


  Cheers,

  Ronald




More information about the Mulgara-dev mailing list