The official definition of the Lua language is its
reference manual,
which describes the syntax and the semantics of Lua,
the standard libraries, and the C API.
The
reference manuals for all versions of Lua
are
available online
in English.
Some are available in other languages and as a printed book.
The current version is the
reference manual for Lua 5.4.
Technical documentation
For more technical information,
see the Frequently Asked Questions (FAQ)
and some old
seminar slides.
For detailed technical information on specific topics,
see our old series of
Lua Technical Notes
and the
wiki
at
lua-users.org,
specially the
tutorial.
You may also browse the
source code.
There are many
papers and theses
related to Lua.
Here are the main ones written by the Lua
team.
See also the
LabLua publications.
The main academic paper about Lua
discusses the philosophy behind its design:
Lua – an extensible extension language
by R. Ierusalimschy, L. H. de Figueiredo, W. Celes,
Software: Practice & Experience 26 #6 (1996) 635–652.
[doi]
This paper was awarded the
first prize (technological category)
in the
II Compaq Award for Research and Development in Computer Science in 1997.
This award was a joint venture of
Compaq Computer in Brazil,
the
Brazilian Ministry of Science and Technology,
and the
Brazilian Academy of Sciences.
For an overview of how Lua is designed, see
A look at the design of Lua
by R. Ierusalimschy, L. H. de Figueiredo, W. Celes,
Communications of the ACM 61 #11 (2018) 114–123.
[doi ·
video]
For a short exposition of the API design, see
Passing a language through the eye of a needle
by R. Ierusalimschy, L. H. de Figueiredo, W. Celes,
ACM Queue 9 #5 (May 2011) 20–29.
[doi
·
acm]
Communications of the ACM 54 #7 (July 2011) 38–43.
[doi
·
acm]
It is also available in Portuguese:
Passando uma linguagem pelo buraco de uma agulha
por R. Ierusalimschy, L. H. de Figueiredo, W. Celes,
ACM Queue 9 #5 (May 2011) 20–29.
For details on the implementation of Lua, see
The implementation of Lua 5.0
by R. Ierusalimschy, L. H. de Figueiredo, W. Celes,
Journal of Universal Computer Science 11 #7 (2005) 1159–1176.
[doi
·
slides]
For details on the role of first-class functions in Lua, see
First-class functions in an imperative world
by R. Ierusalimschy,
Journal of Universal Computer Science 23 #1 (2017) 112–126.
[doi
·
slides]
For a discussion of coroutines in Lua, see
Coroutines in Lua
by A. L. de Moura, N. Rodriguez, R. Ierusalimschy,
Journal of Universal Computer Science 10 #7 (2004) 910–925.
[doi
·
slides]
For a complete history of Lua till 2006, see
The evolution of Lua
by R. Ierusalimschy, L. H. de Figueiredo, W. Celes,
Proceedings of ACM HOPL III (2007) 2-1–2-26.
[doi
·
slides]
For a history of Lua till 2001, see
The evolution of an extension language:
a history of Lua
by R. Ierusalimschy, L. H. de Figueiredo, W. Celes,
Proceedings of V Brazilian Symposium on Programming Languages
(2001) B-14–B-28.
[ps]
The first paper describing Lua has some historical interest:
The design and implementation of a language for extending applications
by L. H. de Figueiredo, R. Ierusalimschy, W. Celes,
Proceedings of XXI Brazilian Seminar on Software and Hardware (1994) 273–283.
[ps]
For an early expository article, see
Lua: an extensible embedded language
by L. H. de Figueiredo, R. Ierusalimschy, W. Celes,
Dr. Dobb's Journal 21 #12 (Dec 1996) 26–33.
[ddj]
For introductory texts in Portuguese, see
Uma introdução à programação em Lua
by R. Ierusalimschy,
JAI 2009 (Jul 2009).
A linguagem Lua e suas aplicações em jogos
by W. Celes, L. H. Figueiredo, R. Ierusalimschy
WJogos 2004 (Oct 2004).
[slides]
See also an
interview about Lua
in the book
Masterminds of Programming (2009).
|
|
Lua books are available at the main online stores
and also as e-books at
Feisty Duck.
When you buy a copy of a book published by Lua.org,
you help to support the Lua project.
The official definition of the Lua language:
Lua 5.1 Reference Manual
by R. Ierusalimschy, L. H. de Figueiredo, W. Celes,
Lua.org, August 2006
ISBN 8590379833
The reference manuals for later versions of Lua are available
online.
A detailed and authoritative introduction to
all aspects of Lua programming,
by Lua's chief architect:
Programming in Lua
by R. Ierusalimschy
Lua.org, fourth edition, August 2016
ISBN 8590379868
(also available as an
e-book)
The fourth edition is aimed at Lua 5.3
and marks a complete reorganization of the text.
The first edition is
available online.
It was aimed at Lua 5.0 and is still largely relevant.
The third edition was aimed at Lua 5.2 and remains quite relevant.
It is available in
English,
Portuguese,
and Russian:
Programming in Lua
by Roberto Ierusalimschy
Lua.org, third edition, January 2013
ISBN 859037985X
(also available as
e-book)
Programando em Lua
por Roberto Ierusalimschy
LTC, January 2015
ISBN 9788521626992
Programmirovanie na iazyke Lua
by Roberto Ierusalimschy
DMK-press, 2014
ISBN 5940747671
The second edition remains relevant and is available in
German,
Korean,
Chinese,
and Japanese:
Programmieren mit Lua
von Roberto Ierusalimschy
Open Source Press, September 2006
ISBN 3937514228
Programming in Lua
by Roberto Ierusalimschy
Insight, June 2007
ISBN 9788991268302
Programming in Lua
by Roberto Ierusalimschy
Publishing House of Electronic Industry, May 2008
ISBN 9787121061875
Programming in Lua
by Roberto Ierusalimschy
ASCII Media Works, Aug 2009
ISBN 9784048677974
A collection of articles recording some of the existing wisdom and practice on how to program well in Lua:
Lua Programming Gems
edited by L. H. de Figueiredo, W. Celes, R. Ierusalimschy,
Lua.org, December 2008
ISBN 9788590379843
(also available as
e-book)
There are also books about Lua written by other authors:
- Roblox Coding for kids
by Robert McConnell.
Independently published, 2024, ISBN 9798878577274.
- Automate your Workflow with Lua
by Johnny Boutte.
Independently published, 2024, ISBN 9798884809840.
- High-Performance Lua for Roblox Developers
by Harvey Mills.
Independently published, 2024, ISBN 9798884704107.
- Lua in 8 Hours
by Lewis Austin and Ray Yao.
Independently published, 2024, ISBN 9798327626874.
- Lua Essentials: A Journey Through Code and Creativity
by Frahaan Hussain, Kameron Hussain.
Independently published, 2023, ISBN 9798871440179.
- Code Gamers Development: Lua Essentials
by A.E. Colonna.
Independently published, 2023, ISBN 9798395932808.
- Roblox Lua Scripting Essentials
by Christopher Coutinho.
Apress, 2023, ISBN 9798868800252.
- Scripting Farming Simulator with Lua
by Zander Brumbaugh and Manuel Leithner.
Apress, 2023, ISBN 9798868800597.
- Learning Lua: A guide for getting started
by Brian Burton.
Independently published, 2023, ISBN 9798857767290.
- Integrate Lua with C++
by Wenhuan Li.
Packt Publishing, 2023, ISBN 9781805128618.
- Mastering Roblox Coding
by Mark Kiepe.
Packt Publishing, 2022, ISBN 9781801814041.
- Coding With Roblox Lua in 24 Hours: The Official Roblox Guide
by Roblox Corporation.
Sams Publishing, 2021, ISBN 9780136829423.
- Coding Roblox Games Made Easy: The ultimate guide to creating games with Roblox Studio and Lua programming
by Zander Brumbaugh.
Packt Publishing, 2021, ISBN 9781800561991.
- Initiation à la création de jeux vidéo en Lua avec Löve2D
by Anthony Cardinale.
Éditions D-BookeR, 2020, ISBN 9782822709675.
- Lua Quick Reference (second edition)
by Mitchell.
Triple Quasar Books, 2020, ISBN 9780991237951.
- Developing Games on the Raspberry Pi:
App Programming with Lua and LÖVE
by Seth Kenlon.
Apress, 2019, ISBN 9781484241707.
- Lua Programming using Roblox
by SimTek Game Development.
Independently published, 2019, ISBN 9781693427443.
- Introdução à linguagem Lua
by José Augusto N. G. Manzano.
Novatec, 2018, ISBN 9788575226681.
- Lua Quick Start Guide
by Gabor Szauer,
Packt Publishing, 2018, ISBN 9781789343229.
- Creating Solid APIs with Lua
by Tyler Neylon.
O'Reilly Media, 2017, ISBN 9781491986301.
- Le guide de Lua et ses applications - Manuel d'apprentissage (2e édition)
by Pierre Chapuis, Etiene Dalcol, Cyril Doillon, Sylvain Fabre, Philippe Lhoste, Hisham Muhammad, and Patrick Rapin.
Éditions D-BookeR, 2016, ISBN 9782822704076.
- Le guide de Lua et ses applications - Manuel de référence (2e édition)
by Pierre Chapuis, Cyril Doillon, Sylvain Fabre, Philippe Lhoste, and Patrick Rapin.
Éditions D-BookeR, 2016, ISBN 9782822704083.
- Lua Game Development Cookbook
by Mario Kasuba.
Packt Publishing, 2015, ISBN 1849515506.
- ROBLOX Lua: Scripting for Beginners
by Douglas Snipp.
CreateSpace, 2015, ISBN 1508728313.
- Seven More Languages in Seven Weeks: Languages That Are Shaping the Future
by Bruce Tate, Ian Dees, Frederic Daoud, Jack Moffitt.
Pragmatic Bookshelf, 2014, ISBN 1941222153.
- Learning Game AI Programming with Lua
by David Young.
Packt Publishing, 2014, ISBN 1783281332.
- Lua Programming
by Mark Otaris and others, Wikibooks, 2014.
- Introduction to Programming with Lua and the Corona Game Lab
by Robert Cook.
Cook's Books, 2014.
ASIN B00IQGAC8A.
- Create Mobile Games with Corona: Build with Lua on iOS and Android
by Silvia Domenech.
Pragmatic Bookshelf, 2013, ISBN 1937785572.
- CryENGINE Game Programming with C++, C#, and Lua
by Filip Lundgren and Ruan Pearce.
Packt Publishing, 2013, ISBN 1849695903.
- LÖVE for Lua Game Programming
by Darmie Akinlaja.
Packt Publishing, 2013, ISBN 1782161600.
- ComputerCraft: Lua Programming in Minecraft
by Matthew Monk and Simon Monk.
CreateSpace, 2013, ISBN 1481927655.
- Learn Lua for iOS Game Development
by Jayant Varma.
Apress, 2012, ISBN 1430246626.
- Le guide de Lua et ses applications
by Cyril Doillon, Sylvain Fabre, Philippe Lhoste, and Patrick Rapin.
Éditions D-BookeR, 2012, ISBN 9782822700054.
- Lua - Programação de Computadores
by José Augusto N. G. Manzano.
self-published, 2012, ISBN 9788591311576.
- Lua: Einsatz von Lua in Embedded Systems
by Claus Kühnel and Daniel Zwirner.
Skript Verlag Kuehnel, 2012, ISBN 3907857151.
- Basic ROBLOX Lua Programming
by Brandon John LaRouche.
CreateSpace, 2012, ISBN 1475026048.
- Numerical Methods for Nonlinear Engineering Models
by John R. Hauser.
Springer, 2009, ISBN 9781402099199.
- Lua: Einsatz von Lua zur Messwerterfassung
by Claus Kühnel and Daniel Zwirner.
Skript Verlag Kuehnel, 2009, ISBN 3907857127.
- Beginning Lua with World of Warcraft Add-ons
by Paul Emmerich.
Apress, 2009, ISBN 1430223715.
- First Lua Programming, the most popular application development lightweight script!
by Miki Shimizu.
Softbank Creative, 2008, ISBN 4777514137.
- Scripting Language for Game Development and Efficient C/C++ to Implement Embedded Lua
by Makoto Hamanaka.
Softbank Creative, 2008, ISBN 4797348550.
- World of Warcraft Programming
by James Whitehead II, Bryan McLemore, and Matthew Orlando.
Wiley, 2008, ISBN 0470229810.
- Introduction to Lua programming
by Yutaka Ueno.
Softbank Creative, 2007, ISBN 4797342722.
- Beginning Lua Programming
by Kurt Jung and Aaron Brown.
Wrox, 2007, ISBN 0470069171.
- Programming Game AI by Example
by Mat Buckland.
Jones & Bartlett Learning, 2005, ISBN 9781556220784.
- Game Development with Lua
by Paul Schuytema and Mark Manyen.
Charles River Media, 2005, ISBN 1584504048.
- Game Programming with Python, Lua, and Ruby
by Tom Gutschmidt.
Course Technology PTR, 2003, ISBN 1592000770.
|