A modern systems programming language with manual memory control and compile-time safety
Compiler • Discord • Documentation
Luma is a low-level compiled programming language designed to rival C and C++ in performance while providing modern safety guarantees through static analysis. It combines:
- 🚀 Blazing fast compilation — 50ms builds for complete applications
- ⚡ C-level performance — Zero runtime overhead, 24KB binaries
- 🔒 Compile-time safety — Memory verification without borrow checkers or lifetimes
- 🎯 Explicit control — Manual memory management with ownership annotations
Unlike Rust: No lifetimes, no borrow checker
Unlike C/C++: Memory safety verified at compile time
Unlike Go: No garbage collector, true systems-level control
@module "main"
@use "memory" as mem
pub const main -> fn() int {
let buf = mem::calloc(128, 1);
defer { free(buf); } // Verified safe at compile time
output("Hello from Luma!\n");
return 0;
}
| Metric | Luma | Rust | C/C++ |
|---|---|---|---|
| Compile Time | 51ms | 3-5s | 300ms |
| Binary Size | 24KB | 150-400KB | 40-80KB |
| Runtime | None | None | None |
| Safety | Compile-time | Compile-time | Manual |
This organization houses the complete Luma ecosystem:
- luma — The Luma compiler and language specification
- luma-std (coming soon) — Standard library (math, memory, strings, I/O)
- luma-docs (coming soon) — Official documentation and tutorials
- luma-vscode (coming soon) — VS Code extension with syntax highlighting and LSP
- luma-lsp (coming soon) — Language Server Protocol implementation
- luma-fmt (coming soon) — Code formatter
- luma-examples (coming soon) — Sample projects and tutorials
- awesome-luma (coming soon) — Curated list of Luma resources
See the main compiler repository for detailed installation instructions.
Requirements:
- LLVM 20.0+
- GCC
- Make
# Write your first Luma program
echo '@module "main"
pub const main -> fn() int {
output("Hello, Luma!\n");
return 0;
}' > hello.lx
# Compile and run
luma hello.lx -name hello
./hello- 📖 Language Guide — Complete language overview
- 🎓 Examples — Real-world code samples
- 📚 API Docs — Architecture and internals
- 💬 Discord Community — Get help and share projects
Luma is in early development and we welcome contributors!
Ways to contribute:
- 🐛 Report bugs or suggest features in the main repository
- 📝 Improve documentation and examples
- 🔧 Build tools and editor plugins
- 💻 Contribute to the compiler or standard library
- 🌟 Share your Luma projects with the community
See our contribution guidelines to get started.
Current Phase: Early Development
The language core is functional with:
- ✅ Complete lexer, parser, and type system
- ✅ Static memory analysis with ownership tracking
- ✅ LLVM backend for native code generation
- ✅ Working standard library
- ✅ Real-world applications (3D graphics, systems tools)
Check the project roadmap to see what's being worked on.
- Discord: Join our server
- GitHub: luma-lang
- Discussions: GitHub Discussions
Projects in this organization are licensed under their respective licenses. See individual repositories for details.
Built with ❤️ by the Luma community
