Want to learn and master Lua?

Join Exercism’s Lua Track for access to 100 exercises grouped into 3 Lua Concepts, with automatic analysis of your code and personal mentoring, all 100% free.

Explore concepts

About Lua

local hello_world = {}

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

return hello_world

Key Features of Lua



Lua is used in embedded systems, for prototyping, scripting, game, web and backend development.


Lua can be used for scripting, imperative or functional programming.

Fast and lightweight

Lua is one of the fastest interpreted dynamic languages. Its compiler and interpreter fit in 300K.


Lua has a simple, yet powerful syntax that is easy to learn and master.

Cross plattform

Lua is completley written in ANSI C and therefore builds on any platform with an ANSI C compiler.

Easy to embed and extend

Lua offers a small and flexible C API that makes it easy to embed or extend with C modules.

A taste of the concepts you'll cover

See all the concepts for Lua

Get mentored the Lua way

Every language has its own way of doing things. Lua is no different. Our mentors will help you learn to think like a Lua developer and how to write idiomatic code in Lua. Once you've solved an exercise, submit it to our volunteer team, and they'll give you hints, ideas, and feedback on how to make it feel more like what you'd normally see in Lua - they'll help you discover the things you don't know that you don't know.

Learn more about mentoring

Community-sourced Lua exercises

The Lua track on Exercism has 3 concepts and 100 exercises to help you write better code. Discover new exercises as you progress and get engrossed in learning new concepts and improving the way you currently write.

See all Lua exercises

Get started with the Lua track

The best part, it’s 100% free for everyone.