Lua
/LOO-uh/ · noun · Development · Origin: 1993
Definitions
A lightweight, embeddable scripting language designed for extending applications. Lua's tiny footprint and fast VM make it the dominant embedded scripting language in game engines (World of Warcraft, Roblox), networking equipment (OpenResty/Nginx), and IoT devices.
In plain English: A small, fast scripting language that lives inside other programs, especially video games, letting users customize behavior.
Example: Every WoW addon is written in Lua — it's probably the most-used language that most developers have never heard of.
Origin Story
The Brazilian moon that lights up game engines worldwide
Roberto Ierusalimschy, Waldemar Celes, and Luiz Henrique de Figueiredo created Lua in 1993 at the Pontifical Catholic University of Rio de Janeiro (PUC-Rio). Brazil's trade barriers at the time restricted importing software, so they built their own scripting language.
**Lua** means **"moon"** in Portuguese. The name was chosen as a complement to an earlier language called **SOL** (Simple Object Language), which means "sun" in Portuguese. Lua was the moon to SOL's sun.
Lua's tiny footprint (under 200KB) and easy C embedding made it the scripting language of choice for game engines. World of Warcraft, Roblox, Angry Birds, and Adobe Lightroom all use Lua. It's also embedded in Nginx, Redis, and Wireshark.
Coined by: Roberto Ierusalimschy, Waldemar Celes, Luiz Henrique de Figueiredo
Context: PUC-Rio, Brazil, 1993
Fun fact: The creators insist that 'Lua' is a name, not an acronym, and should never be written as 'LUA'. They also note that arrays in Lua start at 1, not 0 -- a constant source of programmer jokes.