Re:Welcome to C# 9.0
by couchcombinator on Wednesday May 20, 2020 @02:28PM
(#23250118)
Because Scala takes mind-boggingly long to compile. Because Scala has so many features that anything has at least 3 different ways to implement it. Because it’s very easy to write unreadable code in scala, not so much in C#. Because Scala uses JVM, while C# has access to .NET (yes this is an advantage for many developers).
Re:Welcome to C# 9.0
by whycombagator on Wednesday May 20, 2020 @03:01PM
(#23250473)
> Because Scala has so many features that anything has at least 3 different ways to implement it.
Thankfully that problem doesn't exist with C# /s
What are the last Scala/sbt versions you’ve used? Scala compilation times (and sbt startup times) have improved dramatically over time, it’s reasonably fast now. In the past 3 years, the Scala compiler has gotten literally twice as fast. I don’t have hard numbers for sbt, but it feels like it has improved by much more than that.
For a mid-sized web service (tens of thousands of LOC), a clean compile might take ~30-40 seconds, but you rarely do those. Incremental compiles take more like single-digit seconds, and for most projects you can have a solid “compile on save” type setup that makes it pretty unnoticeable. And sbt itself, which used to be very slow to startup (sometimes 10-20 seconds), now starts up in a couple seconds.
It’s not lightning fast like Go, but it’s way faster than it used to be. Not much of a pain point anymore unless you’re dealing with truly huge projects.
Re:Welcome to C# 9.0
by The_rationalist on Wednesday May 20, 2020 @03:05PM
(#23250505)
All your points except the last one do not apply to Kotlin
is kotlin slow to compile
It's certainly slower than javac (which is pretty freaking fast - maybe not in comparison to go, but it's no slouch), but it certainly mops the floor with scalac.
Just look at plumbing with init, data records and with. That is what a case class with val properties in Scala gives.
But congratulations to the team on shipping v9.