ObjectLua - a simple implementation with single inheritance, virtual methods only, and Java-like access to super methods
Programming In Lua, 2nd edition, Chapter 16: "Object-Orientated Programming" - an introduction to object-oriented programming in Lua.
[LOOP] - LOOP stands for Lua Object-Oriented Programming and is a set of packages for supporting different models of object-oriented programming in the Lua language.
Know-How and Design Patterns
ObjectProperties - getters/setters that look like table field accesses (function and design pattern)
ProxyBasedEncapsulation - encapsulation of objects via proxy tables (function and design pattern)
AsciiMenu - console-based menu system, illustrating menu definition via chain of '.' calls (design pattern)