On 1/30/2009 3:22 PM, Neal Becker wrote:
Now what would be _really_ cool is a special array type that would represent a constant array without wasting memory.
Which again is a special case of something even cooler: lazy evaluation.
This would require arrays to have immutable buffers. Then an expression like "a*x + y" would result in a symbolic representation of
a * x.buffer + y.buffer
Then the array could evaluate itself (it could even numexpr or a JIT compiler) when needed.
The scheme would be very fragile and complicated if arrays were allowed to have immutable data buffers like those of numpy.