A fast, small, safe, gradually typed embeddable scripting language derived from Lua
Go to file
Arseny Kapoulkine fb67f5760c
Delete assert-return RFC
(this analysis should have been done before the RFC but the thought never crossed my mind)

There's 63K assertions in all luarocks repositories combined. Out of this, around ~600 assertions would be broken as a result of this change. This is ~1% which is pretty uncomfortable (I was hoping for a couple of odd unit tests) - as such this RFC is going to get closed. We will maintain the current behavior of assert and try to adapt type checker to be reasonably useful instead.

The common thread between all of these cases (many of them target custom APIs although some target core APIs like string.match) is that assert is used together with a function that either returns nil (for errors), or multiple arguments. Under these conditions multi-arg assert is useful.

A couple examples:

```
out_r, out_w = assert(unix.pipe())
local header, body = assert(data:match "(.-\r\n)\r\n(.*)")
local z85_secret_key, z85_public_key = assert(zmq.curve_keypair())
local _, r = assert(coroutine.resume(co, msg))
```
2021-05-04 22:15:14 -07:00
docs Update syntax.md 2021-05-04 18:57:48 -07:00
rfcs Delete assert-return RFC 2021-05-04 22:15:14 -07:00
.gitignore Added News section (#12) 2021-03-02 12:45:21 -08:00
README.md Change to minimal-mistakes theme (#11) 2021-02-12 12:26:08 -08:00

Luau

Luau is a fast, small, safe, gradually typed embeddable scripting language derived from Lua. It is used by Roblox game developers to write game code, as well as by Roblox engineers to implement large parts of the user-facing application code as well as portions of the editor (Roblox Studio) as plugins.

This repository hosts documentation for the language as well as satellite materials, and can be viewed at https://roblox.github.io/luau/