Skip to content

A modified lua-5.1.5 interpreter that uses libgc

Notifications You must be signed in to change notification settings

ianmaclarty/gclua

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

7 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

gclua
-----

This is a modified version of Lua 5.1.5 that uses the Boehm garbage collector
(http://www.hpl.hp.com/personal/Hans_Boehm/gc/).

For at least one allocation-heavy program there is a 2x speedup over standard
Lua, but on average there seems to be a slight slowdown and moderately
increased memory usage.

The main advantage of using libgc is that it makes managing memory
over the Lua-C boundary much easier (as long as the C side also uses
libgc).  Data allocated with lua_newuserdata
can be used in C code without having to keep it alive in Lua.
It should also be possible to store Lua values directly
in C data, without going via lua_ref.

To build, first ensure that a recent version of libgc (>=v7.2alpha7) is
installed, then build in the same way as the standard Lua distribution
(e.g. "make generic").

Weak tables and the __gc metamethod are not currently supported.

About

A modified lua-5.1.5 interpreter that uses libgc

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published