Develop for Android with Scala
code.google.com
code.google.com
I need to get around to doing up Hecl for Android 'nicely'.
Installing on a real device or the emulator is noticeable slower.
There are two things that can hurt performance for functional languages on top of the Java VMs ... the lack of TCO and the mapping of a type-system that's too different to be mapped efficiently.
In Clojure though what hurts is its dynamic nature, but you can go a long way by using type-annotations when you discover clear bottlenecks.
N.B: I haven't investigated the Dalvik VM and/or the Android ecosystem in any great detail, so this might be afoolish question,but any answers appreciated.
If you write idiomatic Scala code, or use many primitives in Java code, the performance of Scala becomes relatively worse. Every first-class function you use turns into the equivalent of a new class and object at runtime, and the immutable data structures are slower than their Java equivalents.
I'm not sure how the performance delta differs between the JVM and Android's Dalvik VM. It may be that Dalvik's lack of JIT or less efficient garbage collector makes the Scala performance penalty bigger on Android. I would be interested in seeing some benchmarks.
I wish I could write my Android apps in Haskell instead, though. Scala just isn't quite as nice.