| OLD | NEW |
| 1 \documentclass{article} | 1 \documentclass{article} |
| 2 \usepackage{epsfig} | 2 \usepackage{epsfig} |
| 3 \usepackage{color} | 3 \usepackage{color} |
| 4 \usepackage{dart} | 4 \usepackage{dart} |
| 5 \usepackage{bnf} | 5 \usepackage{bnf} |
| 6 \usepackage{hyperref} | 6 \usepackage{hyperref} |
| 7 \usepackage{lmodern} | 7 \usepackage{lmodern} |
| 8 \newcommand{\code}[1]{{\sf #1}} | 8 \newcommand{\code}[1]{{\sf #1}} |
| 9 \title{Dart Programming Language Specification \\ | 9 \title{Dart Programming Language Specification \\ |
| 10 {\large Version 1.10}} | 10 {\large Version 1.10}} |
| (...skipping 7492 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 7503 \LMLabel{leastUpperBounds} | 7503 \LMLabel{leastUpperBounds} |
| 7504 | 7504 |
| 7505 \LMHash{} | 7505 \LMHash{} |
| 7506 % does this diverge in some cases? | 7506 % does this diverge in some cases? |
| 7507 Given two interfaces $I$ and $J$, let $S_I$ be the set of superinterfaces of $I$
, let $S_J$ be the set of superinterfaces of $J$ and let $S = (I \cup S_I) \ca
p (J \cup S_J)$. Furthermore, we define $S_n = \{T | T \in S \wedge depth(T) =
n\}$ for any finite $n$ %, and $k=max(depth(T_1), \ldots, depth(T_m)), T_i \in S
, i \in 1..m$, | 7507 Given two interfaces $I$ and $J$, let $S_I$ be the set of superinterfaces of $I$
, let $S_J$ be the set of superinterfaces of $J$ and let $S = (I \cup S_I) \ca
p (J \cup S_J)$. Furthermore, we define $S_n = \{T | T \in S \wedge depth(T) =
n\}$ for any finite $n$ %, and $k=max(depth(T_1), \ldots, depth(T_m)), T_i \in S
, i \in 1..m$, |
| 7508 where $depth(T)$ is the number of steps in the longest inheritance path from $T$
to \code{Object}. Let $q$ be the largest number such that $S_q$ has cardinality
one. The least upper bound of $I$ and $J$ is the sole element of $S_q$. | 7508 where $depth(T)$ is the number of steps in the longest inheritance path from $T$
to \code{Object}. Let $q$ be the largest number such that $S_q$ has cardinality
one. The least upper bound of $I$ and $J$ is the sole element of $S_q$. |
| 7509 | 7509 |
| 7510 \LMHash{} | 7510 \LMHash{} |
| 7511 The least upper bound of \DYNAMIC{} and any type $T$ is \DYNAMIC{}. | 7511 The least upper bound of \DYNAMIC{} and any type $T$ is \DYNAMIC{}. |
| 7512 The least upper bound of \VOID{} and any type $T \ne \DYNAMIC{}$ is \VOID{}. | 7512 The least upper bound of \VOID{} and any type $T \ne \DYNAMIC{}$ is \VOID{}. |
| 7513 Let $U$ be a type variable with upper bound $B$. The least upper bound of $U$ an
d a type $T$ is the least upper bound of $B$ and $T$. | 7513 The least upper bound of $\bot$ and any type $T$ is $T$. |
| 7514 Let $U$ be a type variable with upper bound $B$. The least upper bound of $U$ an
d a type $T \ne \bot$ is the least upper bound of $B$ and $T$. |
| 7514 | 7515 |
| 7515 \LMHash{} | 7516 \LMHash{} |
| 7516 The least upper bound relation is symmetric and reflexive. | 7517 The least upper bound relation is symmetric and reflexive. |
| 7517 | 7518 |
| 7518 % Function types | 7519 % Function types |
| 7519 | 7520 |
| 7520 \LMHash{} | 7521 \LMHash{} |
| 7521 The least upper bound of a function type and an interface type $T$ is the least
upper bound of \cd{Function} and $T$. | 7522 The least upper bound of a function type and an interface type $T$ is the least
upper bound of \cd{Function} and $T$. |
| 7522 Let $F$ and $G$ be function types. If $F$ and $G$ differ in their number of requ
ired parameters, then the least upper bound of $F$ and $G$ is \cd{Function}. Ot
herwise: | 7523 Let $F$ and $G$ be function types. If $F$ and $G$ differ in their number of requ
ired parameters, then the least upper bound of $F$ and $G$ is \cd{Function}. Ot
herwise: |
| 7523 \begin{itemize} | 7524 \begin{itemize} |
| (...skipping 321 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 7845 | 7846 |
| 7846 The invariant that each normative paragraph is associated with a line | 7847 The invariant that each normative paragraph is associated with a line |
| 7847 containing the text \LMHash{} should be maintained. Extra occurrences | 7848 containing the text \LMHash{} should be maintained. Extra occurrences |
| 7848 of \LMHash{} can be added if needed, e.g., in order to make | 7849 of \LMHash{} can be added if needed, e.g., in order to make |
| 7849 individual \item{}s in itemized lists addressable. Each \LM.. command | 7850 individual \item{}s in itemized lists addressable. Each \LM.. command |
| 7850 must occur on a separate line. \LMHash{} must occur immediately | 7851 must occur on a separate line. \LMHash{} must occur immediately |
| 7851 before the associated paragraph, and \LMLabel must occur immediately | 7852 before the associated paragraph, and \LMLabel must occur immediately |
| 7852 after the associated \section{}, \subsection{} etc. | 7853 after the associated \section{}, \subsection{} etc. |
| 7853 | 7854 |
| 7854 ---------------------------------------------------------------------- | 7855 ---------------------------------------------------------------------- |
| OLD | NEW |