mirror of
https://github.com/luau-lang/luau.git
synced 2025-04-10 22:00:54 +01:00
Some ideas wrt mixing strict and nonstrict code.
This commit is contained in:
parent
77c70d142e
commit
1e052dc450
1 changed files with 14 additions and 2 deletions
|
@ -301,12 +301,24 @@ Related work: success types~\cite{???} and incorrectness logic~\cite{???}.
|
||||||
|
|
||||||
Goal: \emph{support mixed strict/nonstrict development}.
|
Goal: \emph{support mixed strict/nonstrict development}.
|
||||||
|
|
||||||
Real Luau programs contain many scripts, each of which may have its own mode,
|
Like every active software community, Roblox developers share code
|
||||||
so we need to support a mixture of strict and nonstrict development.
|
with one another constantly. First- and third-party developers alike
|
||||||
|
frequently share entire software packages written in Luau. To add to
|
||||||
|
this, many Roblox games are authored not by just one developer, but a
|
||||||
|
whole team.
|
||||||
|
|
||||||
|
It is therefore crucial that we offer first-class support for mixing
|
||||||
|
code written in strict and nonstrict modes.
|
||||||
|
|
||||||
Some issues raised by mixed-mode types:
|
Some issues raised by mixed-mode types:
|
||||||
\begin{itemize}
|
\begin{itemize}
|
||||||
|
|
||||||
|
\item How much feedback can we offer for a nonstrict script that is
|
||||||
|
importing strict-mode code?
|
||||||
|
|
||||||
|
\item In strict mode, how do we talk about values and types that are
|
||||||
|
drawn from nonstrict code?
|
||||||
|
|
||||||
\item How can we combine the goals of strict and nonstrict types?
|
\item How can we combine the goals of strict and nonstrict types?
|
||||||
|
|
||||||
\item Can we have strict and non-strict mode infer the same types,
|
\item Can we have strict and non-strict mode infer the same types,
|
||||||
|
|
Loading…
Add table
Reference in a new issue