[Numpy-discussion] rewriting in C (was ANN: Masked Array...)
Russell E. Owen
rowen at cesmail.net
Fri Jan 19 17:24:57 EST 2007
In article <45B13883.7080103 at ee.byu.edu>,
Travis Oliphant <oliphant at ee.byu.edu> wrote:
> Matt Knox wrote:
>
> >>Moving the implementation to the C-level also has its downside. To
> >>me, at least, Python code is much more readable and hence easier to
> >>maintain.
> >>
> >>Is there a way that we can implement only the speed-critical methods
> >>in C?
> >>
> >>Cheers
> >>Stéfan
> >>
> >>
> >>
> >
> >Implementing the whole thing in C also has the side benefit of the
> >possibility
> >making a nice C level api available to these sub-classes. And I suspect the
> >core
> >numpy developers are comfortable enough with C that maintainability is
> >*probably* not a huge concern here.
> >
> >But yeah, implementing even just the speed critical parts in C would still
> >be a
> >nice improvement.
> >
> >
> Part of the trouble is that sometimes the speed critical parts are how
> slow Python functions (e.g. __getitem__) are. You want to avoid that
> function call and the only way to do that (that I know of) is to create
> the sub-class in C.
I'm curious why the low level stuff is in C instead of C++? I would have
thought that C++ templates and possibly even the standard template
library would be a huge win for coding array-type classes.
-- Russell
More information about the NumPy-Discussion
mailing list