Added a position paper on Luau for submission to HATRA 2021
Co-authored-by: Lily Brown <lbrown@roblox.com>
Co-authored-by: Andy Friesen <afriesen@roblox.com>
* Template for the June post
* June post is ready
* Fixed post date
* Added a few examples
* Add another equality operator
* Update docs/_posts/2021-06-30-luau-recap-june-2021.md
Co-authored-by: Arseny Kapoulkine <arseny.kapoulkine@gmail.com>
* Note the limitation of current constraint resolver
Co-authored-by: Arseny Kapoulkine <arseny.kapoulkine@gmail.com>
Restore the original sentence with tweaks; this seems like better wording since it highlights the importance of knowing the field name at compile time, no matter the notation.
* Added May 2021 recap post
* Added missing items and fixed confusing function declaration example
* Apply suggestions from code review
Co-authored-by: Arseny Kapoulkine <arseny.kapoulkine@gmail.com>
* Small fix
Co-authored-by: Arseny Kapoulkine <arseny.kapoulkine@gmail.com>
We don't have mid-block return support yet and it's not clear if we will due to similar grammatical issues with this wrt function calls, but noting this for completeness (thanks @alexmccord for bringing this up)
It seems more consistent and unambiguous if we mark RFCs as being
implemented when the implementation lands instead of expecting to
cross-reference documentation. That also makes it easier for us to flag
stale RFCs.
(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))
```
This finishes the set of fully baked/accepted RFCs; 3 more proposals have been accepted but not implemented yet and will be submitted separately as actual RFCs.
* Base for the April post
* Finished April 2021 recap post
* Removed features that are not enabled yet (bye, type-checking section)
* Update docs/_posts/2021-04-30-luau-recap-april-2021.md
Co-authored-by: Arseny Kapoulkine <arseny.kapoulkine@gmail.com>
* Update docs/_posts/2021-04-30-luau-recap-april-2021.md
Co-authored-by: Arseny Kapoulkine <arseny.kapoulkine@gmail.com>
* Update docs/_posts/2021-04-30-luau-recap-april-2021.md
Co-authored-by: Arseny Kapoulkine <arseny.kapoulkine@gmail.com>
* Added 'Coming Soon' for type refinements
Co-authored-by: Arseny Kapoulkine <arseny.kapoulkine@gmail.com>
Call out the upcoming change to `print` and slightly reword a couple of rows. Also add a list of differences from 5.x that was previously requested (the list is likely incomplete)
* Removed incorrect info
The manual says Luau does not support hexadecimal \0x, Unicode \u and \z
when this clearly isn't the case.
This is also quite confusing as just a bit below it says it does support them.
Co-authored-by: Arseny Kapoulkine <arseny.kapoulkine@gmail.com>