6 ms·
A Scala to Java converter would be needed more. Early adopters are disenchanted with Scala.
by ExpiredLink 13y ago
A Scala to Java converter would be needed more. Early adopters are disenchanted with Scala.
- runT1ME 13y agoI don't think this is true at all. There was the one team at Yammer, but overall, it seems as if Netflix and LinkedIn are pushing forward with Scala adoption, and Twitter, FourSquare, Tumblr, Klout, Gravity, and many others are already committed scala shops.
- eranation 13y agoAs an early adopter, I don't feel disenchanted. Do you have references to back your claim?
- mark242 13y agoThis is completely untrue. Every single Java developer that I introduce to Scala-- every single one-- six months later, they tell me "please don't make me go back to Java". The "disenchanted" piece, I think, comes from the fact that if you're just writing Java-OO-style in Scala, you're losing almost all the benefits. Once you start working with the FP style, understanding Options, working with fold, list comprehensions, and the resulting massive reduction in lines of code, you start seeing how FP Scala code becomes the last refactoring you'll ever need to do, because it's so concise.
- cnlwsu 13y agoDepends on how "clever" the people using Scala were trying to be. obligatory: http://parleys.com/play/51c1ffe7e4b0d38b54f46231 http://parleys.com/play/51c1ffe7e4b0d38b54f46231
- rudiger 13y agoWow, I had no idea that Scala is already ten years old.
- pjmlp 13y agoI have some guys you might want to teach. Given the skills we get on some of our teams, I fear they won't even manage to move to Java 8!
- amk7 13y agoBased on what? I have yet to meet a Scala developer who wants to go back to Java, but know many Java developers who are moving in the other direction.
- quacker 13y ago>Early adopters are disenchanted with Scala. Since everyone else seems to disagree, I'll explain why I agree: -- Scala advocates a completely different style of programming. You have to rethink how you code to match Scala's functional style. This is not a trivial thing if you have a bunch of Java developers you need to convert. -- I find the Scala documentation is less readable than Java's docs. They are cluttered with type conversion functions and unreadable operator overloads (the filtering helps a bit here, but it's extra work). Documentation is also split between the object/class/trait pages. -- There's a whole class of immutable data structures whose performance characteristics I need to learn, since I'm supposed to be using them. -- I'm not convinced that the overhead of copying immutable data doesn't outweigh the benefits of the ability to trivially parallelize the code. -- I'm not convinced that a project preferring only immutable data is easier to maintain. -- Programs seem to take longer to compile (sbt is especially slow). Now that I think about it, Scala in relation to Java is a lot like C++ in relation to C. Scala sits on top of Java, so you need to know Java, and then you need to know all of Scala's features as well. However, (as someone who knows Java) I think C++ adds useful abstractions that are non-existant in C (templating, inheritance), whereas most of Scala's features are just syntactical changes of what already exists in Java.
- dragonwriter 13y ago> Scala sits on top of Java That's not true. Scala sits on the JVM, and has some accommodations to facilitate interoperation with code written in Java, but it does not "sit on top of Java" as a language. You don't need to know Java to write Scala.
- quacker 13y agoForgive my imprecision. >You don't need to know Java to write Scala Is this actually true in practice? Are there tutorials or books that don't assume knowledge of Java? In any case, if you want to use anything in the Java standard library (I assume they haven't converted the entire thing to Scala), then you'll still need to understand Java documentation which requires some knowledge of Java.