4 ms·
My bet is for golang.
by justplay 12y ago
My bet is for golang.
- izacus 12y agoCurrent design of Android makes any non-JVM language a rather illogical and problematic choice. Writing JNI bridges for everything and reboxing costs would be prohibitive.
- noss 12y agoAndroid's target machine is google's dalvik vm, and not the jvm.
- higherpurpose 12y agoSo what? I think with the arrival of ART, it's also not an impossible task anymore, in terms of compatibility. They just need a separate team to rewrite all the existing API's in Go (and also catch-up with the new ones by the time they finish this project). How much would that take for a team of 20 developers? I imagine not that long. In theory, they could make ART allow for both the Java code and the Go code to work on Android, no? So we could have Google push new app development to Go, while they deprecate Java over the next 5 years (after Go support is out). But to get developers to write Go, they also need a significant market share of Android L/ART-enabled devices, like over 50 percent, which will take 2-3 years to arrive there anyway. They can use this time gap to port Android APIs to Go, and when ART is on 50-70 percent of the devices, announce that developers can now write Android apps in Go, too (for Android L+ only). They could announce it at the release of Android N (the one after M). By then Go 2.0 will probably be out, too, so they can support 2.0 on Android from the beginning, especially if they plan Go 2.0 to have some pretty major incompatibilities with 1.x. In the meantime, the Go team could also work on some "made for Android" features for Go 2.0, to make Go more optimized for Android. By then, they'd probably only have to support ARMv8, too (preferable, I think). So they can target only 64-bit ARMv8 hardware with Go (from what I hear Go works better with 64-bit hardware anyway). I think Google can do this. They just need to plan it out. Three years is probably a reasonable time period for this.
- cdnsteve 12y agoIt's coming in 1.4 https://docs.google.com/document/d/1N3XyVkAP8nmWjASz8L_OjjnjVKxgeVBjIsTr5qIUcA4/edit https://docs.google.com/document/d/1N3XyVkAP8nmWjASz8L_Ojjnj...