On Tue, Jul 13, 2010 at 10:30 PM, Kurt Smith <[email protected]> wrote: > > Unfortunately, for some compilers I've used, array expressions like: > > array1 = array2 + array3**2 > > Are slower than the 'do' version with explicit indexing -- that is to > say, slower than they should be. Apparently the compilers create > temporary arrays, exactly analogous to how numpy does it (although > many times faster and with more opportunities for optimization).
as a minor note, blitz++ handles this with expression templates, and that's what weave uses for array manipulations. So one gets very numpy-like arrays in c++ that have also efficient behavior in many expressions. Not saying that we don't also want 'inline fortran', just that weave's inline/blitz support is actually quite powerful. Except that right now it seems to be broken, as I just ran into with some of my simple examples: http://projects.scipy.org/scipy/ticket/739 Bummer... Cheers, f _______________________________________________ Cython-dev mailing list [email protected] http://codespeak.net/mailman/listinfo/cython-dev
