Overloading and? was <RE: Should I prefer an external database>
BPettersen at NAREX.com
Wed Apr 23 21:12:05 CEST 2003
> From: Andrew Dalke [mailto:adalke at mindspring.com]
> Steven Taschuk
> > __and__ could be passed other as a callable which computes and
> > returns the second operand. Then the standard __and__ could be
> > def __and__(self, other):
> > if bool(self):
> > return self
> > return other()
> So a new idiom and new code (to generate a function from a set of
> unevaluated code), just to allow overriding booleans? Seems
> rather excessive to me.
It occurred to me that C++ allows overloading of && (non c-s), while the
regular && is c-s.
Could it be that c-s is only useful in domains with exactly two elements
(true, false). I.e. don't worry about c-s for overloaded __and__ since
(a) the class you're overloading it on will probably not be limited to
two instances, and (b) even if it was, how would you know c-s is
desireable or even appropriate?
More information about the Python-list