Можно ли встроить интерпретатор Scheme (lisp) в приложение для iPhone? - PullRequest
5 голосов
/ 10 февраля 2010

Я нахожу встраиваемый интерпретатор Scheme (или JIT-компилятор или что-то еще) в Cocoa Touch. Я думаю, что просто C-совместимый движок Scheme может подойти. Пожалуйста, порекомендуйте немного. Хотелось бы, чтобы это была бесплатная лицензия в стиле MIT / BSD, но реклама тоже подойдет.

И ... разрешает ли Apple AppStore встроенные сценарии, такие как Scheme?

Ответы [ 5 ]

4 голосов
/ 11 февраля 2010

Я думаю, что блог Джеймса Лонга именно то, что вы ищете: http://jlongster.com/software/iphone/scheme-iphone-example/

ссылка выше не работает, вместо нее попробуйте https://github.com/jlongster/gambit-iphone-example.

3 голосов
/ 10 февраля 2010

Вы можете сделать это, если не было ни СКАЧИВАНИЯ, ни ПОЛЬЗОВАТЕЛЬСКОГО сценария / кода.Если бы вы использовали Схему только для внутреннего сценария, это было бы разрешено.

1 голос
/ 12 декабря 2011

Apple позволяет интерпретировать код и скрипты в приложении, если код или скрипты не загружены. Например, в магазине App Store имеется около полудюжины интерпретаторов BASIC, которые позволяют пользователю вводить свой код BASIC вручную (но не загружать его) и запускать его в интерпретаторе или эмуляторе. Множество игр, в которых работает Lua или Mono.

Невозможно запустить какой-либо JIT-скомпилированный код на стандартном устройстве iOS. Страницы исполняемой памяти всех приложений App Store помечены только для чтения.

  • Различные исключения для JavaScript, UIWebViews и Safari.
0 голосов
/ 10 февраля 2010

Я полагаю, TinyScheme используется GIMP для своего сценария-фу. Он также лицензирован BSD.

0 голосов
/ 10 февраля 2010

Вас может заинтересовать Схема Гамбита .

По второму вопросу: нет, Apple не разрешает запуск интерпретированного кода в вашем приложении.

EDIT

Бен Готлиб прав, вы не можете запускать пользовательские скрипты в своем приложении, но внутренняя интерпретация кода должна быть в порядке.

...