[pypy-dev] subclassing ndarray, was Memap in numpypy

Mike Beller mike at tradeworx.com
Thu Jul 4 23:11:06 CEST 2013


Matti/Amaury

Well -- that's excellent.  The basic functionality of memmap.py seems to
work fine now, against the ndarray-subtype branch.  I had copied the tests
from the original modules doctest into a pytest module.  Had to modify
because numpypy doesn't support .flags attribute, and also because offset
is not supported yet.

I am adding some additional tests to see what happens when sizes of things
are wrong, and when one tries to write to read-only mmaps -- don't want to
allow segfaults presumably.

Other than that -- how do I go about making my code available for review /
merging?

Should I wait until Matti's branch is merged, then make a new branch called
numpypy-memmap?  Or should memmap just be part of the ndarray-subtype
branch (since it is a user of the subtype functionality)?

Mike



On Thu, Jul 4, 2013 at 3:27 PM, Matti Picus <matti.picus at gmail.com> wrote:

> You correctly point out, in other words, that it was an ugly hack.
> It is on the way to being removed by adding a space argument to calls to
> from_space...().
> Let us know how your tests progress.
> Matti
>
> On 07/04/2013 09:57 PM, Mike Beller wrote:
>
>> Matti
>>
>> That's great.  I was stuck trying to figure out how to deal with the fact
>> that if subtype was not-none, the from_shape (and friends) would also need
>> access to 'space'.  I see you addressed that with
>> subtype_and_space=(None,None).    It's not a pattern I'd seen in the pypy
>> codebase.  I keep thinking that there are already very specific pypy-ish
>> ways of doing things at interpreter level, and digging to try to learn
>> those patterns, when perhaps things are a bit more in flux than I thought.
>>
>> On awesome side, I think now with your subclassing code, and Armin's
>> modification to mmap.py to support more of the buffer interface, the memap
>> code I've already written may just work.  Will try that next.
>>
>> Mike
>>
>>
>>
>> On Wed, Jul 3, 2013 at 3:29 PM, Matti Picus <matti.picus at gmail.com<mailto:
>> matti.picus at gmail.com>**> wrote:
>>
>>     I got motivated and implemented parts of subtypes on ndarray in
>>     the ndarray-subtype branch.
>>     This page
>>     http://docs.scipy.org/doc/**numpy/user/basics.subclassing.**html<http://docs.scipy.org/doc/numpy/user/basics.subclassing.html>
>>     describes the numpy way, so I did
>>     ndarray.view(subtype)
>>     as well, but I did not yet do the slice (they call it template)
>>     nor did I do __array_finalize__
>>
>>     Failing tests and patches are welcome
>>
>>     Matti
>>
>>
>>
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://mail.python.org/pipermail/pypy-dev/attachments/20130704/7aff0cb3/attachment.html>


More information about the pypy-dev mailing list