Just wanted to say a big thanks to everyone in the NumPy community who has commented on this topic - it's given us a lot to think about and a lot of good ideas to work into the design!
Best regards, Mike. On 4 January 2013 14:29, Mike Anderson <mike.r.anderson...@gmail.com> wrote: > Hello all, > > In the Clojure community there has been some discussion about creating a > common matrix maths library / API. Currently there are a few different > fledgeling matrix libraries in Clojure, so it seemed like a worthwhile > effort to unify them and have a common base on which to build on. > > NumPy has been something of an inspiration for this, so I though I'd ask > here to see what lessons have been learned. > > We're thinking of a matrix library with roughly the following design > (subject to change!) > - Support for multi-dimensional matrices (but with fast paths for 1D > vectors and 2D matrices as the common cases) > - Immutability by default, i.e. matrix operations are pure functions that > create new matrices. There could be a "backdoor" option to mutate matrices, > but that would be unidiomatic in Clojure > - Support for 64-bit double precision floats only (this is the standard > float type in Clojure) > - Ability to support multiple different back-end matrix implementations > (JBLAS, Colt, EJML, Vectorz, javax.vecmath etc.) > - A full range of matrix operations. Operations would be delegated to back > end implementations where they are supported, otherwise generic > implementations could be used. > > Any thoughts on this topic based on the NumPy experience? In particular > would be very interesting to know: > - Features in NumPy which proved to be redundant / not worth the effort > - Features that you wish had been designed in at the start > - Design decisions that turned out to be a particularly big mistake / > success > > Would love to hear your insights, any ideas+advice greatly appreciated! > > Mike. >
_______________________________________________ NumPy-Discussion mailing list NumPy-Discussion@scipy.org http://mail.scipy.org/mailman/listinfo/numpy-discussion