Getting away from the frenzied rhetoric, my opinion is that what Apple really wants to prevent is people releasing multi-platform compilers. So taking Flash as just one example, if I can build one app and the compiler can make me an iPhone executable, an Android executable, and so forth, Apple don't want that. In my experience so far with such "cross platform compatibility layers," they always produce results that wa…
I now develop iPhone applications, and I personally agree with Apple in this respect. If you want to develop iPhone applications, spend some time and become proficient with the tools.
And, @raganwald is correct that it's still lock-in, it's just a matter of where the lock is.