Why does it have to be Clojure *or* Scala? While Clojure no doubt has theoretical purity on its side, Scala is far, far, FAAAAAAAAR more accessible to business-line developers. Once you push past types coming after the variables instead of before and some of the type notation nuances, the syntax is actually quite like Java. And, like Groovy, you can write Scala that looks very Java-esque and then "Scala-ize" it. So, from an adoption-path standpoint, Scala's definitely got the lead. On the other hand, the theoretical purity of Clojure and its lispy hearitage allows it to pull all kinds of wild and crazy stunts, including more advanced concurrency stunts and allowing you to program in whatever paradigm you'd like, as long as that paradigm is expressed in lists and parenthesis.
But what's awesome is that both Clojure and Scala interoperate, which means that it doesn't have to be either/or. If lispy people like their Clojure, then let them code Clojure. The Java programmers who prefer their curly braces can stick to Scala, and if they decide that theoretically purer functional programming really is The All-High Stunningly Awesome Awesomeness, they can shift to Clojure without having to rewrite their applications. Hell, were I to be a Clojure evangelist, I'd be ecstatic whenever I saw people pushing Scala, because the shift from Scala -> Clojure is a Hell of a lot smaller than Java -> Clojure. Were I to believe in the inherent and obvious superiority of Clojure over Scala, I'd simply view Scala as a gateway language into functional programming, and a necessary stepping stone to help those poor OO people get a real grasp. Of course, I'm not a Clojure evangelist, and I don't believe in its inherent and obvious superiority, but were I to be one, that's how I'd play it. ~~ Robert Fischer. Grails Training http://GroovyMag.com/training Smokejumper Consulting http://SmokejumperIT.com Enfranchised Mind Blog http://EnfranchisedMind.com/blog Check out my book, "Grails Persistence with GORM and GSQL"! http://www.smokejumperit.com/redirect.html Ed wrote: > Neil: > > I appreciate your comments, I'm no expert in Scala or Clojure; I'm > still trying (in the extremely limited time I have for this subject) > to get my head wrapped around both Scala and Clojure and if I could > ever find a *practical* use for either. > >>> On Jan 19, 2:03 am, Neil Bartlett <[email protected]> wrote: >> I disagree that Clojure's support for concurrency is "much better" >> than Scala's. It has very good support for concurrency, but so does >> Scala. And it goes without saying, both are FAR better than Java. > > I should disclose that I am framing my (limited) viewpoint from the > following discussion. There are some great points in support of Scala > if you scroll down past the article in the comment section. It would > seem that Clojure is "much better" for parallel programming which has > a basis in concurrency: > http://www.codecommit.com/blog/scala/is-scala-not-functional-enough > >> For me -- and probably many other JVM programmers -- there are two big >> reasons not to use Clojure: dynamic typing and Lisp syntax (or lack-of- >> syntax). Of course it's a matter of taste, but I think Scala is more >> to the taste of recovering Java programmers thanClojure. > > "dynamic typing" - I sure like Python, what a breath of fresh air from > C++ that is. I like static typing for safety, otherwise I lean on the > side of dynamic; it's my understanding that Clojure takes care of type > safety so the reasons for avoiding it are less of a concern. > > "Lisp syntax" - hmm, okay I will concede your point for the mainstream > programmer, but then again, I cannot see either Scala or Clojure ever > becoming "mainstream"...not at least as long as Java/C++/C# remain at > the top of the dice listings. I'm a lisper so I'm leaning towards > Clojure for that reason along with it's *appearance* of better support > for parallelism, howevery I'm much more interested in Scala than > Groovy, JRuby, or Jython so far as JVM targeted languages go. Jython > makes sense for all the reasons the JVM makes sense considering all of > the useful industrial Python already in the wild. > >> Nevertheless, a show on it would certainly be interesting. It would be >> great if the posse could get Rich Hickey on for an interview. > > Yes, I know the posse is strongly bias for Scala, iPhone (as a > platform), all things Apple, and California weather--but it would be > nice to have a constructive debate (discovery of usage domains) > between these two new great tools. > > Thanks for your reply, I'm interested in learning more about both of > these languages through differentiation. > > - > e > > > --~--~---------~--~----~------------~-------~--~----~ You received this message because you are subscribed to the Google Groups "The Java Posse" group. To post to this group, send email to [email protected] To unsubscribe from this group, send email to [email protected] For more options, visit this group at http://groups.google.com/group/javaposse?hl=en -~----------~----~----~----~------~----~------~--~---
