Commit graph

1027 commits

Author SHA1 Message Date
Alan Jeffrey
7c7eb800f5
Add a position paper about the goals of Luau (#55)
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>
2021-07-20 13:41:04 -05:00
vegorov-rbx
01d9f8daf9
Luau Recap: June 2021 (#53)
* 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>
2021-07-07 19:45:01 +03:00
Arseny Kapoulkine
bf17b6447a
Update lint.md (#52)
* Update lint.md

Add documentation for DeprecatedApi (live) and TableOperations (ships on July 7th)

* Update lint.md

Shorten line a bit
2021-07-06 09:06:51 -07:00
Arseny Kapoulkine
7e71295c27
RFC: Deprecate getfenv/setfenv (#51) 2021-06-24 23:02:57 -07:00
vegorov-rbx
9a4487f3e9
RFC: nil-forgiving operator (#48)
Co-authored-by: Alexander McCord <11488393+alexmccord@users.noreply.github.com>
2021-06-23 12:58:00 -07:00
Arseny Kapoulkine
c8af786b10
Update compatibility.md
We decided that we can't enforce strict limits for insert/remove based on analysis of Roblox games
2021-06-15 19:05:27 -07:00
Arseny Kapoulkine
b439c9fcdc
Update performance.md
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.
2021-06-14 18:54:47 -07:00
Arseny Kapoulkine
40a175499e
Update performance.md
Remove outdated statement about table["field"] since we optimize it now the same way as table.field.
2021-06-14 10:53:26 -07:00
Arseny Kapoulkine
0fdf8824f1
Update performance.md (#50)
Add a section about vectors and libraries
2021-06-11 14:10:55 -07:00
Arseny Kapoulkine
50c22abae0
Update syntax.md (#46)
Add documentation for named arguments in function types.
2021-06-02 13:19:46 -07:00
Arseny Kapoulkine
b20601af89
Update lint.md (#44)
Update FunctionUnused and ImportUnused following internal changes that make it possible to suppress the warning using _
2021-06-02 12:49:35 -07:00
Arseny Kapoulkine
b490373454
Update syntax.md (#45)
Add information about type ascription syntax
2021-06-02 12:14:24 -07:00
vegorov-rbx
2a29ba1538
Update 2021-05-31-luau-recap-may-2021.md 2021-06-02 19:50:57 +03:00
vegorov-rbx
5c7a981866
Luau Recap: May 2021 (#42)
* 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>
2021-06-02 13:19:15 +03:00
Arseny Kapoulkine
e8a58ea42f
Update if-expr RFC with mid-block return interaction (#43)
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)
2021-06-01 15:45:43 -07:00
vegorov-rbx
7ab5a3a2db
Mark 'Named Function Type Arguments' status as implemented (#41) 2021-05-31 21:07:37 +03:00
Lily Brown
43d606fad4
RFC: Sealed table subtyping (#38) 2021-05-31 10:39:09 -07:00
Arseny Kapoulkine
fff104b439
Rename linting pass to match internal changes
The name is cleaner and more correct
2021-05-30 11:55:52 -07:00
Andy Friesen
fc4cfede58
Document how to actually use an exported type from another module. (#40) 2021-05-28 10:31:47 -07:00
Alexander McCord
cc399fa98d
RFC: Singleton types (#37)
Co-authored-by: Arseny Kapoulkine <arseny.kapoulkine@gmail.com>
2021-05-28 09:13:44 -07:00
Arseny Kapoulkine
b2b0c33b5e Update CNAME 2021-05-27 19:00:09 -07:00
Arseny Kapoulkine
a4fe638b17 Create CNAME 2021-05-27 18:52:43 -07:00
Arseny Kapoulkine
d6ca8b2ce3 Delete CNAME 2021-05-27 18:33:38 -07:00
Arseny Kapoulkine
d3b551e266 Create CNAME 2021-05-27 18:32:05 -07:00
Arseny Kapoulkine
d40107dc60
Add RFC status fields (#39)
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.
2021-05-17 18:19:49 -07:00
Alexander McCord
8956c7448e
RFC: Allow method call on string literals (#34) 2021-05-17 16:41:55 -07:00
vegorov-rbx
0f1f6609b1
RFC: Named Function Type Arguments (#36)
Introduces syntax for optional names of function type arguments.
2021-05-13 09:02:51 -07:00
Alan Jeffrey
674846e7cf
Generic Functions RFC (#33)
* Added generic functions RFC

Co-authored-by: Tiffany Bennett <tiffany@tiffnix.com>
2021-05-12 10:48:10 -05:00
Arseny Kapoulkine
8091a330f5
Update TEMPLATE.md
Change the title to use expected Title case.
2021-05-06 19:29:16 -07:00
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
Arseny Kapoulkine
cbc99c3222
Update syntax.md
Fix typo: `nunber` -> `number`

Fixes #35.
2021-05-04 18:57:48 -07:00
Arseny Kapoulkine
26be211e5d
Update README.md
Emphasize the rfc label even more.
2021-05-04 16:23:45 -07:00
Arseny Kapoulkine
a6844a8247 Add emphasis to use of label. 2021-05-04 00:31:30 -07:00
Arseny Kapoulkine
ba2138ce10
Add more accepted RFCs. (#32)
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.
2021-05-04 00:13:57 -07:00
Arseny Kapoulkine
e2176e35e1
Establish an RFC process (#29)
This is going to apply to language and core library changes and will supplant the internal Roblox API proposal process for Luau only.
2021-05-03 18:52:43 -07:00
vegorov-rbx
b8627707c4
Luau Recap April 2021 (#28)
* 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>
2021-05-03 23:05:05 +03:00
Arseny Kapoulkine
93fb768a64
Update compatibility.md
Add a note about os.time
2021-04-26 14:13:20 -07:00
Arseny Kapoulkine
258966863c
Update compatibility.md (#27)
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)
2021-04-21 10:42:27 -07:00
Andy Friesen
bf63d29c9a
Document the duplicate function lint (#26) 2021-04-14 14:29:28 -07:00
canada
149e687d73
Add missing bracket (#25) 2021-04-12 08:44:43 -07:00
Arseny Kapoulkine
51758557e6
Update performance.md
Correct performance note re: table.insert after a recent update.

Fixes #23.
2021-04-02 22:37:23 -07:00
Arseny Kapoulkine
094d5a0e09
Update 2021-03-29-luau-recap-march-2021.md 2021-03-31 20:13:19 -07:00
Arseny Kapoulkine
8d712c47b6
Update typecheck.md 2021-03-31 20:12:43 -07:00
Andy Friesen
2d641976ee
Clip references to Array<T> (#21)
Co-authored-by: Arseny Kapoulkine <arseny.kapoulkine@gmail.com>
2021-03-31 14:24:44 -07:00
Alan Jeffrey
0ab29a02e2
Add Atom feed (#22) 2021-03-31 14:24:26 -07:00
Alan Jeffrey
0b6977554b
Added section on generic functions (#20) 2021-03-31 12:53:21 -07:00
Alan Jeffrey
73b34e15c0
Luau Recap March 2021 (#19)
Co-authored-by: Arseny Kapoulkine <arseny.kapoulkine@gmail.com>
2021-03-30 16:45:51 -07:00
ccuser44
e051e33482
Removed incorrect info (#14)
* 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>
2021-03-30 15:54:58 -07:00
Max
ed845e6924
Less ambiguity to what 'SECRET TOOL' is? (#18)
Remove information about internal tooling altogether

Co-authored-by: Arseny Kapoulkine <arseny.kapoulkine@gmail.com>
2021-03-30 15:53:31 -07:00
Lily Brown
a124f53628
Document variadic types (#17) 2021-03-26 16:07:34 -07:00