3 ms·
I think a better way to sell a language is to name a few concrete niches that they are amazing at. For example: C for low level systems, javascript for browser
by ghj 6y ago
I think a better way to sell a language is to name a few concrete niches that they are amazing at. For example: C for low level systems, javascript for browser apps, bash for shell scripts, java/swift for mobile, erlang for actor models, haskell for compilers, python for ml, go for distributed systems, etc etc.
To me, scala used to own the niche of "if you must use a jvm language but don't want to use java". But now kotlin is the first language that springs to mind. What would you say scala is best in class for now?
- dropofwill 6y agoI’d argue Scala still owns that niche. Kotlin is nice if you’re stuck on Android, but with the speed Java is progressing I don’t see a huge difference. Especially in 2-3 years. Also with Scala you get a best in class JS compile target, a great scripting platform in Ammonite, and Graal native image for binaries with fast startup.
- RhodesianHunter 6y ago> I don’t see a huge difference. Especially in 2-3 years. There is a huge difference now. Maybe 50% of that difference could be made up by what Java has in the planning stage. Even if it was 100%, I'm writing code right now.
- dropofwill 6y agoWhat's the huge difference? Coroutines? Boilerplate reduction? I guess there are some minor type system improvements, but its not like you're getting dependent types or anything like that.
- RhodesianHunter 6y agoIt is the sum-total of all of the little things. I could write out a list but it would end up looking like the official site's sidebar. It all adds up to making me far more productive and more sure of my code.
- theCodeStig 6y agoI agree that the alternative to Java niche now belongs to Kotlin. Scala's niche is statically typed functional programming, and category theory.
- sk5t 6y agoScala has excellent and ergonomic collections, good futures/promises, partial functions, very useful apply/unapply, scala.js, very much superior pattern matching, a much richer type system... I've used both Scala and Kotlin, and will choose Scala every time unless there's a compelling need to lower the bar, to the extent that Kotlin is less likely to get new programmers into the weeds.