I'm using Clojure for some reasonably heavy computational code. It's a
great fit for the problem domain.

Some specific things I really like:
 - I use Incanter to get quick plots of outputs to test that
algorithms are working, very handy for interactive development at the
REPL
 - I can plug in Java code pretty seamlessly when needed (e.g. some of
my algorithms are implemented in Java) - Clojure makes a lovely "glue
language"
 - The concurrency features are surprisingly useful, e.g. I often kick
off long-running computations in a future

The only thing you might find tricky is getting absolutely top
performance in tightly coded algorithms. It's possible to write very
fast code in Clojure but it's not easy (i.e. you have to have an
intimate knowledge of type hinting, how to avoid boxing, exploit
primitive unchecked arithmetic, abusing mutability, how to avoid
memory allocations etc.) - so sometimes I end up writing the inner
loops of performance-sensitive algorithms in Java rather than Clojure.
Not a big deal but I look forward to the day when I can write
everything in Clojure :-)


-- 
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

Reply via email to