Russian Qt Forum
Ноябрь 22, 2024, 16:51 *
Добро пожаловать, Гость. Пожалуйста, войдите или зарегистрируйтесь.
Вам не пришло письмо с кодом активации?

Войти
 
  Начало   Форум  WIKI (Вики)FAQ Помощь Поиск Войти Регистрация  

Страниц: [1]   Вниз
  Печать  
Автор Тема: Встраиваемый скриптовый язык для Qt  (Прочитано 5461 раз)
RomiX
Гость
« : Май 29, 2012, 20:09 »

Здравствуйте, начинаю разрабатывать один проект, и в нём жизненно необходим интерпретатор какого либо языка. Также необходима возможность запуска нескольких скриптов одновременно, смотрел в сторону PythonQt, но не уверен насчёт многопоточности, также он по ходу использует старый питон, и у меня даже не получилось его скомпилировать (пытался поставить Python2.6 в ubuntu 12.04 и в процессе снёс пол системы). QtScript как я понимаю уже не разрабатывается...
Также мне очень понравился PicoC, но я даже не знаю как к нему подступить из Qt, да и вообще не из линукса тоже.
Что можете посоветовать?

В программе скрипты будут выполняться при происхождении какого либо события, также скрипт должен иметь возможность передать сообщение (вызвать функцию например) основной программе. События могут происходить независимо друг от друга, по этому и нужна возможность независимого выполнения.

В идеале я себе представляю это как класс, например Interpreter, таких классов можно создать сколько угодно, задать каждому скрипт с которым он работает, и в нужный момент вызывать например метод execute("my_function(a,b,c);") (ну или запускать на выполнение весь скрипт целиком), а если скрипт хочет передать данные программе, то эти данные приходят в виде сигналов Qt.

Очень надеюсь на помощь, а то работа стоит((
Записан
V1KT0P
Гость
« Ответ #1 : Май 29, 2012, 20:13 »

В играх почти стандартом стало делать скрипты на Lua.
Записан
RomiX
Гость
« Ответ #2 : Май 29, 2012, 20:48 »

о! это уже куда ближе к теме, спс, буду пробовать
Записан
Bepec
Гость
« Ответ #3 : Май 29, 2012, 22:46 »

Lua превосходен. Всего за полчаса я сумел решить проблему за денежку Подмигивающий Чисто благодаря его Си подобности.
Записан
DmitryM
Гость
« Ответ #4 : Май 30, 2012, 10:24 »

Здравствуйте, начинаю разрабатывать один проект, и в нём жизненно необходим интерпретатор какого либо языка. Также необходима возможность запуска нескольких скриптов одновременно, смотрел в сторону PythonQt, но не уверен насчёт многопоточности, также он по ходу использует старый питон, и у меня даже не получилось его скомпилировать (пытался поставить Python2.6 в ubuntu 12.04 и в процессе снёс пол системы). QtScript как я понимаю уже не разрабатывается...
Также мне очень понравился PicoC, но я даже не знаю как к нему подступить из Qt, да и вообще не из линукса тоже.
Что можете посоветовать?
CPython встраивается в любые С/С++ приложения. Чем QtScript не устраивает не понятно.
Записан
navrocky
Гипер активный житель
*****
Offline Offline

Сообщений: 817


Погроммист


Просмотр профиля
« Ответ #5 : Май 30, 2012, 11:17 »

При выборе языка надо учитывать еще и фактор наличия стандартной библиотеки. Например, при использовании QtScript её совершенно нет, поэтому надо все необходимые классы пробрасывать из своего плюсового кода. А при использовании питона сразу в довесок получаешь большую библиотеку (работа с интернет сервисами, и т.д.).

Насчет Lua ничего не скажу, вроде бы там тоже голый интерпретатор.

Питон можно заюзать также через буст, сам не пробовал, но говорят - очень просто (проброс своих классов в питон).

Если использование сторонних функций не предусматривается, только скриптование внутренних механизмов, то я бы всё-таки предпочел QtScript, чтобы не тянуть лишние зависимости в проект.
Записан

Гугль в помощь
Страниц: [1]   Вверх
  Печать  
 
Перейти в:  


Страница сгенерирована за 0.047 секунд. Запросов: 23.