Skip to content
This repository
branch: master

Fetching latest commit…


Cannot retrieve the latest commit at this time

Octocat-spinner-32 doc
Octocat-spinner-32 richards
Octocat-spinner-32 src
Octocat-spinner-32 test
Octocat-spinner-32 Makefile
Octocat-spinner-32 README
Octocat-spinner-32 compile
Octocat-spinner-32 compile.bat
Octocat-spinner-32 mandelbrot.lua
Octocat-spinner-32 run.cs
Octocat-spinner-32 runfib.cs
Octocat-spinner-32 runmandel.cs
README for LuaCLR 0.1 Alpha

1. What is LuaCLR

LuaCLR is a compiler for the Lua 5.1 language that targets the Microsoft
Common Language Runtime (CLR). Right now it also works on Mono, but
this is not guaranteed in the future. Also, the compiler is not self-hosting,
which means it depends on the Lua interpreter, but as it's implemented in
a mix of Lua and C# it will be completely self-hosted when complete.

The compiler aims for completeness (implementing as much of Lua 5.1, including
the standard library, as possible) and speed (being faster than the Lua VM, and
approaching LuaJIT). Also it should provide transparent interfacing between
Lua and the rest of the CLR (at least as good as what LuaInterface provides).

The current version is incomplete, and lacks most of the Lua standard library,
as well as integration with the rest of the CLR. The design is also not fixed, and
will probably change in the near future.

LuaCLR is free software. The contents of this distribution are Copyright
2007-2008 Fabio Mascarenhas, and released through the MIT license.

2. Installation

Just do "make all" in Linux, or "nmake -f all" in Windows.

3. Running

Run the compile shell script/bat file to compile a Lua file. You should
run it from the root path of LuaCLR:

compile myscript.lua

This will generate a myscript.dll file. You can run it with run.exe:

run.exe myscript

You will probably see an error message, as there is a lot of functionality
is still missing. :-)

4. Credits

LuaCLR is designed by Fabio Mascarenhas. You can contact the author

Something went wrong with that request. Please try again.