LINUX.ORG.RU

Python vs OCaml


0

0

Хочу в прогу на C++ встроить скрыптовый или похожий язык для разных расчетов (офигительные расчеты стоимости продукции. Обязателен отладчик). Знаю, что можно встроить Python.
Вопрос
1. Кто так делал и какие проблемы были?
2. Я можно ли что-то типа OCalm встроить?
3. А есть ли другие идеи?

anonymous
Ответ на: комментарий от anonymous

Сам не пользовал, знакомый заюзал был в восторге. Python более как обёрточный язык катит. В качестве обертки использовал. Проблем никаких, правда я пользовал PyQt.

OCaml пользую активно в качестве генератора Python'ова кода.

anonymous
()
Ответ на: комментарий от anonymous

>OCaml пользую активно в качестве генератора Python'ова кода.
Можно увидеть, как? Несколько неожиданная для меня идея

anonymous
()
Ответ на: комментарий от anonymous

Ну как, в общем-то немного топорно, но работает. Ocaml[yacc+lex]ами из описания делаю его дерево, потом по нему Python'овый модуль, который используется из скрипта.

Описание -- довольно простой DSL (если это можно так назвать) который расказывает о том чем и как нужно управлять из скриптов. В целом задача такая: есть физическая установка с хреновой кучей разных модулей. В модули эти можно писать команды управления и получать результаты измерений. Соответственно весь real-time писан на С и упакован в драйверы этих модулей. У драйвера самый тупой интерфейс типа записал 4 байта получил ответ, когда какое-то событие там пукнуло, то это выплевывается в stdout->socket->скрипт.

Все события потом пишутся в HDF, очень удобная штука. По началу делал в ROOT'e, но С++ сильно достал. Может я тупой, но от плюсов пришлось отказаться по причине жуткой падучести и сложности.

Сам генератор довольно толстый кривой камловский модуль. Было бы кошерно сделать его с Camlp4, но все руки не доходят. Да собственно и так все пашет уже несколько месяцев без сильного гимора.

Новые модули добавляется на ура. От меня драйвер+либа на питоне, а дальше юзер сам лучше меня знает чего ему надо.

anonymous
()

Попробуй Lua, на ура встраивается, довольно шустер.

http://www.lua.org/

Примеры использования есть в документации и здесь:

http://lua-users.org/wiki/SampleCode

Отладчики к Lua где-то были, даже на удаленный наталкивался.

anonymous
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.