Rich, First of all, thank you for informing the community about this before you push it into Clojure 1.1/2.0. Developers are people, and it takes time for us to adjust to change. Advance warning helps a lot.
As for the changes themselves, I don't know yet. Now, I've only thought about this briefly, and you have been working on this a long time. I don't have your experience. I'm sure there a ton of details I don't see, but the following is my "gut" response. I don't like this addition. I absolutely love that every data structure is persistent in Clojure, and that I don't have to think about sharing, etc. You make a great argument in your "Clojure for Lispers" videos about why persistent data structures are required, and human understanding is not enough. This change seems to be a step backwards. The above argument is not perfect. I will admit that using Java interaction, it is possible to deal with mutable data structures anyway. I do have some code the relies on Java classes, and I mutate the object sequentially. In those cases I wrap all the changes inside of one higher level function and return the result. So maybe I am doing some type of transient thing already. As a second point, I don't like the introduction of assoc!, conj!, etc. It just strikes me as another bug to have (oh, right, I need assoc! not assoc...). With all this being said, I'm looking forward to your final version. Your speedup is impressive, and I know parts of my code (lists of hash maps) that could use it. You've done some pretty bad ass stuff with Clojure so far, and I think there is a chance that you could pull this off beautifully. Good luck. On Aug 3, 5:25 pm, Rich Hickey <richhic...@gmail.com> wrote: > I've been doing some work on Transient Data Structures. You can read > about them here: > > http://clojure.org/transients > > Feedback welcome, > > Rich --~--~---------~--~----~------------~-------~--~----~ 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 Note that posts from new members are moderated - please be patient with your first post. 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 -~----------~----~----~----~------~----~------~--~---