5 ms·
Here here. I can not agree more about your statement: "for some people Scala means just too much incidental complexity for too little power gains" I've been tel
by prpatel 15y ago
Here here. I can not agree more about your statement:
"for some people Scala means just too much incidental complexity for too little power gains"
I've been telling fellow developers this when asked why I'm not interested in Scala: There isn't enough there for the trade-off in switching to another language. If I use Clojure I get the magic of a LISP. If I use Groovy I get all the power of a dynamic language. If I use Scala, I get..... Java++? Not enough for me, there's so many good options for JVM languages, I will happily use Clojure/Groovy AND plain ol' Java underneath the hood if needed.
- SkyMarshal 15y agoWith Scala you get: 1. The performance of Java 2. The brevity of Ruby/Python 3. Static typing with a concise syntax => no need to write tests for type errors. The Lift devs claim allows less total code than an equivalent Ruby app. (See David Pollack on Quora) 4. Functional syntax and Erlang style lightweight message passing, giving you the ability to more quickly pick up Haskell, Ocaml, Erlang etc. if you ever desire. Not a bad list. Regarding Clojure, I'm a fan of it too, but wasn't planning on jumping on that bandwagon till the JVM has invokedynamic, lambdas, and closures (eg, Java 8 out and relatively stable). But lots of people obviously are now, especially Rubyists it seems, including Heroku. Why is that?
- kumarshantanu 15y agoYou need not wait for invokedynamic to try Clojure. There is hardly any dynamic dispatch that can take advantage of that AFAICT. Lambdas/Closures when they come to Java will certainly be backward compatible with the JVM (and hence just syntactic sugar) and will implement Runnable/Callable in some form.