According to David Crawshaw of the Go team, Go will be coming to Android. For those who have been wishing for an alternative to Java on Android - even if it isn't Dart or Groovy, yet - this is a pretty exciting announcement.
It's not a complete alternative, though; rather than following the Android SDK, Go support would be added based on the NDK. The SDK, Crawshaw suggests, is just too big:
Providing a Go equivalent to the Android platform is intractable. The platform is written in Java and has a huge API surface. Any attempt to wrap these APIs in Go would give an undesirable result: manually built wrappers would lag in features, automatically generated wrappers would lead to ugly Go. And either way, it would be slow.
Go 1.3 was just released, and Crawshaw points to the 1.4 cycle for this update, so you'll still have to wait a bit. Regardless, though, it's an interesting development and might make life a little easier for some developers, at least in some situations.
Cawshaw promises a few other things as well:
- Bindings for OpenGL, OpenSL, and OpenMAX
- A Java -> Go language binding generator (so Java can call Go packages)
- Android Studio build system integration