Lua
Lua is an open source programming language.[2] It was created in 1993 by Roberto Ierusalimschy, Luiz Henrique de Figueiredo, and Waldemar Celes.[1] Lua is used for many different things, especially in video games such as World of Warcraft, SimCity 4 and Transformice.[5] It is also used in the popular virtual world sharing website Roblox under a dialect called Luau.[6] In June 2010, Apple Inc. changed the terms of use for the software development kit of its iOS operating system to allow the use of Lua.[7] This led to Lua being used to make iPhone applications such as Angry Birds. In June 2011, Lua was ranked the tenth most popular programming language by the TIOBE Index.[8]
![]() | |
Paradigm | Multi-paradigm: scripting, imperative (procedural, prototype-based, object-oriented), functional |
---|---|
Designed by | Roberto Ierusalimschy[1] Waldemar Celes[1] Luiz Henrique de Figueiredo[1] |
First appeared | 1993[2] |
Stable release | 5.4.6[3] ![]() |
Typing discipline | dynamic, strong, duck |
Implementation language | ANSI C |
OS | Cross-platform |
License | MIT License[4] |
Website | www |
Major implementations | |
Lua, LuaJIT, LLVM-Lua, Lua Alchemy Luvit | |
Dialects | |
Metalua, Idle, GSL Shell Luau | |
Influenced by | |
C++, CLU, Modula, Scheme, SNOBOL | |
Influenced | |
Io, GameMonkey, Squirrel, Falcon, MiniD |
Examples
An example Hello World program in Lua:
-- !/usr/bin/lua
print("Hello World!")
An example of setting a value, then printing it:
--!/usr/bin/lua
a = "Hello World!"
print(a)
An example of a function:
--!/usr/bin/lua
local function TestFunction()
print("Hello, World"!)
end
An example of a loop that prints each entry in the list in order:
--!/usr/bin/lua
local list = {"Hey","my","name","is","Dan"}
for i, v in pairs(list) do
print(v)
end
References
- Ierusalimschy, R.; Figueiredo, L. H.; Celes, W. (2007). "The evolution of Lua" (PDF). Proc. of ACM HOPL III. pp. 2–1–2–26. doi:10.1145/1238844.1238846. ISBN 978-1-59593-766-7. S2CID 475143.
- "Lua: About". Lua.org. Retrieved 28 February 2011.
- "[ANN] Lua 5.4.6 now available". 14 May 2023. Retrieved 14 May 2023.
- "Lua: license". Lua.org. Retrieved 6 April 2011.
- "Lua Uses". lua-users wiki. Retrieved 16 February 2011.
- "Luau". Luau. Retrieved 2021-04-07.
- "Apple relaxes iOS SDK terms to allow Lua but block Flash". Appleinsider.com. 11 June 2010. Retrieved 11 June 2011.
- "TIOBE Programming Community Index for June 2011". TIOBE Software. June 2011. Archived from the original on 2 July 2013. Retrieved 11 June 2011.