Question

I'm looking for a way to embed Lua into my cross-platform embed application. The problem is - I haven't found any complete, stable, working implementation of Lua on this platform. I've tried the following (here are the list of repositories and their problems):

  • LuaInterface - require me to compile a dll for every platform, unstable, since v2 uses Windows
  • KopiLua - errors, even their own samples doesn't work
  • AluminiumLua - depends on DLL, therefore, not an implementation
  • NLua - based on KopiLua and inherits all the problems
  • UniLua - ... it's for unity

Also, most of these implementations fails when I do a simple test:

for(i=0;i<100000;i)
    Lua.CallSomeFunctionFromLua()

From time to time it invokes an error, especially on KopiLua and LuaInterface.

The question is: is there any complete, stable implementation of Lua strictly in C#, without any platform dependencies?

Was it helpful?

Solution

If you'll not find good pure C# library of lua implementation try to give a chance to luabind As said in documentation it is portable. You could make C++/CLI interface between luabind and your framework like said here It is very risky idea, but you will have depth control on what happening. Since luabind is C++ wrapper of C Lua it will not be too hard to implement interface on C#.

Licensed under: CC-BY-SA with attribution
Not affiliated with StackOverflow
scroll top