File indexing completed on 2024-05-19 15:23:16

0001 <!DOCTYPE html>
0002 <html><head>
0003 <meta http-equiv="Content-Type" content="text/html; charset=UTF-8"/>
0004 <title>test.mod</title>
0005 <meta name="generator" content="KF5::SyntaxHighlighting - Definition (Modula-2) - Theme (Breeze Dark)"/>
0006 </head><body style="background-color:#232629;color:#cfcfc2"><pre>
0007 <span style="color:#7a7c7d;font-style:italic;">(* ISO Modula-2 Syntax highlighting test *)</span>
0008 
0009 <span style="color:#7a7c7d;font-style:italic;">(* dialect tags *)</span>
0010 
0011 <span style="color:#7a7c7d;font-weight:bold;">(*!m2iso*)</span>
0012 
0013 
0014 <span style="color:#7a7c7d;font-style:italic;">(* pragmas *)</span>
0015 
0016 <span style="color:#27ae60;font-weight:bold;">&lt;*foo*&gt;</span>
0017 
0018 
0019 <span style="color:#7a7c7d;font-style:italic;">(* foldable comments *)</span>
0020 
0021 <span style="color:#7a7c7d;font-style:italic;">(* foo bar baz</span>
0022 <span style="color:#7a7c7d;font-style:italic;">   (* nested comment *)</span>
0023 <span style="color:#7a7c7d;font-style:italic;">   bam boo bee bop *)</span>
0024 
0025 
0026 <span style="color:#7a7c7d;font-style:italic;">(* built-in constants *)</span>
0027 
0028 <span style="color:#7f8c8d;font-weight:bold;">FALSE</span> <span style="color:#7f8c8d;font-weight:bold;">INTERRUPTIBLE</span> <span style="color:#7f8c8d;font-weight:bold;">NIL</span> <span style="color:#7f8c8d;font-weight:bold;">TRUE</span> <span style="color:#7f8c8d;font-weight:bold;">UNINTERRUPTIBLE</span>
0029 
0030 
0031 <span style="color:#7a7c7d;font-style:italic;">(* built-in types *)</span>
0032 
0033 <span style="color:#2980b9;font-weight:bold;">BOOLEAN</span> <span style="color:#2980b9;font-weight:bold;">BITSET</span> <span style="color:#2980b9;font-weight:bold;">CARDINAL</span> <span style="color:#2980b9;font-weight:bold;">COMPLEX</span> <span style="color:#2980b9;font-weight:bold;">CHAR</span> <span style="color:#2980b9;font-weight:bold;">INTEGER</span> <span style="color:#2980b9;font-weight:bold;">LONGCOMPLEX</span> <span style="color:#2980b9;font-weight:bold;">LONGREAL</span>
0034 <span style="color:#2980b9;font-weight:bold;">PROC</span> <span style="color:#2980b9;font-weight:bold;">PROTECTION</span> <span style="color:#2980b9;font-weight:bold;">REAL</span>
0035 
0036 
0037 <span style="color:#7a7c7d;font-style:italic;">(* built-in procedures *)</span>
0038 
0039 <span style="color:#7f8c8d;font-weight:bold;">ABS</span> <span style="color:#7f8c8d;font-weight:bold;">ALLOCATE</span> <span style="color:#7f8c8d;font-weight:bold;">CAP</span> <span style="color:#7f8c8d;font-weight:bold;">CHR</span> <span style="color:#7f8c8d;font-weight:bold;">CMPLX</span> <span style="color:#7f8c8d;font-weight:bold;">DEALLOCATE</span> <span style="color:#7f8c8d;font-weight:bold;">DEC</span> <span style="color:#7f8c8d;font-weight:bold;">DISPOSE</span> <span style="color:#7f8c8d;font-weight:bold;">EXCL</span> <span style="color:#7f8c8d;font-weight:bold;">FLOAT</span> <span style="color:#7f8c8d;font-weight:bold;">HALT</span> <span style="color:#7f8c8d;font-weight:bold;">HIGH</span>
0040 <span style="color:#7f8c8d;font-weight:bold;">INC</span> <span style="color:#7f8c8d;font-weight:bold;">INCL</span> <span style="color:#7f8c8d;font-weight:bold;">INT</span> <span style="color:#7f8c8d;font-weight:bold;">LENGTH</span> <span style="color:#7f8c8d;font-weight:bold;">LFLOAT</span> <span style="color:#7f8c8d;font-weight:bold;">MAX</span> <span style="color:#7f8c8d;font-weight:bold;">MIN</span> <span style="color:#7f8c8d;font-weight:bold;">NEW</span> <span style="color:#7f8c8d;font-weight:bold;">ODD</span> <span style="color:#7f8c8d;font-weight:bold;">ORD</span> <span style="color:#7f8c8d;font-weight:bold;">RE</span> <span style="color:#7f8c8d;font-weight:bold;">SIZE</span> <span style="color:#7f8c8d;font-weight:bold;">TRUNC</span> <span style="color:#7f8c8d;font-weight:bold;">VAL</span>
0041 
0042 
0043 <span style="color:#7a7c7d;font-style:italic;">(* reserved words *)</span>
0044 
0045 <span style="font-weight:bold;">AND</span> <span style="font-weight:bold;">ARRAY</span> <span style="font-weight:bold;">BEGIN</span> <span style="font-weight:bold;">BY</span> <span style="font-weight:bold;">CASE</span> <span style="font-weight:bold;">CONST</span> <span style="font-weight:bold;">DEFINITION</span> <span style="font-weight:bold;">DIV</span> <span style="font-weight:bold;">DO</span> <span style="font-weight:bold;">ELSE</span> <span style="font-weight:bold;">ELSIF</span> <span style="font-weight:bold;">END</span> <span style="font-weight:bold;">EXIT</span> <span style="font-weight:bold;">EXPORT</span>
0046 <span style="font-weight:bold;">FINALLY</span> <span style="font-weight:bold;">FOR</span> <span style="font-weight:bold;">FORWARD</span> <span style="font-weight:bold;">FROM</span> <span style="font-weight:bold;">IF</span> <span style="font-weight:bold;">IMPLEMENTATION</span> <span style="font-weight:bold;">IMPORT</span> <span style="font-weight:bold;">IN</span> <span style="font-weight:bold;">LOOP</span> <span style="font-weight:bold;">MOD</span> <span style="font-weight:bold;">MODULE</span> <span style="font-weight:bold;">NOT</span> <span style="font-weight:bold;">OF</span> <span style="font-weight:bold;">OR</span>
0047 <span style="font-weight:bold;">PACKEDSET</span> <span style="font-weight:bold;">POINTER</span> <span style="font-weight:bold;">PROCEDURE</span> <span style="font-weight:bold;">QUALIFIED</span> <span style="font-weight:bold;">RECORD</span> <span style="font-weight:bold;">REM</span> <span style="font-weight:bold;">REPEAT</span> <span style="font-weight:bold;">RETRY</span> <span style="font-weight:bold;">RETURN</span> <span style="font-weight:bold;">SET</span> <span style="font-weight:bold;">THEN</span>
0048 <span style="font-weight:bold;">TO</span> <span style="font-weight:bold;">TYPE</span> <span style="font-weight:bold;">UNTIL</span> <span style="font-weight:bold;">VAR</span> <span style="font-weight:bold;">WHILE</span> <span style="font-weight:bold;">WITH</span>
0049 
0050 
0051 <span style="color:#7a7c7d;font-style:italic;">(* unsafe facilities *)</span>
0052 
0053 <span style="color:#7a7c7d;font-style:italic;">(* module *)</span>
0054 
0055 <span style="color:#da4453;font-weight:bold;">SYSTEM</span>
0056 
0057 <span style="color:#7a7c7d;font-style:italic;">(* constants *)</span>
0058 
0059 <span style="color:#da4453;font-weight:bold;">BITSPERLOC</span> <span style="color:#da4453;font-weight:bold;">BITSPERWORD</span>
0060 
0061 <span style="color:#7a7c7d;font-style:italic;">(* types *)</span>
0062 
0063 <span style="color:#da4453;font-weight:bold;">ADDRESS</span> <span style="color:#da4453;font-weight:bold;">LOC</span> <span style="color:#da4453;font-weight:bold;">WORD</span>
0064 
0065 <span style="color:#7a7c7d;font-style:italic;">(* procedures *)</span>
0066 
0067 <span style="color:#da4453;font-weight:bold;">ADDADR</span> <span style="color:#da4453;font-weight:bold;">ADR</span> <span style="color:#da4453;font-weight:bold;">CAST</span> <span style="color:#da4453;font-weight:bold;">DIFADR</span> <span style="color:#da4453;font-weight:bold;">MAKEADR</span> <span style="color:#da4453;font-weight:bold;">ROTATE</span> <span style="color:#da4453;font-weight:bold;">SHIFT</span> <span style="color:#da4453;font-weight:bold;">SUBADR</span> <span style="color:#da4453;font-weight:bold;">TSIZE</span>
0068 
0069 
0070 <span style="color:#7a7c7d;font-style:italic;">(* number literals *)</span>
0071 
0072 <span style="font-weight:bold;">CONST</span>
0073   n = <span style="color:#f67400;">1000</span>; r = <span style="color:#f67400;">1.234</span>; x = <span style="color:#f67400;">0FFFFH</span>; c = <span style="color:#f67400;">077C</span>;
0074 
0075 
0076 <span style="color:#7a7c7d;font-style:italic;">(* quoted literals *)</span>
0077 
0078 <span style="font-weight:bold;">CONST</span>
0079   apostrophe = <span style="color:#f44f4f;">&quot;'&quot;</span>; doublequote = <span style="color:#f44f4f;">'&quot;'</span>;
0080   single =<span style="color:#f44f4f;">'foobar'</span>; double = <span style="color:#f44f4f;">&quot;bazbam&quot;</span>;
0081 
0082 
0083 <span style="color:#7a7c7d;font-style:italic;">(* sample code *)</span>
0084 
0085 <span style="font-weight:bold;">TYPE</span> Foo = <span style="font-weight:bold;">RECORD</span>
0086   bar : Baz;
0087   bam : Boo
0088 <span style="font-weight:bold;">END</span>; <span style="color:#7a7c7d;font-style:italic;">(* Foobar *)</span>
0089 
0090 
0091 <span style="font-weight:bold;">VAR</span>
0092   foo, bar, baz : <span style="color:#2980b9;font-weight:bold;">CARDINAL</span>;
0093 
0094 
0095 <span style="font-weight:bold;">IF</span> foo &gt; bar <span style="font-weight:bold;">THEN</span>
0096   baz := bam
0097 <span style="font-weight:bold;">ELSE</span>
0098   baz := boo
0099 <span style="font-weight:bold;">END</span>;
0100 
0101 
0102 <span style="color:#7a7c7d;font-style:italic;">(* EOF *)</span>
0103 </pre></body></html>