Great, thanks! Do you think Martin's textbook on Scala is recent enough relative to the present state of Scala as a language? I also see Scala 3.0 is in talks, nice.
I think I can confirm your sentiment. As far as I can tell, which, however, is not much as pertains to the JVM, apart from polyglot projects, Kotlin is a rarity.
I'm rather unfamiliar with Kotlin as a language. Is Kotlin for Android rather idiosyncratic as is Android Java? In other words, is there a superset of language features in Kotlin that goes beyond Android and is more expressive than modern Java?
I think an issue is a different mindset. I haven't done OOP for a long time. After Haskell, Scala feels a bit verbose and actually rather complex. I had a go at Scala a few years ago, it felt like a breeze after Java and C++. I think I can confirm your perception that that's a question of familiarity.
I'm now embracing the JVM, and Frege is not an option. It'll be a mid-term transition for me. But it's already nice to rediscover some functional paradigms in Scala and apparently sane design choices when it comes to mixing the object-oriented with the functional style, at least I think I like it better than OCaml.
I'm bothered by Scala's performance as compared with Java. Kotlin's seems to be in parity with Scala in this context, but both by an order of magnitude off from Java's. However, I can't vouch for the "benchmarks" I've come across and I'm not yet familiar enough with either to conclude which features could be detrimental to JVM's performance.
I would wholeheartedly appreciate your take on that.
Could you please also provide Scala versions for the other code snippets on that site? Just what you can come up with from the top of your head?
I'm genuinely interested, having spent the last few years with Haskell and having recently rediscovered and being incredibly awed by the JVM and its ecosystem, and pondering on whether I should refresh what I'd known of Java or just outright embrace Scala.