Version history
5.1
·
5.0
·
4.0
·
3.2
·
3.1
·
3.0
·
2.5
·
2.4
·
2.2
·
2.1
·
1.1
·
1.0
Lua 5.1
was released on 21 Feb 2006.
The main features in Lua 5.1 are
a new module system,
incremental garbage collection,
new mechanism for varargs,
new syntax for long strings and comments,
mod and length operators,
metatables for all types,
new configuration scheme via luaconf.h,
and a
fully reentrant parser.
The current release is
Lua 5.1.4,
released on 22 Aug 2008.
Lua 5.0
was released on 11 Apr 2003.
The main new features in Lua 5.0 are
collaborative multithreading via Lua coroutines,
full lexical scoping instead of upvalues,
and
metatables instead of tags and tag methods.
Lua 5.0 also introduces
booleans,
proper tail calls,
and weak tables.
Other features are
better support for packages,
new API for loading Lua chunks,
new error handling protocol,
better error messages,
and much more.
Lua 5.0 is the first version to be released under the
new license.
The last release was
Lua 5.0.3,
released on 26 Jun 2006.
Lua 4.0
was released on 06 Nov 2000.
The main new features in Lua 4.0 are
multiples states,
a new API,
"for" statements,
and full speed execution with full debug information.
Also,
Lua 4.0 no longer has built-in functions:
all functions in the standard library are written using the official API.
The last release was
Lua 4.0.1,
released on 04 Jul 2002.
Lua 3.2
was released on 08 Jul 1999.
The main new features in Lua 3.2 are
a debug library
and
new table functions.
The last release was
Lua 3.2.2,
released on 22 Feb 2000.
Lua 3.1
was released on 11 Jul 1998.
The main new features in Lua 3.1 are
anonymous functions and
function closures via "upvalues"
(Lua 5.0 brought full lexical scoping and dropped upvalues.)
This brings a flavor of functional programming to Lua.
There is also support for multiple global contexts,
but the API is not fully reentrant
(this had to wait until Lua 4.0).
Lua 3.1 also saw a
major code re-organization and clean-up,
with much reduced module interdependencies.
Lua 3.0
was released on 01 Jul 1997.
The main new feature of Lua 3.0 are
tag methods as a powerful replacement for fallbacks.
Lua 3.0 also introduced auxlib,
a library for helping writing Lua libraries,
and support for conditional compilation
(dropped in Lua 4.0).
Lua 2.5
was released on 19 Nov 1996.
The main new features of Lua 2.5 are pattern matching and vararg functions.
Lua 2.4
was released on 14 May 1996.
The main new features of Lua 2.4 are
the external compiler luac,
an extended debug interface with hooks,
and the "getglobal" fallback.
Lua 2.3 was never released publicly; it only existed as a beta version.
Lua 2.2
was released on 28 Nov 1995.
The main new features of Lua 2.2 are
long strings,
the debug interface,
better stack tracebacks,
extended syntax for function definition,
garbage collection of functions,
and support for pipes.
Lua 2.1
was released on 07 Feb 1995.
The main new features of Lua 2.1 are
extensible semantics via fallbacks
and support for object-oriented programming.
This version was described in a
journal paper.
Starting with Lua 2.1,
Lua became freely available for all purposes,
including commercial uses.
Lua 1.1
was released on 08 Jul 1994.
This was the first public release of Lua and is described in a
conference paper.
Lua 1.1 already featured
powerful data description constructs,
simple syntax,
and a bytecode virtual machine.
Lua 1.1 was freely available for academic purposes;
commercial uses had to be negotiated, but none ever were.
Lua 1.0
was never released publicly,
but it was up and running on 28 Jul 1993,
and most probably a couple of months before that.
Last update:
Thu Aug 21 23:29:18 BRT 2008