Hacker News new | ask | show | jobs
by strlen 1589 days ago
Yes. Scala and Clojure are my preferred JVM languages, but there are certain frameworks that are highly useful but problematic when used with Scala and/or Clojure.

* Spring Boot for web services and application. Absolutely amazing and easy to use, my favorite feature is easy integration with external authentication services. Yet there is no longer much Scala support around for Scala and the Spring framework. Clojure may be a bit better in this case as Clojure collections implement the Java collections interfaces unlike Scala. Another issue is heavy use of reflection by frameworks like Spring which tends to work poorly with Scala.

* Android applications. Dalvik is a register based and not a stack based VM; scalac produces code optimized for OpenJDK which may run inefficiently on Dalvik.

That said in these cases you have the option of using Kotlin. While it does not differ terribly from Java, it supports pattern matching (which I don’t believe is supported by Java, but I may wrong as I haven’t used versions higher than 8 extensively.)