On Friday, 24 July 2015 at 15:06:31 UTC, Ola Fosheim Grøstad wrote:
On Friday, 24 July 2015 at 14:55:59 UTC, Joakim wrote:
So Obj-C/Swift aren't as efficient as C/C++, but nobody is using those as the main language on any mobile platform- for very good reasons, including that nobody other than game developers wants to deal with them- and as native languages, Obj-C and Swift are still much more efficient than the JIT-ed or interpreted, non-native languages, which is why Android finally switched from JIT-ing Java to AoT/native compilation recently.

People have used C++ for both native mobile development (symbian?) and for cross-platform development (e.g. mosync).

Symbian is dead, therefore "nobody is using" it. As for MoSync, they went out of business a couple years ago and their toolkit is no longer maintained, nor was it ever the "main language" on any platform.

However Android and iOS deliberately set out to kill off cross-platform development a few years ago by making GUI kits incompatible and tool-based. So writing GUIs in other languages than Obj-C/Java became tedious.

I don't think that's the reason, as their GUI APIs can be called from other languages, Java is fairly cross-platform, and the Android GUI is open source and can always be ported, as it has been. Perhaps nobody has bothered to build a single GUI toolkit that normalizes across the GUI APIs of each OS, but that doesn't mean it can't be done.

I found it much easier to use Mosync-C++ than Objective-C, to be honest. But it is now a dead technology.

What does this have to do with the original point, which is that native/AoT-compiled languages are having a resurgence on mobile? You made the point that some native languages are more efficient than others, which is irrelevant when they are all much more efficient than the non-native languages.

Reply via email to