On Wed, Aug 25, 2010 at 8:19 AM, Jason McCampbell <jmccampb...@enthought.com
> wrote:

> Chuck,
>
> I will update the wiki page on the Numpy developer site that discusses the
> refactoring this week.  Right now what's there reflects our plans before
> they met the reality of code.  Needless to say, the actual implementation
> differs in some of the details.
>
> Here is a very brief overview of the structure:
>
> - The libndarray directory now contains all of the code for the 'core'
> library.  This library is independent of Python and implements most of the
> array, descriptor, iterator, and ufunc functionality.  The goal is that all
> non-trivial behavior should be in here, but in reality some parts are tied
> fairly tightly to the CPython interpreter and will take more work to move
> into the core.
>
> - numpy/core/src/multiarray and numpy/core/src/umath now implement "just"
> the CPython interface to libndarray.  We have preserved both the Python
> interface and the C API.  Ideally each C API function is just a simple
> wrapper around a call to the core API, though it doesn't always work out
> that way. However, a large amount of code has been moved out of these
> modules into the core.
>
> - The core is built as a shared library that is independent of any given
> interface layer.  That is, the same shared library/DLL can be used with
> CPython, IronPython and any other implementation.  Each interface is
> required to pass in a set of callbacks for handling reference counting,
> object manipulation, and other interface-specific behavior.
>
>
How do you manage PyCapsule/PyCObject? I don't recall how deeply they were
used but ISTR that they were used below the top level interface layer in
several places.

<snip>

Chuck

>
>
_______________________________________________
NumPy-Discussion mailing list
NumPy-Discussion@scipy.org
http://mail.scipy.org/mailman/listinfo/numpy-discussion

Reply via email to