Creación de nuevas clases / miembros en tiempo de ejecución en lenguajes de script utilizados en C ++ [cerrado]

He estado trabajando en este problema de vez en cuando durante unos meses, y ahora realmente quería encontrar una solución adecuada que manejara el caso de crear nuevas clases definidas por el usuario (e instancias de esas clases) con funciones miembro / propiedades en tiempo de ejecución en un proyecto C ++ 11.

Hasta ahora, he estado usando SWIG (anteriormente con Python, ahora con Lua, explorando Squirrel). Al igual que todas las bibliotecas de enlace / incrustación de C ++ que he encontrado hasta ahora (Luna *, luabinder, luabind, OOLua, Sqrat / Sqext, Squall), todos esperan que sus clases estén predefinidas en C ++ antes de la ejecución del código porque dependen del preprocesador directivas o plantillas.

Entonces, mi pregunta es, ¿hay alguna biblioteca que use un enfoque más procedimental para ajustar un idioma, o hay buenos tutoriales / ejemplos para algo como Lua o Squirrel, que uno recomendaría para manejar la creación de clases personalizadas? con miembros y funciones personalizados? Alguna dirección sería muy apreciada.

Incluso un buen ejemplo que muestre cómo crear una clase personalizada con una función y una propiedad, ya sea en Lua, Squirrel, a través de sus respectivas API de C ++ sin el uso de macros / plantillas / código generado dinámicamente, sería de gran ayuda.

EDITAR: he ido tan lejos como para crear unInstance clase que contiene unstd::vector de pares de clave / valor de miembros y un miembro que identifica el tipo para que se puedan buscar las funciones. Sin embargo, existe muy poca documentación sobre la creación de clases simples en Lua / Squirrel sin el uso de código estático.

EDIT 2: Me gustaría una solución que funcione en cualquier plataforma y sin tener que vincular dinámicamente.

Respuestas a la pregunta(3)

Su respuesta a la pregunta