There is this myth that any programmer can learn lots of new languages. That just is not true. Most programmers are good in just a few languages - the rest they are not good in.
There is this myth that any programmer can learn lots of new languages. That just is not true. Most programmers are good in just a few languages - the rest they are not good in.
2> C++ is a unreliable target on android still for fullscale development. C/C++ is really for computation heavy libraries, not end to end development. You're supposed to call into your C with JNI and do most of the app with Java
Fair enough. But Apple didn't just forbid cross compilers. They essentially forbade anything that wasn't originally written in C, C++, Objective-C, or javascript.
"There is this myth that any programmer can learn lots of new languages. That just is not true. Most programmers are good in just a few languages - the rest they are not good in."
I don't really see the relevance. Most programmers are good at a few languages, but those few languages are very different from developer to developer. Forcing every developer to choose from a limited subset of languages (especially the ones given) is just artificially limiting the developers who are willing to program on the iPhone. How many more developers would program on the iPhone if they could use C# or Python? I'd bet the number would be higher. And this is a good thing for the consumer.
What Apple has effectively disallowed is developers using an abstraction layer on top of C, C++ or Objective C. An analogous situation would be being told you can't write your program in C, you must write it directly in assembly.