是否可以将Scheme(lisp)解释器嵌入到iPhone应用程序中?
我发现可嵌入的方案解释器(或 JIT 编译器或任何东西)到 Cocoa Touch 中。 我认为只要一个 C 兼容的Scheme 引擎就可以了。请推荐一些。我希望它是 MIT/BSD 风格的免费许可证,但广告也很好。
并且..Apple AppStore 是否允许像Scheme 这样的嵌入式脚本?
I'm finding embeddable Scheme interpreter(or JIT compiler or anything) into Cocoa Touch.
I think just a C compatible Scheme engine may be fine. Please recommend some. I wish it's MIT/BSD style free license, but commercials are fine too.
And.. does Apple AppStore allow embedded scripting like Scheme?
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(5)
我认为 James Long 的博客正是您要找的: http://jlongster .com/software/iphone/scheme-iphone-example/
上面的链接已失效,请尝试 https://github.com/jlongster/gambit-iphone-example 代替。
I think James Long's blog is exactly what you're looking for: http://jlongster.com/software/iphone/scheme-iphone-example/
the above link is dead, try https://github.com/jlongster/gambit-iphone-example instead.
只要没有下载或用户输入的脚本/代码,您就可以执行此操作。如果您使用Scheme 的目的只是内部脚本编写,那么这是允许的。
You could do this so long as there was no DOWNLOADED or USER-ENTERED script/code. If all you were using Scheme for was internal scripting, that would be allowed.
只要不下载代码或脚本,Apple 就允许在应用程序中解释代码和脚本。例如,应用程序商店中有大约六种 BASIC 解释器,允许用户手动输入 BASIC 代码(但不能下载任何代码)并在解释器或模拟器中运行它。许多游戏也运行 Lua 或 Mono。
无法在原生 iOS 设备上运行任何 JIT 编译的代码。所有App Store应用程序的可执行内存页面都标记为只读。
Apple allows interpreted code and scripting in an app as long as the code or scripts are not downloaded. For instance, there are around half a dozen BASIC interpreters in the App store that allow a user to type their BASIC code in manually (but not download any) and run it in an interpreter or emulator. Lots of games that run Lua or Mono as well.
There is no way to run any JIT compiled code on a stock iOS device. The executable memory pages of all App store apps are marked read-only.
您可能对策略方案感兴趣。
对于你的第二个问题:不,Apple 不允许解释代码在你的应用程序中运行。
编辑
Ben Gottlieb 是对的,您不能在应用程序中运行用户脚本,但内部代码解释应该没问题。
You may be interested in Gambit Scheme.
For your second question: No, Apple doesn't allow interpreted code to run in your application.
EDIT
Ben Gottlieb is right, you cannot run user-scripts in your app, but internal code interpretation is supposed to be okay.
我相信 TinyScheme 被 GIMP 用于其 script-fu。它也是 BSD 许可的。
I believe TinyScheme is used by the GIMP for its script-fu. It's also BSD-licensed.