Roblox Wiki
Roblox Wiki

Luau is an open-source dialect of Lua used by Roblox as a scripting language. The source code of the language is available under the Expat license. Luau introduces gradual typing support and performance optimizations to Lua, and also aims for backward compatibility with Lua 5.1.


On August 27, 2019, Roblox would switch its scripting language to Luau.[1]

Since November 3, 2021, Luau is open source and the RFC process used to approve user-facing changes to the language and its core libraries is open to the public.[2]

Type checking[]

Luau supports gradual typing, which allows type checking for scripts. Type checking is on by default (--!nonstrict). Adding the comment --!strict in a script's source code enables full type checking, while the comment --!nocheck disables type checking completely for that script. Roblox supports classes and data types for type checking as well as module interactions.[3]

Native code generation[]

Besides bytecode, Luau can compile scripts with --!native into native code. Native code generation was announced on August 31, 2023 as a studio beta feature.[4]


  1. Kapoulkine, Arseny (2019, August 27). "Faster Lua VM Released". From DevForum. Accessed February 10, 2023. Archived from the original on December 17, 2022.
  2. (n.d.) . Luau Goes Open-Source. Accessed November 3, 2021. Archived from the original on November 3, 2021.
  3. (n.d.) . Type checking. Accessed February 10, 2023. Archived from the original on January 30, 2023.

External links[]