Название: Встраиваемый скриптовый язык для Qt Отправлено: RomiX от Май 29, 2012, 20:09 Здравствуйте, начинаю разрабатывать один проект, и в нём жизненно необходим интерпретатор какого либо языка. Также необходима возможность запуска нескольких скриптов одновременно, смотрел в сторону PythonQt, но не уверен насчёт многопоточности, также он по ходу использует старый питон, и у меня даже не получилось его скомпилировать (пытался поставить Python2.6 в ubuntu 12.04 и в процессе снёс пол системы). QtScript как я понимаю уже не разрабатывается...
Также мне очень понравился PicoC, но я даже не знаю как к нему подступить из Qt, да и вообще не из линукса тоже. Что можете посоветовать? В программе скрипты будут выполняться при происхождении какого либо события, также скрипт должен иметь возможность передать сообщение (вызвать функцию например) основной программе. События могут происходить независимо друг от друга, по этому и нужна возможность независимого выполнения. В идеале я себе представляю это как класс, например Interpreter, таких классов можно создать сколько угодно, задать каждому скрипт с которым он работает, и в нужный момент вызывать например метод execute("my_function(a,b,c);") (ну или запускать на выполнение весь скрипт целиком), а если скрипт хочет передать данные программе, то эти данные приходят в виде сигналов Qt. Очень надеюсь на помощь, а то работа стоит(( Название: Re: Встраиваемый скриптовый язык для Qt Отправлено: V1KT0P от Май 29, 2012, 20:13 В играх почти стандартом стало делать скрипты на Lua.
Название: Re: Встраиваемый скриптовый язык для Qt Отправлено: RomiX от Май 29, 2012, 20:48 о! это уже куда ближе к теме, спс, буду пробовать
Название: Re: Встраиваемый скриптовый язык для Qt Отправлено: Bepec от Май 29, 2012, 22:46 Lua превосходен. Всего за полчаса я сумел решить проблему за денежку ;) Чисто благодаря его Си подобности.
Название: Re: Встраиваемый скриптовый язык для Qt Отправлено: DmitryM от Май 30, 2012, 10:24 Здравствуйте, начинаю разрабатывать один проект, и в нём жизненно необходим интерпретатор какого либо языка. Также необходима возможность запуска нескольких скриптов одновременно, смотрел в сторону PythonQt, но не уверен насчёт многопоточности, также он по ходу использует старый питон, и у меня даже не получилось его скомпилировать (пытался поставить Python2.6 в ubuntu 12.04 и в процессе снёс пол системы). QtScript как я понимаю уже не разрабатывается... CPython встраивается в любые С/С++ приложения. Чем QtScript не устраивает не понятно.Также мне очень понравился PicoC, но я даже не знаю как к нему подступить из Qt, да и вообще не из линукса тоже. Что можете посоветовать? Название: Re: Встраиваемый скриптовый язык для Qt Отправлено: navrocky от Май 30, 2012, 11:17 При выборе языка надо учитывать еще и фактор наличия стандартной библиотеки. Например, при использовании QtScript её совершенно нет, поэтому надо все необходимые классы пробрасывать из своего плюсового кода. А при использовании питона сразу в довесок получаешь большую библиотеку (работа с интернет сервисами, и т.д.).
Насчет Lua ничего не скажу, вроде бы там тоже голый интерпретатор. Питон можно заюзать также через буст, сам не пробовал, но говорят - очень просто (проброс своих классов в питон). Если использование сторонних функций не предусматривается, только скриптование внутренних механизмов, то я бы всё-таки предпочел QtScript, чтобы не тянуть лишние зависимости в проект. |