| 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 \usepackage[T1]{fontenc} | 8 \usepackage[T1]{fontenc} |
| 9 \newcommand{\code}[1]{{\sf #1}} | 9 \newcommand{\code}[1]{{\sf #1}} |
| 10 \title{Dart Programming Language Specification \\ | 10 \title{Dart Programming Language Specification \\ |
| (...skipping 2234 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 2245 | 2245 |
| 2246 \rationale{ | 2246 \rationale{ |
| 2247 The restriction is necessary since a type variable has no meaning in the context
of a static member, because statics are shared among all instantiations of a ge
neric. However, a type variable may be referenced from an instance initializer,
even though \THIS{} is not available. | 2247 The restriction is necessary since a type variable has no meaning in the context
of a static member, because statics are shared among all instantiations of a ge
neric. However, a type variable may be referenced from an instance initializer,
even though \THIS{} is not available. |
| 2248 } | 2248 } |
| 2249 | 2249 |
| 2250 \commentary{ | 2250 \commentary{ |
| 2251 Because type parameters are in scope in their bounds, we support F-bounded quant
ification (if you don't know what that is, don't ask). This enables typechecking
code such as: | 2251 Because type parameters are in scope in their bounds, we support F-bounded quant
ification (if you don't know what that is, don't ask). This enables typechecking
code such as: |
| 2252 } | 2252 } |
| 2253 | 2253 |
| 2254 \begin{dartCode} | 2254 \begin{dartCode} |
| 2255 \INTERFACE{} Ordered<T> \{ | 2255 \CLASS{} Ordered<T> \{ |
| 2256 operator > (T x); | 2256 operator > (T x); |
| 2257 \} | 2257 \} |
| 2258 | 2258 |
| 2259 \CLASS{} Sorter<T \EXTENDS{} Ordered<T$>>$ \{ | 2259 \CLASS{} Sorter<T \EXTENDS{} Ordered<T$>>$ \{ |
| 2260 sort(List<T> l) {... l[n] < l[n+1] ...} | 2260 sort(List<T> l) {... l[n] < l[n+1] ...} |
| 2261 \} | 2261 \} |
| 2262 | 2262 |
| 2263 \end{dartCode} | 2263 \end{dartCode} |
| 2264 | 2264 |
| 2265 \commentary{ | 2265 \commentary{ |
| (...skipping 5740 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 8006 | 8006 |
| 8007 The invariant that each normative paragraph is associated with a line | 8007 The invariant that each normative paragraph is associated with a line |
| 8008 containing the text \LMHash{} should be maintained. Extra occurrences | 8008 containing the text \LMHash{} should be maintained. Extra occurrences |
| 8009 of \LMHash{} can be added if needed, e.g., in order to make | 8009 of \LMHash{} can be added if needed, e.g., in order to make |
| 8010 individual \item{}s in itemized lists addressable. Each \LM.. command | 8010 individual \item{}s in itemized lists addressable. Each \LM.. command |
| 8011 must occur on a separate line. \LMHash{} must occur immediately | 8011 must occur on a separate line. \LMHash{} must occur immediately |
| 8012 before the associated paragraph, and \LMLabel must occur immediately | 8012 before the associated paragraph, and \LMLabel must occur immediately |
| 8013 after the associated \section{}, \subsection{} etc. | 8013 after the associated \section{}, \subsection{} etc. |
| 8014 | 8014 |
| 8015 ---------------------------------------------------------------------- | 8015 ---------------------------------------------------------------------- |
| OLD | NEW |