Lua

Join the Lua Track
Lua is a lightweight scripting language, designed for use within programs. It's popular in gaming, and is a general-purpose language, which can provide a familiar syntax across different applications.
Track mentors

4 Mentors

Our mentors are friendly, experienced Lua developers who will help teach you new techniques and tricks.
Track students

580 Students

Join hundreds of students who have enjoyed learning and improving their skills by taking this track.
Track exercises

80 Exercises

Hundreds of hours have gone into making these exercises fun, useful, and challenging to help you enjoy learning.

About Lua

Lua (pronounced LOO-ah, which means Moon in Portuguese) is a simple yet powerful, lightweight, fast, portable and embeddable scripting language. It is designed, implemented, and maintained by a team at PUC-Rio and is housed at LabLua.

Lua supports procedural, object-oriented, functional, data-driven programming and data description. It combines simple procedural syntax with powerful data description constructs based on associative arrays and extensible semantics. Lua is dynamically typed, runs by interpreting bytecode with a register-based virtual machine and has automatic memory management with incremental garbage collection, making it ideal for configuration, scripting and rapid prototyping.

Lua has been used in many industrial applications with an emphasis on embedded systems and games.

The home page for Lua is Lua.org. Enjoy!

(Taken from https://www.lua.org/about.html)

Join the Lua track
local hello_world = {}

function hello_world.hello()
  return 'Hello, World!'
end

return hello_world

Exercism is a great website

What I like about it is that I am able to solve the challenges in a TDD way working in a environment that I am familiar (my own PC not a browser IDE) and the cherry on the top of the cake is that I have access to code reviews.

Relaxed. Encouraging. Supportive.

Meet the Lua Track mentors

Once you join the Lua language track, you will receive support and feedback from our team of mentors. Here are the bios of a few of the mentors of this track.

Avatar of Robert Curtin

Robert Curtin https://github.com/robertecurtin

Lua is an elegent and practical language. I hope I can help you enjoy it!
Avatar of Ryan Hartlage

Ryan Hartlage https://github.com/ryanplusplus

Lua perfectly embodies the philosophy of 'less is more'. I am smitten.
Avatar of Nick Park

Nick Park https://github.com/nicksypark

I believe Lua is good for the programmer's soul.
Avatar of Andrea Sessa

Andrea Sessa https://github.com/Sessa93

I love Lua for its simplicity and effectivness. I write Lua professionally.
Fun. Challenging. Interesting

Community-sourced Lua exercises

These are a few of the 80 exercises on the Lua track. You can see all the exercises here.

Matrix
easy
arrays
control flow loops
matrices
Space Age
easy
classes
RNA Transcription
easy
control flow loops
strings
transforming
Hamming
easy
control flow loops
strings
Bracket Push
medium
algorithms
control flow if else statements
control flow loops
stacks
strings
Grade School
medium
classes
control flow if else statements
Passionate. Knowledgeable. Creative.

Meet the Lua Track maintainers

The Lua Maintainers are the brains behind the Lua Track. They spend their spare time creating interesting and challenging exercises that we can all learn from. We are incredibly grateful for their hard work. Here are the bios of a few of the maintainers of this track.

Avatar of Ryan Hartlage

Ryan Hartlage

Lua perfectly embodies the philosophy of 'less is more'. I am smitten.

Get started with the Lua track. As with everything on Exercism, it's 100% free!

Join the Lua Track