]> gitweb.factorcode.org Git - factor.git/blob - basis/xmode/modes/occam.xml
xmode.modes: updating with recent xmode files
[factor.git] / basis / xmode / modes / occam.xml
1 <?xml version="1.0"?>
2
3 <!DOCTYPE MODE SYSTEM "xmode.dtd">
4
5 <!-- Occam mode by Rick Beton. -->
6 <MODE>
7         <PROPS>
8                 <PROPERTY NAME="commentStart" VALUE="--" />
9                 <PROPERTY NAME="commentEnd" VALUE="" />
10                 <PROPERTY NAME="blockComment" VALUE="" />
11                 <PROPERTY NAME="noWordSep" VALUE="." />
12         </PROPS>
13
14         <RULES IGNORE_CASE="FALSE" HIGHLIGHT_DIGITS="TRUE">
15
16                 <!-- Normal comments. -->
17                 <EOL_SPAN TYPE="COMMENT1">--</EOL_SPAN>
18
19                 <!-- Compiler directives. -->
20                 <EOL_SPAN TYPE="COMMENT2">#</EOL_SPAN>
21
22                 <SPAN TYPE="LITERAL1" NO_LINE_BREAK="TRUE">
23                         <BEGIN>'</BEGIN>
24                         <END>'</END>
25                 </SPAN>
26
27                 <SPAN TYPE="LITERAL1" NO_LINE_BREAK="TRUE">
28                         <BEGIN>"</BEGIN>
29                         <END>"</END>
30                 </SPAN>
31
32                 <SEQ TYPE="OPERATOR">:=</SEQ>
33                 <SEQ TYPE="OPERATOR">=</SEQ>
34                 <SEQ TYPE="OPERATOR">&gt;&gt;</SEQ>
35                 <SEQ TYPE="OPERATOR">&lt;&lt;</SEQ>
36                 <SEQ TYPE="OPERATOR">&lt;&gt;</SEQ>
37                 <SEQ TYPE="OPERATOR">&gt;&lt;</SEQ>
38                 <SEQ TYPE="OPERATOR">&gt;</SEQ>
39                 <SEQ TYPE="OPERATOR">&lt;</SEQ>
40                 <SEQ TYPE="OPERATOR">&gt;=</SEQ>
41                 <SEQ TYPE="OPERATOR">&lt;=</SEQ>
42                 <SEQ TYPE="OPERATOR">+</SEQ>
43                 <SEQ TYPE="OPERATOR">-</SEQ>
44                 <SEQ TYPE="OPERATOR">/</SEQ>
45                 <SEQ TYPE="OPERATOR">\</SEQ>
46                 <SEQ TYPE="OPERATOR">*</SEQ>
47                 <SEQ TYPE="OPERATOR">?</SEQ>
48                 <SEQ TYPE="OPERATOR">!</SEQ>
49                 <SEQ TYPE="OPERATOR">/\</SEQ>
50                 <SEQ TYPE="OPERATOR">\/</SEQ>
51                 <SEQ TYPE="OPERATOR">~</SEQ>
52
53                 <KEYWORDS>
54                         <!-- Structure keywords -->
55                         <KEYWORD1>ALT</KEYWORD1>
56                         <KEYWORD1>ASM</KEYWORD1>
57                         <KEYWORD1>CASE</KEYWORD1>
58                         <KEYWORD1>FUNCTION</KEYWORD1>
59                         <KEYWORD1>IF</KEYWORD1>
60                         <KEYWORD1>INLINE</KEYWORD1>
61                         <KEYWORD1>PAR</KEYWORD1>
62                         <KEYWORD1>PLACED</KEYWORD1>
63                         <KEYWORD1>PRI</KEYWORD1>
64                         <KEYWORD1>PROC</KEYWORD1>
65                         <KEYWORD1>RESULT</KEYWORD1>
66                         <KEYWORD1>SEQ</KEYWORD1>
67                         <KEYWORD1>VALOF</KEYWORD1>
68                         <KEYWORD1>WHILE</KEYWORD1>
69                         
70                         <!-- main keywords -->
71                         <KEYWORD2>AT</KEYWORD2>
72                         <KEYWORD2>ELSE</KEYWORD2>
73                         <KEYWORD2>FOR</KEYWORD2>
74                         <KEYWORD2>FROM</KEYWORD2>
75                         <KEYWORD2>IS</KEYWORD2>
76                         <KEYWORD2>PLACE</KEYWORD2>
77                         <KEYWORD2>PORT</KEYWORD2>
78                         <KEYWORD2>PROTOCOL</KEYWORD2>
79                         <KEYWORD2>SKIP</KEYWORD2>
80                         <KEYWORD2>STOP</KEYWORD2>
81                         <KEYWORD2>VAL</KEYWORD2>
82
83                         <!-- type and conversion keywords -->
84                         <KEYWORD2>AFTER</KEYWORD2>
85                         <KEYWORD2>AND</KEYWORD2>
86                         <KEYWORD2>ANY</KEYWORD2>
87                         <KEYWORD2>BITAND</KEYWORD2>
88                         <KEYWORD2>BITNOT</KEYWORD2>
89                         <KEYWORD2>BITOR</KEYWORD2>
90                         <KEYWORD2>BOOL</KEYWORD2>
91                         <KEYWORD2>BYTE</KEYWORD2>
92                         <KEYWORD2>BYTESIN</KEYWORD2>
93                         <KEYWORD2>CHAN</KEYWORD2>
94                         <KEYWORD2>DATA</KEYWORD2>
95                         <KEYWORD2>INT</KEYWORD2>
96                         <KEYWORD2>INT32</KEYWORD2>
97                         <KEYWORD2>INT16</KEYWORD2>
98                         <KEYWORD2>INT64</KEYWORD2>
99                         <KEYWORD2>MINUS</KEYWORD2>
100                         <KEYWORD2>MOSTNEG</KEYWORD2>
101                         <KEYWORD2>MOSTPOS</KEYWORD2>
102                         <KEYWORD2>NOT</KEYWORD2>
103                         <KEYWORD2>PLUS</KEYWORD2>
104                         <KEYWORD2>OF</KEYWORD2>
105                         <KEYWORD2>OFFSETOF</KEYWORD2>
106                         <KEYWORD2>OR</KEYWORD2>
107                         <KEYWORD2>PACKED</KEYWORD2>
108                         <KEYWORD2>REAL32</KEYWORD2>
109                         <KEYWORD2>REAL64</KEYWORD2>
110                         <KEYWORD2>RECORD</KEYWORD2>
111                         <KEYWORD2>REM</KEYWORD2>
112                         <KEYWORD2>RESHAPES</KEYWORD2>
113                         <KEYWORD2>RETYPES</KEYWORD2>
114                         <KEYWORD2>ROUND</KEYWORD2>
115                         <KEYWORD2>SIZE</KEYWORD2>
116                         <KEYWORD2>TIMER</KEYWORD2>
117                         <KEYWORD2>TIMES</KEYWORD2>
118                         <KEYWORD2>TRUNC</KEYWORD2>
119                         <KEYWORD2>TYPE</KEYWORD2>
120
121                         <!-- Occam3 and extensions to occam2.1 -->
122                         <KEYWORD2>BUCKET</KEYWORD2>
123                         <KEYWORD2>CLAIM</KEYWORD2>
124                         <KEYWORD2>ENROLL</KEYWORD2>
125                         <KEYWORD2>EVENT</KEYWORD2>
126                         <KEYWORD2>FALL</KEYWORD2>
127                         <KEYWORD2>FLUSH</KEYWORD2>
128                         <KEYWORD2>GRANT</KEYWORD2>
129                         <KEYWORD2>INITIAL</KEYWORD2>
130                         <KEYWORD2>RESOURCE</KEYWORD2>
131                         <KEYWORD2>SEMAPHORE</KEYWORD2>
132                         <KEYWORD2>SHARED</KEYWORD2>
133                         <KEYWORD2>SYNC</KEYWORD2>
134                         
135                         <!-- arithmetic & trigonometric functions -->
136                         <KEYWORD3>LONGADD</KEYWORD3>
137                         <KEYWORD3>LONGSUB</KEYWORD3>
138                         <KEYWORD3>ASHIFTRIGHT</KEYWORD3>
139                         <KEYWORD3>ASHIFTLEFT</KEYWORD3>
140                         <KEYWORD3>ROTATERIGHT</KEYWORD3>
141                         <KEYWORD3>ROTATELEFT</KEYWORD3>
142                         <KEYWORD3>LONGSUM</KEYWORD3>
143                         <KEYWORD3>LONGDIFF</KEYWORD3>
144                         <KEYWORD3>LONGPROD</KEYWORD3>
145                         <KEYWORD3>LONGDIV</KEYWORD3>
146                         <KEYWORD3>SHIFTLEFT</KEYWORD3>
147                         <KEYWORD3>SHIFTRIGHT</KEYWORD3>
148                         <KEYWORD3>NORMALISE</KEYWORD3>
149                         <KEYWORD3>ABS</KEYWORD3>
150                         <KEYWORD3>DABS</KEYWORD3>
151                         <KEYWORD3>SCALEB</KEYWORD3>
152                         <KEYWORD3>DSCALEB</KEYWORD3>
153                         <KEYWORD3>COPYSIGN</KEYWORD3>
154                         <KEYWORD3>DCOPYSIGN</KEYWORD3>
155                         <KEYWORD3>SQRT</KEYWORD3>
156                         <KEYWORD3>DSQRT</KEYWORD3>
157                         <KEYWORD3>MINUSX</KEYWORD3>
158                         <KEYWORD3>DMINUSX</KEYWORD3>
159                         <KEYWORD3>NEXTAFTER</KEYWORD3>
160                         <KEYWORD3>DNEXTAFTER</KEYWORD3>
161                         <KEYWORD3>MULBY2</KEYWORD3>
162                         <KEYWORD3>DMULBY2</KEYWORD3>
163                         <KEYWORD3>DIVBY2</KEYWORD3>
164                         <KEYWORD3>DDIVBY2</KEYWORD3>
165                         <KEYWORD3>LOGB</KEYWORD3>
166                         <KEYWORD3>DLOGB</KEYWORD3>
167                         <KEYWORD3>ISNAN</KEYWORD3>
168                         <KEYWORD3>DISNAN</KEYWORD3>
169                         <KEYWORD3>NOTFINITE</KEYWORD3>
170                         <KEYWORD3>DNOTFINITE</KEYWORD3>
171                         <KEYWORD3>ORDERED</KEYWORD3>
172                         <KEYWORD3>DORDERED</KEYWORD3>
173                         <KEYWORD3>FLOATING.UNPACK</KEYWORD3>
174                         <KEYWORD3>DFLOATING.UNPACK</KEYWORD3>
175                         <KEYWORD3>ARGUMENT.REDUCE</KEYWORD3>
176                         <KEYWORD3>DARGUMENT.REDUCE</KEYWORD3>
177                         <KEYWORD3>FPINT</KEYWORD3>
178                         <KEYWORD3>DFPINT</KEYWORD3>
179                         <KEYWORD3>REAL32OP</KEYWORD3>
180                         <KEYWORD3>REAL64OP</KEYWORD3>
181                         <KEYWORD3>IEEE32OP</KEYWORD3>
182                         <KEYWORD3>IEEE64OP</KEYWORD3>
183                         <KEYWORD3>REAL32REM</KEYWORD3>
184                         <KEYWORD3>REAL64REM</KEYWORD3>
185                         <KEYWORD3>IEEE32REM</KEYWORD3>
186                         <KEYWORD3>IEEE64REM</KEYWORD3>
187                         <KEYWORD3>REAL32EQ</KEYWORD3>
188                         <KEYWORD3>REAL64EQ</KEYWORD3>
189                         <KEYWORD3>REAL32GT</KEYWORD3>
190                         <KEYWORD3>REAL64GT</KEYWORD3>
191                         <KEYWORD3>IEEECOMPARE</KEYWORD3>
192                         <KEYWORD3>DIEEECOMPARE</KEYWORD3>
193                         <KEYWORD3>ALOG</KEYWORD3>
194                         <KEYWORD3>DALOG</KEYWORD3>
195                         <KEYWORD3>ALOG10</KEYWORD3>
196                         <KEYWORD3>DALOG10</KEYWORD3>
197                         <KEYWORD3>EXP</KEYWORD3>
198                         <KEYWORD3>DEXP</KEYWORD3>
199                         <KEYWORD3>TAN</KEYWORD3>
200                         <KEYWORD3>DTAN</KEYWORD3>
201                         <KEYWORD3>SIN</KEYWORD3>
202                         <KEYWORD3>DSIN</KEYWORD3>
203                         <KEYWORD3>ASIN</KEYWORD3>
204                         <KEYWORD3>DASIN</KEYWORD3>
205                         <KEYWORD3>COS</KEYWORD3>
206                         <KEYWORD3>DCOS</KEYWORD3>
207                         <KEYWORD3>SINH</KEYWORD3>
208                         <KEYWORD3>DSINH</KEYWORD3>
209                         <KEYWORD3>COSH</KEYWORD3>
210                         <KEYWORD3>DCOSH</KEYWORD3>
211                         <KEYWORD3>TANH</KEYWORD3>
212                         <KEYWORD3>DTANH</KEYWORD3>
213                         <KEYWORD3>ATAN</KEYWORD3>
214                         <KEYWORD3>DATAN</KEYWORD3>
215                         <KEYWORD3>ATAN2</KEYWORD3>
216                         <KEYWORD3>DATAN2</KEYWORD3>
217                         <KEYWORD3>RAN</KEYWORD3>
218                         <KEYWORD3>DRAN</KEYWORD3>
219                         <KEYWORD3>POWER</KEYWORD3>
220                         <KEYWORD3>DPOWER</KEYWORD3>
221
222                         <!-- basic data conversion functions -->
223                         <KEYWORD3>INTTOSTRING</KEYWORD3>
224                         <KEYWORD3>INT16TOSTRING</KEYWORD3>
225                         <KEYWORD3>INT32TOSTRING</KEYWORD3>
226                         <KEYWORD3>INT64TOSTRING</KEYWORD3>
227                         <KEYWORD3>STRINGTOINT</KEYWORD3>
228                         <KEYWORD3>STRINGTOINT16</KEYWORD3>
229                         <KEYWORD3>STRINGTOINT32</KEYWORD3>
230                         <KEYWORD3>STRINGTOINT64</KEYWORD3>
231                         <KEYWORD3>HEXTOSTRING</KEYWORD3>
232                         <KEYWORD3>HEX16TOSTRING</KEYWORD3>
233                         <KEYWORD3>HEX32TOSTRING</KEYWORD3>
234                         <KEYWORD3>HEX64TOSTRING</KEYWORD3>
235                         <KEYWORD3>STRINGTOHEX</KEYWORD3>
236                         <KEYWORD3>STRINGTOHEX16</KEYWORD3>
237                         <KEYWORD3>STRINGTOHEX32</KEYWORD3>
238                         <KEYWORD3>STRINGTOHEX64</KEYWORD3>
239                         <KEYWORD3>STRINGTOREAL32</KEYWORD3>
240                         <KEYWORD3>STRINGTOREAL64</KEYWORD3>
241                         <KEYWORD3>REAL32TOSTRING</KEYWORD3>
242                         <KEYWORD3>REAL64TOSTRING</KEYWORD3>
243                         <KEYWORD3>STRINGTOBOOL</KEYWORD3>
244                         <KEYWORD3>BOOLTOSTRING</KEYWORD3>
245                         <KEYWORD3>RESCHEDULE</KEYWORD3>
246                         <KEYWORD3>ASSERT</KEYWORD3>
247
248                         <!-- preprocessor directives
249                         #INCLUDE
250                         #USE
251                         #OPTION
252                         #PRAGMA
253                         #COMMENT
254                         -->
255
256                         <LITERAL2>FALSE</LITERAL2>
257                         <LITERAL2>TRUE</LITERAL2>
258                 </KEYWORDS>
259         </RULES>
260 </MODE>