Any idea if you can actually get an iPhone app published this way? Usually the code generated from one of these high->low level compilers is tough to read and nearly impossible to understand. If it hasn't already done so, I imagine that Apple might bar submissions with obfuscated code[1], and it can be argued that the resulting code produced by the Scheme to C compilation is obfuscated and therefore ineligible for App Store inclusion.
[1] I was operating under the assumption that the source, not a binary, was provided to Apple. I stand corrected.
There are apps built with C# (via Mono and the Unity3D game development tool).
"de Icaza identifies almost 40 applications (most of which are games) in Apple's App Store that are built on Unity and Mono...Mono's robust portability and advanced support for features like static compilation are enabling developers to use it in innovative ways that wouldn't be possible with Microsoft's .NET implementation"
Oh, OK, good to know. The article made it sound like using Objective-C was a requirement for developing for the iPhone, and the only reason I could see for that to be the case is if they needed the source code. That said, why not just target the architecture directly? Why make a pit-stop at C?
Optimizing C compilers and platform independence properly. There have been a lot of research involved in making C compilers very fast, so you get to copy that for free.
Objective-C is required the same way Java is required for the Android. You could skip to assembly, but then you miss out on all the Cocoa Touch APIs.
Also, Gambit Scheme is a generic system designed to target C so that it can compile to all kinds of architectures. It's a mature, robust system that comes with a lot of stuff.
[1] I was operating under the assumption that the source, not a binary, was provided to Apple. I stand corrected.