I am thinking of switching to the Clojure 1.3 alpha/beta from Clojure 1.2 and I was wondering what other people's expereinces of how stable Clojure 1.3 are before switching.
In 1.2 I keep running out of "PermGen" space, which is apparently fixed in 1.3. This is the reason I want to port.
Update: Rich Hickey has acknowledged this was an issue in Clojure, and the issue with perm gen and keywords appears to be fixed however in 1.3 by making keywords use weak references:
http://groups.google.com/group/clojure/browse_thread/thread/4308d846bf2ef129
The 1.3 alpha releases seem fairly bug free as far as I've tried them, but they're certainly not intended to be "stable" wrt the API and associated guarantees. All of the alpha releases I've tried have implemented new breaking changes.
If you know what you're doing, the performance gains might be worth the hassle of having to port your code every 1.3 alpha x release, but I'm sticking to 1.2 for production code until 1.3 reaches at least release-candidate status.
EDITED after your edit: if you're running out of PermGen, you're probably doing something wrong that's unlikely to be fixed by using clojure 1.3. Unless you're generating keywords on the fly, which is arguably a bad idea anyway.
If you haven't yet, read http://www.xcombinator.com/2011/03/02/clojures-keyword-can-fill-up-your-permgen-space/ and http://www.freshblurbs.com/explaining-java-lang-outofmemoryerror-permgen-space
I'm not sure your question makes much sense. As advertised, Clojure 1.3 is alpha software. If you want to experiment with it, please go ahead. If you want to build mission critical systems, you'd probably better wait. I haven't found any serious problems with 1.3 alpha so far, but then again: I'm not using it in production. According to some microbenchmarks I've made it is faster than 1.2.
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With