Thanks Adrian,

I have looked at the clojure.set library, but haven't thought about it
significantly with respect to the matrix library.  Thanks for the
heads up.

-Adler

On May 6, 11:17 pm, Adrian Cuthbertson <adrian.cuthbert...@gmail.com>
wrote:
> If you haven't seen it yet, the set module (clojure.set) provides a
> basic implementation of set relational algebra. May be useful for this
> work?
>
> See clojure.org data structures and the source for clojure/set.clj in
> the clojure source.
>
> Rgds, Adrian.
>
> On Wed, May 6, 2009 at 7:05 PM, Anand Patil
>
> <anand.prabhakar.pa...@gmail.com> wrote:
> > On Sat, May 2, 2009 at 11:19 PM, aperotte <apero...@gmail.com> wrote:
>
> >> Hello everyone,
>
> >> I just uploaded some of my work on a new datatype for clojure to a git
> >> repository.
>
> >>http://github.com/aperotte/persistentmatrix
>
> >> A bit of the rationale and motivation for the datatype is described on
> >> the github page.  I basically wanted to create a datastructure for
> >> manipulating large amounts of data efficiently and in a human friendly
> >> way in clojure.
>
> >> Its main features are:
>
> >>   1. Immutability
> >>   2. Primitive Support
> >>   3. N-Dimensional – Arbitrary number and size of dimensions (ie.
> >> ability to create a 4×3×5x6 datastructure)
> >>   4. N-Dimensional units (ie. ability to create a 10×10 matrix with
> >> 2×1 units to represent complex numbers)
> >>   5. Fast submatrix views via structural sharing (ie. constant time
> >> slicing, transposing, and other data manipulations)
> >>   6. Maintenance of both deep and superficial dimensionality (ie.
> >> slicing a 4×3×5x6 along the 3rd dimension will yield a datastructure
> >> with a superficial dimensionality of 3 and a deep dimensionality of 4)
> >>   7. Axis and element labeling and label indexing (ie. ability to
> >> label axes and elements of an axis with strings or any arbitrary
> >> object)
> >>   8. Implementing many of the clojure interfaces and thereby
> >> automatically inheriting much of the functionality of the standard
> >> library for data structures.
>
> >> I would welcome any feedback.  Also, if anyone is interested in
> >> working together to accelerate its development, that would be welcome
> >> too!
>
> > Great work! I'm glad to see some numerical advances in Clojure.
> > I've got a couple of suggestions: first, you might want to follow numpy and
> > call n-dimensional arrays 'arrays', and reserve 'matrix' for 2d arrays. Or
> > not...
> > Second, immutability is definitely the right default, but it would be nice
> > to be able to create nonstandard arrays from Clojure somehow. For example,
> > say I wanted to compute the matrix (f (- x y)) over the Cartesian product of
> > vectors x and y.
> > Anand
--~--~---------~--~----~------------~-------~--~----~
You received this message because you are subscribed to the Google Groups 
"Clojure" group.
To post to this group, send email to clojure@googlegroups.com
To unsubscribe from this group, send email to 
clojure+unsubscr...@googlegroups.com
For more options, visit this group at 
http://groups.google.com/group/clojure?hl=en
-~----------~----~----~----~------~----~------~--~---

Reply via email to