

Scala is Not Java Glue - insraq
http://ruoyusun.com/2013/11/10/scala-is-not-java-glue.html

======
laureny
> And it is widely agreed that Scala is much less verbose and easier to work
> with than Java.

> ...

> \- it [Scala] can be verbose sometimes,

> \- Second problem is its learning curve. Scala is not easy to learn: the
> language has a huge feature set.

> \- Scala’s IDE support is much less mature than Java.

So maybe Scala is not that less verbose nor that much easier to work with than
Java after all.

I think the article contradicting itself on these points is a great
illustration of why Scala never became mainstream. Scala certainly offers
advantages over Java (I love the traits, the implicit conversions and case
classes) but it also comes at a significant cost (feature set and surface area
of the language, mediocre IDE support compared to Java, slow compilation,
terrible backward compatibility story, feature creep, etc...).

Also, these arguments do not support just the idea that Scala is not a glue
for Java but the more general idea that Scala is not intrinsically superior to
Java, which is why it still has a minuscule mind share on the JVM[1].

[1]
[http://www.indeed.com/jobtrends/scala%2C+java.html](http://www.indeed.com/jobtrends/scala%2C+java.html)

~~~
xmonkee
>> \- it [getting Scala to work with Java] can be verbose sometimes

Fixed. You're reading that sentence wrong. It's still supporting the author's
point. Also, it's not easy to learn [just because you're coming from Java]...
This also supports his point that's it's better to treat Scala as a new
language than as Java++. I grant you the IDE and the backward compatibility
points, but those speak more to it's immaturity than it's "intrinsic
superiority".

Having said all that, I agree that it might take Scala a long while to compete
with Java. And I think the main reason for that is that it's _hard_. It's a
bit too elegant, if you know what I mean. The syntax ends up being too sugary
and consequently looks mystifyingly clever at times. I can think about OOP
reasonably well, and I can do FP reasonably well, but personally it still
takes my mind a while to wrap both those together. And that's the main reason
I'm really into Scala right now, I find it incredibly challenging. I think as
Scala comes more into production we'll see the development of more pedestrian
idioms that can be easily absorbed by the industrial programmers.

~~~
laureny
Thanks for the correction.

> I grant you the IDE and the backward compatibility points, but those speak
> more to it's immaturity than it's "intrinsic superiority".

Scala is ten years old, the fact that it's still immature in these areas is a
concern. If this hasn't been addressed in ten years of existence, it seems
unlikely it ever will.

------
seglo
I think one of the biggest learning hurdles when coming from Java is getting
used to using the functional collection types. I remember when C# first
introduced linq-to-objects my reactions went from disgust, to fear, to total
and utter acceptance and "how did I get anything done without this!"

------
Garbage
I have personally found IntelliJ's Scala support quite good. Of course it's
not as good as Java, but it's good. I am using EAP release BTW.

