8

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?

Mud
  • 28,277
  • 11
  • 59
  • 92
Damon Wall
  • 95
  • 7
  • 2
    NLua is not based on KopiLua. NLua uses KopiLua only for WindowsPhone (or for pure C# environments). But NLua uses KeraLua (p/Invoking the native Lua). – Vinicius Jarina Jun 26 '13 at 19:26

1 Answers1

1

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#.

Community
  • 1
  • 1
Edward83
  • 6,664
  • 14
  • 74
  • 102