Remix.run Logo
pjmlp 4 hours ago

Yes, and in Java/C# case, AOT compilation is also available.

I would also add Kotlin, Clojure and F#.

Scala not really as the compilation is not much better, and since the Scala 3 reboot, the ecosystem doesn't seem to be doing that well.

The market opportunity for Haskell on the JVM is gone, although they are doing cool stuff with capabilities.

em-bee 3 hours ago | parent [-]

just curious, can you point to more details to what happened with scala3?

pjmlp 2 hours ago | parent | next [-]

They introduced a new Python like syntax, and pushed to move away from the curly based syntax.

There were other breaking changes as well.

https://docs.scala-lang.org/scala3/guides/migration/compatib...

This naturally broke all the tooling.

Then you have Metals for VSCode InteliJ plugins, while the Eclipse plugin was dropped.

InteliJ plugin is much further than Metals, however there is the conflict of interests with pushing Kotlin instead.

Meanwhile most Scala shops have pivoted to also give feature parity on modern Java, and Kotlin, thus reducing the interest in using Scala in first place.

However as mentioned, they are doing cool stuff with capabilities at EPFL for Scala 3.

https://virtuslab.com/blog/scala/introduction-to-scala-3-che...

hackingonempty 2 hours ago | parent | prev [-]

The usage stats on GitHub are declining, for example. Devs are choosing Kotlin, Rust, and Go over Scala.

IMHO there are a bunch of reasons

* Scala 3 was a Python 3-esque disruptive event

* Perception as an overly-complex kitchen-sink inclusive language

* Kotlin took up the "better Java" mantle

* Rust became attractive to devs not committed to the JVM

* Go became less sucky

* SBT is disliked and Metals was buggy and unstable (and still slow)

* Suffers from the "we won't be able to find devs" problem where Kotlin, Rust and Go don't

* A bunch of community drama drove some devs away to Rust

I say this as someone using Scala 3 with ZIO effects system and Mill build tool and thinks it is fantastic.