Antoine Pitrou wrote:
Alexander Belopolsky <alexander.belopolsky <at> gmail.com> writes:
I did not follow numpy development for the last year or more, so I
won't qualify as "the numpy folks," but my understanding is that numpy
does exactly what Nick recommended: the viewed object owns shape and
strides just as it owns the data.  The viewing object increases the
reference count of the viewed object and thus assures that data, shape
and strides don't go away prematurely.

That doesn't work if e.g. you take a slice of a memoryview object, since the
shape changes in the process.
See http://bugs.python.org/issue4580



I think there was some confusion about how to support slicing with memory view objects. I remember thinking about it but not getting to the code to write it. The memory object is both an exporter and consumer of the buffer protocol. It can have it's own semantics about storing shape and strides information separate from the buffer protocol.

The memory view object needs some way to translate the information it gets from the underlying object to the consumer of the information.

My thinking is that the memory view object itself will allocate shape and strides information as it needs it.

-Travis

_______________________________________________
Python-Dev mailing list
Python-Dev@python.org
http://mail.python.org/mailman/listinfo/python-dev
Unsubscribe: 
http://mail.python.org/mailman/options/python-dev/archive%40mail-archive.com

Reply via email to