Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
82 commits
Select commit Hold shift + click to select a range
be645a9
Integrate the null-safety subtyping rules into dartLangSpec.tex
eernstg Dec 14, 2023
cb447a8
Integrated null-safety into the appendix about subtyping
eernstg Dec 14, 2023
1d3da27
Fix a couple of typos
eernstg Dec 14, 2023
2eb4b1f
Adjust dart.sty to change like specify_null_safety_sep21
eernstg Oct 17, 2024
f3fc5bc
WIP
eernstg Oct 17, 2024
15ea487
Align this PR with specify_null_safety_sep21
eernstg Oct 17, 2024
e0341c0
WIP
eernstg Oct 17, 2024
e1192dd
WIP
eernstg Oct 18, 2024
e04ff2b
WIP
eernstg Oct 18, 2024
a5a19fd
WIP
eernstg Oct 18, 2024
ff3ed3c
WIP
eernstg Oct 18, 2024
d6aa8ac
WIP
eernstg Oct 18, 2024
83be7e2
WIP
eernstg Oct 18, 2024
6f01dd8
WIP
eernstg Oct 18, 2024
cc1e7c8
WIP
eernstg Oct 18, 2024
374ff09
WIP
eernstg Oct 18, 2024
2c7c97e
WIP
eernstg Oct 18, 2024
86283a0
WIP
eernstg Oct 18, 2024
6a4ea11
WIP
eernstg Oct 18, 2024
b15ade4
Added section about explicitly resolved (fka canonical) syntax
eernstg Nov 1, 2024
a12b71d
Clean up whitespace
eernstg Jul 7, 2025
be13666
Whitespace
eernstg Aug 14, 2025
aab5eda
Whitespace
eernstg Aug 14, 2025
a61449a
WIP
eernstg Aug 14, 2025
732ed72
Rename type variables
eernstg Aug 14, 2025
162f978
WIP
eernstg Aug 14, 2025
7a0bbdb
WIP
eernstg Aug 14, 2025
060449b
WIP
eernstg Aug 14, 2025
b4b71d2
WIP
eernstg Aug 14, 2025
574eda4
WIP
eernstg Aug 14, 2025
2943261
WIP
eernstg Aug 14, 2025
f6bcc21
WIP
eernstg Aug 14, 2025
751d31d
WIP
eernstg Aug 14, 2025
68a65fb
WIP
eernstg Aug 14, 2025
3c7e5e0
WIP
eernstg Aug 14, 2025
9d2fd0e
WIP
eernstg Aug 14, 2025
e180d4a
WIP
eernstg Aug 14, 2025
0d28663
WIP
eernstg Aug 14, 2025
28283ec
WIP
eernstg Aug 14, 2025
167b88c
WIP
eernstg Aug 14, 2025
74c38fa
WIP
eernstg Aug 14, 2025
c8f55f1
WIP
eernstg Aug 14, 2025
b01e13a
WIP
eernstg Aug 14, 2025
d7dff49
WIP
eernstg Aug 14, 2025
52e85ac
WIP
eernstg Aug 14, 2025
c1c2048
WIP
eernstg Aug 14, 2025
2d8d8d6
WIP
eernstg Aug 14, 2025
ee0698b
WIP
eernstg Aug 14, 2025
33913bd
WIP
eernstg Aug 14, 2025
3050484
WIP
eernstg Aug 14, 2025
05175d1
WIP
eernstg Aug 14, 2025
8d385bc
WIP
eernstg Aug 14, 2025
83be0b2
WIP
eernstg Aug 14, 2025
ff5b7db
WIP
eernstg Aug 14, 2025
589f7b3
WIP
eernstg Aug 14, 2025
13e28c2
WIP
eernstg Aug 14, 2025
14be3e0
WIP
eernstg Aug 14, 2025
68b1bf8
WIP
eernstg Aug 14, 2025
c5492d8
WIP
eernstg Aug 15, 2025
e96a60a
WIP
eernstg Aug 15, 2025
c9196d6
WIP
eernstg Aug 15, 2025
4815f99
WIP
eernstg Aug 15, 2025
e529292
WIP
eernstg Aug 15, 2025
8d9e2b2
WIP
eernstg Aug 15, 2025
c5eb43e
WIP
eernstg Aug 15, 2025
b696ec9
WIP
eernstg Aug 15, 2025
9553b54
WIP
eernstg Aug 15, 2025
417e710
WIP
eernstg Aug 15, 2025
2800f67
WIP
eernstg Aug 15, 2025
c8547af
WIP
eernstg Aug 15, 2025
eb88f7a
WIP
eernstg Aug 15, 2025
666e4ad
WIP
eernstg Aug 15, 2025
17a6e30
WIP
eernstg Aug 15, 2025
e08469d
WIP
eernstg Aug 15, 2025
8e82dfa
WIP
eernstg Aug 15, 2025
ca16254
WIP
eernstg Aug 15, 2025
c777716
WIP
eernstg Aug 15, 2025
88aec87
WIP
eernstg Aug 15, 2025
064e48f
WIP
eernstg Aug 15, 2025
1d39159
WIP
eernstg Aug 15, 2025
64e6e1d
WIP
eernstg Aug 15, 2025
cd9ff50
WIP
eernstg Aug 15, 2025
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
35 changes: 20 additions & 15 deletions specification/dart.sty
Original file line number Diff line number Diff line change
Expand Up @@ -20,6 +20,7 @@
\def\MIXIN{\builtinId{mixin}}
\def\OPERATOR{\builtinId{operator}}
\def\PART{\builtinId{part}}
\def\RECORD{\builtinId{Record}}
\def\REQUIRED{\builtinId{required}}
\def\SET{\builtinId{set}}
\def\STATIC{\builtinId{static}}
Expand Down Expand Up @@ -124,11 +125,11 @@
\newenvironment{commentary}[1]{{\color{commentaryColor}\sf{#1}}}{}

% Auxiliary functions.
\newcommand{\flattenName}{\mbox{\it flatten}}
\newcommand{\flattenName}{\metavar{flatten}}
\newcommand{\flatten}[1]{\ensuremath{\flattenName({#1})}}
\newcommand{\futureOrBase}[1]{\ensuremath{\mbox{\it futureOrBase}({#1})}}
\newcommand{\overrides}[1]{\ensuremath{\mbox{\it overrides}({#1})}}
\newcommand{\inherited}[1]{\ensuremath{\mbox{\it inherited}({#1})}}
\newcommand{\futureOrBase}[1]{\ensuremath{\metavar{futureOrBase}({#1})}}
\newcommand{\overrides}[1]{\ensuremath{\metavar{overrides}({#1})}}
\newcommand{\inherited}[1]{\ensuremath{\metavar{inherited}({#1})}}

% Used as a mini-section marker, indicating visibly that a range of
% text (usually just a couple of paragraphs) are concerned with one
Expand Down Expand Up @@ -173,9 +174,12 @@
\newcommand{\id}{\metavar{id}}
\newcommand{\op}{\metavar{op}}

% Used in margin to indicate that a term is being defined here.
\newcommand{\IndexMarker}{\ensuremath{^\vartriangle}}

% Used for defining occurrence of phrase, with customized index entry.
\newcommand{\IndexCustom}[2]{%
\leavevmode\marginpar{\ensuremath{_{^\vartriangle}}}\emph{#1}\index{#2}}
\leavevmode\marginpar{\IndexMarker}\emph{#1}\index{#2}}

% Used for the defining occurrence of a local symbol.
\newcommand{\DefineSymbol}[1]{%
Expand All @@ -196,11 +200,15 @@

% Same appearance, but not adding an entry to the index.
\newcommand{\NoIndex}[1]{%
\leavevmode\marginpar{\ensuremath{_{^\vartriangle}}}\emph{#1}}
\leavevmode\marginpar{\IndexMarker}\emph{#1}}

% Mark a compile-time error in the margin.
\newcommand{\Error}[1]{%
\leavevmode\marginpar{\ensuremath{_{^\ominus}}}{#1}}
\leavevmode\marginpar{\ensuremath{\textcolor{red}{\ominus}}}{#1}}

% Mark a dynamic error in the margin.
\newcommand{\DynamicError}[1]{%
\leavevmode\marginpar{\textcolor{red}{\Lightning}}{#1}}

% Used to specify comma separated lists of similar symbols.
\newcommand{\List}[3]{\ensuremath{{#1}_{#2},\,\ldots,\ {#1}_{#3}}}
Expand Down Expand Up @@ -402,9 +410,9 @@

% Same as \FunctionTypeNamed except suitable for inline usage, hence omitting
% the spacer argument.
\newcommand{\RawFunctionTypeNamed}[8]{%
\newcommand{\RawFunctionTypeNamed}[9]{%
\RawFunctionType{#1}{#2}{#3}{#4}{%
\FunctionTypeNamedParameters{#5}{#6}{#7}{#8}{r}}}
\FunctionTypeNamedParameters{#5}{#6}{#7}{#8}{#9}}}

% A variant of \FunctionTypeNamed that uses the standard symbols,
% that is, a function type with positional optional parameters which
Expand Down Expand Up @@ -466,17 +474,14 @@
\newcommand{\SubtypeStd}[2]{\Subtype{\Delta}{#1}{#2}}
% Subtype judgment where the environment is omitted (NE: "no environment").
\newcommand{\SubtypeNE}[2]{\ensuremath{{#1}\,<:\,{#2}}}
\newcommand{\MutualSubtype}[3]{\ensuremath{{#1}\vdash{#2}\,<:>\,{#3}}}
\newcommand{\MutualSubtypeStd}[2]{\MutualSubtype{\Delta}{#1}{#2}}
\newcommand{\MutualSubtypeNE}[2]{\ensuremath{{#1}\,<:>\,{#2}}}

% Judgment expressing that a supertype relation exists.
\newcommand{\Supertype}[3]{\ensuremath{{#1}\vdash{#2}\,:>\,{#3}}}
\newcommand{\SupertypeStd}[2]{\Supertype{\Delta}{#1}{#2}}

% Judgment expressing that an assignability relation exists.
\newcommand{\AssignableRelationSymbol}{\ensuremath{\Longleftrightarrow}}
\newcommand{\Assignable}[3]{%
\ensuremath{{#1}\vdash{#2}\,\AssignableRelationSymbol\,{#3}}}
\newcommand{\AssignableStd}[2]{\Assignable{\Gamma}{#1}{#2}}

% Semantic function delivering the superinterfaces of a class.
\newcommand{\Superinterfaces}[1]{\ensuremath{\metavar{Superinterfaces}({#1})}}
\newcommand{\Superinterface}[2]{{#1}\in\Superinterfaces{#2}}
Expand Down
Loading