Longterm, languages that own platforms are always a safer bet.
They only go away when the platform dies, while guest languages come and go.
And best of all, you don't need to wait for supporting platform features, having additional idiomatic wrappers, more IDE plugins, debugging support, build tools, etc.
This is exactly the reason we do not use Scala anymore. Tired of learning new DSLs for every single problem.
I usually do not want to construct classes, it does not help me achieving what I want in my day to day duties.
>> using a bunch of stringy typed arguments?
I usually have all sorts of typed arguments.
https://medium.com/@sinisalouc/whats-new-in-scala-3-28d9c11e...
I just read that post and so far there is nothing really that interesting. Maybe it is just me.
Android has turned into Kotlin's platform.
Outside Android I predict Kotlin will be feeling like Scala is nowadays.
Too much dependent on JetBrains tooling, leaving other Java tools as 2nd class, trying to spread too wide with Kotlin/Native having specific memory semantics, sequences and co-routines are their own thing, distinct from JVM ones.
I’m sure it requires more resources than Kotlin but phone hardware has greatly improved in the last 5 years.
Twitter still uses it heavily.
I recently watched a few Scala Days 2019 videos:
https://www.youtube.com/channel/UCOHg8YCiyMVRRxb3mJT_0Mg
It seems to have a healthy community. 3.0 comes out next year.
If you want a functional gateway drug, Scala appears to be the answer:
By far the most interesting library I've seen on any platform in decades. It handles the most complex concurrency issues with ease. In my current project is has meant an order of magnitude less code to write. And the way you explicitly have to list what your function returns under every situation e.g. success and error is a real improvement in how Java/Scala works e.g. https://zio.dev/docs/datatypes/datatypes_io
And for web developer look at Slinky one of the nicest React implementations on any platform (https://slinky.dev)
Java 8 took a lot of the wind out of Scala's sails not by being better, but by showing enough improvement that the benefits of learning Scala looked less attractive than before.
Platform languages take slowly the best features of guest languages.
Additionally, type inference, value classes and pattern matching might not be at Kotlin, Scala, Clojure level, but they are good enough for most devs without having to deal with all the extra stuff.