On Oct 12, 7:08 am, Rich Hickey <[EMAIL PROTECTED]> wrote: > As this discussion highlights, Clojure doesn't have a proper notion of > multidimensional arrays or vectors. I saw a presentation on IBM's X10 > [1] and was impressed by their point-indexed arrays. I think there are > some good ideas in there that might inspire a nice contribution to > Clojure. > > Rich > > [1]http://x10-lang.org/
The parallel HPC language Titanium [1] has similar constructs. They are useful for expressing computations on regular grids. You could have constructs like "for all points p in domain D" and also have an idea of "neighbors" of p (north, south, east, west, up, down). D might have interesting boundary conditions (e.g., reflecting or periodic) and the "for all" construct would be aware of this when computing neighbors. I could see this being useful for games (collision detection perhaps, or wave propagation). When I work with matrices I generally want actual 2-D indices, and also the ability to partition and slice matrices. The right syntax there might be different than with regular grids: I don't generally think of "neighbors" of a matrix entry, rather of entire slices related to that entry. Of course grids and matrices could look the same underneath but the usual notation is different. In your copious free time, of course ;-) I mention it only because there are different notations for the same underlying construct, which is interesting for language designers. mfh [1] http://titanium.cs.berkeley.edu/ --~--~---------~--~----~------------~-------~--~----~ 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 [EMAIL PROTECTED] For more options, visit this group at http://groups.google.com/group/clojure?hl=en -~----------~----~----~----~------~----~------~--~---