On Sun, Feb 12, 2012 at 5:44 AM, pron <ron.press...@gmail.com> wrote: > So my question is, what is the > "behavior profile" for persistent collection nodes in Clojure applications, > and what is their measured effect on GC.
I think that's going to depend on what your code does and how it behaves - which is the same answer pretty much regardless of the language used: you profile your app under load and you tune your JVM settings, including GC behavior. I suspect some Clojure apps will behave poorly with default settings, just like some Java apps do. It's also a truism that an application written in Java will likely have a very different JVM performance profile than "the same" app written in Clojure (or any other language sufficiently different from Java) because they're not really "the same" at all. In other words, I agree with your conclusion that a purely functional application based on persistent data structures will have a different GC profile to a purely imperative application based on mutable data structures. That doesn't imply Clojure will be worse (or better) than the Java "equivalent", merely different. The Scala community has also dealt with this difference because they have persistent data structures and knowledge is shared back and forth between the Clojure and Scala implementors. They've done a lot of work ensuring persistent data structures perform well on the JVM. Check out Phil Bagwell's talk from Clojure/conj for more detailed information: http://blip.tv/clojure/phill-bagwell-striving-to-make-things-simple-and-fast-5936145 -- Sean A Corfield -- (904) 302-SEAN An Architect's View -- http://corfield.org/ World Singles, LLC. -- http://worldsingles.com/ "Perfection is the enemy of the good." -- Gustave Flaubert, French realist novelist (1821-1880) -- 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