lua-users home
lua-l archive

[Date Prev][Date Next][Thread Prev][Thread Next] [Date Index] [Thread Index]


App Store Review Guidelines and doing the review yourself are actually only reliable sources of telling what's allowed or not. Unfortunately Guidelines are not public but only available to registered developers, so we cannot really talk about them here. However some news sites like Engadget or Mobilecrunch has posted news including copies or excerpts of them.

> * No downloading code (because it basically makes the whole review process moot)

Quoting Mobilecrunch: "The black box that is the Apple review process is creaking open. In a very brief release, Apple has essentially relaxed the requirement that developers use Apple’s own development tools <<as long as the resulting apps do not download any code.>>"

> * No JIT'ing (because disallowing pages from being marked executable eliminates one malware vector)

Again, one must follow the Guidelines to tell whether JITing is possible or not. However technically (aside of the review process) it is now absolutely possible since iOS 4.3. This may be a lapse of Apple hurrying to introduce new Nitro JS engine using JIT and leaving `mprotect` available also to developers but may be also some substantial change to introduce MacRuby which actually absolutely relays on JITing and is officially maintained by Apple. Moreover it is now allowed for Mac App Store submissions.

Here's brilliant blog post proving JIT is possible with iOS 4.3 here (yes, I did try it myself):
http://aussiebloke.blogspot.com/2011/03/executable-pages-in-ios-43.html

> So, Lua is fine (and there are a lot of AppStore titles that use Lua) and the LuaJIT interpreter should be fine, but the JIT portion of LuaJIT would not be fine (though it would presumably fail before you even got to the review).

It may fail or not, anyway we cannot tell it for sure unless we try to submit project executing native ARM code generated JIT compiler of LuaJIT - which does not yet exists for ARM platform.

Finally considering the fact Lua is heavily used in games, including the top titles from App Store making most of $$$ there, it would be IMHO irresponsible of Apple not considering official permission for JIT, so LuaJIT, MacRuby or V8 in the apps, as this may allow creating more sophisticated game logic than before.

Cheers,
-- 
Adam Strzelecki