File APIs for Java Developers
Manipulate DOC, XLS, PPT, PDF and many others from your application.
The moose likes Clojure and the fly likes Clojure vs Scala Big Moose Saloon
  Search | Java FAQ | Recent Topics | Flagged Topics | Hot Topics | Zero Replies
Register / Login
JavaRanch » Java Forums » Languages » Clojure
Bookmark "Clojure vs Scala" Watch "Clojure vs Scala" New topic

Clojure vs Scala

Matthew Lucas

Joined: May 24, 2011
Posts: 4

Hi Amit,

As FP seems to be growing in popularity due to the Moore's law problem/multi-core machines becoming the norm, and the only other FP-JVM language around being Scala, I was wondering how you thought the two languages stack up against each other (i.e. are they orthogonal or stepping on each other's toes). I'm a little torn myself, having played with Clojure and it's uber-simple syntax, and then seeing Scala which seems (admittedly with next to no experience) very much the opposite with highly complex syntax/semantics. What do you think their use cases are, and can they co-exist successfully?


Amit Rathore

Joined: May 08, 2011
Posts: 20

Scala does espouse a functional style, but unfortunately core data-structures aren't all immutable. So you have to use libraries that offer immutable ones, and it then becomes a programmer-discipline issue of always using them. In Clojure, there are no other options, so this discipline is enforced for free.

Same thing with the STM system - clojure has one built-in, and thus all state-management functions use it. In Scala, you have to pick a library, and then hope that everyone uses it right, and so on.

These issues are deal-breakers for me - even before getting into Scala's overwhelming syntax. And obviously, Scala doesn't have a macro system.
I agree. Here's the link:
subject: Clojure vs Scala
jQuery in Action, 3rd edition