updated 06:20 pm EDT, Fri June 11, 2010
Developers must get approval in writing
Apple has quietly changed its iPhone SDK terms to allow more flexibility for applications that use interpreted code. Section 3.3.2 was previously worded as an absolute ban on code interpreters other than Apple's own built-in systems. Developers viewed this as a prohibition of cross-compilers, such as Adobe's Flash-to-iPhone utility that would have allowed apps to be written in Flash and run natively on the iPhone.
Although the new terms do not completely open the doors to any type of code interpreter, the section has been expanded with a new clause that appears to allow such systems to be used only if "approved by Apple in writing."
The revised clause also suggests that applications can use embedded interpreted code if it is only used for "providing minor features" or functionality "consistent with the intended and advertised purposes of the application."
The language still appears to be weighted against cross-compilers such as the Flash-to-iPhone tool, however it may give more flexibility to developers using interpreted code in other ways. Apple Outsider blogger Matt Drance suggests the exemptions may be granted for certain apps, such as games, that use engines and libraries that take advantage of interpreted languages such as Lua.