Luau Goes Open Source!

When Roblox was created 15 years ago, we chose Lua as the scripting language. Lua was small, fast, easy to embed and learn and opened up enormous possibilities for our developers.

A lot in Roblox was built on Lua including hundreds of thousands of lines of internally-developed code that powers Roblox App and Roblox Studio to this day, and the millions of experiences that developers have created. For many of you, it was the first programming language you’ve learned!

A few years ago, we started looking into how we can evolve Lua to be even faster, have better ergonomics, make it easier to write robust code and to unlock an ecosystem of rich tooling—from better static analysis to IDE integrations.

This is how Luau was born.

Luau is a new language that started from Lua 5.1 and kept evolving while keeping backwards compatibility and preserving the original design goals: simplicity, performance, embeddability.

We’re incredibly grateful for the foundation that Lua has been—it’s been a joy to build on top of! So now we want to give back to the community at large.

Starting today, Luau (https://luau-lang.org) is no longer an inseparable part of the Roblox platform; it’s a separate, open-source language.

Luau is available at https://github.com/Roblox/luau and comes with the source code for the language runtime and all associated tooling: compiler, type checker, linter. The code is available to anyone, free of charge, under the terms of MIT License. We’re happy to accept contributions to the language, whether that’s documentation or source code.

The language evolution is driven by an RFC process that is also open to the public.

We are committed to improving Luau going forward—it remains a central piece of technology at Roblox. The team that works on the language keeps growing, and we have lots of ideas! The language will become even faster, even nicer to work with, even more powerful.

We can’t wait to see what we can build, together.

686 Likes

This topic was automatically opened after 10 minutes.

This is awesome! I’m so excited to see how the community can contribute to Luau in the future (and it’s even under the MIT license!)

I’m not skilled enough in C++ to be making any contributions to the majority of the source, but I’m excited to look through some of the other languages present in the repo.

57 Likes

Wow, I didn’t expect this to come this year. This is so amazing honestly!
Thank you for making it open-sourced!! :heart:

I wonder if we can now run code outside of Roblox Studio (Roblox Lua code). Possibly not because the services require the engine to operate.

Welp, time to see the source code and totally not steal some snippets for my programming language

Source code is readable, thank god

33 Likes

amazing! as a C++ programmer, I think it will be great for the community to understand how the language works

16 Likes

This is possible - Luau and the Roblox API are separate.

19 Likes

Wouldn’t this make exploits a lot easier / better?

22 Likes

This is amazing"! it’s gonna help so much developers to actually understand how the language itself works and for sure will allow for incredible creations!

12 Likes

This is absolutely phenomal! So incredibly exciting to see how this is adopted by the opensource ecosystem! Great work!

9 Likes

sick, does this mean i slap this into IDE for offline development then? o_O

12 Likes

SOUND THE ALARMS
ITS HAPPENING!

Time to quickly recap my knowledge on C++ because you already know all hell is breaking loose.

30 Likes

This post comes right after I spent forever trying to set up my repository’s CI to download Roblox Studio, log into a throwaway acount using a ROBLOSECURITY cookie, build via rojo, and run via roblox studio in order to run some unit tests…
… and even then I couldn’t actually detect script analysis warnings.

What a godsend!

15 Likes

Not really - exploits run their own separate environment anyway which has about the same parity to Roblox’s environment (with some naughty things added on top!). Closed source isn’t a reliable way to prevent cheating; the entire field of reverse engineering thrives on picking those types of projects apart.

21 Likes

Yeah I made few functions of luau in C++ and I find this pretty fun

7 Likes

It will not have any effect on exploits. This is the Luau language being open-sourced, not the Roblox engine itself.

12 Likes

I can’t wait to see how this simplifies CI/CD thanks to this.

5 Likes

Amazing! I’ve been waiting for this for a long time. Reading the source code could help me learn more about how the compiler and interpreter works, and see what and how Luau optimizes code.

5 Likes

doesn’t luau being open source make it easier to exploit?

but thanks for releasing it :wink:

4 Likes

Absolutely incredible! Very excited to see where things go with this.
Would love to contribute, and very excited to get to use luau for standalone projects!

11 Likes

You don’t know the joy this brought to my day! In the middle of a drowsy class… And stumbling across this, I haven’t even finished reading, and my brain is already filled with Dopamine! Very exciting! Always happy to see large changes!

8 Likes