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.9}} | 10 {\large Version 1.9}} |
(...skipping 4626 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
4637 This section describes how to evaluate these expressions when they do not consti
tute the complete left hand side of an assignment. | 4637 This section describes how to evaluate these expressions when they do not consti
tute the complete left hand side of an assignment. |
4638 | 4638 |
4639 \rationale{ | 4639 \rationale{ |
4640 Of course, if assignable expressions always appeared {\em as} the left hand side
, one would have no need for their value, and the rules for evaluating them woul
d be unnecessary. However, assignable expressions can be subexpressions of othe
r expressions and therefore must be evaluated. | 4640 Of course, if assignable expressions always appeared {\em as} the left hand side
, one would have no need for their value, and the rules for evaluating them woul
d be unnecessary. However, assignable expressions can be subexpressions of othe
r expressions and therefore must be evaluated. |
4641 } | 4641 } |
4642 | 4642 |
4643 | 4643 |
4644 | 4644 |
4645 \begin{grammar} | 4645 \begin{grammar} |
4646 | 4646 |
4647 {\bf assignableExpression:}primary (arguments? assignableSelector)+; | 4647 {\bf assignableExpression:}primary (arguments* assignableSelector)+; |
4648 \SUPER{} assignableSelector; | 4648 \SUPER{} assignableSelector; |
4649 identifier | 4649 identifier |
4650 . | 4650 . |
4651 | 4651 |
4652 {\bf assignableSelector:}`[' expression `]'; % again, could be top level | 4652 {\bf assignableSelector:}`[' expression `]'; % again, could be top level |
4653 `{\escapegrammar .}' identifier | 4653 `{\escapegrammar .}' identifier |
4654 . | 4654 . |
4655 | 4655 |
4656 \end{grammar} | 4656 \end{grammar} |
4657 | 4657 |
(...skipping 2679 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
7337 | 7337 |
7338 The invariant that each normative paragraph is associated with a line | 7338 The invariant that each normative paragraph is associated with a line |
7339 containing the text \LMHash{} should be maintained. Extra occurrences | 7339 containing the text \LMHash{} should be maintained. Extra occurrences |
7340 of \LMHash{} can be added if needed, e.g., in order to make | 7340 of \LMHash{} can be added if needed, e.g., in order to make |
7341 individual \item{}s in itemized lists addressable. Each \LM.. command | 7341 individual \item{}s in itemized lists addressable. Each \LM.. command |
7342 must occur on a separate line. \LMHash{} must occur immediately | 7342 must occur on a separate line. \LMHash{} must occur immediately |
7343 before the associated paragraph, and \LMLabel must occur immediately | 7343 before the associated paragraph, and \LMLabel must occur immediately |
7344 after the associated \section{}, \subsection{} etc. | 7344 after the associated \section{}, \subsection{} etc. |
7345 | 7345 |
7346 ---------------------------------------------------------------------- | 7346 ---------------------------------------------------------------------- |
OLD | NEW |