I have recently falling in love with the Lua Scripting Language, a small intepreter which is simple to extend or embed into your own applications.
Here are the things I've done with it or for it so far:
- Introductory Article on embedding Lua
This is a small article I wrote which introduces the concepts, with examples, of embedding a Lua intepretter within your C application.
Although the introduction doesn't cover anything too advanced it has proved useful to several readers interested in extending their applications.
- Lua & C++ Sample
This project shows a simple means of accessing your C++ code from Lua, and vice-versa.
Although it doesn't wrap classes to make them available to Lua it does show how to allow a single global accessor to a loaded intepretter instance (via the Singleton Design Pattern)
- Lua Filesystem Extension Library
This piece of code implements several useful filesystem primitives for Lua.
This extension was written when I was coding the Lua webserver and became frustrated at the lack of decent filesystem primitives supported by Lua.
- Lua Networking Extension & HTTPD Server
This piece of code is my first useful extension for Lua, it offers an implementation of several networking primitives to your Lua scripts. Although not as complete as the filesystem extension there are a couple of filesystem primitives implemented to allow the server to handle directory indexing.
Taking advantage of those primitives I wrote a simple virtual-host-aware webserver in Lua! This Lua webserver is included in the package as an example of using the library.
A console-based email client which is scripted entirely through Lua!