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.
To get a plus for your skill set when applying for Java jobs
you will have to learn Scala. For a Java developer like me any
chances for a job doing D are very slim. But I keep looking
into D just out of interest and to get some food for my mind.
There is so much to learn from looking at D and playing with it
that I keep doing it just on a fun & interest basis.
If I remember what the state of Groovy is (around 2012). The
compiler devs focussed quite heavily on functionality not
performance. Even refused to go that direction.
It was quite bad.
Its a real shame. I liked it. Although if they had and had
unsigned types I probably wouldn't be in D!