Re[4]: Встроить LUA
От: alnsn Великобритания http://nasonov.blogspot.com
Дата: 06.09.06 08:10
Оценка: 2 (1)
Здравствуйте, Eugene Kilachkoff, Вы писали:

N>> Идеологически правильно было бы генерить из некоего описания типа idl код биндинга и заголовки для C-шного кода, но такое пока не попадалось.


А SWIG http://www.swig.org/ ?
Встроить LUA
От: nen777w  
Дата: 23.08.06 12:09
Оценка:
Хочу встроить интертрипатор LUA в своё приложение.
Никогда не имел опыта в таких вещах.
Представляю себе это как какую то свою DLL с API которые можно будет вызывать в LUA.

Потому вопрос. Есть ли куда смотреть по сему поводу. Например подсмотреть где то простенькое приложение в сырцах куда был встроен LUA.

Спасибо.

p.s.
Пардон может вопрос сформулирован не корректно, звЫняйте, первый раз таким занимаюсь.
Re: Встроить LUA
От: Eugene Kilachkoff Россия  
Дата: 23.08.06 12:13
Оценка:
Здравствуйте, nen777w, Вы писали:

N>Хочу встроить интертрипатор LUA в своё приложение.

N>Никогда не имел опыта в таких вещах.
N>Представляю себе это как какую то свою DLL с API которые можно будет вызывать в LUA.

N>Потому вопрос. Есть ли куда смотреть по сему поводу. Например подсмотреть где то простенькое приложение в сырцах куда был встроен LUA.

  1. В документации lua есть пример по интеграции с C-шным приложением.
  2. tolua ( http://www.tecgraf.puc-rio.br/~celes/tolua/ )
  3. luabind ( http://luabind.sourceforge.net/ )
Re[2]: Встроить LUA
От: nen777w  
Дата: 23.08.06 12:22
Оценка:
thx!
Re[2]: Встроить LUA
От: nen777w  
Дата: 23.08.06 13:40
Оценка:
Простите уважаемый, а приходилось ли вам пользоваться luabind ?
Re[3]: Встроить LUA
От: Eugene Kilachkoff Россия  
Дата: 05.09.06 09:04
Оценка:
Здравствуйте, nen777w, Вы писали:

N>Простите уважаемый, а приходилось ли вам пользоваться luabind ?

Не, не приходилось. Я на него посмотрел, скомпилял пример, увидел какой это ужас и забил. toLua не нравится наличием собственного парсера (для C/C++ это не самая лучшая идея). Идеологически правильно было бы генерить из некоего описания типа idl код биндинга и заголовки для C-шного кода, но такое пока не попадалось.
Re: Встроить LUA
От: lazyden  
Дата: 05.09.06 17:32
Оценка:
Здравствуйте, nen777w, Вы писали:

N>Потому вопрос. Есть ли куда смотреть по сему поводу. Например подсмотреть где то простенькое приложение в сырцах куда был встроен LUA.

Проще всего биндинг к си описан в Programming in Lua.
Re[3]: Встроить LUA
От: alnsn Великобритания http://nasonov.blogspot.com
Дата: 06.09.06 08:08
Оценка:
Здравствуйте, nen777w, Вы писали:

N>Простите уважаемый, а приходилось ли вам пользоваться luabind ?


Я пробовал, мне не понравилось. Не на всех gcc собиралось. Были еще какие-то гадости, но я уже не помню. В результате все что надо, заработало, но какой ценой.
Re: Встроить LUA
От: Pavel Korikov Россия http://www.intrice.com/
Дата: 11.09.06 11:06
Оценка:
Здравствуйте, nen777w, Вы писали:

N>Хочу встроить интертрипатор LUA в своё приложение.

N>Никогда не имел опыта в таких вещах.
N>Представляю себе это как какую то свою DLL с API которые можно будет вызывать в LUA.

N>Потому вопрос. Есть ли куда смотреть по сему поводу. Например подсмотреть где то простенькое приложение в сырцах куда был встроен LUA.


Выложил простенький проект:
http://www.rsdn.ru/File/6856/luaproject.rar

Там используется luabind.
В примере

* Прозрачный бинд для ATL::CString, чтобы можно было писать/биндить/вызывать так:

СString GetChrue()
{
    CString ret;
    ret = _T("Chrue");
    return ret;
}


биндить так:

module(L)
[
    def("GetChrue", GetChrue)
];


вызывать так:

local str = GetChrue()
if str ~= "Chrue" then
    print("NOT CHRUE!!!")
end


* Прозрачный биндинг SmartPtr'ов, чтобы классы могли шарится между C++ кодом и LUA кодом.

Когда-то писал свой биндер, для классов C++. Но времени как всегда не хватало, чтобы развивать его. Поэтому перешёл на luabind.
Мне luabind приглянулся, поэтому тоже советую.
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.