Dennis Heuer wrote:
> The reason why I'd like to use the long type as the base of my bitarray
> type is that the long type is already implemented as an array and
> working efficiently with large amounts of bytes.
This is wrong; you are mixing up the "is-a" and "has-a" relationships.
While it might be useful to have long as the *representation* of a
bitarray, it's not the case that a bitarray *is* a long. A bitarray
is a sequence type and should implement all aspects of the sequence
protocol; long is a numeric type and should implement numeric
operations. While the operators for these somewhat overlap (for + and
*), the semantics of the operators never overlaps. So long and
bitarray are completely distinct types, not subtypes of each other.
IOW, you should do
class bitarray:
def __init__(self):
self.value = 0L
...
Regards,
Martin
_______________________________________________
Python-Dev mailing list
[email protected]
http://mail.python.org/mailman/listinfo/python-dev
Unsubscribe:
http://mail.python.org/mailman/options/python-dev/archive%40mail-archive.com