Aquí un tema para el Foro: (Desarrollar Plantillas como: "Proyecto Lua Bind?")

16 views
Skip to first unread message

esbxp

unread,
Aug 27, 2009, 12:28:43 PM8/27/09
to lua...@googlegroups.com
Hola:

          Alguien ha visto los proyectos de Lua-Bind,,, son unas librerias que se usan para hacer mas facil la incorporacion de Lua en el código fuente,, los malo es que estan para Visual Studio 2005,,

          Seria bastante bueno tratar de hacer una librería Lua-Bind para Visual Studio 6.0,,, para los principiantes,, algo que haga mas facil la Implementación de esta librería en C++,, se escriben cosas así

struct Hello
{
 std::string DoIt() { return "Hello World!"; };
};
int main()
{
 using namespace mluabind;

 lua_State* luastate = lua_open();
 luaL_openlibs(luastate);
 CHost host(luastate);
 BindStdLibrary(&host);
 host.Insert(
  Class<Hello>("hello")
   .Constructor()
   .Method("DoIt", &Hello::DoIt)            !. Aca se hace el bind a todas los Methodos de la Clase...
  );
 
 luaL_dostring(luastate,                      !. Aca se llama en el Script.
  "local obj = hello()\n"
  "print(obj.DoIt())");
 return 0;
};
             Si esta cosa funciona en  Visual Studio 2005,,, por que no se podría rescatar algo  para que funcionase en Visual Studio Vc60,, despues de todo,, si se compila Lua en el 2005,,, muchas cosas aparecen como  DEPERECATED,, weno pues hasta donde se pueda hacer,, el punto fuerte del bindind es que trabaja en base a plantillas algo como:

template <class T, bool _f = IsFundamentalCVRef<T>::value>
struct STLConstReferenceReturn
{
 template <bool _isptr>
 struct A
 {
  typedef const T &Result;
 };
 template <>
 struct A<true>
 {
  typedef const T Result;
 };
 typedef typename A<std::tr1::is_pointer<T>::value>::Result Result;
};
obviamente que las plantillas hacen el traspaso de argumentos tal cual C++,, osea se pasan Arrays, Structuras, Direcciones de  Func,, y se retornan igualmente. Las plantillas se encargan de las conversiones, y ademas ejecutan multi-script theread, y coroutines.

 ( ¡ Que Maravilla !, por lo que leí en theoria, pero no pude usarla. ¡¡¡ Error ... si error !!! ... xD ... no compatible en Vc60), .

Lo planteo para saber si nos animamos a hacer algo que facilite la lectura e implementacion humana de esta librería,,, ademas que para mi personalmente sería un poco dificil,,, ya que hasta ahora ni siquiera puedo pasar el array de estructuras  xD,, solo me funciona al crearlo de C hacia Lua y no de Lua hacia C++ llega corrupto  xD,,, que lecera. Alguien conoce donde descargar un libro de Lua Ejercicios - Weno?

weno se los planteo .... opiniones !!!
como va lo del Foro !!!
 
Saludos !!!
bye !!!
 

Aitor Perez

unread,
Aug 29, 2009, 4:31:18 AM8/29/09
to lua...@googlegroups.com
El 27/08/09, esbxp <esbv...@gmail.com> escribió:

> Hola:
>
> Alguien ha visto los proyectos de Lua-Bind,,, son unas librerias
> que se usan para hacer mas facil la incorporacion de Lua en el código
> fuente,, los malo es que estan para Visual Studio 2005,,
>
> Seria bastante bueno tratar de hacer una librería Lua-Bind para
> Visual Studio 6.0,,, para los principiantes,, algo que haga mas facil
> la Implementación de esta librería en C++,, se escriben cosas así
>
Hombre, si quieres hacer un tutorial de lua, lo bueno sería que no se
centrase en una sola plataforma, hay gente que no usa windows. Mi
opinión es que deberías de dividirlo de manera similar a como está el
PIL, es decir, primero introduce su uso como lenguaje de programación
genérico, creo que es absurdo saber crear bindings a otro lengiaje si
no se domina lua (¿para que programar en lua si no le vas a sacar
provecho). Por eso creo que debrías (o deberíamos) dividir el libro en
varios bloques:

* Uso del lenguaje por si mismo, y aquí es donde creo que podemos
poner ejemplos de como resolver problemas de programación míticos en
lua, que la gente haya visto resolver en otros lenguajes.
* Otra sección dedicada a extender lua, permitiéndole llamar a otros
lenguajes (no sólo C/C++).
* Y por último otra sección permitiendo extender cualquier lenguaje
para poder llamar a lua.

> Lo planteo para saber si nos animamos a hacer algo que facilite la lectura e
> implementacion humana de esta librería,,, ademas que para mi personalmente
> sería un poco dificil,,, ya que hasta ahora ni siquiera puedo pasar el array
> de estructuras xD,, solo me funciona al crearlo de C hacia Lua y no de Lua
> hacia C++ llega corrupto xD,,, que lecera. Alguien conoce donde descargar
> un libro de Lua Ejercicios - Weno?

Yo aquí poco puedo ayudar, nunca he usado el VStudio, ni he programado
en windows apenas, por lo que también sería interesante, una vez que
esto tenga forma, crear grupos de trabajo.

Libro de ejercicios?, explica a que te refieres con eso, no lo tengo muy claro.

>
> weno se los planteo .... opiniones !!!
> como va lo del Foro !!!

En esto tengo la culpa yo, he estado (y estoy) bastante liado
trasteando con la Wii últimamente, espero este finde dejar algo
funcional para poder probarlo, aviso que no tengo mucha experiencia
con el sputnik, por lo que a ver como queda.

Yo te aviso cuando tenga algo medianamente listo, no te preocupes.

Aitor.

Reply all
Reply to author
Forward
0 new messages