Mobile application store owners are known to explicitly forbid some application extensibility scenarios.
2.7 Apps that download code in any way or form will be rejected
2.8 Apps that install or launch other executable code will be rejected
3.9 All app logic must originate from, and reside in, your app package Your app must not attempt to change or extend the packaged content through any form of dynamic inclusion of code that changes how the application behaves with regard to Store certification requirements. Your app should not, for example, download a remote script and subsequently execute that script in the local context of the app package.
Google (not sure if it is as restrictive):
An app downloaded from Google Play may not modify, replace or update its own APK binary code using any method other than Google Play's update mechanism.
Some applications such as Minecraft and Codea are meant to let users produce content (not just consume it). Codea projects are obviously an executable code and Minecraft is known to be Turing-complete.
Now they don't have any built-in online community gallery capabilities, but it would be easy to imagine them added in future. This is something users would definitely appreciate:
Microsoft has already done this with their Project Spark (PC/Xbox) and Media Molecule/Sony have this in their Little Big Planet (PS, also Turing-complete).
1) Obviously specific store owners make their own, often random and unfair decisions, but generally where is the line between 'code' and user-created content?
2) Is it a conscious decision to favour security over experience or a simple case of short-sightedness?
3) What can be done to work around today? I am aware of the browser technology but am only interested in application development.