Free Online Toolbox for developers

Lua cheatsheet

Lua is a lightweight, fast, and versatile scripting language known for its simplicity and extensibility, making it popular for embedding in applications and game development.

Conditionals

if condition then
  -- code
elseif condition then
  -- code
else
  -- code
end

Loops

while condition do
-- use break to break end
end

for i = start, stop, step do
    -- code
end

for key, value in pairs(table) do
    -- code
end

repeat
    -- code
until condition

Variables

local x = 1
y, z = 2, 4

Tables / Arrays

table = {key1 = value1, key2 = value2, ...}
value = table[key]
table[key] = value
for key, value in pairs(table) do
    -- code
end

array = {element1, element2, ...}
value = array[index]
array[index] = value
length = #array

Arrays are a specific form of tables in Lua, often starting from index 1 and maintaining contiguous indices. Tables, on the other hand, can have non-numeric keys and non-contiguous indices, allowing for more flexible data structures.

Functions

function functionName(arg1, arg2)
    -- code
end

functionName(arg1, arg2)

Comments

-- comment
--[[ Multiline
     comment ]]

Lua is a lightweight, high-level scripting language known for its simplicity, flexibility, and efficiency. Designed to be embedded in applications, Lua offers a straightforward syntax that emphasizes readability and ease of use. It provides powerful features such as dynamic typing, automatic memory management, and first-class functions.

Lua’s versatility extends to various domains, including game development, where it has been used in popular games like World of Warcraft and Angry Birds. Its small footprint and fast execution make it ideal for resource-constrained environments, making Lua a popular choice for embedded systems and scripting tasks.

One of Lua’s standout features is its extensibility. It offers a C API that allows developers to integrate Lua seamlessly with other languages and frameworks. Additionally, Lua’s ability to define and manipulate functions as data makes it a powerful tool for implementing domain-specific languages and customizable scripting interfaces.




Leave a Reply