I’m currently finding myself needing to implement a parser for Luau in another programming language. I did not even try to find a formal definition of Luau’s syntax, such as BNF or EBNF, as I doubt one exists. That being the case, I would love some help:
How does the syntactical structure of Luau differ from Lua 5.1?
Are there any links to formal specifications, edge-cases, et cetera?
Overall, are there any truly technical documents pertaining to the documentation of Luau in a readily available manner?
I don’t think there are any real documentation, but from my own parser project the only real differences I’ve documented are the types (which are outlined in one of the announcement posts) and continue which behaves as both a keyword and identifier. Other than that, it should be mostly regular Lua 5.1.
It would be nice to get some formal documentation for Luau. The DevForum post is okay but there’s no detail and it doesn’t (at least last time I read it) mention generics, type inference, and even being able to use typeof in a “type context”.
I wish they discussed their ideas for Luau’s type system, before they implement it, to a greater degree.
As of now, it’s pretty informal and I vaguely know the roadmap of it’s design in the near future, but have no idea what drives its design both syntactically and in regards to its type system.