Lua

Lua (from the Portuguese word for moon) is the scripting language used by World of Warcraft for Interface Customization. Only a subset of version 5.1 of the official Lua specification is implemented, and should suit most addon maker's needs. More information about Lua can be found on the official Lua FAQ.

Programming References
These are not so many guides or tutorials, but a place to look for information on the Lua language itself. The reader should be somewhat familiar with programming in general.
 * Official Reference Manual : contains syntax and basic commands, but is heavy-going for readers without a programming background (Luai: alternative way of browsing the manual)
 * Programming in Lua : the definitive Lua guide by Roberto Ierusalimschy. Online version
 * lua-users : Lua user group with a Wiki which includes a FAQ, tutorials and extended help on many topics. The group also hosts a mailing list (with past archive) and a IRC channel, #lua at irc.freenode.net. Lastly, their LuaLinks page is very extensive.

Lua Editors
While any text editor can edit Lua files, many contain additional Lua specific features.

Please see the list of Lua editors.

Using Lua for World of Warcraft
Related projects include:
 * WoWBench: aims to be a near-complete emulation of the WoW environment
 * Lua 5.1.1 WoW: distribution created by cogwheel that includes everything needed for addon development