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
f2e3c23
Integrate the null-safety subtyping rules into dartLangSpec.tex
eernstg Dec 14, 2023
53457c8
Integrated null-safety into the appendix about subtyping
eernstg Dec 14, 2023
3b5e261
Fix a couple of typos
eernstg Dec 14, 2023
f28ab3a
Adjust dart.sty to change like specify_null_safety_sep21
eernstg Oct 17, 2024
33155cc
WIP
eernstg Oct 17, 2024
0aa4a15
Align this PR with specify_null_safety_sep21
eernstg Oct 17, 2024
acb10ae
WIP
eernstg Oct 17, 2024
f388d39
WIP
eernstg Oct 18, 2024
dc27e24
WIP
eernstg Oct 18, 2024
345cfdc
WIP
eernstg Oct 18, 2024
4c7f6ad
WIP
eernstg Oct 18, 2024
e7d4427
WIP
eernstg Oct 18, 2024
455a232
WIP
eernstg Oct 18, 2024
55613a7
WIP
eernstg Oct 18, 2024
12fd39d
WIP
eernstg Oct 18, 2024
7166a8d
WIP
eernstg Oct 18, 2024
58a4fdb
WIP
eernstg Oct 18, 2024
0f8cf91
WIP
eernstg Oct 18, 2024
a3eb9a9
WIP
eernstg Oct 18, 2024
fd5142f
Added section about explicitly resolved (fka canonical) syntax
eernstg Nov 1, 2024
1ef7380
Clean up whitespace
eernstg Jul 7, 2025
22eab1c
Whitespace
eernstg Aug 14, 2025
319e5bc
Whitespace
eernstg Aug 14, 2025
65afab3
WIP
eernstg Aug 14, 2025
2fb6f95
Rename type variables
eernstg Aug 14, 2025
53f01fe
WIP
eernstg Aug 14, 2025
e3c9725
WIP
eernstg Aug 14, 2025
d7d5260
WIP
eernstg Aug 14, 2025
1870af6
WIP
eernstg Aug 14, 2025
0e241c4
WIP
eernstg Aug 14, 2025
8b2a9ad
WIP
eernstg Aug 14, 2025
f454df7
WIP
eernstg Aug 14, 2025
b16b403
WIP
eernstg Aug 14, 2025
e30f536
WIP
eernstg Aug 14, 2025
5f961b6
WIP
eernstg Aug 14, 2025
dfef673
WIP
eernstg Aug 14, 2025
328bf72
WIP
eernstg Aug 14, 2025
e960f01
WIP
eernstg Aug 14, 2025
3a47708
WIP
eernstg Aug 14, 2025
c999f0d
WIP
eernstg Aug 14, 2025
c31b2f3
WIP
eernstg Aug 14, 2025
2874c6b
WIP
eernstg Aug 14, 2025
6ecac78
WIP
eernstg Aug 14, 2025
48d760d
WIP
eernstg Aug 14, 2025
e43597a
WIP
eernstg Aug 14, 2025
98b00f8
WIP
eernstg Aug 14, 2025
32fc3ac
WIP
eernstg Aug 14, 2025
f5296cf
WIP
eernstg Aug 14, 2025
cb008be
WIP
eernstg Aug 14, 2025
7c9e844
WIP
eernstg Aug 14, 2025
02ebf88
WIP
eernstg Aug 14, 2025
6585a4f
WIP
eernstg Aug 14, 2025
4792363
WIP
eernstg Aug 14, 2025
86db8a6
WIP
eernstg Aug 14, 2025
ec8d99a
WIP
eernstg Aug 14, 2025
02899e8
WIP
eernstg Aug 14, 2025
081a501
WIP
eernstg Aug 14, 2025
35c0eab
WIP
eernstg Aug 14, 2025
439cefe
WIP
eernstg Aug 15, 2025
9dbe7cf
WIP
eernstg Aug 15, 2025
85053ee
WIP
eernstg Aug 15, 2025
9ac1a3d
WIP
eernstg Aug 15, 2025
e5cb3c8
WIP
eernstg Aug 15, 2025
b51daf0
WIP
eernstg Aug 15, 2025
1ff6d3d
WIP
eernstg Aug 15, 2025
ae82ebe
WIP
eernstg Aug 15, 2025
43e319c
WIP
eernstg Aug 15, 2025
81e1a1c
WIP
eernstg Aug 15, 2025
4878505
WIP
eernstg Aug 15, 2025
ef764cf
WIP
eernstg Aug 15, 2025
7e0c379
WIP
eernstg Aug 15, 2025
40df693
WIP
eernstg Aug 15, 2025
bd81692
WIP
eernstg Aug 15, 2025
0742325
WIP
eernstg Aug 15, 2025
6445c08
WIP
eernstg Aug 15, 2025
f27ad4a
WIP
eernstg Aug 15, 2025
b318ef2
WIP
eernstg Aug 15, 2025
3529c65
WIP
eernstg Aug 15, 2025
f149894
WIP
eernstg Aug 15, 2025
30dd207
WIP
eernstg Aug 15, 2025
e6e8ed9
WIP
eernstg Aug 15, 2025
7a1829c
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