>Apple apps (like Safari) can obviously do JIT compilation.
I hadn't considered this before, but that means that you could potentially use JS as an intermediate representation for other languages in order to leverage Safari's JIT under iOS. Probably too inefficient to be worthwhile for any language that isn't a dialect of JS, but an intriguing concept nonetheless.
Gotta love android, you can cheerfully mprotect away the write-protection on executable pages. I've done some dynamic stub code removal that way. Worst case, you can only hose your own process.
I hadn't considered this before, but that means that you could potentially use JS as an intermediate representation for other languages in order to leverage Safari's JIT under iOS. Probably too inefficient to be worthwhile for any language that isn't a dialect of JS, but an intriguing concept nonetheless.