Interesting rant about Scala's issues

bachmeier no at spam.net
Thu Apr 3 04:03:54 PDT 2014


On Thursday, 3 April 2014 at 08:18:01 UTC, Bienlein wrote:
> My knowledge of compiler constructions is fairly limited and I 
> might be wrong, but it seems to me that the Scala compiler is 
> broken. Scala has gained some bad reputation for long build 
> times (just google for Scala and build time) which IMHO cannot 
> be explained by the large number of language features. D has a 
> comparable large number of language features and compiles much 
> faster than Scala.
>
> D has been designed from the beginning with caution on 
> compilation speed and thinking about how to keep it slow to 
> begin with. D not only in that way is a language that was 
> thought out. On the contrary, Scala seems to me to be a 
> language where many features of various languages were thrown 
> into one and then a compiler was built for it. The incremental 
> Scala compiler pretty much rescues the build time problem, 
> though, and they are mostly lucky now. Also, IMHO, implicits 
> are really crazy and it should have been clear from the 
> beginning that they will become a problem for scalable build 
> times, see 
> http://java.dzone.com/articles/implicits-scala-conversion. 
> Interestingly. Martin Odersky got his Ph.D. from Niklaus Wirth 
> at the ETH and I don't want to know what Wirth would say about 
> implicits.
>
> The presentation by Paul Phillips was discussed in the Scala 
> forums at great length:
>
> What's up with Paul Phillips?
> https://groups.google.com/forum/?hl=de#!topic/scala-debate/IgrKCdConlA
> 54 replies
>
> What's up with Paul Phillips?
> https://groups.google.com/forum/?hl=de#!topic/scala-user/ImqlClXTrS4[201-225-false]
> 201 replies
>
> Sadly, the only serious language on the JVM besides Java8 is 
> Scala. Ceylon has not taken off at all after becoming 1.0. 
> Groovy's language extensions are basically AST transformations 
> and not truly baked into a "real" language. Nobody knows how 
> Kotlin will be doing when it turns 1.0 maybe somewhen in 
> autumn/winter this year.

What about Clojure? It is getting real world use. The recent
release makes it easier to call Clojure from Java. Example:

IFn map = Clojure.var("clojure.core", "map");
IFn inc = Clojure.var("clojure.core", "inc");
map.invoke(inc, Clojure.read("[1 2 3]"));

is all you need to use Clojure's map from a Java program.

https://github.com/clojure/clojure/blob/master/changes.md


More information about the Digitalmars-d-announce mailing list