Home

Lua

Lua is a lightweight, high-level, multi-paradigm programming language designed primarily for embedded use in applications. It emphasizes small size, portability, and ease of embedding in host applications.

A central feature is the table, a versatile data structure that serves as arrays, dictionaries, objects, and

Lua has first-class functions and closures and supports coroutines for cooperative multitasking. Its compact core and

Programs are typically compiled to bytecode and executed by a small Lua virtual machine. The language is

Lua is widely used as an embedded scripting language in games, applications, and services. It is used

Lua was created in 1993 by Roberto Ierusalimschy, Luiz Henrique de Figueiredo, and Waldemar Celes at PUC-Rio

modules
and
uses
1-based
indexing
by
convention.
Lua
provides
dynamic
typing,
automatic
memory
management
with
an
incremental
garbage
collector,
and
a
minimal,
extensible
syntax.
The
language
aims
to
be
simple
to
learn
while
offering
powerful
capabilities
for
scripting
within
larger
programs.
straightforward
semantics
make
it
approachable
for
beginners
and
suitable
for
embedding
in
diverse
environments.
The
standard
library
is
modest
but
covers
common
tasks
such
as
string
manipulation,
table
operations,
math,
I/O,
and
basic
OS
interfacing,
with
many
host
applications
exposing
additional
APIs.
designed
to
be
embedded,
featuring
a
clean
C
API
for
extension
and
integration.
LuaJIT
provides
a
high-performance
Just-In-Time
compiler
for
many
environments,
offering
substantial
speedups
on
supported
platforms.
by
game
engines
such
as
LÖVE
and
by
large-scale
platforms
such
as
Roblox.
The
name
Lua
means
“moon”
in
Portuguese,
reflecting
its
origins
at
the
Pontifical
Catholic
University
of
Rio
de
Janeiro.
in
Brazil.
Since
its
release,
Lua
has
been
distributed
under
a
permissive
open-source
license
and
has
a
global
community
of
users
and
developers.