I make the following axioms:
Since an attribute itself is an object, we have to consider the most simple case:
The L1 Euclidian distance suffices from value to value.
Let’s see if we have the interval with orientation this way?
>>> from archery.bow import Daikyu
>>> class Point(Daikyu):
>>> def __abs__(self):
>>> # L2 distance
>>> return sum(map(lambda s:s*s,self.value()))**.5