gecko-dev/js2/semantics/ECMA Lexer.rtf
waldemar%netscape.com 94049c5d56 First Checked In.
1999-01-30 01:19:00 +00:00

1042 lines
85 KiB
Plaintext

{\rtf1\mac\ansicpg10000\uc1\deff0\deflang2057\deflangfe2057
{\fonttbl{\f0\froman\fcharset256\fprq2{\*\panose 02020603050405020304}Times New Roman;}
{\f3\ftech\fcharset2\fprq2 Symbol;}{\f4\fnil\fcharset256\fprq2 Helvetica;}
{\f5\fmodern\fcharset256\fprq2 Courier New;}{\f6\fnil\fcharset256\fprq2 Palatino;}
{\f7\fscript\fcharset256\fprq2 Zapf Chancery;}{\f8\ftech\fcharset2\fprq2 Zapf Dingbats;}}
{\colortbl;\red0\green0\blue0;\red0\green0\blue255;\red0\green255\blue255;\red0\green255\blue0;
\red255\green0\blue255;\red255\green0\blue0;\red255\green255\blue0;\red255\green255\blue255;\red0
\green0\blue128;\red0\green128\blue128;\red0\green128\blue0;\red128\green0\blue128;\red128\green0
\blue0;\red128\green128\blue0;\red128\green128\blue128;\red192\green192\blue192;}
{\stylesheet{\widctlpar\fs20\lang2057\snext0 Normal;}
{\s1\qj\sa120\widctlpar\fs20\lang2057\sbasedon0\snext1 Body Text;}
{\s2\sa60\keep\keepn\nowidctlpar\hyphpar0\level3\b\fs24\lang2057\sbasedon3\snext1 heading 3;}
{\s3\sa30\keep\keepn\nowidctlpar\hyphpar0\level4\b\fs20\lang2057\sbasedon0\snext1 heading 4;}
{\s10\nowidctlpar\hyphpar0\fs20\lang1024\sbasedon0\snext10 Grammar;}
{\s11\sb60\keep\keepn\nowidctlpar\hyphpar0\b\fs20\lang2057\sbasedon0\snext12 Grammar Header;}
{\s12\fi-1440\li1800\sb120\keep\keepn\nowidctlpar\hyphpar0\outlinelevel4\fs20\lang1024\sbasedon10
\snext14 Grammar LHS;}
{\s13\fi-1440\li1800\sb120\sa120\keep\nowidctlpar\hyphpar0\outlinelevel4\fs20\lang1024\sbasedon10
\snext12 Grammar LHS Last;}
{\s14\fi-1260\li1800\keep\keepn\nowidctlpar\tx720\hyphpar0\fs20\lang1024\sbasedon10\snext14 Grammar
RHS;}
{\s15\fi-1260\li1800\sa120\keep\nowidctlpar\tx720\hyphpar0\fs20\lang1024\sbasedon14\snext12 Grammar
RHS Last;}
{\s16\fi-1440\li1800\sb120\sa120\keep\nowidctlpar\hyphpar0\outlinelevel4\fs20\lang1024\sbasedon10
\snext12 Grammar Argument;}
{\s20\li180\sb60\sa60\keep\nowidctlpar\hyphpar0\fs20\lang1024\sbasedon0\snext20 Semantics;}
{\s21\li540\sa60\keep\nowidctlpar\hyphpar0\fs20\lang1024\sbasedon20\snext21 Semantics Next;}
{\*\cs30\additive Default Paragraph Font;}
{\*\cs31\b\f5\cf2\lang1024\additive\sbasedon30 Character Literal;}
{\*\cs32\b0\f0\cf9\additive\sbasedon30 Character Literal Control;}
{\*\cs33\b\f6\cf10\lang1024\additive\sbasedon30 Terminal;}
{\*\cs34\b\f5\cf2\lang1024\additive\sbasedon33 Terminal Keyword;}
{\*\cs35\i\f6\cf13\lang1024\additive\sbasedon30 Nonterminal;}
{\*\cs36\i0\additive\sbasedon30 Nonterminal Attribute;}
{\*\cs37\additive\sbasedon30 Nonterminal Argument;}
{\*\cs40\b\f0\additive\sbasedon30 Semantic Keyword;}
{\*\cs41\f0\cf6\lang1024\additive\sbasedon30 Type Expression;}
{\*\cs42\scaps\f0\cf6\lang1024\additive\sbasedon41 Type Name;}
{\*\cs43\f4\cf6\lang1024\additive\sbasedon41 Field Name;}
{\*\cs44\i\f0\cf11\lang1024\additive\sbasedon30 Global Variable;}
{\*\cs45\i\f0\cf4\lang1024\additive\sbasedon30 Local Variable;}
{\*\cs46\f7\cf12\lang1024\additive\sbasedon30 Action Name;}}
\widowctrl\ftnbj\aenddoc\fet0\formshade\viewkind4\viewscale125\pgbrdrhead\pgbrdrfoot\sectd\pard
\plain\s2\sa60\keep\keepn\nowidctlpar\hyphpar0\level3\b\fs24\lang2057 Comments\par\pard\plain\s11
\sb60\keep\keepn\nowidctlpar\hyphpar0\b\fs20\lang2057 Syntax\par\pard\plain\s13\fi-1440\li1800\sb120
\sa120\keep\nowidctlpar\hyphpar0\outlinelevel4\fs20\lang1024{\cs35\i\f6\cf13\lang1024 LineComment}
{\field{\*\fldinst SYMBOL 222 \\f "Symbol" \\s 10}{\fldrslt\f3\fs20}} {\cs31\b\f5\cf2\lang1024/}
{\cs31\b\f5\cf2\lang1024/} {\cs35\i\f6\cf13\lang1024 LineCommentCharacters}\par\pard\plain\s12
\fi-1440\li1800\sb120\keep\keepn\nowidctlpar\hyphpar0\outlinelevel4\fs20\lang1024
{\cs35\i\f6\cf13\lang1024 LineCommentCharacters}
{\field{\*\fldinst SYMBOL 222 \\f "Symbol" \\s 10}{\fldrslt\f3\fs20}}\par\pard\plain\s14\fi-1260
\li1800\keep\keepn\nowidctlpar\tx720\hyphpar0\fs20\lang1024\tab\u171\'C7empty\u187\'C8\par\pard
\plain\s15\fi-1260\li1800\sa120\keep\nowidctlpar\tx720\hyphpar0\fs20\lang1024|\tab
{\cs35\i\f6\cf13\lang1024 LineCommentCharacters} {\cs35\i\f6\cf13\lang1024 NonTerminator}\par\pard
\plain\s13\fi-1440\li1800\sb120\sa120\keep\nowidctlpar\hyphpar0\outlinelevel4\fs20\lang1024
{\cs35\i\f6\cf13\lang1024 NonTerminator}
{\field{\*\fldinst SYMBOL 222 \\f "Symbol" \\s 10}{\fldrslt\f3\fs20}}
{\cs35\i\f6\cf13\lang1024 AnyCharacter} {\b except} {\cs35\i\f6\cf13\lang1024 LineTerminator}\par
{\cs35\i\f6\cf13\lang1024 SingleLineBlockComment}
{\field{\*\fldinst SYMBOL 222 \\f "Symbol" \\s 10}{\fldrslt\f3\fs20}} {\cs31\b\f5\cf2\lang1024/}
{\cs31\b\f5\cf2\lang1024*} {\cs35\i\f6\cf13\lang1024 BlockCommentCharacters}
{\cs31\b\f5\cf2\lang1024*} {\cs31\b\f5\cf2\lang1024/}\par\pard\plain\s12\fi-1440\li1800\sb120\keep
\keepn\nowidctlpar\hyphpar0\outlinelevel4\fs20\lang1024
{\cs35\i\f6\cf13\lang1024 BlockCommentCharacters}
{\field{\*\fldinst SYMBOL 222 \\f "Symbol" \\s 10}{\fldrslt\f3\fs20}}\par\pard\plain\s14\fi-1260
\li1800\keep\keepn\nowidctlpar\tx720\hyphpar0\fs20\lang1024\tab\u171\'C7empty\u187\'C8\par|\tab
{\cs35\i\f6\cf13\lang1024 BlockCommentCharacters} {\cs35\i\f6\cf13\lang1024 NonTerminatorOrSlash}
\par\pard\plain\s15\fi-1260\li1800\sa120\keep\nowidctlpar\tx720\hyphpar0\fs20\lang1024|\tab
{\cs35\i\f6\cf13\lang1024 PreSlashCharacters} {\cs31\b\f5\cf2\lang1024/}\par\pard\plain\s12\fi-1440
\li1800\sb120\keep\keepn\nowidctlpar\hyphpar0\outlinelevel4\fs20\lang1024
{\cs35\i\f6\cf13\lang1024 PreSlashCharacters}
{\field{\*\fldinst SYMBOL 222 \\f "Symbol" \\s 10}{\fldrslt\f3\fs20}}\par\pard\plain\s14\fi-1260
\li1800\keep\keepn\nowidctlpar\tx720\hyphpar0\fs20\lang1024\tab\u171\'C7empty\u187\'C8\par|\tab
{\cs35\i\f6\cf13\lang1024 BlockCommentCharacters}
{\cs35\i\f6\cf13\lang1024 NonTerminatorOrAsteriskOrSlash}\par\pard\plain\s15\fi-1260\li1800\sa120
\keep\nowidctlpar\tx720\hyphpar0\fs20\lang1024|\tab{\cs35\i\f6\cf13\lang1024 PreSlashCharacters}
{\cs31\b\f5\cf2\lang1024/}\par\pard\plain\s13\fi-1440\li1800\sb120\sa120\keep\nowidctlpar\hyphpar0
\outlinelevel4\fs20\lang1024{\cs35\i\f6\cf13\lang1024 NonTerminatorOrSlash}
{\field{\*\fldinst SYMBOL 222 \\f "Symbol" \\s 10}{\fldrslt\f3\fs20}}
{\cs35\i\f6\cf13\lang1024 NonTerminator} {\b except} {\cs31\b\f5\cf2\lang1024/}\par
{\cs35\i\f6\cf13\lang1024 NonTerminatorOrAsteriskOrSlash}
{\field{\*\fldinst SYMBOL 222 \\f "Symbol" \\s 10}{\fldrslt\f3\fs20}}
{\cs35\i\f6\cf13\lang1024 NonTerminator} {\b except} {\cs31\b\f5\cf2\lang1024*} |
{\cs31\b\f5\cf2\lang1024/}\par{\cs35\i\f6\cf13\lang1024 MultiLineBlockComment}
{\field{\*\fldinst SYMBOL 222 \\f "Symbol" \\s 10}{\fldrslt\f3\fs20}} {\cs31\b\f5\cf2\lang1024/}
{\cs31\b\f5\cf2\lang1024*} {\cs35\i\f6\cf13\lang1024 MultiLineBlockCommentCharacters}
{\cs35\i\f6\cf13\lang1024 BlockCommentCharacters} {\cs31\b\f5\cf2\lang1024*}
{\cs31\b\f5\cf2\lang1024/}\par\pard\plain\s12\fi-1440\li1800\sb120\keep\keepn\nowidctlpar\hyphpar0
\outlinelevel4\fs20\lang1024{\cs35\i\f6\cf13\lang1024 MultiLineBlockCommentCharacters}
{\field{\*\fldinst SYMBOL 222 \\f "Symbol" \\s 10}{\fldrslt\f3\fs20}}\par\pard\plain\s14\fi-1260
\li1800\keep\keepn\nowidctlpar\tx720\hyphpar0\fs20\lang1024\tab
{\cs35\i\f6\cf13\lang1024 BlockCommentCharacters} {\cs35\i\f6\cf13\lang1024 LineTerminator}\par\pard
\plain\s15\fi-1260\li1800\sa120\keep\nowidctlpar\tx720\hyphpar0\fs20\lang1024|\tab
{\cs35\i\f6\cf13\lang1024 MultiLineBlockCommentCharacters}
{\cs35\i\f6\cf13\lang1024 BlockCommentCharacters} {\cs35\i\f6\cf13\lang1024 LineTerminator}\par\pard
\plain\s2\sa60\keep\keepn\nowidctlpar\hyphpar0\level3\b\fs24\lang2057 White space\par\pard\plain\s11
\sb60\keep\keepn\nowidctlpar\hyphpar0\b\fs20\lang2057 Syntax\par\pard\plain\s12\fi-1440\li1800\sb120
\keep\keepn\nowidctlpar\hyphpar0\outlinelevel4\fs20\lang1024{\cs35\i\f6\cf13\lang1024 WhiteSpace}
{\field{\*\fldinst SYMBOL 222 \\f "Symbol" \\s 10}{\fldrslt\f3\fs20}}\par\pard\plain\s14\fi-1260
\li1800\keep\keepn\nowidctlpar\tx720\hyphpar0\fs20\lang1024\tab\u171\'C7empty\u187\'C8\par|\tab
{\cs35\i\f6\cf13\lang1024 WhiteSpace} {\cs35\i\f6\cf13\lang1024 WhiteSpaceCharacter}\par\pard\plain
\s15\fi-1260\li1800\sa120\keep\nowidctlpar\tx720\hyphpar0\fs20\lang1024|\tab
{\cs35\i\f6\cf13\lang1024 WhiteSpace} {\cs35\i\f6\cf13\lang1024 SingleLineBlockComment}\par\pard
\plain\s13\fi-1440\li1800\sb120\sa120\keep\nowidctlpar\hyphpar0\outlinelevel4\fs20\lang1024
{\cs35\i\f6\cf13\lang1024 WhiteSpaceCharacter}
{\field{\*\fldinst SYMBOL 222 \\f "Symbol" \\s 10}{\fldrslt\f3\fs20}}
{\cs31\b\f5\cf2\lang1024\cs32\b0\f0\cf9\u171\'C7TAB\u187\'C8} |
{\cs31\b\f5\cf2\lang1024\cs32\b0\f0\cf9\u171\'C7VT\u187\'C8} |
{\cs31\b\f5\cf2\lang1024\cs32\b0\f0\cf9\u171\'C7FF\u187\'C8} |
{\cs31\b\f5\cf2\lang1024\cs32\b0\f0\cf9\u171\'C7SP\u187\'C8}\par\pard\plain\s2\sa60\keep\keepn
\nowidctlpar\hyphpar0\level3\b\fs24\lang2057 Line breaks\par\pard\plain\s11\sb60\keep\keepn
\nowidctlpar\hyphpar0\b\fs20\lang2057 Syntax\par\pard\plain\s12\fi-1440\li1800\sb120\keep\keepn
\nowidctlpar\hyphpar0\outlinelevel4\fs20\lang1024{\cs35\i\f6\cf13\lang1024 LineBreak}
{\field{\*\fldinst SYMBOL 222 \\f "Symbol" \\s 10}{\fldrslt\f3\fs20}}\par\pard\plain\s14\fi-1260
\li1800\keep\keepn\nowidctlpar\tx720\hyphpar0\fs20\lang1024\tab
{\cs35\i\f6\cf13\lang1024 LineTerminator}\par|\tab{\cs35\i\f6\cf13\lang1024 LineComment}
{\cs35\i\f6\cf13\lang1024 LineTerminator}\par\pard\plain\s15\fi-1260\li1800\sa120\keep\nowidctlpar
\tx720\hyphpar0\fs20\lang1024|\tab{\cs35\i\f6\cf13\lang1024 MultiLineBlockComment}\par\pard\plain
\s13\fi-1440\li1800\sb120\sa120\keep\nowidctlpar\hyphpar0\outlinelevel4\fs20\lang1024
{\cs35\i\f6\cf13\lang1024 LineTerminator}
{\field{\*\fldinst SYMBOL 222 \\f "Symbol" \\s 10}{\fldrslt\f3\fs20}}
{\cs31\b\f5\cf2\lang1024\cs32\b0\f0\cf9\u171\'C7LF\u187\'C8} |
{\cs31\b\f5\cf2\lang1024\cs32\b0\f0\cf9\u171\'C7CR\u187\'C8}\par\pard\plain\s12\fi-1440\li1800\sb120
\keep\keepn\nowidctlpar\hyphpar0\outlinelevel4\fs20\lang1024{\cs35\i\f6\cf13\lang1024 LineBreaks}
{\field{\*\fldinst SYMBOL 222 \\f "Symbol" \\s 10}{\fldrslt\f3\fs20}}\par\pard\plain\s14\fi-1260
\li1800\keep\keepn\nowidctlpar\tx720\hyphpar0\fs20\lang1024\tab{\cs35\i\f6\cf13\lang1024 LineBreak}
\par\pard\plain\s15\fi-1260\li1800\sa120\keep\nowidctlpar\tx720\hyphpar0\fs20\lang1024|\tab
{\cs35\i\f6\cf13\lang1024 LineBreaks} {\cs35\i\f6\cf13\lang1024 WhiteSpace}
{\cs35\i\f6\cf13\lang1024 LineBreak}\par\pard\plain\s2\sa60\keep\keepn\nowidctlpar\hyphpar0\level3\b
\fs24\lang2057 Tokens\par\pard\plain\s11\sb60\keep\keepn\nowidctlpar\hyphpar0\b\fs20\lang2057 Syntax
\par\pard\plain\s13\fi-1440\li1800\sb120\sa120\keep\nowidctlpar\hyphpar0\outlinelevel4\fs20\lang1024
{\cs35\i\f6\cf13\lang1024 NextToken}
{\field{\*\fldinst SYMBOL 222 \\f "Symbol" \\s 10}{\fldrslt\f3\fs20}}
{\cs35\i\f6\cf13\lang1024 WhiteSpace} {\cs35\i\f6\cf13\lang1024 Token}\par\pard\plain\s12\fi-1440
\li1800\sb120\keep\keepn\nowidctlpar\hyphpar0\outlinelevel4\fs20\lang1024
{\cs35\i\f6\cf13\lang1024 Token}
{\field{\*\fldinst SYMBOL 222 \\f "Symbol" \\s 10}{\fldrslt\f3\fs20}}\par\pard\plain\s14\fi-1260
\li1800\keep\keepn\nowidctlpar\tx720\hyphpar0\fs20\lang1024\tab{\cs35\i\f6\cf13\lang1024 LineBreaks}
\par|\tab{\cs35\i\f6\cf13\lang1024 IdentifierOrReservedWord}\par|\tab
{\cs35\i\f6\cf13\lang1024 Punctuator}\par|\tab{\cs35\i\f6\cf13\lang1024 NumericLiteral}\par|\tab
{\cs35\i\f6\cf13\lang1024 StringLiteral}\par\pard\plain\s15\fi-1260\li1800\sa120\keep\nowidctlpar
\tx720\hyphpar0\fs20\lang1024|\tab{\cs35\i\f6\cf13\lang1024 EndOfInput}\par\pard\plain\s12\fi-1440
\li1800\sb120\keep\keepn\nowidctlpar\hyphpar0\outlinelevel4\fs20\lang1024
{\cs35\i\f6\cf13\lang1024 EndOfInput}
{\field{\*\fldinst SYMBOL 222 \\f "Symbol" \\s 10}{\fldrslt\f3\fs20}}\par\pard\plain\s14\fi-1260
\li1800\keep\keepn\nowidctlpar\tx720\hyphpar0\fs20\lang1024\tab{\cs33\b\f6\cf10\lang1024 End}\par
\pard\plain\s15\fi-1260\li1800\sa120\keep\nowidctlpar\tx720\hyphpar0\fs20\lang1024|\tab
{\cs35\i\f6\cf13\lang1024 LineComment} {\cs33\b\f6\cf10\lang1024 End}\par\pard\plain\s11\sb60\keep
\keepn\nowidctlpar\hyphpar0\b\fs20\lang2057 Semantics\par\pard\plain\s20\li180\sb60\sa60\keep
\nowidctlpar\hyphpar0\fs20\lang1024{\cs40\b\f0 type} {\cs42\scaps\f0\cf6\lang1024 Token}\line =
{\cs41\f0\cf6\lang1024{\cs40\b\f0 oneof} \{\line {\cs43\f4\cf6\lang1024 identifier}:
{\cs42\scaps\f0\cf6\lang1024 String};\line {\cs43\f4\cf6\lang1024 reservedWord}:
{\cs42\scaps\f0\cf6\lang1024 String};\line {\cs43\f4\cf6\lang1024 punctuator}:
{\cs42\scaps\f0\cf6\lang1024 String};\line {\cs43\f4\cf6\lang1024 number}:
{\cs42\scaps\f0\cf6\lang1024 Double};\line {\cs43\f4\cf6\lang1024 string}:
{\cs42\scaps\f0\cf6\lang1024 String};\line {\cs43\f4\cf6\lang1024 lineBreaks};\line
{\cs43\f4\cf6\lang1024 end}\}}
\par{\cs40\b\f0 action} {\cs46\f7\cf12\lang1024 Token}[{\cs35\i\f6\cf13\lang1024 NextToken}] :
{\cs42\scaps\f0\cf6\lang1024 Token}\par\pard\plain\s21\li540\sa60\keep\nowidctlpar\hyphpar0\fs20
\lang1024{\cs46\f7\cf12\lang1024 Token}[{\cs35\i\f6\cf13\lang1024 NextToken}
{\field{\*\fldinst SYMBOL 222 \\f "Symbol" \\s 10}{\fldrslt\f3\fs20}}
{\cs35\i\f6\cf13\lang1024 WhiteSpace} {\cs35\i\f6\cf13\lang1024 Token}] =
{\cs46\f7\cf12\lang1024 Token}[{\cs35\i\f6\cf13\lang1024 Token}]\par\pard\plain\s20\li180\sb60\sa60
\keep\nowidctlpar\hyphpar0\fs20\lang1024{\cs40\b\f0 action} {\cs46\f7\cf12\lang1024 Token}[
{\cs35\i\f6\cf13\lang1024 Token}] : {\cs42\scaps\f0\cf6\lang1024 Token}\par\pard\plain\s21\li540
\sa60\keep\nowidctlpar\hyphpar0\fs20\lang1024{\cs46\f7\cf12\lang1024 Token}[
{\cs35\i\f6\cf13\lang1024 Token}
{\field{\*\fldinst SYMBOL 222 \\f "Symbol" \\s 10}{\fldrslt\f3\fs20}}
{\cs35\i\f6\cf13\lang1024 LineBreaks}] = {\cs43\f4\cf6\lang1024 lineBreaks}\par
{\cs46\f7\cf12\lang1024 Token}[{\cs35\i\f6\cf13\lang1024 Token}
{\field{\*\fldinst SYMBOL 222 \\f "Symbol" \\s 10}{\fldrslt\f3\fs20}}
{\cs35\i\f6\cf13\lang1024 IdentifierOrReservedWord}] = {\cs46\f7\cf12\lang1024 Token}[
{\cs35\i\f6\cf13\lang1024 IdentifierOrReservedWord}]\par{\cs46\f7\cf12\lang1024 Token}[
{\cs35\i\f6\cf13\lang1024 Token}
{\field{\*\fldinst SYMBOL 222 \\f "Symbol" \\s 10}{\fldrslt\f3\fs20}}
{\cs35\i\f6\cf13\lang1024 Punctuator}] = {\cs43\f4\cf6\lang1024 punctuator}
{\cs46\f7\cf12\lang1024 Punctuator}[{\cs35\i\f6\cf13\lang1024 Punctuator}]\par
{\cs46\f7\cf12\lang1024 Token}[{\cs35\i\f6\cf13\lang1024 Token}
{\field{\*\fldinst SYMBOL 222 \\f "Symbol" \\s 10}{\fldrslt\f3\fs20}}
{\cs35\i\f6\cf13\lang1024 NumericLiteral}] = {\cs43\f4\cf6\lang1024 number}
{\cs46\f7\cf12\lang1024 DoubleValue}[{\cs35\i\f6\cf13\lang1024 NumericLiteral}]\par
{\cs46\f7\cf12\lang1024 Token}[{\cs35\i\f6\cf13\lang1024 Token}
{\field{\*\fldinst SYMBOL 222 \\f "Symbol" \\s 10}{\fldrslt\f3\fs20}}
{\cs35\i\f6\cf13\lang1024 StringLiteral}] = {\cs43\f4\cf6\lang1024 string}
{\cs46\f7\cf12\lang1024 StringValue}[{\cs35\i\f6\cf13\lang1024 StringLiteral}]\par
{\cs46\f7\cf12\lang1024 Token}[{\cs35\i\f6\cf13\lang1024 Token}
{\field{\*\fldinst SYMBOL 222 \\f "Symbol" \\s 10}{\fldrslt\f3\fs20}}
{\cs35\i\f6\cf13\lang1024 EndOfInput}] = {\cs43\f4\cf6\lang1024 end}\par\pard\plain\s2\sa60\keep
\keepn\nowidctlpar\hyphpar0\level3\b\fs24\lang2057 Keywords\par\pard\plain\s11\sb60\keep\keepn
\nowidctlpar\hyphpar0\b\fs20\lang2057 Syntax\par\pard\plain\s12\fi-1440\li1800\sb120\keep\keepn
\nowidctlpar\hyphpar0\outlinelevel4\fs20\lang1024{\cs35\i\f6\cf13\lang1024 IdentifierName}
{\field{\*\fldinst SYMBOL 222 \\f "Symbol" \\s 10}{\fldrslt\f3\fs20}}\par\pard\plain\s14\fi-1260
\li1800\keep\keepn\nowidctlpar\tx720\hyphpar0\fs20\lang1024\tab
{\cs35\i\f6\cf13\lang1024 IdentifierLetter}\par|\tab{\cs35\i\f6\cf13\lang1024 IdentifierName}
{\cs35\i\f6\cf13\lang1024 IdentifierLetter}\par\pard\plain\s15\fi-1260\li1800\sa120\keep\nowidctlpar
\tx720\hyphpar0\fs20\lang1024|\tab{\cs35\i\f6\cf13\lang1024 IdentifierName}
{\cs35\i\f6\cf13\lang1024 DecimalDigit}\par\pard\plain\s12\fi-1440\li1800\sb120\keep\keepn
\nowidctlpar\hyphpar0\outlinelevel4\fs20\lang1024{\cs35\i\f6\cf13\lang1024 IdentifierLetter}
{\field{\*\fldinst SYMBOL 222 \\f "Symbol" \\s 10}{\fldrslt\f3\fs20}}\par\pard\plain\s14\fi-1260
\li1800\keep\keepn\nowidctlpar\tx720\hyphpar0\fs20\lang1024\tab{\cs31\b\f5\cf2\lang1024 A} |
{\cs31\b\f5\cf2\lang1024 B} | {\cs31\b\f5\cf2\lang1024 C} | {\cs31\b\f5\cf2\lang1024 D} |
{\cs31\b\f5\cf2\lang1024 E} | {\cs31\b\f5\cf2\lang1024 F} | {\cs31\b\f5\cf2\lang1024 G} |
{\cs31\b\f5\cf2\lang1024 H} | {\cs31\b\f5\cf2\lang1024 I} | {\cs31\b\f5\cf2\lang1024 J} |
{\cs31\b\f5\cf2\lang1024 K} | {\cs31\b\f5\cf2\lang1024 L} | {\cs31\b\f5\cf2\lang1024 M} |
{\cs31\b\f5\cf2\lang1024 N} | {\cs31\b\f5\cf2\lang1024 O} | {\cs31\b\f5\cf2\lang1024 P} |
{\cs31\b\f5\cf2\lang1024 Q} | {\cs31\b\f5\cf2\lang1024 R} | {\cs31\b\f5\cf2\lang1024 S} |
{\cs31\b\f5\cf2\lang1024 T} | {\cs31\b\f5\cf2\lang1024 U} | {\cs31\b\f5\cf2\lang1024 V} |
{\cs31\b\f5\cf2\lang1024 W} | {\cs31\b\f5\cf2\lang1024 X} | {\cs31\b\f5\cf2\lang1024 Y} |
{\cs31\b\f5\cf2\lang1024 Z}\par|\tab{\cs31\b\f5\cf2\lang1024 a} | {\cs31\b\f5\cf2\lang1024 b} |
{\cs31\b\f5\cf2\lang1024 c} | {\cs31\b\f5\cf2\lang1024 d} | {\cs31\b\f5\cf2\lang1024 e} |
{\cs31\b\f5\cf2\lang1024 f} | {\cs31\b\f5\cf2\lang1024 g} | {\cs31\b\f5\cf2\lang1024 h} |
{\cs31\b\f5\cf2\lang1024 i} | {\cs31\b\f5\cf2\lang1024 j} | {\cs31\b\f5\cf2\lang1024 k} |
{\cs31\b\f5\cf2\lang1024 l} | {\cs31\b\f5\cf2\lang1024 m} | {\cs31\b\f5\cf2\lang1024 n} |
{\cs31\b\f5\cf2\lang1024 o} | {\cs31\b\f5\cf2\lang1024 p} | {\cs31\b\f5\cf2\lang1024 q} |
{\cs31\b\f5\cf2\lang1024 r} | {\cs31\b\f5\cf2\lang1024 s} | {\cs31\b\f5\cf2\lang1024 t} |
{\cs31\b\f5\cf2\lang1024 u} | {\cs31\b\f5\cf2\lang1024 v} | {\cs31\b\f5\cf2\lang1024 w} |
{\cs31\b\f5\cf2\lang1024 x} | {\cs31\b\f5\cf2\lang1024 y} | {\cs31\b\f5\cf2\lang1024 z}\par\pard
\plain\s15\fi-1260\li1800\sa120\keep\nowidctlpar\tx720\hyphpar0\fs20\lang1024|\tab
{\cs31\b\f5\cf2\lang1024$} | {\cs31\b\f5\cf2\lang1024_}\par\pard\plain\s13\fi-1440\li1800\sb120
\sa120\keep\nowidctlpar\hyphpar0\outlinelevel4\fs20\lang1024{\cs35\i\f6\cf13\lang1024 DecimalDigit}
{\field{\*\fldinst SYMBOL 222 \\f "Symbol" \\s 10}{\fldrslt\f3\fs20}} {\cs31\b\f5\cf2\lang1024 0} |
{\cs31\b\f5\cf2\lang1024 1} | {\cs31\b\f5\cf2\lang1024 2} | {\cs31\b\f5\cf2\lang1024 3} |
{\cs31\b\f5\cf2\lang1024 4} | {\cs31\b\f5\cf2\lang1024 5} | {\cs31\b\f5\cf2\lang1024 6} |
{\cs31\b\f5\cf2\lang1024 7} | {\cs31\b\f5\cf2\lang1024 8} | {\cs31\b\f5\cf2\lang1024 9}\par\pard
\plain\s11\sb60\keep\keepn\nowidctlpar\hyphpar0\b\fs20\lang2057 Semantics\par\pard\plain\s20\li180
\sb60\sa60\keep\nowidctlpar\hyphpar0\fs20\lang1024{\cs40\b\f0 action} {\cs46\f7\cf12\lang1024 Name}[
{\cs35\i\f6\cf13\lang1024 IdentifierName}] : {\cs42\scaps\f0\cf6\lang1024 String}\par\pard\plain\s21
\li540\sa60\keep\nowidctlpar\hyphpar0\fs20\lang1024{\cs46\f7\cf12\lang1024 Name}[
{\cs35\i\f6\cf13\lang1024 IdentifierName}
{\field{\*\fldinst SYMBOL 222 \\f "Symbol" \\s 10}{\fldrslt\f3\fs20}}
{\cs35\i\f6\cf13\lang1024 IdentifierLetter}] = {\b[}{\cs46\f7\cf12\lang1024 CharacterValue}[
{\cs35\i\f6\cf13\lang1024 IdentifierLetter}]{\b]}\par{\cs46\f7\cf12\lang1024 Name}[
{\cs35\i\f6\cf13\lang1024 IdentifierName}
{\field{\*\fldinst SYMBOL 222 \\f "Symbol" \\s 10}{\fldrslt\f3\fs20}}
{\cs35\i\f6\cf13\lang1024 IdentifierName\b0\i0\sub 1} {\cs35\i\f6\cf13\lang1024 IdentifierLetter}]
\line = {\cs46\f7\cf12\lang1024 Name}[{\cs35\i\f6\cf13\lang1024 IdentifierName\b0\i0\sub 1}]
{\field{\*\fldinst SYMBOL 58 \\f "Zapf Dingbats" \\s 10}{\fldrslt\f8\fs20}} {\b[}
{\cs46\f7\cf12\lang1024 CharacterValue}[{\cs35\i\f6\cf13\lang1024 IdentifierLetter}]{\b]}\par
{\cs46\f7\cf12\lang1024 Name}[{\cs35\i\f6\cf13\lang1024 IdentifierName}
{\field{\*\fldinst SYMBOL 222 \\f "Symbol" \\s 10}{\fldrslt\f3\fs20}}
{\cs35\i\f6\cf13\lang1024 IdentifierName\b0\i0\sub 1} {\cs35\i\f6\cf13\lang1024 DecimalDigit}]\line
= {\cs46\f7\cf12\lang1024 Name}[{\cs35\i\f6\cf13\lang1024 IdentifierName\b0\i0\sub 1}]
{\field{\*\fldinst SYMBOL 58 \\f "Zapf Dingbats" \\s 10}{\fldrslt\f8\fs20}} {\b[}
{\cs46\f7\cf12\lang1024 CharacterValue}[{\cs35\i\f6\cf13\lang1024 DecimalDigit}]{\b]}\par\pard\plain
\s20\li180\sb60\sa60\keep\nowidctlpar\hyphpar0\fs20\lang1024{\cs40\b\f0 action}
{\cs46\f7\cf12\lang1024 CharacterValue}[{\cs35\i\f6\cf13\lang1024 IdentifierLetter}] :
{\cs42\scaps\f0\cf6\lang1024 Character} = {\cs35\i\f6\cf13\lang1024 IdentifierLetter}\par
{\cs40\b\f0 action} {\cs46\f7\cf12\lang1024 CharacterValue}[{\cs35\i\f6\cf13\lang1024 DecimalDigit}]
: {\cs42\scaps\f0\cf6\lang1024 Character} = {\cs35\i\f6\cf13\lang1024 DecimalDigit}\par
{\cs40\b\f0 action} {\cs46\f7\cf12\lang1024 DigitValue}[{\cs35\i\f6\cf13\lang1024 DecimalDigit}] :
{\cs42\scaps\f0\cf6\lang1024 Integer} = {\cs44\i\f0\cf11\lang1024 digitValue}(
{\cs35\i\f6\cf13\lang1024 DecimalDigit})\par{\cs44\i\f0\cf11\lang1024 keywords} :
{\cs41\f0\cf6\lang1024{\cs42\scaps\f0\cf6\lang1024 String}[]}\line = {\b[}\ldblquote
{\cs31\b\f5\cf2\lang1024 break}\rdblquote,\line \ldblquote{\cs31\b\f5\cf2\lang1024 case}
\rdblquote,\line \ldblquote{\cs31\b\f5\cf2\lang1024 catch}\rdblquote,\line \ldblquote
{\cs31\b\f5\cf2\lang1024 continue}\rdblquote,\line \ldblquote{\cs31\b\f5\cf2\lang1024 default}
\rdblquote,\line \ldblquote{\cs31\b\f5\cf2\lang1024 delete}\rdblquote,\line \ldblquote
{\cs31\b\f5\cf2\lang1024 do}\rdblquote,\line \ldblquote{\cs31\b\f5\cf2\lang1024 else}
\rdblquote,\line \ldblquote{\cs31\b\f5\cf2\lang1024 finally}\rdblquote,\line \ldblquote
{\cs31\b\f5\cf2\lang1024 for}\rdblquote,\line \ldblquote{\cs31\b\f5\cf2\lang1024 function}
\rdblquote,\line \ldblquote{\cs31\b\f5\cf2\lang1024 if}\rdblquote,\line \ldblquote
{\cs31\b\f5\cf2\lang1024 in}\rdblquote,\line \ldblquote{\cs31\b\f5\cf2\lang1024 new}\rdblquote
,\line \ldblquote{\cs31\b\f5\cf2\lang1024 return}\rdblquote,\line \ldblquote
{\cs31\b\f5\cf2\lang1024 switch}\rdblquote,\line \ldblquote{\cs31\b\f5\cf2\lang1024 this}
\rdblquote,\line \ldblquote{\cs31\b\f5\cf2\lang1024 throw}\rdblquote,\line \ldblquote
{\cs31\b\f5\cf2\lang1024 try}\rdblquote,\line \ldblquote{\cs31\b\f5\cf2\lang1024 typeof}
\rdblquote,\line \ldblquote{\cs31\b\f5\cf2\lang1024 var}\rdblquote,\line \ldblquote
{\cs31\b\f5\cf2\lang1024 void}\rdblquote,\line \ldblquote{\cs31\b\f5\cf2\lang1024 while}
\rdblquote,\line \ldblquote{\cs31\b\f5\cf2\lang1024 with}\rdblquote{\b]}\par
{\cs44\i\f0\cf11\lang1024 futureReservedWords} :
{\cs41\f0\cf6\lang1024{\cs42\scaps\f0\cf6\lang1024 String}[]}\line = {\b[}\ldblquote
{\cs31\b\f5\cf2\lang1024 class}\rdblquote, \ldblquote{\cs31\b\f5\cf2\lang1024 const}\rdblquote,
\ldblquote{\cs31\b\f5\cf2\lang1024 debugger}\rdblquote, \ldblquote{\cs31\b\f5\cf2\lang1024 enum}
\rdblquote, \ldblquote{\cs31\b\f5\cf2\lang1024 export}\rdblquote, \ldblquote
{\cs31\b\f5\cf2\lang1024 extends}\rdblquote, \ldblquote{\cs31\b\f5\cf2\lang1024 import}\rdblquote,
\ldblquote{\cs31\b\f5\cf2\lang1024 super}\rdblquote{\b]}\par{\cs44\i\f0\cf11\lang1024 literals} :
{\cs41\f0\cf6\lang1024{\cs42\scaps\f0\cf6\lang1024 String}[]} = {\b[}\ldblquote
{\cs31\b\f5\cf2\lang1024 null}\rdblquote, \ldblquote{\cs31\b\f5\cf2\lang1024 true}\rdblquote,
\ldblquote{\cs31\b\f5\cf2\lang1024 false}\rdblquote{\b]}\par{\cs44\i\f0\cf11\lang1024 reservedWords}
: {\cs41\f0\cf6\lang1024{\cs42\scaps\f0\cf6\lang1024 String}[]} =
{\cs44\i\f0\cf11\lang1024 keywords}
{\field{\*\fldinst SYMBOL 58 \\f "Zapf Dingbats" \\s 10}{\fldrslt\f8\fs20}}
{\cs44\i\f0\cf11\lang1024 futureReservedWords}
{\field{\*\fldinst SYMBOL 58 \\f "Zapf Dingbats" \\s 10}{\fldrslt\f8\fs20}}
{\cs44\i\f0\cf11\lang1024 literals}\par{\cs44\i\f0\cf11\lang1024 member}(
{\cs45\i\f0\cf4\lang1024 id}: {\cs42\scaps\f0\cf6\lang1024 String}, {\cs45\i\f0\cf4\lang1024 list}:
{\cs41\f0\cf6\lang1024{\cs42\scaps\f0\cf6\lang1024 String}[]}) :
{\cs42\scaps\f0\cf6\lang1024 Boolean}\line = {\cs40\b\f0 if} {\cs44\i\f0\cf11\lang1024 empty}(
{\cs45\i\f0\cf4\lang1024 list})\line {\cs40\b\f0 then} {\cs44\i\f0\cf11\lang1024 false}\line
{\cs40\b\f0 else} {\cs40\b\f0 let} {\cs45\i\f0\cf4\lang1024 s}:
{\cs42\scaps\f0\cf6\lang1024 String} = {\cs44\i\f0\cf11\lang1024 first}(
{\cs45\i\f0\cf4\lang1024 list})\line {\cs40\b\f0 in} {\cs40\b\f0 if}
{\cs44\i\f0\cf11\lang1024 stringEqual}({\cs45\i\f0\cf4\lang1024 id}, {\cs45\i\f0\cf4\lang1024 s})
\line {\cs40\b\f0 then} {\cs44\i\f0\cf11\lang1024 true}\line
{\cs40\b\f0 else} {\cs44\i\f0\cf11\lang1024 member}({\cs45\i\f0\cf4\lang1024 id},
{\cs44\i\f0\cf11\lang1024 rest}({\cs45\i\f0\cf4\lang1024 list}))\par\pard\plain\s11\sb60\keep\keepn
\nowidctlpar\hyphpar0\b\fs20\lang2057 Syntax\par\pard\plain\s13\fi-1440\li1800\sb120\sa120\keep
\nowidctlpar\hyphpar0\outlinelevel4\fs20\lang1024{\cs35\i\f6\cf13\lang1024 IdentifierOrReservedWord}
{\field{\*\fldinst SYMBOL 222 \\f "Symbol" \\s 10}{\fldrslt\f3\fs20}}
{\cs35\i\f6\cf13\lang1024 IdentifierName}\par\pard\plain\s11\sb60\keep\keepn\nowidctlpar\hyphpar0\b
\fs20\lang2057 Semantics\par\pard\plain\s20\li180\sb60\sa60\keep\nowidctlpar\hyphpar0\fs20\lang1024
{\cs40\b\f0 action} {\cs46\f7\cf12\lang1024 Token}[
{\cs35\i\f6\cf13\lang1024 IdentifierOrReservedWord}] : {\cs42\scaps\f0\cf6\lang1024 Token}\par\pard
\plain\s21\li540\sa60\keep\nowidctlpar\hyphpar0\fs20\lang1024{\cs46\f7\cf12\lang1024 Token}[
{\cs35\i\f6\cf13\lang1024 IdentifierOrReservedWord}
{\field{\*\fldinst SYMBOL 222 \\f "Symbol" \\s 10}{\fldrslt\f3\fs20}}
{\cs35\i\f6\cf13\lang1024 IdentifierName}]\line = {\cs40\b\f0 let} {\cs45\i\f0\cf4\lang1024 id}:
{\cs42\scaps\f0\cf6\lang1024 String} = {\cs46\f7\cf12\lang1024 Name}[
{\cs35\i\f6\cf13\lang1024 IdentifierName}]\line {\cs40\b\f0 in} {\cs40\b\f0 if}
{\cs44\i\f0\cf11\lang1024 member}({\cs45\i\f0\cf4\lang1024 id},
{\cs44\i\f0\cf11\lang1024 reservedWords})\line {\cs40\b\f0 then}
{\cs43\f4\cf6\lang1024 reservedWord} {\cs45\i\f0\cf4\lang1024 id}\line {\cs40\b\f0 else}
{\cs43\f4\cf6\lang1024 identifier} {\cs45\i\f0\cf4\lang1024 id}\par\pard\plain\s2\sa60\keep\keepn
\nowidctlpar\hyphpar0\level3\b\fs24\lang2057 Punctuators\par\pard\plain\s11\sb60\keep\keepn
\nowidctlpar\hyphpar0\b\fs20\lang2057 Syntax\par\pard\plain\s12\fi-1440\li1800\sb120\keep\keepn
\nowidctlpar\hyphpar0\outlinelevel4\fs20\lang1024{\cs35\i\f6\cf13\lang1024 Punctuator}
{\field{\*\fldinst SYMBOL 222 \\f "Symbol" \\s 10}{\fldrslt\f3\fs20}}\par\pard\plain\s14\fi-1260
\li1800\keep\keepn\nowidctlpar\tx720\hyphpar0\fs20\lang1024\tab{\cs31\b\f5\cf2\lang1024=}\par|\tab
{\cs31\b\f5\cf2\lang1024>}\par|\tab{\cs31\b\f5\cf2\lang1024<}\par|\tab{\cs31\b\f5\cf2\lang1024=}
{\cs31\b\f5\cf2\lang1024=}\par|\tab{\cs31\b\f5\cf2\lang1024=} {\cs31\b\f5\cf2\lang1024=}
{\cs31\b\f5\cf2\lang1024=}\par|\tab{\cs31\b\f5\cf2\lang1024<} {\cs31\b\f5\cf2\lang1024=}\par|\tab
{\cs31\b\f5\cf2\lang1024>} {\cs31\b\f5\cf2\lang1024=}\par|\tab{\cs31\b\f5\cf2\lang1024!}
{\cs31\b\f5\cf2\lang1024=}\par|\tab{\cs31\b\f5\cf2\lang1024!} {\cs31\b\f5\cf2\lang1024=}
{\cs31\b\f5\cf2\lang1024=}\par|\tab{\cs31\b\f5\cf2\lang1024,}\par|\tab{\cs31\b\f5\cf2\lang1024!}\par
|\tab{\cs31\b\f5\cf2\lang1024~}\par|\tab{\cs31\b\f5\cf2\lang1024?}\par|\tab
{\cs31\b\f5\cf2\lang1024:}\par|\tab{\cs31\b\f5\cf2\lang1024.}\par|\tab{\cs31\b\f5\cf2\lang1024&}
{\cs31\b\f5\cf2\lang1024&}\par|\tab{\cs31\b\f5\cf2\lang1024|} {\cs31\b\f5\cf2\lang1024|}\par|\tab
{\cs31\b\f5\cf2\lang1024 +} {\cs31\b\f5\cf2\lang1024 +}\par|\tab{\cs31\b\f5\cf2\lang1024 -}
{\cs31\b\f5\cf2\lang1024 -}\par|\tab{\cs31\b\f5\cf2\lang1024 +}\par|\tab{\cs31\b\f5\cf2\lang1024 -}
\par|\tab{\cs31\b\f5\cf2\lang1024*}\par|\tab{\cs31\b\f5\cf2\lang1024/}\par|\tab
{\cs31\b\f5\cf2\lang1024&}\par|\tab{\cs31\b\f5\cf2\lang1024|}\par|\tab{\cs31\b\f5\cf2\lang1024^}\par
|\tab{\cs31\b\f5\cf2\lang1024%}\par|\tab{\cs31\b\f5\cf2\lang1024<} {\cs31\b\f5\cf2\lang1024<}\par|
\tab{\cs31\b\f5\cf2\lang1024>} {\cs31\b\f5\cf2\lang1024>}\par|\tab{\cs31\b\f5\cf2\lang1024>}
{\cs31\b\f5\cf2\lang1024>} {\cs31\b\f5\cf2\lang1024>}\par|\tab{\cs31\b\f5\cf2\lang1024 +}
{\cs31\b\f5\cf2\lang1024=}\par|\tab{\cs31\b\f5\cf2\lang1024 -} {\cs31\b\f5\cf2\lang1024=}\par|\tab
{\cs31\b\f5\cf2\lang1024*} {\cs31\b\f5\cf2\lang1024=}\par|\tab{\cs31\b\f5\cf2\lang1024/}
{\cs31\b\f5\cf2\lang1024=}\par|\tab{\cs31\b\f5\cf2\lang1024&} {\cs31\b\f5\cf2\lang1024=}\par|\tab
{\cs31\b\f5\cf2\lang1024|} {\cs31\b\f5\cf2\lang1024=}\par|\tab{\cs31\b\f5\cf2\lang1024^}
{\cs31\b\f5\cf2\lang1024=}\par|\tab{\cs31\b\f5\cf2\lang1024%} {\cs31\b\f5\cf2\lang1024=}\par|\tab
{\cs31\b\f5\cf2\lang1024<} {\cs31\b\f5\cf2\lang1024<} {\cs31\b\f5\cf2\lang1024=}\par|\tab
{\cs31\b\f5\cf2\lang1024>} {\cs31\b\f5\cf2\lang1024>} {\cs31\b\f5\cf2\lang1024=}\par|\tab
{\cs31\b\f5\cf2\lang1024>} {\cs31\b\f5\cf2\lang1024>} {\cs31\b\f5\cf2\lang1024>}
{\cs31\b\f5\cf2\lang1024=}\par|\tab{\cs31\b\f5\cf2\lang1024(}\par|\tab{\cs31\b\f5\cf2\lang1024)}\par
|\tab{\cs31\b\f5\cf2\lang1024\{}\par|\tab{\cs31\b\f5\cf2\lang1024\}}\par|\tab
{\cs31\b\f5\cf2\lang1024[}\par|\tab{\cs31\b\f5\cf2\lang1024]}\par\pard\plain\s15\fi-1260\li1800
\sa120\keep\nowidctlpar\tx720\hyphpar0\fs20\lang1024|\tab{\cs31\b\f5\cf2\lang1024;}\par\pard\plain
\s11\sb60\keep\keepn\nowidctlpar\hyphpar0\b\fs20\lang2057 Semantics\par\pard\plain\s20\li180\sb60
\sa60\keep\nowidctlpar\hyphpar0\fs20\lang1024{\cs40\b\f0 action} {\cs46\f7\cf12\lang1024 Punctuator}
[{\cs35\i\f6\cf13\lang1024 Punctuator}] : {\cs42\scaps\f0\cf6\lang1024 String}\par\pard\plain\s21
\li540\sa60\keep\nowidctlpar\hyphpar0\fs20\lang1024{\cs46\f7\cf12\lang1024 Punctuator}[
{\cs35\i\f6\cf13\lang1024 Punctuator}
{\field{\*\fldinst SYMBOL 222 \\f "Symbol" \\s 10}{\fldrslt\f3\fs20}} {\cs31\b\f5\cf2\lang1024=}] =
\ldblquote{\cs31\b\f5\cf2\lang1024=}\rdblquote\par{\cs46\f7\cf12\lang1024 Punctuator}[
{\cs35\i\f6\cf13\lang1024 Punctuator}
{\field{\*\fldinst SYMBOL 222 \\f "Symbol" \\s 10}{\fldrslt\f3\fs20}} {\cs31\b\f5\cf2\lang1024>}] =
\ldblquote{\cs31\b\f5\cf2\lang1024>}\rdblquote\par{\cs46\f7\cf12\lang1024 Punctuator}[
{\cs35\i\f6\cf13\lang1024 Punctuator}
{\field{\*\fldinst SYMBOL 222 \\f "Symbol" \\s 10}{\fldrslt\f3\fs20}} {\cs31\b\f5\cf2\lang1024<}] =
\ldblquote{\cs31\b\f5\cf2\lang1024<}\rdblquote\par{\cs46\f7\cf12\lang1024 Punctuator}[
{\cs35\i\f6\cf13\lang1024 Punctuator}
{\field{\*\fldinst SYMBOL 222 \\f "Symbol" \\s 10}{\fldrslt\f3\fs20}} {\cs31\b\f5\cf2\lang1024=}
{\cs31\b\f5\cf2\lang1024=}] = \ldblquote{\cs31\b\f5\cf2\lang1024==}\rdblquote\par
{\cs46\f7\cf12\lang1024 Punctuator}[{\cs35\i\f6\cf13\lang1024 Punctuator}
{\field{\*\fldinst SYMBOL 222 \\f "Symbol" \\s 10}{\fldrslt\f3\fs20}} {\cs31\b\f5\cf2\lang1024=}
{\cs31\b\f5\cf2\lang1024=} {\cs31\b\f5\cf2\lang1024=}] = \ldblquote{\cs31\b\f5\cf2\lang1024===}
\rdblquote\par{\cs46\f7\cf12\lang1024 Punctuator}[{\cs35\i\f6\cf13\lang1024 Punctuator}
{\field{\*\fldinst SYMBOL 222 \\f "Symbol" \\s 10}{\fldrslt\f3\fs20}} {\cs31\b\f5\cf2\lang1024<}
{\cs31\b\f5\cf2\lang1024=}] = \ldblquote{\cs31\b\f5\cf2\lang1024<=}\rdblquote\par
{\cs46\f7\cf12\lang1024 Punctuator}[{\cs35\i\f6\cf13\lang1024 Punctuator}
{\field{\*\fldinst SYMBOL 222 \\f "Symbol" \\s 10}{\fldrslt\f3\fs20}} {\cs31\b\f5\cf2\lang1024>}
{\cs31\b\f5\cf2\lang1024=}] = \ldblquote{\cs31\b\f5\cf2\lang1024>=}\rdblquote\par
{\cs46\f7\cf12\lang1024 Punctuator}[{\cs35\i\f6\cf13\lang1024 Punctuator}
{\field{\*\fldinst SYMBOL 222 \\f "Symbol" \\s 10}{\fldrslt\f3\fs20}} {\cs31\b\f5\cf2\lang1024!}
{\cs31\b\f5\cf2\lang1024=}] = \ldblquote{\cs31\b\f5\cf2\lang1024!=}\rdblquote\par
{\cs46\f7\cf12\lang1024 Punctuator}[{\cs35\i\f6\cf13\lang1024 Punctuator}
{\field{\*\fldinst SYMBOL 222 \\f "Symbol" \\s 10}{\fldrslt\f3\fs20}} {\cs31\b\f5\cf2\lang1024!}
{\cs31\b\f5\cf2\lang1024=} {\cs31\b\f5\cf2\lang1024=}] = \ldblquote{\cs31\b\f5\cf2\lang1024!==}
\rdblquote\par{\cs46\f7\cf12\lang1024 Punctuator}[{\cs35\i\f6\cf13\lang1024 Punctuator}
{\field{\*\fldinst SYMBOL 222 \\f "Symbol" \\s 10}{\fldrslt\f3\fs20}} {\cs31\b\f5\cf2\lang1024,}] =
\ldblquote{\cs31\b\f5\cf2\lang1024,}\rdblquote\par{\cs46\f7\cf12\lang1024 Punctuator}[
{\cs35\i\f6\cf13\lang1024 Punctuator}
{\field{\*\fldinst SYMBOL 222 \\f "Symbol" \\s 10}{\fldrslt\f3\fs20}} {\cs31\b\f5\cf2\lang1024!}] =
\ldblquote{\cs31\b\f5\cf2\lang1024!}\rdblquote\par{\cs46\f7\cf12\lang1024 Punctuator}[
{\cs35\i\f6\cf13\lang1024 Punctuator}
{\field{\*\fldinst SYMBOL 222 \\f "Symbol" \\s 10}{\fldrslt\f3\fs20}} {\cs31\b\f5\cf2\lang1024~}] =
\ldblquote{\cs31\b\f5\cf2\lang1024~}\rdblquote\par{\cs46\f7\cf12\lang1024 Punctuator}[
{\cs35\i\f6\cf13\lang1024 Punctuator}
{\field{\*\fldinst SYMBOL 222 \\f "Symbol" \\s 10}{\fldrslt\f3\fs20}} {\cs31\b\f5\cf2\lang1024?}] =
\ldblquote{\cs31\b\f5\cf2\lang1024?}\rdblquote\par{\cs46\f7\cf12\lang1024 Punctuator}[
{\cs35\i\f6\cf13\lang1024 Punctuator}
{\field{\*\fldinst SYMBOL 222 \\f "Symbol" \\s 10}{\fldrslt\f3\fs20}} {\cs31\b\f5\cf2\lang1024:}] =
\ldblquote{\cs31\b\f5\cf2\lang1024:}\rdblquote\par{\cs46\f7\cf12\lang1024 Punctuator}[
{\cs35\i\f6\cf13\lang1024 Punctuator}
{\field{\*\fldinst SYMBOL 222 \\f "Symbol" \\s 10}{\fldrslt\f3\fs20}} {\cs31\b\f5\cf2\lang1024.}] =
\ldblquote{\cs31\b\f5\cf2\lang1024.}\rdblquote\par{\cs46\f7\cf12\lang1024 Punctuator}[
{\cs35\i\f6\cf13\lang1024 Punctuator}
{\field{\*\fldinst SYMBOL 222 \\f "Symbol" \\s 10}{\fldrslt\f3\fs20}} {\cs31\b\f5\cf2\lang1024&}
{\cs31\b\f5\cf2\lang1024&}] = \ldblquote{\cs31\b\f5\cf2\lang1024&&}\rdblquote\par
{\cs46\f7\cf12\lang1024 Punctuator}[{\cs35\i\f6\cf13\lang1024 Punctuator}
{\field{\*\fldinst SYMBOL 222 \\f "Symbol" \\s 10}{\fldrslt\f3\fs20}} {\cs31\b\f5\cf2\lang1024|}
{\cs31\b\f5\cf2\lang1024|}] = \ldblquote{\cs31\b\f5\cf2\lang1024||}\rdblquote\par
{\cs46\f7\cf12\lang1024 Punctuator}[{\cs35\i\f6\cf13\lang1024 Punctuator}
{\field{\*\fldinst SYMBOL 222 \\f "Symbol" \\s 10}{\fldrslt\f3\fs20}} {\cs31\b\f5\cf2\lang1024 +}
{\cs31\b\f5\cf2\lang1024 +}] = \ldblquote{\cs31\b\f5\cf2\lang1024 ++}\rdblquote\par
{\cs46\f7\cf12\lang1024 Punctuator}[{\cs35\i\f6\cf13\lang1024 Punctuator}
{\field{\*\fldinst SYMBOL 222 \\f "Symbol" \\s 10}{\fldrslt\f3\fs20}} {\cs31\b\f5\cf2\lang1024 -}
{\cs31\b\f5\cf2\lang1024 -}] = \ldblquote{\cs31\b\f5\cf2\lang1024 --}\rdblquote\par
{\cs46\f7\cf12\lang1024 Punctuator}[{\cs35\i\f6\cf13\lang1024 Punctuator}
{\field{\*\fldinst SYMBOL 222 \\f "Symbol" \\s 10}{\fldrslt\f3\fs20}} {\cs31\b\f5\cf2\lang1024 +}] =
\ldblquote{\cs31\b\f5\cf2\lang1024 +}\rdblquote\par{\cs46\f7\cf12\lang1024 Punctuator}[
{\cs35\i\f6\cf13\lang1024 Punctuator}
{\field{\*\fldinst SYMBOL 222 \\f "Symbol" \\s 10}{\fldrslt\f3\fs20}} {\cs31\b\f5\cf2\lang1024 -}] =
\ldblquote{\cs31\b\f5\cf2\lang1024 -}\rdblquote\par{\cs46\f7\cf12\lang1024 Punctuator}[
{\cs35\i\f6\cf13\lang1024 Punctuator}
{\field{\*\fldinst SYMBOL 222 \\f "Symbol" \\s 10}{\fldrslt\f3\fs20}} {\cs31\b\f5\cf2\lang1024*}] =
\ldblquote{\cs31\b\f5\cf2\lang1024*}\rdblquote\par{\cs46\f7\cf12\lang1024 Punctuator}[
{\cs35\i\f6\cf13\lang1024 Punctuator}
{\field{\*\fldinst SYMBOL 222 \\f "Symbol" \\s 10}{\fldrslt\f3\fs20}} {\cs31\b\f5\cf2\lang1024/}] =
\ldblquote{\cs31\b\f5\cf2\lang1024/}\rdblquote\par{\cs46\f7\cf12\lang1024 Punctuator}[
{\cs35\i\f6\cf13\lang1024 Punctuator}
{\field{\*\fldinst SYMBOL 222 \\f "Symbol" \\s 10}{\fldrslt\f3\fs20}} {\cs31\b\f5\cf2\lang1024&}] =
\ldblquote{\cs31\b\f5\cf2\lang1024&}\rdblquote\par{\cs46\f7\cf12\lang1024 Punctuator}[
{\cs35\i\f6\cf13\lang1024 Punctuator}
{\field{\*\fldinst SYMBOL 222 \\f "Symbol" \\s 10}{\fldrslt\f3\fs20}} {\cs31\b\f5\cf2\lang1024|}] =
\ldblquote{\cs31\b\f5\cf2\lang1024|}\rdblquote\par{\cs46\f7\cf12\lang1024 Punctuator}[
{\cs35\i\f6\cf13\lang1024 Punctuator}
{\field{\*\fldinst SYMBOL 222 \\f "Symbol" \\s 10}{\fldrslt\f3\fs20}} {\cs31\b\f5\cf2\lang1024^}] =
\ldblquote{\cs31\b\f5\cf2\lang1024^}\rdblquote\par{\cs46\f7\cf12\lang1024 Punctuator}[
{\cs35\i\f6\cf13\lang1024 Punctuator}
{\field{\*\fldinst SYMBOL 222 \\f "Symbol" \\s 10}{\fldrslt\f3\fs20}} {\cs31\b\f5\cf2\lang1024%}] =
\ldblquote{\cs31\b\f5\cf2\lang1024%}\rdblquote\par{\cs46\f7\cf12\lang1024 Punctuator}[
{\cs35\i\f6\cf13\lang1024 Punctuator}
{\field{\*\fldinst SYMBOL 222 \\f "Symbol" \\s 10}{\fldrslt\f3\fs20}} {\cs31\b\f5\cf2\lang1024<}
{\cs31\b\f5\cf2\lang1024<}] = \ldblquote{\cs31\b\f5\cf2\lang1024<<}\rdblquote\par
{\cs46\f7\cf12\lang1024 Punctuator}[{\cs35\i\f6\cf13\lang1024 Punctuator}
{\field{\*\fldinst SYMBOL 222 \\f "Symbol" \\s 10}{\fldrslt\f3\fs20}} {\cs31\b\f5\cf2\lang1024>}
{\cs31\b\f5\cf2\lang1024>}] = \ldblquote{\cs31\b\f5\cf2\lang1024>>}\rdblquote\par
{\cs46\f7\cf12\lang1024 Punctuator}[{\cs35\i\f6\cf13\lang1024 Punctuator}
{\field{\*\fldinst SYMBOL 222 \\f "Symbol" \\s 10}{\fldrslt\f3\fs20}} {\cs31\b\f5\cf2\lang1024>}
{\cs31\b\f5\cf2\lang1024>} {\cs31\b\f5\cf2\lang1024>}] = \ldblquote{\cs31\b\f5\cf2\lang1024>>>}
\rdblquote\par{\cs46\f7\cf12\lang1024 Punctuator}[{\cs35\i\f6\cf13\lang1024 Punctuator}
{\field{\*\fldinst SYMBOL 222 \\f "Symbol" \\s 10}{\fldrslt\f3\fs20}} {\cs31\b\f5\cf2\lang1024 +}
{\cs31\b\f5\cf2\lang1024=}] = \ldblquote{\cs31\b\f5\cf2\lang1024 +=}\rdblquote\par
{\cs46\f7\cf12\lang1024 Punctuator}[{\cs35\i\f6\cf13\lang1024 Punctuator}
{\field{\*\fldinst SYMBOL 222 \\f "Symbol" \\s 10}{\fldrslt\f3\fs20}} {\cs31\b\f5\cf2\lang1024 -}
{\cs31\b\f5\cf2\lang1024=}] = \ldblquote{\cs31\b\f5\cf2\lang1024 -=}\rdblquote\par
{\cs46\f7\cf12\lang1024 Punctuator}[{\cs35\i\f6\cf13\lang1024 Punctuator}
{\field{\*\fldinst SYMBOL 222 \\f "Symbol" \\s 10}{\fldrslt\f3\fs20}} {\cs31\b\f5\cf2\lang1024*}
{\cs31\b\f5\cf2\lang1024=}] = \ldblquote{\cs31\b\f5\cf2\lang1024*=}\rdblquote\par
{\cs46\f7\cf12\lang1024 Punctuator}[{\cs35\i\f6\cf13\lang1024 Punctuator}
{\field{\*\fldinst SYMBOL 222 \\f "Symbol" \\s 10}{\fldrslt\f3\fs20}} {\cs31\b\f5\cf2\lang1024/}
{\cs31\b\f5\cf2\lang1024=}] = \ldblquote{\cs31\b\f5\cf2\lang1024/=}\rdblquote\par
{\cs46\f7\cf12\lang1024 Punctuator}[{\cs35\i\f6\cf13\lang1024 Punctuator}
{\field{\*\fldinst SYMBOL 222 \\f "Symbol" \\s 10}{\fldrslt\f3\fs20}} {\cs31\b\f5\cf2\lang1024&}
{\cs31\b\f5\cf2\lang1024=}] = \ldblquote{\cs31\b\f5\cf2\lang1024&=}\rdblquote\par
{\cs46\f7\cf12\lang1024 Punctuator}[{\cs35\i\f6\cf13\lang1024 Punctuator}
{\field{\*\fldinst SYMBOL 222 \\f "Symbol" \\s 10}{\fldrslt\f3\fs20}} {\cs31\b\f5\cf2\lang1024|}
{\cs31\b\f5\cf2\lang1024=}] = \ldblquote{\cs31\b\f5\cf2\lang1024|=}\rdblquote\par
{\cs46\f7\cf12\lang1024 Punctuator}[{\cs35\i\f6\cf13\lang1024 Punctuator}
{\field{\*\fldinst SYMBOL 222 \\f "Symbol" \\s 10}{\fldrslt\f3\fs20}} {\cs31\b\f5\cf2\lang1024^}
{\cs31\b\f5\cf2\lang1024=}] = \ldblquote{\cs31\b\f5\cf2\lang1024^=}\rdblquote\par
{\cs46\f7\cf12\lang1024 Punctuator}[{\cs35\i\f6\cf13\lang1024 Punctuator}
{\field{\*\fldinst SYMBOL 222 \\f "Symbol" \\s 10}{\fldrslt\f3\fs20}} {\cs31\b\f5\cf2\lang1024%}
{\cs31\b\f5\cf2\lang1024=}] = \ldblquote{\cs31\b\f5\cf2\lang1024%=}\rdblquote\par
{\cs46\f7\cf12\lang1024 Punctuator}[{\cs35\i\f6\cf13\lang1024 Punctuator}
{\field{\*\fldinst SYMBOL 222 \\f "Symbol" \\s 10}{\fldrslt\f3\fs20}} {\cs31\b\f5\cf2\lang1024<}
{\cs31\b\f5\cf2\lang1024<} {\cs31\b\f5\cf2\lang1024=}] = \ldblquote{\cs31\b\f5\cf2\lang1024<<=}
\rdblquote\par{\cs46\f7\cf12\lang1024 Punctuator}[{\cs35\i\f6\cf13\lang1024 Punctuator}
{\field{\*\fldinst SYMBOL 222 \\f "Symbol" \\s 10}{\fldrslt\f3\fs20}} {\cs31\b\f5\cf2\lang1024>}
{\cs31\b\f5\cf2\lang1024>} {\cs31\b\f5\cf2\lang1024=}] = \ldblquote{\cs31\b\f5\cf2\lang1024>>=}
\rdblquote\par{\cs46\f7\cf12\lang1024 Punctuator}[{\cs35\i\f6\cf13\lang1024 Punctuator}
{\field{\*\fldinst SYMBOL 222 \\f "Symbol" \\s 10}{\fldrslt\f3\fs20}} {\cs31\b\f5\cf2\lang1024>}
{\cs31\b\f5\cf2\lang1024>} {\cs31\b\f5\cf2\lang1024>} {\cs31\b\f5\cf2\lang1024=}] = \ldblquote
{\cs31\b\f5\cf2\lang1024>>>=}\rdblquote\par{\cs46\f7\cf12\lang1024 Punctuator}[
{\cs35\i\f6\cf13\lang1024 Punctuator}
{\field{\*\fldinst SYMBOL 222 \\f "Symbol" \\s 10}{\fldrslt\f3\fs20}} {\cs31\b\f5\cf2\lang1024(}] =
\ldblquote{\cs31\b\f5\cf2\lang1024(}\rdblquote\par{\cs46\f7\cf12\lang1024 Punctuator}[
{\cs35\i\f6\cf13\lang1024 Punctuator}
{\field{\*\fldinst SYMBOL 222 \\f "Symbol" \\s 10}{\fldrslt\f3\fs20}} {\cs31\b\f5\cf2\lang1024)}] =
\ldblquote{\cs31\b\f5\cf2\lang1024)}\rdblquote\par{\cs46\f7\cf12\lang1024 Punctuator}[
{\cs35\i\f6\cf13\lang1024 Punctuator}
{\field{\*\fldinst SYMBOL 222 \\f "Symbol" \\s 10}{\fldrslt\f3\fs20}} {\cs31\b\f5\cf2\lang1024\{}] =
\ldblquote{\cs31\b\f5\cf2\lang1024\{}\rdblquote\par{\cs46\f7\cf12\lang1024 Punctuator}[
{\cs35\i\f6\cf13\lang1024 Punctuator}
{\field{\*\fldinst SYMBOL 222 \\f "Symbol" \\s 10}{\fldrslt\f3\fs20}} {\cs31\b\f5\cf2\lang1024\}}] =
\ldblquote{\cs31\b\f5\cf2\lang1024\}}\rdblquote\par{\cs46\f7\cf12\lang1024 Punctuator}[
{\cs35\i\f6\cf13\lang1024 Punctuator}
{\field{\*\fldinst SYMBOL 222 \\f "Symbol" \\s 10}{\fldrslt\f3\fs20}} {\cs31\b\f5\cf2\lang1024[}] =
\ldblquote{\cs31\b\f5\cf2\lang1024[}\rdblquote\par{\cs46\f7\cf12\lang1024 Punctuator}[
{\cs35\i\f6\cf13\lang1024 Punctuator}
{\field{\*\fldinst SYMBOL 222 \\f "Symbol" \\s 10}{\fldrslt\f3\fs20}} {\cs31\b\f5\cf2\lang1024]}] =
\ldblquote{\cs31\b\f5\cf2\lang1024]}\rdblquote\par{\cs46\f7\cf12\lang1024 Punctuator}[
{\cs35\i\f6\cf13\lang1024 Punctuator}
{\field{\*\fldinst SYMBOL 222 \\f "Symbol" \\s 10}{\fldrslt\f3\fs20}} {\cs31\b\f5\cf2\lang1024;}] =
\ldblquote{\cs31\b\f5\cf2\lang1024;}\rdblquote\par\pard\plain\s2\sa60\keep\keepn\nowidctlpar
\hyphpar0\level3\b\fs24\lang2057 Numeric literals\par\pard\plain\s11\sb60\keep\keepn\nowidctlpar
\hyphpar0\b\fs20\lang2057 Syntax\par\pard\plain\s12\fi-1440\li1800\sb120\keep\keepn\nowidctlpar
\hyphpar0\outlinelevel4\fs20\lang1024{\cs35\i\f6\cf13\lang1024 NumericLiteral}
{\field{\*\fldinst SYMBOL 222 \\f "Symbol" \\s 10}{\fldrslt\f3\fs20}}\par\pard\plain\s14\fi-1260
\li1800\keep\keepn\nowidctlpar\tx720\hyphpar0\fs20\lang1024\tab
{\cs35\i\f6\cf13\lang1024 DecimalLiteral}\par|\tab{\cs35\i\f6\cf13\lang1024 HexIntegerLiteral}\par
\pard\plain\s15\fi-1260\li1800\sa120\keep\nowidctlpar\tx720\hyphpar0\fs20\lang1024|\tab
{\cs35\i\f6\cf13\lang1024 OctalIntegerLiteral}\par\pard\plain\s11\sb60\keep\keepn\nowidctlpar
\hyphpar0\b\fs20\lang2057 Semantics\par\pard\plain\s20\li180\sb60\sa60\keep\nowidctlpar\hyphpar0
\fs20\lang1024{\cs40\b\f0 action} {\cs46\f7\cf12\lang1024 DoubleValue}[
{\cs35\i\f6\cf13\lang1024 NumericLiteral}] : {\cs42\scaps\f0\cf6\lang1024 Double}\par\pard\plain\s21
\li540\sa60\keep\nowidctlpar\hyphpar0\fs20\lang1024{\cs46\f7\cf12\lang1024 DoubleValue}[
{\cs35\i\f6\cf13\lang1024 NumericLiteral}
{\field{\*\fldinst SYMBOL 222 \\f "Symbol" \\s 10}{\fldrslt\f3\fs20}}
{\cs35\i\f6\cf13\lang1024 DecimalLiteral}]\line = {\cs44\i\f0\cf11\lang1024 rationalToDouble}(
{\cs46\f7\cf12\lang1024 RationalValue}[{\cs35\i\f6\cf13\lang1024 DecimalLiteral}])\par
{\cs46\f7\cf12\lang1024 DoubleValue}[{\cs35\i\f6\cf13\lang1024 NumericLiteral}
{\field{\*\fldinst SYMBOL 222 \\f "Symbol" \\s 10}{\fldrslt\f3\fs20}}
{\cs35\i\f6\cf13\lang1024 HexIntegerLiteral}]\line = {\cs44\i\f0\cf11\lang1024 rationalToDouble}(
{\cs46\f7\cf12\lang1024 IntegerValue}[{\cs35\i\f6\cf13\lang1024 HexIntegerLiteral}])\par
{\cs46\f7\cf12\lang1024 DoubleValue}[{\cs35\i\f6\cf13\lang1024 NumericLiteral}
{\field{\*\fldinst SYMBOL 222 \\f "Symbol" \\s 10}{\fldrslt\f3\fs20}}
{\cs35\i\f6\cf13\lang1024 OctalIntegerLiteral}]\line = {\cs44\i\f0\cf11\lang1024 rationalToDouble}
({\cs46\f7\cf12\lang1024 IntegerValue}[{\cs35\i\f6\cf13\lang1024 OctalIntegerLiteral}])\par\pard
\plain\s20\li180\sb60\sa60\keep\nowidctlpar\hyphpar0\fs20\lang1024{\cs44\i\f0\cf11\lang1024 expt}(
{\cs45\i\f0\cf4\lang1024 base}: {\cs42\scaps\f0\cf6\lang1024 Rational},
{\cs45\i\f0\cf4\lang1024 exponent}: {\cs42\scaps\f0\cf6\lang1024 Integer}) :
{\cs42\scaps\f0\cf6\lang1024 Rational}\line = {\cs40\b\f0 if} {\cs45\i\f0\cf4\lang1024 exponent} =
0\line {\cs40\b\f0 then} 1\line {\cs40\b\f0 else} {\cs40\b\f0 if}
{\cs45\i\f0\cf4\lang1024 exponent} < 0\line {\cs40\b\f0 then} 1/{\cs44\i\f0\cf11\lang1024 expt}
({\cs45\i\f0\cf4\lang1024 base}, \endash{\cs45\i\f0\cf4\lang1024 exponent})\line
{\cs40\b\f0 else} {\cs45\i\f0\cf4\lang1024 base}*{\cs44\i\f0\cf11\lang1024 expt}(
{\cs45\i\f0\cf4\lang1024 base}, {\cs45\i\f0\cf4\lang1024 exponent} \endash 1)\par\pard\plain\s11
\sb60\keep\keepn\nowidctlpar\hyphpar0\b\fs20\lang2057 Syntax\par\pard\plain\s13\fi-1440\li1800\sb120
\sa120\keep\nowidctlpar\hyphpar0\outlinelevel4\fs20\lang1024
{\cs35\i\f6\cf13\lang1024 DecimalLiteral}
{\field{\*\fldinst SYMBOL 222 \\f "Symbol" \\s 10}{\fldrslt\f3\fs20}}
{\cs35\i\f6\cf13\lang1024 Mantissa} {\cs35\i\f6\cf13\lang1024 Exponent}\par\pard\plain\s12\fi-1440
\li1800\sb120\keep\keepn\nowidctlpar\hyphpar0\outlinelevel4\fs20\lang1024
{\cs35\i\f6\cf13\lang1024 Mantissa}
{\field{\*\fldinst SYMBOL 222 \\f "Symbol" \\s 10}{\fldrslt\f3\fs20}}\par\pard\plain\s14\fi-1260
\li1800\keep\keepn\nowidctlpar\tx720\hyphpar0\fs20\lang1024\tab
{\cs35\i\f6\cf13\lang1024 DecimalIntegerLiteral}\par|\tab
{\cs35\i\f6\cf13\lang1024 DecimalIntegerLiteral} {\cs31\b\f5\cf2\lang1024.}\par|\tab
{\cs35\i\f6\cf13\lang1024 DecimalIntegerLiteral} {\cs31\b\f5\cf2\lang1024.}
{\cs35\i\f6\cf13\lang1024 Fraction}\par\pard\plain\s15\fi-1260\li1800\sa120\keep\nowidctlpar\tx720
\hyphpar0\fs20\lang1024|\tab{\cs31\b\f5\cf2\lang1024.} {\cs35\i\f6\cf13\lang1024 Fraction}\par\pard
\plain\s12\fi-1440\li1800\sb120\keep\keepn\nowidctlpar\hyphpar0\outlinelevel4\fs20\lang1024
{\cs35\i\f6\cf13\lang1024 DecimalIntegerLiteral}
{\field{\*\fldinst SYMBOL 222 \\f "Symbol" \\s 10}{\fldrslt\f3\fs20}}\par\pard\plain\s14\fi-1260
\li1800\keep\keepn\nowidctlpar\tx720\hyphpar0\fs20\lang1024\tab{\cs31\b\f5\cf2\lang1024 0}\par\pard
\plain\s15\fi-1260\li1800\sa120\keep\nowidctlpar\tx720\hyphpar0\fs20\lang1024|\tab
{\cs35\i\f6\cf13\lang1024 NonZeroDecimalDigits}\par\pard\plain\s12\fi-1440\li1800\sb120\keep\keepn
\nowidctlpar\hyphpar0\outlinelevel4\fs20\lang1024{\cs35\i\f6\cf13\lang1024 NonZeroDecimalDigits}
{\field{\*\fldinst SYMBOL 222 \\f "Symbol" \\s 10}{\fldrslt\f3\fs20}}\par\pard\plain\s14\fi-1260
\li1800\keep\keepn\nowidctlpar\tx720\hyphpar0\fs20\lang1024\tab
{\cs35\i\f6\cf13\lang1024 NonZeroDigit}\par\pard\plain\s15\fi-1260\li1800\sa120\keep\nowidctlpar
\tx720\hyphpar0\fs20\lang1024|\tab{\cs35\i\f6\cf13\lang1024 NonZeroDecimalDigits}
{\cs35\i\f6\cf13\lang1024 DecimalDigit}\par\pard\plain\s13\fi-1440\li1800\sb120\sa120\keep
\nowidctlpar\hyphpar0\outlinelevel4\fs20\lang1024{\cs35\i\f6\cf13\lang1024 NonZeroDigit}
{\field{\*\fldinst SYMBOL 222 \\f "Symbol" \\s 10}{\fldrslt\f3\fs20}} {\cs31\b\f5\cf2\lang1024 1} |
{\cs31\b\f5\cf2\lang1024 2} | {\cs31\b\f5\cf2\lang1024 3} | {\cs31\b\f5\cf2\lang1024 4} |
{\cs31\b\f5\cf2\lang1024 5} | {\cs31\b\f5\cf2\lang1024 6} | {\cs31\b\f5\cf2\lang1024 7} |
{\cs31\b\f5\cf2\lang1024 8} | {\cs31\b\f5\cf2\lang1024 9}\par{\cs35\i\f6\cf13\lang1024 Fraction}
{\field{\*\fldinst SYMBOL 222 \\f "Symbol" \\s 10}{\fldrslt\f3\fs20}}
{\cs35\i\f6\cf13\lang1024 DecimalDigits}\par\pard\plain\s11\sb60\keep\keepn\nowidctlpar\hyphpar0\b
\fs20\lang2057 Semantics\par\pard\plain\s20\li180\sb60\sa60\keep\nowidctlpar\hyphpar0\fs20\lang1024
{\cs40\b\f0 action} {\cs46\f7\cf12\lang1024 RationalValue}[{\cs35\i\f6\cf13\lang1024 DecimalLiteral}
] : {\cs42\scaps\f0\cf6\lang1024 Rational}\par\pard\plain\s21\li540\sa60\keep\nowidctlpar\hyphpar0
\fs20\lang1024{\cs46\f7\cf12\lang1024 RationalValue}[{\cs35\i\f6\cf13\lang1024 DecimalLiteral}
{\field{\*\fldinst SYMBOL 222 \\f "Symbol" \\s 10}{\fldrslt\f3\fs20}}
{\cs35\i\f6\cf13\lang1024 Mantissa} {\cs35\i\f6\cf13\lang1024 Exponent}]\line =
{\cs46\f7\cf12\lang1024 RationalValue}[{\cs35\i\f6\cf13\lang1024 Mantissa}]*
{\cs44\i\f0\cf11\lang1024 expt}(10, {\cs46\f7\cf12\lang1024 IntegerValue}[
{\cs35\i\f6\cf13\lang1024 Exponent}])\par\pard\plain\s20\li180\sb60\sa60\keep\nowidctlpar\hyphpar0
\fs20\lang1024{\cs40\b\f0 action} {\cs46\f7\cf12\lang1024 RationalValue}[
{\cs35\i\f6\cf13\lang1024 Mantissa}] : {\cs42\scaps\f0\cf6\lang1024 Rational}\par\pard\plain\s21
\li540\sa60\keep\nowidctlpar\hyphpar0\fs20\lang1024{\cs46\f7\cf12\lang1024 RationalValue}[
{\cs35\i\f6\cf13\lang1024 Mantissa}
{\field{\*\fldinst SYMBOL 222 \\f "Symbol" \\s 10}{\fldrslt\f3\fs20}}
{\cs35\i\f6\cf13\lang1024 DecimalIntegerLiteral}] = {\cs46\f7\cf12\lang1024 IntegerValue}[
{\cs35\i\f6\cf13\lang1024 DecimalIntegerLiteral}]\par{\cs46\f7\cf12\lang1024 RationalValue}[
{\cs35\i\f6\cf13\lang1024 Mantissa}
{\field{\*\fldinst SYMBOL 222 \\f "Symbol" \\s 10}{\fldrslt\f3\fs20}}
{\cs35\i\f6\cf13\lang1024 DecimalIntegerLiteral} {\cs31\b\f5\cf2\lang1024.}] =
{\cs46\f7\cf12\lang1024 IntegerValue}[{\cs35\i\f6\cf13\lang1024 DecimalIntegerLiteral}]\par
{\cs46\f7\cf12\lang1024 RationalValue}[{\cs35\i\f6\cf13\lang1024 Mantissa}
{\field{\*\fldinst SYMBOL 222 \\f "Symbol" \\s 10}{\fldrslt\f3\fs20}}
{\cs35\i\f6\cf13\lang1024 DecimalIntegerLiteral} {\cs31\b\f5\cf2\lang1024.}
{\cs35\i\f6\cf13\lang1024 Fraction}]\line = {\cs46\f7\cf12\lang1024 IntegerValue}[
{\cs35\i\f6\cf13\lang1024 DecimalIntegerLiteral}] + {\cs46\f7\cf12\lang1024 RationalValue}[
{\cs35\i\f6\cf13\lang1024 Fraction}]\par{\cs46\f7\cf12\lang1024 RationalValue}[
{\cs35\i\f6\cf13\lang1024 Mantissa}
{\field{\*\fldinst SYMBOL 222 \\f "Symbol" \\s 10}{\fldrslt\f3\fs20}} {\cs31\b\f5\cf2\lang1024.}
{\cs35\i\f6\cf13\lang1024 Fraction}] = {\cs46\f7\cf12\lang1024 RationalValue}[
{\cs35\i\f6\cf13\lang1024 Fraction}]\par\pard\plain\s20\li180\sb60\sa60\keep\nowidctlpar\hyphpar0
\fs20\lang1024{\cs40\b\f0 action} {\cs46\f7\cf12\lang1024 IntegerValue}[
{\cs35\i\f6\cf13\lang1024 DecimalIntegerLiteral}] : {\cs42\scaps\f0\cf6\lang1024 Integer}\par\pard
\plain\s21\li540\sa60\keep\nowidctlpar\hyphpar0\fs20\lang1024{\cs46\f7\cf12\lang1024 IntegerValue}[
{\cs35\i\f6\cf13\lang1024 DecimalIntegerLiteral}
{\field{\*\fldinst SYMBOL 222 \\f "Symbol" \\s 10}{\fldrslt\f3\fs20}} {\cs31\b\f5\cf2\lang1024 0}] =
0\par{\cs46\f7\cf12\lang1024 IntegerValue}[{\cs35\i\f6\cf13\lang1024 DecimalIntegerLiteral}
{\field{\*\fldinst SYMBOL 222 \\f "Symbol" \\s 10}{\fldrslt\f3\fs20}}
{\cs35\i\f6\cf13\lang1024 NonZeroDecimalDigits}]\line = {\cs46\f7\cf12\lang1024 IntegerValue}[
{\cs35\i\f6\cf13\lang1024 NonZeroDecimalDigits}]\par\pard\plain\s20\li180\sb60\sa60\keep\nowidctlpar
\hyphpar0\fs20\lang1024{\cs40\b\f0 action} {\cs46\f7\cf12\lang1024 IntegerValue}[
{\cs35\i\f6\cf13\lang1024 NonZeroDecimalDigits}] : {\cs42\scaps\f0\cf6\lang1024 Integer}\par\pard
\plain\s21\li540\sa60\keep\nowidctlpar\hyphpar0\fs20\lang1024{\cs46\f7\cf12\lang1024 IntegerValue}[
{\cs35\i\f6\cf13\lang1024 NonZeroDecimalDigits}
{\field{\*\fldinst SYMBOL 222 \\f "Symbol" \\s 10}{\fldrslt\f3\fs20}}
{\cs35\i\f6\cf13\lang1024 NonZeroDigit}] = {\cs46\f7\cf12\lang1024 DecimalValue}[
{\cs35\i\f6\cf13\lang1024 NonZeroDigit}]\par{\cs46\f7\cf12\lang1024 IntegerValue}[
{\cs35\i\f6\cf13\lang1024 NonZeroDecimalDigits}
{\field{\*\fldinst SYMBOL 222 \\f "Symbol" \\s 10}{\fldrslt\f3\fs20}}
{\cs35\i\f6\cf13\lang1024 NonZeroDecimalDigits\b0\i0\sub 1} {\cs35\i\f6\cf13\lang1024 DecimalDigit}]
\line = 10*{\cs46\f7\cf12\lang1024 IntegerValue}[
{\cs35\i\f6\cf13\lang1024 NonZeroDecimalDigits\b0\i0\sub 1}] + {\cs46\f7\cf12\lang1024 DecimalValue}
[{\cs35\i\f6\cf13\lang1024 DecimalDigit}]\par\pard\plain\s20\li180\sb60\sa60\keep\nowidctlpar
\hyphpar0\fs20\lang1024{\cs40\b\f0 action} {\cs46\f7\cf12\lang1024 DigitValue}[
{\cs35\i\f6\cf13\lang1024 NonZeroDigit}] : {\cs42\scaps\f0\cf6\lang1024 Integer} =
{\cs44\i\f0\cf11\lang1024 digitValue}({\cs35\i\f6\cf13\lang1024 NonZeroDigit})\par
{\cs40\b\f0 action} {\cs46\f7\cf12\lang1024 RationalValue}[{\cs35\i\f6\cf13\lang1024 Fraction}] :
{\cs42\scaps\f0\cf6\lang1024 Rational}\par\pard\plain\s21\li540\sa60\keep\nowidctlpar\hyphpar0\fs20
\lang1024{\cs46\f7\cf12\lang1024 RationalValue}[{\cs35\i\f6\cf13\lang1024 Fraction}
{\field{\*\fldinst SYMBOL 222 \\f "Symbol" \\s 10}{\fldrslt\f3\fs20}}
{\cs35\i\f6\cf13\lang1024 DecimalDigits}]\line = {\cs46\f7\cf12\lang1024 IntegerValue}[
{\cs35\i\f6\cf13\lang1024 DecimalDigits}]/{\cs44\i\f0\cf11\lang1024 expt}(10,
{\cs46\f7\cf12\lang1024 NDigits}[{\cs35\i\f6\cf13\lang1024 DecimalDigits}])\par\pard\plain\s11\sb60
\keep\keepn\nowidctlpar\hyphpar0\b\fs20\lang2057 Syntax\par\pard\plain\s12\fi-1440\li1800\sb120\keep
\keepn\nowidctlpar\hyphpar0\outlinelevel4\fs20\lang1024{\cs35\i\f6\cf13\lang1024 Exponent}
{\field{\*\fldinst SYMBOL 222 \\f "Symbol" \\s 10}{\fldrslt\f3\fs20}}\par\pard\plain\s14\fi-1260
\li1800\keep\keepn\nowidctlpar\tx720\hyphpar0\fs20\lang1024\tab\u171\'C7empty\u187\'C8\par\pard
\plain\s15\fi-1260\li1800\sa120\keep\nowidctlpar\tx720\hyphpar0\fs20\lang1024|\tab
{\cs35\i\f6\cf13\lang1024 ExponentIndicator} {\cs35\i\f6\cf13\lang1024 SignedInteger}\par\pard\plain
\s13\fi-1440\li1800\sb120\sa120\keep\nowidctlpar\hyphpar0\outlinelevel4\fs20\lang1024
{\cs35\i\f6\cf13\lang1024 ExponentIndicator}
{\field{\*\fldinst SYMBOL 222 \\f "Symbol" \\s 10}{\fldrslt\f3\fs20}} {\cs31\b\f5\cf2\lang1024 E} |
{\cs31\b\f5\cf2\lang1024 e}\par\pard\plain\s12\fi-1440\li1800\sb120\keep\keepn\nowidctlpar\hyphpar0
\outlinelevel4\fs20\lang1024{\cs35\i\f6\cf13\lang1024 SignedInteger}
{\field{\*\fldinst SYMBOL 222 \\f "Symbol" \\s 10}{\fldrslt\f3\fs20}}\par\pard\plain\s14\fi-1260
\li1800\keep\keepn\nowidctlpar\tx720\hyphpar0\fs20\lang1024\tab
{\cs35\i\f6\cf13\lang1024 DecimalDigits}\par|\tab{\cs31\b\f5\cf2\lang1024 +}
{\cs35\i\f6\cf13\lang1024 DecimalDigits}\par\pard\plain\s15\fi-1260\li1800\sa120\keep\nowidctlpar
\tx720\hyphpar0\fs20\lang1024|\tab{\cs31\b\f5\cf2\lang1024 -}
{\cs35\i\f6\cf13\lang1024 DecimalDigits}\par\pard\plain\s11\sb60\keep\keepn\nowidctlpar\hyphpar0\b
\fs20\lang2057 Semantics\par\pard\plain\s20\li180\sb60\sa60\keep\nowidctlpar\hyphpar0\fs20\lang1024
{\cs40\b\f0 action} {\cs46\f7\cf12\lang1024 IntegerValue}[{\cs35\i\f6\cf13\lang1024 Exponent}] :
{\cs42\scaps\f0\cf6\lang1024 Integer}\par\pard\plain\s21\li540\sa60\keep\nowidctlpar\hyphpar0\fs20
\lang1024{\cs46\f7\cf12\lang1024 IntegerValue}[{\cs35\i\f6\cf13\lang1024 Exponent}
{\field{\*\fldinst SYMBOL 222 \\f "Symbol" \\s 10}{\fldrslt\f3\fs20}} \u171\'C7empty\u187\'C8] = 0
\par{\cs46\f7\cf12\lang1024 IntegerValue}[{\cs35\i\f6\cf13\lang1024 Exponent}
{\field{\*\fldinst SYMBOL 222 \\f "Symbol" \\s 10}{\fldrslt\f3\fs20}}
{\cs35\i\f6\cf13\lang1024 ExponentIndicator} {\cs35\i\f6\cf13\lang1024 SignedInteger}] =
{\cs46\f7\cf12\lang1024 IntegerValue}[{\cs35\i\f6\cf13\lang1024 SignedInteger}]\par\pard\plain\s20
\li180\sb60\sa60\keep\nowidctlpar\hyphpar0\fs20\lang1024{\cs40\b\f0 action}
{\cs46\f7\cf12\lang1024 IntegerValue}[{\cs35\i\f6\cf13\lang1024 SignedInteger}] :
{\cs42\scaps\f0\cf6\lang1024 Integer}\par\pard\plain\s21\li540\sa60\keep\nowidctlpar\hyphpar0\fs20
\lang1024{\cs46\f7\cf12\lang1024 IntegerValue}[{\cs35\i\f6\cf13\lang1024 SignedInteger}
{\field{\*\fldinst SYMBOL 222 \\f "Symbol" \\s 10}{\fldrslt\f3\fs20}}
{\cs35\i\f6\cf13\lang1024 DecimalDigits}] = {\cs46\f7\cf12\lang1024 IntegerValue}[
{\cs35\i\f6\cf13\lang1024 DecimalDigits}]\par{\cs46\f7\cf12\lang1024 IntegerValue}[
{\cs35\i\f6\cf13\lang1024 SignedInteger}
{\field{\*\fldinst SYMBOL 222 \\f "Symbol" \\s 10}{\fldrslt\f3\fs20}} {\cs31\b\f5\cf2\lang1024 +}
{\cs35\i\f6\cf13\lang1024 DecimalDigits}] = {\cs46\f7\cf12\lang1024 IntegerValue}[
{\cs35\i\f6\cf13\lang1024 DecimalDigits}]\par{\cs46\f7\cf12\lang1024 IntegerValue}[
{\cs35\i\f6\cf13\lang1024 SignedInteger}
{\field{\*\fldinst SYMBOL 222 \\f "Symbol" \\s 10}{\fldrslt\f3\fs20}} {\cs31\b\f5\cf2\lang1024 -}
{\cs35\i\f6\cf13\lang1024 DecimalDigits}] = \endash{\cs46\f7\cf12\lang1024 IntegerValue}[
{\cs35\i\f6\cf13\lang1024 DecimalDigits}]\par\pard\plain\s11\sb60\keep\keepn\nowidctlpar\hyphpar0\b
\fs20\lang2057 Syntax\par\pard\plain\s12\fi-1440\li1800\sb120\keep\keepn\nowidctlpar\hyphpar0
\outlinelevel4\fs20\lang1024{\cs35\i\f6\cf13\lang1024 DecimalDigits}
{\field{\*\fldinst SYMBOL 222 \\f "Symbol" \\s 10}{\fldrslt\f3\fs20}}\par\pard\plain\s14\fi-1260
\li1800\keep\keepn\nowidctlpar\tx720\hyphpar0\fs20\lang1024\tab
{\cs35\i\f6\cf13\lang1024 DecimalDigit}\par\pard\plain\s15\fi-1260\li1800\sa120\keep\nowidctlpar
\tx720\hyphpar0\fs20\lang1024|\tab{\cs35\i\f6\cf13\lang1024 DecimalDigits}
{\cs35\i\f6\cf13\lang1024 DecimalDigit}\par\pard\plain\s11\sb60\keep\keepn\nowidctlpar\hyphpar0\b
\fs20\lang2057 Semantics\par\pard\plain\s20\li180\sb60\sa60\keep\nowidctlpar\hyphpar0\fs20\lang1024
{\cs40\b\f0 action} {\cs46\f7\cf12\lang1024 IntegerValue}[{\cs35\i\f6\cf13\lang1024 DecimalDigits}]
: {\cs42\scaps\f0\cf6\lang1024 Integer}\par{\cs40\b\f0 action} {\cs46\f7\cf12\lang1024 NDigits}[
{\cs35\i\f6\cf13\lang1024 DecimalDigits}] : {\cs42\scaps\f0\cf6\lang1024 Integer}\par\pard\plain\s21
\li540\sa60\keep\nowidctlpar\hyphpar0\fs20\lang1024{\cs46\f7\cf12\lang1024 IntegerValue}[
{\cs35\i\f6\cf13\lang1024 DecimalDigits}
{\field{\*\fldinst SYMBOL 222 \\f "Symbol" \\s 10}{\fldrslt\f3\fs20}}
{\cs35\i\f6\cf13\lang1024 DecimalDigit}] = {\cs46\f7\cf12\lang1024 DecimalValue}[
{\cs35\i\f6\cf13\lang1024 DecimalDigit}]\par{\cs46\f7\cf12\lang1024 NDigits}[
{\cs35\i\f6\cf13\lang1024 DecimalDigits}
{\field{\*\fldinst SYMBOL 222 \\f "Symbol" \\s 10}{\fldrslt\f3\fs20}}
{\cs35\i\f6\cf13\lang1024 DecimalDigit}] = 1\par{\cs46\f7\cf12\lang1024 IntegerValue}[
{\cs35\i\f6\cf13\lang1024 DecimalDigits}
{\field{\*\fldinst SYMBOL 222 \\f "Symbol" \\s 10}{\fldrslt\f3\fs20}}
{\cs35\i\f6\cf13\lang1024 DecimalDigits\b0\i0\sub 1} {\cs35\i\f6\cf13\lang1024 DecimalDigit}]\line
= 10*{\cs46\f7\cf12\lang1024 IntegerValue}[{\cs35\i\f6\cf13\lang1024 DecimalDigits\b0\i0\sub 1}] +
{\cs46\f7\cf12\lang1024 DecimalValue}[{\cs35\i\f6\cf13\lang1024 DecimalDigit}]\par
{\cs46\f7\cf12\lang1024 NDigits}[{\cs35\i\f6\cf13\lang1024 DecimalDigits}
{\field{\*\fldinst SYMBOL 222 \\f "Symbol" \\s 10}{\fldrslt\f3\fs20}}
{\cs35\i\f6\cf13\lang1024 DecimalDigits\b0\i0\sub 1} {\cs35\i\f6\cf13\lang1024 DecimalDigit}] =
{\cs46\f7\cf12\lang1024 NDigits}[{\cs35\i\f6\cf13\lang1024 DecimalDigits\b0\i0\sub 1}] + 1\par\pard
\plain\s11\sb60\keep\keepn\nowidctlpar\hyphpar0\b\fs20\lang2057 Syntax\par\pard\plain\s12\fi-1440
\li1800\sb120\keep\keepn\nowidctlpar\hyphpar0\outlinelevel4\fs20\lang1024
{\cs35\i\f6\cf13\lang1024 HexIntegerLiteral}
{\field{\*\fldinst SYMBOL 222 \\f "Symbol" \\s 10}{\fldrslt\f3\fs20}}\par\pard\plain\s14\fi-1260
\li1800\keep\keepn\nowidctlpar\tx720\hyphpar0\fs20\lang1024\tab{\cs31\b\f5\cf2\lang1024 0}
{\cs35\i\f6\cf13\lang1024 HexIndicator} {\cs35\i\f6\cf13\lang1024 HexDigit}\par\pard\plain\s15
\fi-1260\li1800\sa120\keep\nowidctlpar\tx720\hyphpar0\fs20\lang1024|\tab
{\cs35\i\f6\cf13\lang1024 HexIntegerLiteral} {\cs35\i\f6\cf13\lang1024 HexDigit}\par\pard\plain\s13
\fi-1440\li1800\sb120\sa120\keep\nowidctlpar\hyphpar0\outlinelevel4\fs20\lang1024
{\cs35\i\f6\cf13\lang1024 HexIndicator}
{\field{\*\fldinst SYMBOL 222 \\f "Symbol" \\s 10}{\fldrslt\f3\fs20}} {\cs31\b\f5\cf2\lang1024 X} |
{\cs31\b\f5\cf2\lang1024 x}\par{\cs35\i\f6\cf13\lang1024 HexDigit}
{\field{\*\fldinst SYMBOL 222 \\f "Symbol" \\s 10}{\fldrslt\f3\fs20}} {\cs31\b\f5\cf2\lang1024 0} |
{\cs31\b\f5\cf2\lang1024 1} | {\cs31\b\f5\cf2\lang1024 2} | {\cs31\b\f5\cf2\lang1024 3} |
{\cs31\b\f5\cf2\lang1024 4} | {\cs31\b\f5\cf2\lang1024 5} | {\cs31\b\f5\cf2\lang1024 6} |
{\cs31\b\f5\cf2\lang1024 7} | {\cs31\b\f5\cf2\lang1024 8} | {\cs31\b\f5\cf2\lang1024 9} |
{\cs31\b\f5\cf2\lang1024 A} | {\cs31\b\f5\cf2\lang1024 B} | {\cs31\b\f5\cf2\lang1024 C} |
{\cs31\b\f5\cf2\lang1024 D} | {\cs31\b\f5\cf2\lang1024 E} | {\cs31\b\f5\cf2\lang1024 F} |
{\cs31\b\f5\cf2\lang1024 a} | {\cs31\b\f5\cf2\lang1024 b} | {\cs31\b\f5\cf2\lang1024 c} |
{\cs31\b\f5\cf2\lang1024 d} | {\cs31\b\f5\cf2\lang1024 e} | {\cs31\b\f5\cf2\lang1024 f}\par\pard
\plain\s12\fi-1440\li1800\sb120\keep\keepn\nowidctlpar\hyphpar0\outlinelevel4\fs20\lang1024
{\cs35\i\f6\cf13\lang1024 OctalIntegerLiteral}
{\field{\*\fldinst SYMBOL 222 \\f "Symbol" \\s 10}{\fldrslt\f3\fs20}}\par\pard\plain\s14\fi-1260
\li1800\keep\keepn\nowidctlpar\tx720\hyphpar0\fs20\lang1024\tab{\cs31\b\f5\cf2\lang1024 0}
{\cs35\i\f6\cf13\lang1024 OctalDigit}\par\pard\plain\s15\fi-1260\li1800\sa120\keep\nowidctlpar\tx720
\hyphpar0\fs20\lang1024|\tab{\cs35\i\f6\cf13\lang1024 OctalIntegerLiteral}
{\cs35\i\f6\cf13\lang1024 OctalDigit}\par\pard\plain\s13\fi-1440\li1800\sb120\sa120\keep\nowidctlpar
\hyphpar0\outlinelevel4\fs20\lang1024{\cs35\i\f6\cf13\lang1024 OctalDigit}
{\field{\*\fldinst SYMBOL 222 \\f "Symbol" \\s 10}{\fldrslt\f3\fs20}} {\cs31\b\f5\cf2\lang1024 0} |
{\cs31\b\f5\cf2\lang1024 1} | {\cs31\b\f5\cf2\lang1024 2} | {\cs31\b\f5\cf2\lang1024 3} |
{\cs31\b\f5\cf2\lang1024 4} | {\cs31\b\f5\cf2\lang1024 5} | {\cs31\b\f5\cf2\lang1024 6} |
{\cs31\b\f5\cf2\lang1024 7}\par\pard\plain\s11\sb60\keep\keepn\nowidctlpar\hyphpar0\b\fs20\lang2057
Semantics\par\pard\plain\s20\li180\sb60\sa60\keep\nowidctlpar\hyphpar0\fs20\lang1024
{\cs40\b\f0 action} {\cs46\f7\cf12\lang1024 IntegerValue}[
{\cs35\i\f6\cf13\lang1024 HexIntegerLiteral}] : {\cs42\scaps\f0\cf6\lang1024 Integer}\par\pard\plain
\s21\li540\sa60\keep\nowidctlpar\hyphpar0\fs20\lang1024{\cs46\f7\cf12\lang1024 IntegerValue}[
{\cs35\i\f6\cf13\lang1024 HexIntegerLiteral}
{\field{\*\fldinst SYMBOL 222 \\f "Symbol" \\s 10}{\fldrslt\f3\fs20}} {\cs31\b\f5\cf2\lang1024 0}
{\cs35\i\f6\cf13\lang1024 HexIndicator} {\cs35\i\f6\cf13\lang1024 HexDigit}] =
{\cs46\f7\cf12\lang1024 HexValue}[{\cs35\i\f6\cf13\lang1024 HexDigit}]\par
{\cs46\f7\cf12\lang1024 IntegerValue}[{\cs35\i\f6\cf13\lang1024 HexIntegerLiteral}
{\field{\*\fldinst SYMBOL 222 \\f "Symbol" \\s 10}{\fldrslt\f3\fs20}}
{\cs35\i\f6\cf13\lang1024 HexIntegerLiteral\b0\i0\sub 1} {\cs35\i\f6\cf13\lang1024 HexDigit}]\line
= 16*{\cs46\f7\cf12\lang1024 IntegerValue}[{\cs35\i\f6\cf13\lang1024 HexIntegerLiteral\b0\i0\sub 1}
] + {\cs46\f7\cf12\lang1024 HexValue}[{\cs35\i\f6\cf13\lang1024 HexDigit}]\par\pard\plain\s20\li180
\sb60\sa60\keep\nowidctlpar\hyphpar0\fs20\lang1024{\cs40\b\f0 action}
{\cs46\f7\cf12\lang1024 DigitValue}[{\cs35\i\f6\cf13\lang1024 HexDigit}] :
{\cs42\scaps\f0\cf6\lang1024 Integer} = {\cs44\i\f0\cf11\lang1024 digitValue}(
{\cs35\i\f6\cf13\lang1024 HexDigit})\par{\cs40\b\f0 action} {\cs46\f7\cf12\lang1024 IntegerValue}[
{\cs35\i\f6\cf13\lang1024 OctalIntegerLiteral}] : {\cs42\scaps\f0\cf6\lang1024 Integer}\par\pard
\plain\s21\li540\sa60\keep\nowidctlpar\hyphpar0\fs20\lang1024{\cs46\f7\cf12\lang1024 IntegerValue}[
{\cs35\i\f6\cf13\lang1024 OctalIntegerLiteral}
{\field{\*\fldinst SYMBOL 222 \\f "Symbol" \\s 10}{\fldrslt\f3\fs20}} {\cs31\b\f5\cf2\lang1024 0}
{\cs35\i\f6\cf13\lang1024 OctalDigit}] = {\cs46\f7\cf12\lang1024 OctalValue}[
{\cs35\i\f6\cf13\lang1024 OctalDigit}]\par{\cs46\f7\cf12\lang1024 IntegerValue}[
{\cs35\i\f6\cf13\lang1024 OctalIntegerLiteral}
{\field{\*\fldinst SYMBOL 222 \\f "Symbol" \\s 10}{\fldrslt\f3\fs20}}
{\cs35\i\f6\cf13\lang1024 OctalIntegerLiteral\b0\i0\sub 1} {\cs35\i\f6\cf13\lang1024 OctalDigit}]
\line = 8*{\cs46\f7\cf12\lang1024 IntegerValue}[
{\cs35\i\f6\cf13\lang1024 OctalIntegerLiteral\b0\i0\sub 1}] + {\cs46\f7\cf12\lang1024 OctalValue}[
{\cs35\i\f6\cf13\lang1024 OctalDigit}]\par\pard\plain\s20\li180\sb60\sa60\keep\nowidctlpar\hyphpar0
\fs20\lang1024{\cs40\b\f0 action} {\cs46\f7\cf12\lang1024 CharacterValue}[
{\cs35\i\f6\cf13\lang1024 OctalDigit}] : {\cs42\scaps\f0\cf6\lang1024 Character} =
{\cs35\i\f6\cf13\lang1024 OctalDigit}\par{\cs40\b\f0 action} {\cs46\f7\cf12\lang1024 DigitValue}[
{\cs35\i\f6\cf13\lang1024 OctalDigit}] : {\cs42\scaps\f0\cf6\lang1024 Integer} =
{\cs44\i\f0\cf11\lang1024 digitValue}({\cs35\i\f6\cf13\lang1024 OctalDigit})\par\pard\plain\s2\sa60
\keep\keepn\nowidctlpar\hyphpar0\level3\b\fs24\lang2057 String literals\par\pard\plain\s11\sb60\keep
\keepn\nowidctlpar\hyphpar0\b\fs20\lang2057 Syntax\par\pard\plain\s16\fi-1440\li1800\sb120\sa120
\keep\nowidctlpar\hyphpar0\outlinelevel4\fs20\lang1024{\cs35\i\f6\cf13\lang1024\cs37 Quote}
{\field{\*\fldinst SYMBOL 206 \\f "Symbol" \\s 10}{\fldrslt\f3\fs20}} \{
{\cs35\i\f6\cf13\lang1024\cs36\i0 single}, {\cs35\i\f6\cf13\lang1024\cs36\i0 double}\}\par\pard
\plain\s12\fi-1440\li1800\sb120\keep\keepn\nowidctlpar\hyphpar0\outlinelevel4\fs20\lang1024
{\cs35\i\f6\cf13\lang1024 StringLiteral}
{\field{\*\fldinst SYMBOL 222 \\f "Symbol" \\s 10}{\fldrslt\f3\fs20}}\par\pard\plain\s14\fi-1260
\li1800\keep\keepn\nowidctlpar\tx720\hyphpar0\fs20\lang1024\tab{\cs31\b\f5\cf2\lang1024'}
{\cs35\i\f6\cf13\lang1024 StringChars\super\cs36\i0 single} {\cs31\b\f5\cf2\lang1024'}\par\pard
\plain\s15\fi-1260\li1800\sa120\keep\nowidctlpar\tx720\hyphpar0\fs20\lang1024|\tab
{\cs31\b\f5\cf2\lang1024"} {\cs35\i\f6\cf13\lang1024 StringChars\super\cs36\i0 double}
{\cs31\b\f5\cf2\lang1024"}\par\pard\plain\s11\sb60\keep\keepn\nowidctlpar\hyphpar0\b\fs20\lang2057 S
emantics\par\pard\plain\s20\li180\sb60\sa60\keep\nowidctlpar\hyphpar0\fs20\lang1024
{\cs40\b\f0 action} {\cs46\f7\cf12\lang1024 StringValue}[{\cs35\i\f6\cf13\lang1024 StringLiteral}] :
{\cs42\scaps\f0\cf6\lang1024 String}\par\pard\plain\s21\li540\sa60\keep\nowidctlpar\hyphpar0\fs20
\lang1024{\cs46\f7\cf12\lang1024 StringValue}[{\cs35\i\f6\cf13\lang1024 StringLiteral}
{\field{\*\fldinst SYMBOL 222 \\f "Symbol" \\s 10}{\fldrslt\f3\fs20}} {\cs31\b\f5\cf2\lang1024'}
{\cs35\i\f6\cf13\lang1024 StringChars\super\cs36\i0 single} {\cs31\b\f5\cf2\lang1024'}] =
{\cs46\f7\cf12\lang1024 StringValue}[{\cs35\i\f6\cf13\lang1024 StringChars\super\cs36\i0 single}]
\par{\cs46\f7\cf12\lang1024 StringValue}[{\cs35\i\f6\cf13\lang1024 StringLiteral}
{\field{\*\fldinst SYMBOL 222 \\f "Symbol" \\s 10}{\fldrslt\f3\fs20}} {\cs31\b\f5\cf2\lang1024"}
{\cs35\i\f6\cf13\lang1024 StringChars\super\cs36\i0 double} {\cs31\b\f5\cf2\lang1024"}] =
{\cs46\f7\cf12\lang1024 StringValue}[{\cs35\i\f6\cf13\lang1024 StringChars\super\cs36\i0 double}]
\par\pard\plain\s11\sb60\keep\keepn\nowidctlpar\hyphpar0\b\fs20\lang2057 Syntax\par\pard\plain\s12
\fi-1440\li1800\sb120\keep\keepn\nowidctlpar\hyphpar0\outlinelevel4\fs20\lang1024
{\cs35\i\f6\cf13\lang1024 StringChars\super\cs37 Quote}
{\field{\*\fldinst SYMBOL 222 \\f "Symbol" \\s 10}{\fldrslt\f3\fs20}}\par\pard\plain\s14\fi-1260
\li1800\keep\keepn\nowidctlpar\tx720\hyphpar0\fs20\lang1024\tab
{\cs35\i\f6\cf13\lang1024 OrdinaryStringChars\super\cs37 Quote}\par\pard\plain\s15\fi-1260\li1800
\sa120\keep\nowidctlpar\tx720\hyphpar0\fs20\lang1024|\tab
{\cs35\i\f6\cf13\lang1024 StringChars\super\cs37 Quote} {\cs31\b\f5\cf2\lang1024\\}
{\cs35\i\f6\cf13\lang1024 ShortOctalEscape}\par\pard\plain\s12\fi-1440\li1800\sb120\keep\keepn
\nowidctlpar\hyphpar0\outlinelevel4\fs20\lang1024
{\cs35\i\f6\cf13\lang1024 OrdinaryStringChars\super\cs37 Quote}
{\field{\*\fldinst SYMBOL 222 \\f "Symbol" \\s 10}{\fldrslt\f3\fs20}}\par\pard\plain\s14\fi-1260
\li1800\keep\keepn\nowidctlpar\tx720\hyphpar0\fs20\lang1024\tab\u171\'C7empty\u187\'C8\par|\tab
{\cs35\i\f6\cf13\lang1024 StringChars\super\cs37 Quote} {\cs35\i\f6\cf13\lang1024 PlainStringChar}
\par|\tab{\cs35\i\f6\cf13\lang1024 StringChars\super\cs37 Quote}
{\cs35\i\f6\cf13\lang1024 PlainStringQuote\super\cs37 Quote}\par|\tab
{\cs35\i\f6\cf13\lang1024 OrdinaryStringChars\super\cs37 Quote}
{\cs35\i\f6\cf13\lang1024 OctalDigit}\par\pard\plain\s15\fi-1260\li1800\sa120\keep\nowidctlpar\tx720
\hyphpar0\fs20\lang1024|\tab{\cs35\i\f6\cf13\lang1024 StringChars\super\cs37 Quote}
{\cs31\b\f5\cf2\lang1024\\} {\cs35\i\f6\cf13\lang1024 OrdinaryEscape}\par\pard\plain\s13\fi-1440
\li1800\sb120\sa120\keep\nowidctlpar\hyphpar0\outlinelevel4\fs20\lang1024
{\cs35\i\f6\cf13\lang1024 PlainStringChar}
{\field{\*\fldinst SYMBOL 222 \\f "Symbol" \\s 10}{\fldrslt\f3\fs20}}
{\cs35\i\f6\cf13\lang1024 AnyCharacter} {\b except} {\cs31\b\f5\cf2\lang1024'} |
{\cs31\b\f5\cf2\lang1024"} | {\cs31\b\f5\cf2\lang1024\\} | {\cs35\i\f6\cf13\lang1024 OctalDigit} |
{\cs35\i\f6\cf13\lang1024 LineTerminator}\par
{\cs35\i\f6\cf13\lang1024 PlainStringQuote\super\cs36\i0 single}
{\field{\*\fldinst SYMBOL 222 \\f "Symbol" \\s 10}{\fldrslt\f3\fs20}} {\cs31\b\f5\cf2\lang1024"}\par
{\cs35\i\f6\cf13\lang1024 PlainStringQuote\super\cs36\i0 double}
{\field{\*\fldinst SYMBOL 222 \\f "Symbol" \\s 10}{\fldrslt\f3\fs20}} {\cs31\b\f5\cf2\lang1024'}\par
\pard\plain\s11\sb60\keep\keepn\nowidctlpar\hyphpar0\b\fs20\lang2057 Semantics\par\pard\plain\s20
\li180\sb60\sa60\keep\nowidctlpar\hyphpar0\fs20\lang1024{\cs40\b\f0 action}
{\cs46\f7\cf12\lang1024 StringValue}[{\cs35\i\f6\cf13\lang1024 StringChars\super\cs37 Quote}] :
{\cs42\scaps\f0\cf6\lang1024 String}\par\pard\plain\s21\li540\sa60\keep\nowidctlpar\hyphpar0\fs20
\lang1024{\cs46\f7\cf12\lang1024 StringValue}[
{\cs35\i\f6\cf13\lang1024 StringChars\super\cs37 Quote}
{\field{\*\fldinst SYMBOL 222 \\f "Symbol" \\s 10}{\fldrslt\f3\fs20}}
{\cs35\i\f6\cf13\lang1024 OrdinaryStringChars\super\cs37 Quote}]\line =
{\cs46\f7\cf12\lang1024 StringValue}[{\cs35\i\f6\cf13\lang1024 OrdinaryStringChars\super\cs37 Quote}
]\par{\cs46\f7\cf12\lang1024 StringValue}[{\cs35\i\f6\cf13\lang1024 StringChars\super\cs37 Quote}
{\field{\*\fldinst SYMBOL 222 \\f "Symbol" \\s 10}{\fldrslt\f3\fs20}}
{\cs35\i\f6\cf13\lang1024 StringChars{\super\cs37 Quote}\b0\i0\sub 1} {\cs31\b\f5\cf2\lang1024\\}
{\cs35\i\f6\cf13\lang1024 ShortOctalEscape}]\line = {\cs46\f7\cf12\lang1024 StringValue}[
{\cs35\i\f6\cf13\lang1024 StringChars{\super\cs37 Quote}\b0\i0\sub 1}]
{\field{\*\fldinst SYMBOL 58 \\f "Zapf Dingbats" \\s 10}{\fldrslt\f8\fs20}} {\b[}
{\cs46\f7\cf12\lang1024 CharacterValue}[{\cs35\i\f6\cf13\lang1024 ShortOctalEscape}]{\b]}\par\pard
\plain\s20\li180\sb60\sa60\keep\nowidctlpar\hyphpar0\fs20\lang1024{\cs40\b\f0 action}
{\cs46\f7\cf12\lang1024 StringValue}[{\cs35\i\f6\cf13\lang1024 OrdinaryStringChars\super\cs37 Quote}
] : {\cs42\scaps\f0\cf6\lang1024 String}\par\pard\plain\s21\li540\sa60\keep\nowidctlpar\hyphpar0
\fs20\lang1024{\cs46\f7\cf12\lang1024 StringValue}[
{\cs35\i\f6\cf13\lang1024 OrdinaryStringChars\super\cs37 Quote}
{\field{\*\fldinst SYMBOL 222 \\f "Symbol" \\s 10}{\fldrslt\f3\fs20}} \u171\'C7empty\u187\'C8] =
\ldblquote\rdblquote\par{\cs46\f7\cf12\lang1024 StringValue}[
{\cs35\i\f6\cf13\lang1024 OrdinaryStringChars\super\cs37 Quote}
{\field{\*\fldinst SYMBOL 222 \\f "Symbol" \\s 10}{\fldrslt\f3\fs20}}
{\cs35\i\f6\cf13\lang1024 StringChars\super\cs37 Quote} {\cs35\i\f6\cf13\lang1024 PlainStringChar}]
\line = {\cs46\f7\cf12\lang1024 StringValue}[
{\cs35\i\f6\cf13\lang1024 StringChars\super\cs37 Quote}]
{\field{\*\fldinst SYMBOL 58 \\f "Zapf Dingbats" \\s 10}{\fldrslt\f8\fs20}} {\b[}
{\cs46\f7\cf12\lang1024 CharacterValue}[{\cs35\i\f6\cf13\lang1024 PlainStringChar}]{\b]}\par
{\cs46\f7\cf12\lang1024 StringValue}[{\cs35\i\f6\cf13\lang1024 OrdinaryStringChars\super\cs37 Quote}
{\field{\*\fldinst SYMBOL 222 \\f "Symbol" \\s 10}{\fldrslt\f3\fs20}}
{\cs35\i\f6\cf13\lang1024 StringChars\super\cs37 Quote}
{\cs35\i\f6\cf13\lang1024 PlainStringQuote\super\cs37 Quote}]\line =
{\cs46\f7\cf12\lang1024 StringValue}[{\cs35\i\f6\cf13\lang1024 StringChars\super\cs37 Quote}]
{\field{\*\fldinst SYMBOL 58 \\f "Zapf Dingbats" \\s 10}{\fldrslt\f8\fs20}} {\b[}
{\cs46\f7\cf12\lang1024 CharacterValue}[{\cs35\i\f6\cf13\lang1024 PlainStringQuote\super\cs37 Quote}
]{\b]}\par{\cs46\f7\cf12\lang1024 StringValue}[
{\cs35\i\f6\cf13\lang1024 OrdinaryStringChars\super\cs37 Quote}
{\field{\*\fldinst SYMBOL 222 \\f "Symbol" \\s 10}{\fldrslt\f3\fs20}}
{\cs35\i\f6\cf13\lang1024 OrdinaryStringChars{\super\cs37 Quote}\b0\i0\sub 1}
{\cs35\i\f6\cf13\lang1024 OctalDigit}]\line = {\cs46\f7\cf12\lang1024 StringValue}[
{\cs35\i\f6\cf13\lang1024 OrdinaryStringChars{\super\cs37 Quote}\b0\i0\sub 1}]
{\field{\*\fldinst SYMBOL 58 \\f "Zapf Dingbats" \\s 10}{\fldrslt\f8\fs20}} {\b[}
{\cs46\f7\cf12\lang1024 CharacterValue}[{\cs35\i\f6\cf13\lang1024 OctalDigit}]{\b]}\par
{\cs46\f7\cf12\lang1024 StringValue}[{\cs35\i\f6\cf13\lang1024 OrdinaryStringChars\super\cs37 Quote}
{\field{\*\fldinst SYMBOL 222 \\f "Symbol" \\s 10}{\fldrslt\f3\fs20}}
{\cs35\i\f6\cf13\lang1024 StringChars\super\cs37 Quote} {\cs31\b\f5\cf2\lang1024\\}
{\cs35\i\f6\cf13\lang1024 OrdinaryEscape}]\line = {\cs46\f7\cf12\lang1024 StringValue}[
{\cs35\i\f6\cf13\lang1024 StringChars\super\cs37 Quote}]
{\field{\*\fldinst SYMBOL 58 \\f "Zapf Dingbats" \\s 10}{\fldrslt\f8\fs20}} {\b[}
{\cs46\f7\cf12\lang1024 CharacterValue}[{\cs35\i\f6\cf13\lang1024 OrdinaryEscape}]{\b]}\par\pard
\plain\s20\li180\sb60\sa60\keep\nowidctlpar\hyphpar0\fs20\lang1024{\cs40\b\f0 action}
{\cs46\f7\cf12\lang1024 CharacterValue}[{\cs35\i\f6\cf13\lang1024 PlainStringChar}] :
{\cs42\scaps\f0\cf6\lang1024 Character} = {\cs35\i\f6\cf13\lang1024 PlainStringChar}\par
{\cs40\b\f0 action} {\cs46\f7\cf12\lang1024 CharacterValue}[
{\cs35\i\f6\cf13\lang1024 PlainStringQuote\super\cs37 Quote}] :
{\cs42\scaps\f0\cf6\lang1024 Character}\par\pard\plain\s21\li540\sa60\keep\nowidctlpar\hyphpar0\fs20
\lang1024{\cs46\f7\cf12\lang1024 CharacterValue}[
{\cs35\i\f6\cf13\lang1024 PlainStringQuote\super\cs36\i0 single}
{\field{\*\fldinst SYMBOL 222 \\f "Symbol" \\s 10}{\fldrslt\f3\fs20}} {\cs31\b\f5\cf2\lang1024"}] =
\lquote{\cs31\b\f5\cf2\lang1024"}\rquote\par{\cs46\f7\cf12\lang1024 CharacterValue}[
{\cs35\i\f6\cf13\lang1024 PlainStringQuote\super\cs36\i0 double}
{\field{\*\fldinst SYMBOL 222 \\f "Symbol" \\s 10}{\fldrslt\f3\fs20}} {\cs31\b\f5\cf2\lang1024'}] =
\lquote{\cs31\b\f5\cf2\lang1024'}\rquote\par\pard\plain\s11\sb60\keep\keepn\nowidctlpar\hyphpar0\b
\fs20\lang2057 Syntax\par\pard\plain\s12\fi-1440\li1800\sb120\keep\keepn\nowidctlpar\hyphpar0
\outlinelevel4\fs20\lang1024{\cs35\i\f6\cf13\lang1024 OrdinaryEscape}
{\field{\*\fldinst SYMBOL 222 \\f "Symbol" \\s 10}{\fldrslt\f3\fs20}}\par\pard\plain\s14\fi-1260
\li1800\keep\keepn\nowidctlpar\tx720\hyphpar0\fs20\lang1024\tab
{\cs35\i\f6\cf13\lang1024 StringCharEscape}\par|\tab{\cs35\i\f6\cf13\lang1024 FullOctalEscape}\par|
\tab{\cs35\i\f6\cf13\lang1024 HexEscape}\par|\tab{\cs35\i\f6\cf13\lang1024 UnicodeEscape}\par\pard
\plain\s15\fi-1260\li1800\sa120\keep\nowidctlpar\tx720\hyphpar0\fs20\lang1024|\tab
{\cs35\i\f6\cf13\lang1024 StringNonEscape}\par\pard\plain\s13\fi-1440\li1800\sb120\sa120\keep
\nowidctlpar\hyphpar0\outlinelevel4\fs20\lang1024{\cs35\i\f6\cf13\lang1024 StringNonEscape}
{\field{\*\fldinst SYMBOL 222 \\f "Symbol" \\s 10}{\fldrslt\f3\fs20}}
{\cs35\i\f6\cf13\lang1024 NonTerminator} {\b except} {\cs35\i\f6\cf13\lang1024 OctalDigit} |
{\cs31\b\f5\cf2\lang1024 x} | {\cs31\b\f5\cf2\lang1024 u} | {\cs31\b\f5\cf2\lang1024'} |
{\cs31\b\f5\cf2\lang1024"} | {\cs31\b\f5\cf2\lang1024\\} | {\cs31\b\f5\cf2\lang1024 b} |
{\cs31\b\f5\cf2\lang1024 f} | {\cs31\b\f5\cf2\lang1024 n} | {\cs31\b\f5\cf2\lang1024 r} |
{\cs31\b\f5\cf2\lang1024 t} | {\cs31\b\f5\cf2\lang1024 v}\par\pard\plain\s11\sb60\keep\keepn
\nowidctlpar\hyphpar0\b\fs20\lang2057 Semantics\par\pard\plain\s20\li180\sb60\sa60\keep\nowidctlpar
\hyphpar0\fs20\lang1024{\cs40\b\f0 action} {\cs46\f7\cf12\lang1024 CharacterValue}[
{\cs35\i\f6\cf13\lang1024 OrdinaryEscape}] : {\cs42\scaps\f0\cf6\lang1024 Character}\par\pard\plain
\s21\li540\sa60\keep\nowidctlpar\hyphpar0\fs20\lang1024{\cs46\f7\cf12\lang1024 CharacterValue}[
{\cs35\i\f6\cf13\lang1024 OrdinaryEscape}
{\field{\*\fldinst SYMBOL 222 \\f "Symbol" \\s 10}{\fldrslt\f3\fs20}}
{\cs35\i\f6\cf13\lang1024 StringCharEscape}] = {\cs46\f7\cf12\lang1024 CharacterValue}[
{\cs35\i\f6\cf13\lang1024 StringCharEscape}]\par{\cs46\f7\cf12\lang1024 CharacterValue}[
{\cs35\i\f6\cf13\lang1024 OrdinaryEscape}
{\field{\*\fldinst SYMBOL 222 \\f "Symbol" \\s 10}{\fldrslt\f3\fs20}}
{\cs35\i\f6\cf13\lang1024 FullOctalEscape}] = {\cs46\f7\cf12\lang1024 CharacterValue}[
{\cs35\i\f6\cf13\lang1024 FullOctalEscape}]\par{\cs46\f7\cf12\lang1024 CharacterValue}[
{\cs35\i\f6\cf13\lang1024 OrdinaryEscape}
{\field{\*\fldinst SYMBOL 222 \\f "Symbol" \\s 10}{\fldrslt\f3\fs20}}
{\cs35\i\f6\cf13\lang1024 HexEscape}] = {\cs46\f7\cf12\lang1024 CharacterValue}[
{\cs35\i\f6\cf13\lang1024 HexEscape}]\par{\cs46\f7\cf12\lang1024 CharacterValue}[
{\cs35\i\f6\cf13\lang1024 OrdinaryEscape}
{\field{\*\fldinst SYMBOL 222 \\f "Symbol" \\s 10}{\fldrslt\f3\fs20}}
{\cs35\i\f6\cf13\lang1024 UnicodeEscape}] = {\cs46\f7\cf12\lang1024 CharacterValue}[
{\cs35\i\f6\cf13\lang1024 UnicodeEscape}]\par{\cs46\f7\cf12\lang1024 CharacterValue}[
{\cs35\i\f6\cf13\lang1024 OrdinaryEscape}
{\field{\*\fldinst SYMBOL 222 \\f "Symbol" \\s 10}{\fldrslt\f3\fs20}}
{\cs35\i\f6\cf13\lang1024 StringNonEscape}] = {\cs46\f7\cf12\lang1024 CharacterValue}[
{\cs35\i\f6\cf13\lang1024 StringNonEscape}]\par\pard\plain\s20\li180\sb60\sa60\keep\nowidctlpar
\hyphpar0\fs20\lang1024{\cs40\b\f0 action} {\cs46\f7\cf12\lang1024 CharacterValue}[
{\cs35\i\f6\cf13\lang1024 StringNonEscape}] : {\cs42\scaps\f0\cf6\lang1024 Character} =
{\cs35\i\f6\cf13\lang1024 StringNonEscape}\par\pard\plain\s11\sb60\keep\keepn\nowidctlpar\hyphpar0\b
\fs20\lang2057 Syntax\par\pard\plain\s12\fi-1440\li1800\sb120\keep\keepn\nowidctlpar\hyphpar0
\outlinelevel4\fs20\lang1024{\cs35\i\f6\cf13\lang1024 StringCharEscape}
{\field{\*\fldinst SYMBOL 222 \\f "Symbol" \\s 10}{\fldrslt\f3\fs20}}\par\pard\plain\s14\fi-1260
\li1800\keep\keepn\nowidctlpar\tx720\hyphpar0\fs20\lang1024\tab{\cs31\b\f5\cf2\lang1024'}\par|\tab
{\cs31\b\f5\cf2\lang1024"}\par|\tab{\cs31\b\f5\cf2\lang1024\\}\par|\tab{\cs31\b\f5\cf2\lang1024 b}
\par|\tab{\cs31\b\f5\cf2\lang1024 f}\par|\tab{\cs31\b\f5\cf2\lang1024 n}\par|\tab
{\cs31\b\f5\cf2\lang1024 r}\par|\tab{\cs31\b\f5\cf2\lang1024 t}\par\pard\plain\s15\fi-1260\li1800
\sa120\keep\nowidctlpar\tx720\hyphpar0\fs20\lang1024|\tab{\cs31\b\f5\cf2\lang1024 v}\par\pard\plain
\s11\sb60\keep\keepn\nowidctlpar\hyphpar0\b\fs20\lang2057 Semantics\par\pard\plain\s20\li180\sb60
\sa60\keep\nowidctlpar\hyphpar0\fs20\lang1024{\cs40\b\f0 action}
{\cs46\f7\cf12\lang1024 CharacterValue}[{\cs35\i\f6\cf13\lang1024 StringCharEscape}] :
{\cs42\scaps\f0\cf6\lang1024 Character}\par\pard\plain\s21\li540\sa60\keep\nowidctlpar\hyphpar0\fs20
\lang1024{\cs46\f7\cf12\lang1024 CharacterValue}[{\cs35\i\f6\cf13\lang1024 StringCharEscape}
{\field{\*\fldinst SYMBOL 222 \\f "Symbol" \\s 10}{\fldrslt\f3\fs20}} {\cs31\b\f5\cf2\lang1024'}] =
\lquote{\cs31\b\f5\cf2\lang1024'}\rquote\par{\cs46\f7\cf12\lang1024 CharacterValue}[
{\cs35\i\f6\cf13\lang1024 StringCharEscape}
{\field{\*\fldinst SYMBOL 222 \\f "Symbol" \\s 10}{\fldrslt\f3\fs20}} {\cs31\b\f5\cf2\lang1024"}] =
\lquote{\cs31\b\f5\cf2\lang1024"}\rquote\par{\cs46\f7\cf12\lang1024 CharacterValue}[
{\cs35\i\f6\cf13\lang1024 StringCharEscape}
{\field{\*\fldinst SYMBOL 222 \\f "Symbol" \\s 10}{\fldrslt\f3\fs20}} {\cs31\b\f5\cf2\lang1024\\}] =
\lquote{\cs31\b\f5\cf2\lang1024\\}\rquote\par{\cs46\f7\cf12\lang1024 CharacterValue}[
{\cs35\i\f6\cf13\lang1024 StringCharEscape}
{\field{\*\fldinst SYMBOL 222 \\f "Symbol" \\s 10}{\fldrslt\f3\fs20}} {\cs31\b\f5\cf2\lang1024 b}] =
\lquote{\cs31\b\f5\cf2\lang1024\cs32\b0\f0\cf9\u171\'C7BS\u187\'C8}\rquote\par
{\cs46\f7\cf12\lang1024 CharacterValue}[{\cs35\i\f6\cf13\lang1024 StringCharEscape}
{\field{\*\fldinst SYMBOL 222 \\f "Symbol" \\s 10}{\fldrslt\f3\fs20}} {\cs31\b\f5\cf2\lang1024 f}] =
\lquote{\cs31\b\f5\cf2\lang1024\cs32\b0\f0\cf9\u171\'C7FF\u187\'C8}\rquote\par
{\cs46\f7\cf12\lang1024 CharacterValue}[{\cs35\i\f6\cf13\lang1024 StringCharEscape}
{\field{\*\fldinst SYMBOL 222 \\f "Symbol" \\s 10}{\fldrslt\f3\fs20}} {\cs31\b\f5\cf2\lang1024 n}] =
\lquote{\cs31\b\f5\cf2\lang1024\cs32\b0\f0\cf9\u171\'C7LF\u187\'C8}\rquote\par
{\cs46\f7\cf12\lang1024 CharacterValue}[{\cs35\i\f6\cf13\lang1024 StringCharEscape}
{\field{\*\fldinst SYMBOL 222 \\f "Symbol" \\s 10}{\fldrslt\f3\fs20}} {\cs31\b\f5\cf2\lang1024 r}] =
\lquote{\cs31\b\f5\cf2\lang1024\cs32\b0\f0\cf9\u171\'C7CR\u187\'C8}\rquote\par
{\cs46\f7\cf12\lang1024 CharacterValue}[{\cs35\i\f6\cf13\lang1024 StringCharEscape}
{\field{\*\fldinst SYMBOL 222 \\f "Symbol" \\s 10}{\fldrslt\f3\fs20}} {\cs31\b\f5\cf2\lang1024 t}] =
\lquote{\cs31\b\f5\cf2\lang1024\cs32\b0\f0\cf9\u171\'C7TAB\u187\'C8}\rquote\par
{\cs46\f7\cf12\lang1024 CharacterValue}[{\cs35\i\f6\cf13\lang1024 StringCharEscape}
{\field{\*\fldinst SYMBOL 222 \\f "Symbol" \\s 10}{\fldrslt\f3\fs20}} {\cs31\b\f5\cf2\lang1024 v}] =
\lquote{\cs31\b\f5\cf2\lang1024\cs32\b0\f0\cf9\u171\'C7VT\u187\'C8}\rquote\par\pard\plain\s11\sb60
\keep\keepn\nowidctlpar\hyphpar0\b\fs20\lang2057 Syntax\par\pard\plain\s12\fi-1440\li1800\sb120\keep
\keepn\nowidctlpar\hyphpar0\outlinelevel4\fs20\lang1024{\cs35\i\f6\cf13\lang1024 ShortOctalEscape}
{\field{\*\fldinst SYMBOL 222 \\f "Symbol" \\s 10}{\fldrslt\f3\fs20}}\par\pard\plain\s14\fi-1260
\li1800\keep\keepn\nowidctlpar\tx720\hyphpar0\fs20\lang1024\tab{\cs35\i\f6\cf13\lang1024 OctalDigit}
\par\pard\plain\s15\fi-1260\li1800\sa120\keep\nowidctlpar\tx720\hyphpar0\fs20\lang1024|\tab
{\cs35\i\f6\cf13\lang1024 ZeroToThree} {\cs35\i\f6\cf13\lang1024 OctalDigit}\par\pard\plain\s12
\fi-1440\li1800\sb120\keep\keepn\nowidctlpar\hyphpar0\outlinelevel4\fs20\lang1024
{\cs35\i\f6\cf13\lang1024 FullOctalEscape}
{\field{\*\fldinst SYMBOL 222 \\f "Symbol" \\s 10}{\fldrslt\f3\fs20}}\par\pard\plain\s14\fi-1260
\li1800\keep\keepn\nowidctlpar\tx720\hyphpar0\fs20\lang1024\tab
{\cs35\i\f6\cf13\lang1024 FourToSeven} {\cs35\i\f6\cf13\lang1024 OctalDigit}\par\pard\plain\s15
\fi-1260\li1800\sa120\keep\nowidctlpar\tx720\hyphpar0\fs20\lang1024|\tab
{\cs35\i\f6\cf13\lang1024 ZeroToThree} {\cs35\i\f6\cf13\lang1024 OctalDigit}
{\cs35\i\f6\cf13\lang1024 OctalDigit}\par\pard\plain\s13\fi-1440\li1800\sb120\sa120\keep\nowidctlpar
\hyphpar0\outlinelevel4\fs20\lang1024{\cs35\i\f6\cf13\lang1024 ZeroToThree}
{\field{\*\fldinst SYMBOL 222 \\f "Symbol" \\s 10}{\fldrslt\f3\fs20}} {\cs31\b\f5\cf2\lang1024 0} |
{\cs31\b\f5\cf2\lang1024 1} | {\cs31\b\f5\cf2\lang1024 2} | {\cs31\b\f5\cf2\lang1024 3}\par
{\cs35\i\f6\cf13\lang1024 FourToSeven}
{\field{\*\fldinst SYMBOL 222 \\f "Symbol" \\s 10}{\fldrslt\f3\fs20}} {\cs31\b\f5\cf2\lang1024 4} |
{\cs31\b\f5\cf2\lang1024 5} | {\cs31\b\f5\cf2\lang1024 6} | {\cs31\b\f5\cf2\lang1024 7}\par
{\cs35\i\f6\cf13\lang1024 HexEscape}
{\field{\*\fldinst SYMBOL 222 \\f "Symbol" \\s 10}{\fldrslt\f3\fs20}} {\cs31\b\f5\cf2\lang1024 x}
{\cs35\i\f6\cf13\lang1024 HexDigit} {\cs35\i\f6\cf13\lang1024 HexDigit}\par
{\cs35\i\f6\cf13\lang1024 UnicodeEscape}
{\field{\*\fldinst SYMBOL 222 \\f "Symbol" \\s 10}{\fldrslt\f3\fs20}} {\cs31\b\f5\cf2\lang1024 u}
{\cs35\i\f6\cf13\lang1024 HexDigit} {\cs35\i\f6\cf13\lang1024 HexDigit}
{\cs35\i\f6\cf13\lang1024 HexDigit} {\cs35\i\f6\cf13\lang1024 HexDigit}\par\pard\plain\s11\sb60\keep
\keepn\nowidctlpar\hyphpar0\b\fs20\lang2057 Semantics\par\pard\plain\s20\li180\sb60\sa60\keep
\nowidctlpar\hyphpar0\fs20\lang1024{\cs40\b\f0 action} {\cs46\f7\cf12\lang1024 CharacterValue}[
{\cs35\i\f6\cf13\lang1024 ShortOctalEscape}] : {\cs42\scaps\f0\cf6\lang1024 Character}\par\pard
\plain\s21\li540\sa60\keep\nowidctlpar\hyphpar0\fs20\lang1024{\cs46\f7\cf12\lang1024 CharacterValue}
[{\cs35\i\f6\cf13\lang1024 ShortOctalEscape}
{\field{\*\fldinst SYMBOL 222 \\f "Symbol" \\s 10}{\fldrslt\f3\fs20}}
{\cs35\i\f6\cf13\lang1024 OctalDigit}] = {\cs44\i\f0\cf11\lang1024 codeToCharacter}(
{\cs46\f7\cf12\lang1024 OctalValue}[{\cs35\i\f6\cf13\lang1024 OctalDigit}])\par
{\cs46\f7\cf12\lang1024 CharacterValue}[{\cs35\i\f6\cf13\lang1024 ShortOctalEscape}
{\field{\*\fldinst SYMBOL 222 \\f "Symbol" \\s 10}{\fldrslt\f3\fs20}}
{\cs35\i\f6\cf13\lang1024 ZeroToThree} {\cs35\i\f6\cf13\lang1024 OctalDigit}]\line =
{\cs44\i\f0\cf11\lang1024 codeToCharacter}(8*{\cs46\f7\cf12\lang1024 OctalValue}[
{\cs35\i\f6\cf13\lang1024 ZeroToThree}] + {\cs46\f7\cf12\lang1024 OctalValue}[
{\cs35\i\f6\cf13\lang1024 OctalDigit}])\par\pard\plain\s20\li180\sb60\sa60\keep\nowidctlpar\hyphpar0
\fs20\lang1024{\cs40\b\f0 action} {\cs46\f7\cf12\lang1024 CharacterValue}[
{\cs35\i\f6\cf13\lang1024 FullOctalEscape}] : {\cs42\scaps\f0\cf6\lang1024 Character}\par\pard\plain
\s21\li540\sa60\keep\nowidctlpar\hyphpar0\fs20\lang1024{\cs46\f7\cf12\lang1024 CharacterValue}[
{\cs35\i\f6\cf13\lang1024 FullOctalEscape}
{\field{\*\fldinst SYMBOL 222 \\f "Symbol" \\s 10}{\fldrslt\f3\fs20}}
{\cs35\i\f6\cf13\lang1024 FourToSeven} {\cs35\i\f6\cf13\lang1024 OctalDigit}]\line =
{\cs44\i\f0\cf11\lang1024 codeToCharacter}(8*{\cs46\f7\cf12\lang1024 OctalValue}[
{\cs35\i\f6\cf13\lang1024 FourToSeven}] + {\cs46\f7\cf12\lang1024 OctalValue}[
{\cs35\i\f6\cf13\lang1024 OctalDigit}])\par{\cs46\f7\cf12\lang1024 CharacterValue}[
{\cs35\i\f6\cf13\lang1024 FullOctalEscape}
{\field{\*\fldinst SYMBOL 222 \\f "Symbol" \\s 10}{\fldrslt\f3\fs20}}
{\cs35\i\f6\cf13\lang1024 ZeroToThree} {\cs35\i\f6\cf13\lang1024 OctalDigit\b0\i0\sub 1}
{\cs35\i\f6\cf13\lang1024 OctalDigit\b0\i0\sub 2}]\line =
{\cs44\i\f0\cf11\lang1024 codeToCharacter}(\line 64*{\cs46\f7\cf12\lang1024 OctalValue}[
{\cs35\i\f6\cf13\lang1024 ZeroToThree}] + 8*{\cs46\f7\cf12\lang1024 OctalValue}[
{\cs35\i\f6\cf13\lang1024 OctalDigit\b0\i0\sub 1}] + {\cs46\f7\cf12\lang1024 OctalValue}[
{\cs35\i\f6\cf13\lang1024 OctalDigit\b0\i0\sub 2}])\par\pard\plain\s20\li180\sb60\sa60\keep
\nowidctlpar\hyphpar0\fs20\lang1024{\cs40\b\f0 action} {\cs46\f7\cf12\lang1024 DigitValue}[
{\cs35\i\f6\cf13\lang1024 ZeroToThree}] : {\cs42\scaps\f0\cf6\lang1024 Integer} =
{\cs44\i\f0\cf11\lang1024 digitValue}({\cs35\i\f6\cf13\lang1024 ZeroToThree})\par{\cs40\b\f0 action}
{\cs46\f7\cf12\lang1024 DigitValue}[{\cs35\i\f6\cf13\lang1024 FourToSeven}] :
{\cs42\scaps\f0\cf6\lang1024 Integer} = {\cs44\i\f0\cf11\lang1024 digitValue}(
{\cs35\i\f6\cf13\lang1024 FourToSeven})\par{\cs40\b\f0 action}
{\cs46\f7\cf12\lang1024 CharacterValue}[{\cs35\i\f6\cf13\lang1024 HexEscape}] :
{\cs42\scaps\f0\cf6\lang1024 Character}\par\pard\plain\s21\li540\sa60\keep\nowidctlpar\hyphpar0\fs20
\lang1024{\cs46\f7\cf12\lang1024 CharacterValue}[{\cs35\i\f6\cf13\lang1024 HexEscape}
{\field{\*\fldinst SYMBOL 222 \\f "Symbol" \\s 10}{\fldrslt\f3\fs20}} {\cs31\b\f5\cf2\lang1024 x}
{\cs35\i\f6\cf13\lang1024 HexDigit\b0\i0\sub 1} {\cs35\i\f6\cf13\lang1024 HexDigit\b0\i0\sub 2}]
\line = {\cs44\i\f0\cf11\lang1024 codeToCharacter}(16*{\cs46\f7\cf12\lang1024 HexValue}[
{\cs35\i\f6\cf13\lang1024 HexDigit\b0\i0\sub 1}] + {\cs46\f7\cf12\lang1024 HexValue}[
{\cs35\i\f6\cf13\lang1024 HexDigit\b0\i0\sub 2}])\par\pard\plain\s20\li180\sb60\sa60\keep
\nowidctlpar\hyphpar0\fs20\lang1024{\cs40\b\f0 action} {\cs46\f7\cf12\lang1024 CharacterValue}[
{\cs35\i\f6\cf13\lang1024 UnicodeEscape}] : {\cs42\scaps\f0\cf6\lang1024 Character}\par\pard\plain
\s21\li540\sa60\keep\nowidctlpar\hyphpar0\fs20\lang1024{\cs46\f7\cf12\lang1024 CharacterValue}[
{\cs35\i\f6\cf13\lang1024 UnicodeEscape}
{\field{\*\fldinst SYMBOL 222 \\f "Symbol" \\s 10}{\fldrslt\f3\fs20}} {\cs31\b\f5\cf2\lang1024 u}
{\cs35\i\f6\cf13\lang1024 HexDigit\b0\i0\sub 1} {\cs35\i\f6\cf13\lang1024 HexDigit\b0\i0\sub 2}
{\cs35\i\f6\cf13\lang1024 HexDigit\b0\i0\sub 3} {\cs35\i\f6\cf13\lang1024 HexDigit\b0\i0\sub 4}]
\line = {\cs44\i\f0\cf11\lang1024 codeToCharacter}(\line 4096*
{\cs46\f7\cf12\lang1024 HexValue}[{\cs35\i\f6\cf13\lang1024 HexDigit\b0\i0\sub 1}] + 256*
{\cs46\f7\cf12\lang1024 HexValue}[{\cs35\i\f6\cf13\lang1024 HexDigit\b0\i0\sub 2}] + 16*
{\cs46\f7\cf12\lang1024 HexValue}[{\cs35\i\f6\cf13\lang1024 HexDigit\b0\i0\sub 3}] +\line
{\cs46\f7\cf12\lang1024 HexValue}[{\cs35\i\f6\cf13\lang1024 HexDigit\b0\i0\sub 4}])\par}