Lua is a splendid libre scripting language: simple, powerful, fast, and easy to extend and embed. Since it's written in pure ANSI C, it's highly portable; the source also compiles as C++. It's small: a typical interpreter executable dynamically linked to the C library is under 150kb. Versions for many operating systems are available from the Lua Users wiki.

I have written or maintain several libraries and other bits and pieces, including:

  • stdlib, a collection of Lua modules that aims to become a set of standard libraries
  • luaposix, a binding for POSIX APIs (including curses)
  • lrexlib, an interface to PCRE and POSIX regexps
  • clue, a minimal Lua to C binding
  • Patches to improve signal handling in the lua standalone on POSIX systems (5.2.1/5.1.5), make print work with strings containing NULs (5.1.5; this problem is fixed in 5.2), and prevent automatic conversion between strings and numbers (5.1.4).

I also wrote a chapter in Lua Programming Gems, about the objects library in stdlib.

I have also rewritten GNU Zile in Lua.

I wrote or maintained the following obsolete or obsolescent bits and pieces:

  • bitlib, a tiny library for bitwise operations
  • EPOC port of Lua with OPL integration (currently at version 5.1.4)
  • lua-rlcompleter, Tab-completion for readline-enabled interpreters (by Jay Carlson).

Last updated 2013/03/21