1 <?xml version="1.0"?>
\r
3 <!DOCTYPE MODE SYSTEM "xmode.dtd">
\r
5 <!-- SML MODE by Ingmar Stein -->
\r
8 <PROPERTY NAME="commentStart" VALUE="(*"/>
\r
9 <PROPERTY NAME="commentEnd" VALUE="*)"/>
\r
12 <RULES ESCAPE="\" IGNORE_CASE="FALSE" HIGHLIGHT_DIGITS="TRUE">
\r
14 <SPAN TYPE="COMMENT1">
\r
19 <!-- character literals -->
\r
20 <SPAN TYPE="LITERAL1" NO_LINE_BREAK="TRUE">
\r
25 <!-- string literals -->
\r
26 <SPAN TYPE="LITERAL1" NO_LINE_BREAK="TRUE">
\r
31 <!-- built-in operators -->
\r
33 <!-- infix precedence 7 -->
\r
34 <SEQ TYPE="OPERATOR">/</SEQ>
\r
35 <SEQ TYPE="OPERATOR">*</SEQ>
\r
37 <!-- infix precedence 6 -->
\r
38 <SEQ TYPE="OPERATOR">+</SEQ>
\r
39 <SEQ TYPE="OPERATOR">-</SEQ>
\r
40 <SEQ TYPE="OPERATOR">^</SEQ>
\r
42 <!-- infix precedence 5 -->
\r
43 <SEQ TYPE="OPERATOR">::</SEQ>
\r
44 <SEQ TYPE="OPERATOR">@</SEQ>
\r
46 <!-- infix precedence 4 -->
\r
47 <SEQ TYPE="OPERATOR">=</SEQ>
\r
48 <SEQ TYPE="OPERATOR"><></SEQ>
\r
49 <SEQ TYPE="OPERATOR"><=</SEQ>
\r
50 <SEQ TYPE="OPERATOR"><</SEQ>
\r
51 <SEQ TYPE="OPERATOR">>=</SEQ>
\r
52 <SEQ TYPE="OPERATOR">></SEQ>
\r
54 <!-- infix precedence 3 -->
\r
55 <SEQ TYPE="OPERATOR">:=</SEQ>
\r
57 <!-- reserved words -->
\r
58 <!-- <SEQ TYPE="NULL">(</SEQ>
\r
59 <SEQ TYPE="NULL">)</SEQ>
\r
60 <SEQ TYPE="NULL">[</SEQ>
\r
61 <SEQ TYPE="NULL">]</SEQ>
\r
62 <SEQ TYPE="NULL">{</SEQ>
\r
63 <SEQ TYPE="NULL">}</SEQ>
\r
64 <SEQ TYPE="NULL">,</SEQ>
\r
65 <SEQ TYPE="NULL">:></SEQ>
\r
66 <SEQ TYPE="NULL">:</SEQ>
\r
67 <SEQ TYPE="NULL">;</SEQ>
\r
68 <SEQ TYPE="NULL">...</SEQ>
\r
69 <SEQ TYPE="NULL">_</SEQ>
\r
70 <SEQ TYPE="NULL">|</SEQ>
\r
71 <SEQ TYPE="NULL">=></SEQ>
\r
72 <SEQ TYPE="NULL">-></SEQ>
\r
73 <SEQ TYPE="NULL">#</SEQ> -->
\r
76 <!-- built-in operators -->
\r
78 <!-- infix precedence 7 -->
\r
79 <OPERATOR>div</OPERATOR>
\r
80 <OPERATOR>mod</OPERATOR>
\r
82 <!-- infix precedence 3 -->
\r
83 <OPERATOR>o</OPERATOR>
\r
85 <!-- infix precedence 0 -->
\r
86 <OPERATOR>before</OPERATOR>
\r
88 <!-- reserved words -->
\r
89 <KEYWORD1>abstype</KEYWORD1>
\r
90 <KEYWORD1>and</KEYWORD1>
\r
91 <KEYWORD1>andalso</KEYWORD1>
\r
92 <KEYWORD1>as</KEYWORD1>
\r
93 <KEYWORD1>case</KEYWORD1>
\r
94 <KEYWORD1>do</KEYWORD1>
\r
95 <KEYWORD1>datatype</KEYWORD1>
\r
96 <KEYWORD1>else</KEYWORD1>
\r
97 <KEYWORD1>end</KEYWORD1>
\r
98 <KEYWORD1>eqtype</KEYWORD1>
\r
99 <KEYWORD1>exception</KEYWORD1>
\r
100 <KEYWORD1>fn</KEYWORD1>
\r
101 <KEYWORD1>fun</KEYWORD1>
\r
102 <KEYWORD1>functor</KEYWORD1>
\r
103 <KEYWORD1>handle</KEYWORD1>
\r
104 <KEYWORD1>if</KEYWORD1>
\r
105 <KEYWORD1>in</KEYWORD1>
\r
106 <KEYWORD1>include</KEYWORD1>
\r
107 <KEYWORD1>infix</KEYWORD1>
\r
108 <KEYWORD1>infixr</KEYWORD1>
\r
109 <KEYWORD1>let</KEYWORD1>
\r
110 <KEYWORD1>local</KEYWORD1>
\r
111 <KEYWORD1>nonfix</KEYWORD1>
\r
112 <KEYWORD1>of</KEYWORD1>
\r
113 <KEYWORD1>op</KEYWORD1>
\r
114 <KEYWORD1>open</KEYWORD1>
\r
115 <KEYWORD1>orelse</KEYWORD1>
\r
116 <KEYWORD1>raise</KEYWORD1>
\r
117 <KEYWORD1>rec</KEYWORD1>
\r
118 <KEYWORD1>sharing</KEYWORD1>
\r
119 <KEYWORD1>sig</KEYWORD1>
\r
120 <KEYWORD1>signature</KEYWORD1>
\r
121 <KEYWORD1>struct</KEYWORD1>
\r
122 <KEYWORD1>structure</KEYWORD1>
\r
123 <KEYWORD1>then</KEYWORD1>
\r
124 <KEYWORD1>type</KEYWORD1>
\r
125 <KEYWORD1>val</KEYWORD1>
\r
126 <KEYWORD1>where</KEYWORD1>
\r
127 <KEYWORD1>with</KEYWORD1>
\r
128 <KEYWORD1>withtype</KEYWORD1>
\r
129 <KEYWORD1>while</KEYWORD1>
\r
131 <!-- built-in types -->
\r
132 <KEYWORD3>array</KEYWORD3>
\r
133 <KEYWORD3>bool</KEYWORD3>
\r
134 <KEYWORD3>char</KEYWORD3>
\r
135 <KEYWORD3>exn</KEYWORD3>
\r
136 <KEYWORD3>frag</KEYWORD3>
\r
137 <KEYWORD3>int</KEYWORD3>
\r
138 <KEYWORD3>list</KEYWORD3>
\r
139 <KEYWORD3>option</KEYWORD3>
\r
140 <KEYWORD3>order</KEYWORD3>
\r
141 <KEYWORD3>real</KEYWORD3>
\r
142 <KEYWORD3>ref</KEYWORD3>
\r
143 <KEYWORD3>string</KEYWORD3>
\r
144 <KEYWORD3>substring</KEYWORD3>
\r
145 <KEYWORD3>unit</KEYWORD3>
\r
146 <KEYWORD3>vector</KEYWORD3>
\r
147 <KEYWORD3>word</KEYWORD3>
\r
148 <KEYWORD3>word8</KEYWORD3>
\r
150 <!-- build-in exception constructors -->
\r
151 <KEYWORD2>Bind</KEYWORD2>
\r
152 <KEYWORD2>Chr</KEYWORD2>
\r
153 <KEYWORD2>Domain</KEYWORD2>
\r
154 <KEYWORD2>Div</KEYWORD2>
\r
155 <KEYWORD2>Fail</KEYWORD2>
\r
156 <KEYWORD2>Graphic</KEYWORD2>
\r
157 <KEYWORD2>Interrupt</KEYWORD2>
\r
158 <KEYWORD2>Io</KEYWORD2>
\r
159 <KEYWORD2>Match</KEYWORD2>
\r
160 <KEYWORD2>Option</KEYWORD2>
\r
161 <KEYWORD2>Ord</KEYWORD2>
\r
162 <KEYWORD2>Overflow</KEYWORD2>
\r
163 <KEYWORD2>Size</KEYWORD2>
\r
164 <KEYWORD2>Subscript</KEYWORD2>
\r
165 <KEYWORD2>SysErr</KEYWORD2>
\r
167 <!-- built-in literals -->
\r
168 <LITERAL2>false</LITERAL2>
\r
169 <LITERAL2>true</LITERAL2>
\r
170 <LITERAL2>QUOTE</LITERAL2>
\r
171 <LITERAL2>ANTIQUOTE</LITERAL2>
\r
172 <LITERAL2>nil</LITERAL2>
\r
173 <LITERAL2>NONE</LITERAL2>
\r
174 <LITERAL2>SOME</LITERAL2>
\r
175 <LITERAL2>LESS</LITERAL2>
\r
176 <LITERAL2>EQUAL</LITERAL2>
\r
177 <LITERAL2>GREATER</LITERAL2>
\r