About
Luma is a small, friendly programming language designed to make code feel approachable, readable, and easy to reason about. Its goal is to offer a gentle place to learn and practice core programming concepts - values, types, functions, collections - without having to fight complex syntax or heavy tooling. Luma keeps the language surface intentionally compact, so you can keep most of it in your head while you experiment.
At the same time, Luma is not just a toy. Programs compile down to Go, a modern, high-performance, statically typed language used widely in production systems. This means the small examples you write while learning can grow into real tools and utilities, benefiting from Go’s speed, reliability, and mature ecosystem. Luma’s design is guided by the idea that a language can be both welcoming to newcomers and practical for building useful software.
The Luma project is also about documentation and teaching. The language, examples, and “gotchas” are documented together, so that you don’t just see what’s possible - you see where things can go wrong and how to fix them. Our aim is to make it pleasant to read through the docs, copy a snippet, tweak it, and gradually build your own understanding of how programs work.
Credits
Luma stands on the shoulders of many tools and ideas:
- Go - the open-source, statically typed, compiled language that Luma targets, valued for its simplicity, speed, and strong standard library.
And, of course, the wider open-source community, whose tools, discussions, and experiments continue to shape how Luma evolves.