Commit Graph

232 Commits

Author SHA1 Message Date
Arseny Kapoulkine febebde72a
Update performance.md (#948)
We haven't updated this document in a while and yet there was a fair
amount of performance work, some of which can be documented here.

Note that this is not fully comprehensive in that it excludes a lot of
internal tuning that is difficult to describe other than with "we made
things faster".
2023-06-06 15:11:29 -07:00
Ben Mactavsin e78897229a
Fix website demo's string highlighting behaviour (#942)
Fixes #935:
* String literals that include `\z` escape sequence followed by newline
characters are now correctly highlighted.
* Unescaped backslash (`\`) character at the end of the line no longer
acts like the `\z` escape sequence inside string literals when
highlighting.
2023-06-06 11:22:31 -07:00
Ben Mactavsin 4f82a77396
Update lint.md to specify language on fenced code blocks which have none (#946)
Specified language on the last two fenced code blocks in the page as
they were inconsistent with the others on the same page.
2023-06-06 08:57:36 -07:00
JohnnyMorganz 5891de6724
Fix grammar issues (#915)
- The type list for function declarations does not accept defaults, but
the grammar incorrectly allowed this.
- Allow the empty table type `{}`
- Allow composite types and types surrounded by parentheses (e.g.
`string??`, `(string)`, `(string | number) & boolean`)

---------

Co-authored-by: vegorov-rbx <75688451+vegorov-rbx@users.noreply.github.com>
2023-05-04 05:39:18 -07:00
JohnnyMorganz 8173491d86
Update grammar.md (#909)
Fix issues mentioned in https://github.com/Roblox/luau/issues/908
2023-04-24 14:21:26 -05:00
vegorov-rbx d148d7d574
Luau Recap: March 2023 (#886) 2023-03-31 11:52:31 -07:00
Arseny Kapoulkine a4b31f940a
Update compatibility.md
Remove weak opposition to `//` operator as we decided to merge the RFC to support it.
2023-03-20 11:09:58 -07:00
Arseny Kapoulkine aef99ae0d4
docs: Add deprecation notice to getn/foreach/foreachi (#849)
RFC:
https://github.com/Roblox/luau/blob/master/rfcs/deprecate-table-getn-foreach.md
2023-02-27 12:30:23 -08:00
vegorov-rbx c5555c6573
News about string interpolation feature and a syntax page update (#829)
News can be viewed
[here](https://vegorov-rbx.github.io/luau/2023/02/02/luau-string-interpolation.html)
And syntax can be viewed
[here](https://vegorov-rbx.github.io/luau/syntax#string-interpolation)

Note that link appears to be broken in the news section. It goes to
`https://vegorov-rbx.github.io/syntax#string-interpolation` instead of
`https://vegorov-rbx.github.io/luau/syntax#string-interpolation`
The link I use in the source is `/syntax#string-interpolation` but the
root 'offset' is different on Luau website (doesn't have extra 'luau'
folder) and on my GitHub pages.
Hope this is ok. But if GitHub page masters know how to avoid this,
please let me know.

---------

Co-authored-by: Alan Jeffrey <403333+asajeffrey@users.noreply.github.com>
Co-authored-by: Alexander McCord <11488393+alexmccord@users.noreply.github.com>
2023-02-03 11:41:13 -08:00
vegorov-rbx 4e6ae32625
Luau Recap: November 2022 (#764)
Co-authored-by: Andy Friesen <andy.friesen@gmail.com>
2022-12-02 10:23:20 -08:00
Arseny Kapoulkine 0f04d521e6
Add "Luau origins and evolution" post (#737) 2022-11-04 15:26:37 -07:00
Alan Jeffrey e43a9e927c
Added Sep-Oct 2022 Luau Recap (#726) 2022-11-01 12:02:03 -05:00
Alan Jeffrey 662a5532ec
Minor fixes to the semantic subtyping blog post (#720) 2022-10-19 20:32:29 -05:00
Alan Jeffrey ae5a011465
Add a blog post about semantic subtyping (#700)
Co-authored-by: Alexander McCord <11488393+alexmccord@users.noreply.github.com>
2022-10-18 16:56:15 -05:00
Alexander McCord 5414cddb27
Add `unknown` and `never` to typecheck.md (#682)
Co-authored-by: Arseny Kapoulkine <arseny.kapoulkine@gmail.com>
2022-09-26 14:18:04 -07:00
Arseny Kapoulkine a7f8c1045c
Update library.md
Fix Markdown formatting
2022-09-24 09:09:02 -07:00
Alexander McCord b2e357da30
Update title and fix a dead link. (#659)
Originally it was titled "Luau Recap: August 2022" but it got renamed to "Luau Recap: July & August 2022" and we just didn't fix the link here too. Also backports the title change to here too for consistency.
2022-09-04 13:05:25 -07:00
Alexander McCord 42c24f98d9
July and August recap (#654)
Co-authored-by: vegorov-rbx <75688451+vegorov-rbx@users.noreply.github.com>
Co-authored-by: Arseny Kapoulkine <arseny.kapoulkine@gmail.com>
2022-08-31 10:46:06 -07:00
boyned//Kampfkarren da9d8e8c60
String interpolation (#614)
Implements the string interpolation RFC (#165).

Adds the string interpolation as per the RFC.

```lua
local name = "world"
print(`Hello {name}!`) -- Hello world!
```

Co-authored-by: Arseny Kapoulkine <arseny.kapoulkine@gmail.com>
Co-authored-by: Alexander McCord <11488393+alexmccord@users.noreply.github.com>
2022-08-24 12:01:00 -07:00
Arseny Kapoulkine cd26f88d56
Update compatibility.md
Add NaN keys from Lua 5.2
2022-08-12 09:10:42 -07:00
Mactavsin b7d126bf99
Fix lint.md formatting (#637)
This pull requests fixes a mistake in lint.md file that causes incorrect formatting of the text:
2022-08-12 07:14:38 -07:00
Arseny Kapoulkine 2c40b7661c
Update lint.md (#634)
Add documentation for IntegerParsing and ComparisonPrecedence lints
2022-08-11 08:42:31 -07:00
Arseny Kapoulkine 12c5502027
Update performance.md
Update compiler performance metrics to account for O2 and expanding internal codebase
2022-07-22 10:35:03 -07:00
Arseny Kapoulkine 9be7f85be7
Update performance.md (#608)
Mention constant folding for builtins and remove the note about possibly doing inlining in the future because we do do it now!
2022-07-22 07:53:16 -07:00
Matthew Emery 96316c66dc
Documentation of round tie-breaking (#602)
* Update library.md

* Tie-breaking documentation for round
2022-07-18 12:36:23 -07:00
Andy Friesen a934f742d8
June recap (#583) 2022-07-11 13:21:23 -07:00
Anaminus 6ad8239e32
Improve description of bit32.extract/replace. (#585)
Fix description incorrectly saying that parameter w specifies an upper range. w is actually a width. Proof:

    print(bit32.extract(2^32-1, 3, 4)) -- prints 15, not 1.

Also indicate that the position is 0-based, and that the function will error if the selected range exceeds the allowed bounds.
2022-07-08 10:06:25 -07:00
Alan Jeffrey a7ae439b0f
Document new table type features (#567) 2022-07-05 16:25:09 -05:00
Arseny Kapoulkine 6467c855e8
Update compatibility.md (#566)
Update `__len` metamethod (pending the code change that implements this)
2022-06-30 17:07:56 -07:00
natteko fc763650d3
Fix broken link in typecheck.md (#568)
Current link redirects to 
https://luau-lang.org/typecheck#Roblox-types (notice the fragment) 
which is effectively the same as https://luau-lang.org/typecheck
What the link *wants* to redirect to is 
https://luau-lang.org/typecheck#roblox-types (notice the change in fragment) 
which is the Roblox types segment of the document
2022-06-30 15:14:49 -07:00
Arseny Kapoulkine ee82f1e997
Update sandbox.md
Since we don't have a formal proof, clarify that we don't have known bugs.
2022-06-28 23:13:13 -07:00
Arseny Kapoulkine 13e50a9cac
Update library.md (#564)
Clarify behavior of shifts for out of range values.
2022-06-27 09:05:50 -07:00
Arseny Kapoulkine e91d80ee25
Update compatibility.md (#559) 2022-06-23 18:56:19 -07:00
Arseny Kapoulkine ca32d1bf9d
Update library.md (#555)
Fix string.match and string.find type definitions
2022-06-22 09:27:05 -07:00
Arseny Kapoulkine ce9f4e23ae
Update performance.md (#553)
Document function inlining and loop unrolling.
2022-06-21 13:14:30 -07:00
vegorov-rbx edd071f99a
Luau Recap: May 2022 (#513)
* Recap is ready

* Change the intro format so it shows up in the news section snippet

* Fixed line breaks that were implied

* Update docs/_posts/2022-06-01-luau-recap-may-2022.md

Co-authored-by: Arseny Kapoulkine <arseny.kapoulkine@gmail.com>

* Drop Autocomplete improvements and extend compiler optimization section

In the cross-post to Roblox developer forum, Autocomplete section will be restored, while compiler optimization section can be optionally removed (although it might interest some developers)

* One more optimization

* Update docs/_posts/2022-06-01-luau-recap-may-2022.md

Co-authored-by: dcope-rbx <91100513+dcope-rbx@users.noreply.github.com>

Co-authored-by: Arseny Kapoulkine <arseny.kapoulkine@gmail.com>
Co-authored-by: dcope-rbx <91100513+dcope-rbx@users.noreply.github.com>
2022-06-01 16:27:42 -07:00
Arseny Kapoulkine 10ed02470c
Update compatibility.md
Add a note on light C functions that Lua 5.2 added; suggested by #512.
2022-06-01 14:19:17 -04:00
Arseny Kapoulkine 70ff6b4347
Update performance.md (#494)
Add a section on table length optimizations and reword the table iteration section a bit to account for generalized iteration.
2022-05-20 13:00:53 -07:00
Arseny Kapoulkine f3f231ea6b
Update compatibility.md
Update `__pairs` note with `__iter`, change `__len` to unsure as with `__iter` lack of `__len` on tables is the only issue preventing complete user created containers.
2022-05-09 18:38:10 -07:00
Arseny Kapoulkine be0b7d07e2
Update sandbox.md
Replace debug.getinfo with debug.info
2022-05-09 18:34:31 -07:00
Arseny Kapoulkine 7935f9f8b6
Update sandbox.md
Reword the GC docs to avoid back-referencing the thread identity mechanism, since it's entirely Roblox-side and isn't fully documented here anymore.
2022-05-09 18:33:53 -07:00
Arseny Kapoulkine 72d8d44343
Add documentation for generalized iteration (#475) 2022-05-05 17:05:57 -07:00
phoebe 57016582a7
fix feed link (#476) 2022-05-05 14:37:27 -07:00
Alexander McCord 47a8d28aa9
Fix a typo in recap. (#472) 2022-05-03 16:12:59 -07:00
Andy Friesen 9bc71c4b13
April 2022 recap (#470) 2022-05-03 15:29:01 -07:00
Alexander McCord ffff25a9e5
Improve the UX of reading tagged unions a smidge. (#449)
The page is a little narrow, and having to scroll on this horizontally isn't too nice. This fixes the UX for this specific part.
2022-04-07 09:16:44 -07:00
Alan Jeffrey dc32a3253e
Add short example of width subtyping (#444) 2022-03-31 18:44:41 -05:00
Alexander McCord ba60730e0f
Add documentation on singleton types and tagged unions to typecheck.md. (#440)
Update the typecheck.md page to talk about singleton types and their uses, tagged unions.

As a driveby, improve the documentation on type refinements. And delete the unknown symbols part, this is really dated.

* Update docs/_pages/typecheck.md to fix a typo

Co-authored-by: Arseny Kapoulkine <arseny.kapoulkine@gmail.com>
2022-03-31 11:54:06 -07:00
Alan Jeffrey 06bbfd90b5
Fix code sample in March 2022 Recap (#442) 2022-03-31 09:31:06 -05:00
Alan Jeffrey f3ea2f96f7
Recap March 2022 (#439)
* March Recap

Co-authored-by: Arseny Kapoulkine <arseny.kapoulkine@gmail.com>
2022-03-30 18:38:55 -05:00
Arseny Kapoulkine 2335b26ffc
Update library.md
Add documentation for table.clone
2022-03-24 09:31:18 -07:00
Arseny Kapoulkine fe71aff7af
Update library.md 2022-03-14 10:30:49 -07:00
vegorov-rbx d277cc2c3b
Luau Recap: February 2022 (#403)
* Luau Recap: February 2022

* Rebuild pages

* Fixed Markdown linter warnings, converted tabs to spaces and added a note on 'select' optimization

* Apply suggestions from code review

Co-authored-by: Alexander McCord <11488393+alexmccord@users.noreply.github.com>

* Added information about new lint

* Update docs/_posts/2022-02-28-luau-recap-february-2022.md

Co-authored-by: Alexander McCord <11488393+alexmccord@users.noreply.github.com>

Co-authored-by: Alexander McCord <11488393+alexmccord@users.noreply.github.com>
2022-03-02 06:27:35 -08:00
James Napora 1334db600f
Update grammar.md (#379) 2022-02-22 11:24:15 -08:00
Arseny Kapoulkine 6aaaafcc8d
Add documentation for upcoming CommentDirective lint (#361) 2022-02-17 16:58:43 -08:00
Arseny Kapoulkine aecd60371b
Update performance.md (#355)
Document weak table shrinking and paged sweeper
2022-02-11 09:13:27 -08:00
Arseny Kapoulkine abe3f87b48
docs: Add documentation for upcoming MisleadingAndOr lint (#349)
This is going to be part of Luau 0.514
2022-02-09 09:27:01 -08:00
Arseny Kapoulkine ec481695a3
Update library.md (#352)
Clarify the relationship between `typeof` and `newproxy`. As a sandboxing measure, `typeof` only uses `__type` on host-defined userdata.

Fixes #351.
2022-02-09 09:19:50 -08:00
Andy Friesen c572f6944f
January 2022 recap (#331) 2022-02-01 14:49:55 -08:00
JohnnyMorganz 4e5ff99582
Improve Grammar documentation (#315) 2022-01-20 08:27:19 -08:00
dcope-rbx 49ce5096a4
Fixed a couple spelling mistakes in markdown files. (#316) 2022-01-17 09:44:31 -08:00
Halalaluyafail3 497d625f73
Fix some mistakes in the documentation (#314) 2022-01-14 13:42:49 -08:00
Arseny Kapoulkine b2af550b08
Update grammar.md
Add forgotten quotes around 'type'; reported by @Dionysusnu
2022-01-13 15:23:18 -08:00
Arseny Kapoulkine d6ba106be6
Update compatibility.md
Add a note about function identity
2022-01-12 11:56:46 -08:00
T 'Filtered' C abf9fc2754
Update compatibility.md to split coroutine.close from lua_resetthread (#309)
Co-authored-by: Arseny Kapoulkine <arseny.kapoulkine@gmail.com>
2022-01-12 11:50:25 -08:00
Arseny Kapoulkine b7a7b92d12
Update syntax.md
Remove confusing block because it reads as if we *do* support this syntax if you aren't reading carefully.
2022-01-11 13:24:56 -08:00
Arseny Kapoulkine 73b7bcb2da
docs: Move Luau.Web.js fetch to the end of the page
This was moved in the CodeMirror change, but that may break Module setup in the embedded <script> block, so move it back.
2022-01-04 15:04:25 -08:00
Arseny Kapoulkine fa35884e5b
Update library.md
A few small tweaks and fixes.
2021-12-27 13:08:56 -08:00
Arseny Kapoulkine 6203bf6ac5
Update grammar.md
Remove TOC & mark page as wide.
2021-12-27 12:51:23 -08:00
Arseny Kapoulkine 65177c425c
Update grammar.md
This changes the grammar to follow the EBNF rules more rigorously, most significantly quoting all keywords.
2021-12-27 12:48:58 -08:00
Arseny Kapoulkine d079201a6e Fix repeated calls to print() clearing output 2021-12-20 15:44:51 -08:00
Arseny Kapoulkine fedd9a5f78 docs: Fix label syntax 2021-12-20 15:40:38 -08:00
Arseny Kapoulkine 9e7e779c02
Quality of life improvements to web demo (#297)
- Upgrade CodeMirror to 5.65
- Enable matching paren highlighting via an addon
- Remove extra buttons and replace clear output with a checkbox
- Highlight error line on parsing/execution error
- Change demo layout to wide to increase available width
2021-12-20 15:36:41 -08:00
Pelanyo Kamara 019eeeb853
Add CodeMirror Editor for Web Demo (#228)
Also remove timestamps from output
2021-12-15 09:23:26 -08:00
JohnnyMorganz 2e6a2090c3
Add Grammar documentation (#266)
Co-authored-by: Alexander McCord <11488393+alexmccord@users.noreply.github.com>
Co-authored-by: Arseny Kapoulkine <arseny.kapoulkine@gmail.com>
2021-12-08 09:17:28 -08:00
Lily Brown 864221e667
November 2021 Luau recap (#264)
Co-authored-by: Arseny Kapoulkine <arseny.kapoulkine@gmail.com>
2021-12-02 13:22:02 -08:00
Arseny Kapoulkine 2aff9bb859
Add documentation for bit32.count* and coroutine.close (#268) 2021-12-02 11:36:40 -08:00
Arseny Kapoulkine 955f9fa754
Update index.md
Studio => luau-analyze
2021-11-30 15:26:28 -08:00
vegorov-rbx 6801c65090
Documentation for type packs (#257)
* Documentation for type packs

* Update docs/_pages/typecheck.md

Co-authored-by: Arseny Kapoulkine <arseny.kapoulkine@gmail.com>

* Add a note about the difference between ...T and T...

Fix a typo at the start as well.

Co-authored-by: Arseny Kapoulkine <arseny.kapoulkine@gmail.com>
2021-11-30 14:00:23 -08:00
Arseny Kapoulkine f185e9f5db
Update performance.md (#252)
Add documentation for closure allocation elision.
2021-11-30 08:21:11 -08:00
Tiffany Bennett a26024fb4b
Use latest release url (#227) 2021-11-22 12:54:27 -08:00
Arseny Kapoulkine cecd50fb06
Update navigation.yml
Remove leftover comments
2021-11-21 20:12:21 -08:00
Arseny Kapoulkine ffed184562
Update navigation.yml
Add demo to top-level nav
2021-11-21 20:12:08 -08:00
Arseny Kapoulkine 2fa5b9c329
Update repl.html
Try using a release artifact
2021-11-21 20:07:44 -08:00
ccuser44 a02086260b
Added note to docs about not using os.difftime for new work (#210)
Co-authored-by: Arseny Kapoulkine <arseny.kapoulkine@gmail.com>

Fixes #194.
2021-11-17 06:42:04 -08:00
dcope-rbx 68fb2bdfde
Addressed typecasting documentation feedback (#192) 2021-11-10 11:53:43 -08:00
dcope-rbx 4957812b62
Added documentation related to typecasting (#191) 2021-11-10 09:26:20 -08:00
Pelanyo Kamara aec8fbfd0f
Feature: Web REPL using Emscripten (#138)
Currently doesn't include the new page into navigation since we aren't building the .js files anywhere.
2021-11-10 08:40:46 -08:00
Arseny Kapoulkine 46244d2ea7
Update getting-started.md
Update file extension from .lua to .luau

Contributes to #97
2021-11-07 23:21:34 -08:00
Arseny Kapoulkine 16753a78f4
Update navigation.yml
Add GitHub link to top bar
2021-11-07 08:07:57 -08:00
Arseny Kapoulkine c6de3bd2e4
Update sandbox.md
Remove section on thread identity: this is not part of open-source Luau and as such is now confusing.
2021-11-05 19:50:29 -07:00
Arseny Kapoulkine c0b95b8961
Update profile.md
Too much future.
2021-11-04 23:24:39 -07:00
Arseny Kapoulkine adacdcdf4e
Update profile.md
Remove incorrect sentence copied from the incorrect internal documentation :)
2021-11-04 18:07:34 -07:00
Arseny Kapoulkine dc509b9849
Update navigation.yml
Add profiling page to nav bar
2021-11-04 17:28:24 -07:00
Arseny Kapoulkine 7c76a5a70a
Create profile.md
Add profiler documentation.
2021-11-04 17:27:56 -07:00
Arseny Kapoulkine e0c4f33217
Add chess-profile.lua 2021-11-04 17:22:04 -07:00
Josh Soref 278e848cc2
Spelling (#119)
Fixed various spelling errors.

Co-authored-by: Josh Soref <jsoref@users.noreply.github.com>
2021-11-04 09:50:46 -05:00
Arseny Kapoulkine 733ae0498d
Update index.md
Cleanup text and remove extra buttons and redundant links
2021-11-03 19:10:49 -07:00
Arseny Kapoulkine 06e79462d0
Update index.md
Remove incorrect text about Luau being Roblox only.
2021-11-03 14:27:42 -07:00
Arseny Kapoulkine e34586b847
Update sandbox.md
Soften the language around Rust
2021-11-03 12:30:07 -07:00