Q:

theory behind array manipulation

I'm about to be asked to implement an array manipulation functionality somewhat akin to numpy (largish homogeneous arrays used to manipulate unpacked sequences of images and whatever our customers may derive from those images) for in-house scripting language. Naturally I'd like to limit it to the smallest amount of functionality I can get away with. Is there some analogue to structured program theorem for array manipulation? Given that I'll find it hard to predict how precisely it will be used by our customers (forget about controlling it) is there a better way than blindly copying some subset of numpy and then fixing what our customers will complain about? Using numpy is not an option, unfortunately, because there's a substantial amount of code written in our in-house scripting language.

A:

Travis Oliphant's 2006 book might be a good start.
Guide to NumPy - Complexity Sciences Center

https://www.google.com/url?sa=t&source=web&rct=j&url=http://csc.ucdavis.edu/~chaos/courses/nlp/Software/NumPyBook.pdf&ved=0ahUKEwjzlrv67bDQAhVUzWMKHV-tDToQFggjMAE&usg=AFQjCNEXrF-GAQ7w3C_llajIhFEijEg-lA&sig2=lhLb4cVt_URgvTLo2AfM7Q
A 2nd edition has just been published.

