1) Dalvik – не совсем JVM, т.к. он работает не с Java байткодом, а со своим собственным. И вообще, начиная с 5.0 используется не Dalvik, а
ART.
2) Не все JVM языки полностью совместимы с Java, из-за этого и возникают проблемы с API. В случае Scala еще играет роль большой размер стандартной библиотеки.
P.S. Посмотрите на
Kotlin