Lua (por.: "Mjesec") višeplatformski je skriptni programski jezik visoke razine. Osmišljen je 1993. kao jezik za proširivanje softvera radi udovoljavanja sve zahtjevnijim standardima prilagodljivosti sučelja. Pružao je osnovne značajke proceduralnih jezika (poput COBOL-a, BASIC-a i C-a), kao i mehanizme proširivanja sintakse i funkcionalnosti jezika.
Kao što je slučaj s Javom, programi pisani na Lui prevode se u zasebnu datoteku koja sadrži računalni bytecode pogodan za izvođenje na jezičnom prevoditelju napisanom na ANSI C-u. Interpreter Luina koda uz potpunu podršku svih standardnih biblioteka ima svega 278 kilobajta,[1] što sam taj jezik čini prenosivim, brzim i neovisnim o uređaju na kojem se izvodi; sve što je potrebno za izvođenje tog koda jest običan C-ov jezični prevoditelj.