File indexing completed on 2024-05-12 04:02:09

0001 <!DOCTYPE html>
0002 <html><head>
0003 <meta http-equiv="Content-Type" content="text/html; charset=UTF-8"/>
0004 <title>test-r10.mod</title>
0005 <meta name="generator" content="KF5::SyntaxHighlighting - Definition (Modula-2 (R10 only)) - Theme (Breeze Light)"/>
0006 </head><body style="background-color:#ffffff;color:#1f1c1b"><pre>
0007 <span style="color:#898887;font-style:italic">(* Modula-2 R10 Syntax highlighting test *)</span>
0008 
0009 <span style="color:#898887;font-style:italic">(* dialect tags *)</span>
0010 
0011 <span style="color:#898887;font-weight:bold">(*!m2r10*)</span>
0012 
0013 
0014 <span style="color:#898887;font-style:italic">(* pragmas *)</span>
0015 
0016 <span style="color:#006e28;font-weight:bold">&lt;*foo*></span>
0017 
0018 
0019 <span style="color:#898887;font-style:italic">(* line comments *)</span>
0020 
0021 <span style="color:#898887;font-style:italic">! foo bar baz bam boo</span>
0022 
0023 
0024 <span style="color:#898887;font-style:italic">(* foldable comments *)</span>
0025 
0026 <span style="color:#898887;font-style:italic">(* foo bar baz</span>
0027 <span style="color:#898887;font-style:italic">   (* nested comment *)</span>
0028 <span style="color:#898887;font-style:italic">   bam boo bee bop *)</span>
0029 
0030 
0031 <span style="color:#898887;font-style:italic">(* reserved words *)</span>
0032 
0033 <span style="font-weight:bold">ALIAS</span> <span style="font-weight:bold">AND</span> <span style="font-weight:bold">ARGLIST</span> <span style="font-weight:bold">ARRAY</span> <span style="font-weight:bold">BEGIN</span> <span style="font-weight:bold">BLUEPRINT</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">COPY</span> <span style="font-weight:bold">DEFINITION</span> <span style="font-weight:bold">DIV</span> <span style="font-weight:bold">DO</span>
0034 <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">FOR</span> <span style="font-weight:bold">FROM</span> <span style="font-weight:bold">GENLIB</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>
0035 <span style="font-weight:bold">MODULE</span> <span style="font-weight:bold">NEW</span> <span style="font-weight:bold">NOT</span> <span style="font-weight:bold">OF</span> <span style="font-weight:bold">OPAQUE</span> <span style="font-weight:bold">OR</span> <span style="font-weight:bold">POINTER</span> <span style="font-weight:bold">PROCEDURE</span> <span style="font-weight:bold">READ</span> <span style="font-weight:bold">RECORD</span> <span style="font-weight:bold">REFERENTIAL</span> <span style="font-weight:bold">RELEASE</span>
0036 <span style="font-weight:bold">REPEAT</span> <span style="font-weight:bold">RETAIN</span> <span style="font-weight:bold">RETURN</span> <span style="font-weight:bold">SET</span> <span style="font-weight:bold">THEN</span> <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">WRITE</span> <span style="font-weight:bold">YIELD</span>
0037 
0038 
0039 <span style="color:#898887;font-style:italic">(* built-in constants *)</span>
0040 
0041 <span style="color:#644a9b;font-weight:bold">FALSE</span> <span style="color:#644a9b;font-weight:bold">NIL</span> <span style="color:#644a9b;font-weight:bold">TRUE</span>
0042 
0043 
0044 <span style="color:#898887;font-style:italic">(* built-in types *)</span>
0045 
0046 <span style="color:#0057ae;font-weight:bold">BOOLEAN</span> <span style="color:#0057ae;font-weight:bold">CARDINAL</span> <span style="color:#0057ae;font-weight:bold">CHAR</span> <span style="color:#0057ae;font-weight:bold">INTEGER</span> <span style="color:#0057ae;font-weight:bold">LONGCARD</span> <span style="color:#0057ae;font-weight:bold">LONGINT</span> <span style="color:#0057ae;font-weight:bold">LONGREAL</span> <span style="color:#0057ae;font-weight:bold">OCTET</span> <span style="color:#0057ae;font-weight:bold">REAL</span>
0047 
0048 
0049 <span style="color:#898887;font-style:italic">(* built-in procedures *)</span>
0050 
0051 <span style="color:#644a9b;font-weight:bold">ABS</span> <span style="color:#644a9b;font-weight:bold">APPEND</span> <span style="color:#644a9b;font-weight:bold">CAPACITY</span> <span style="color:#644a9b;font-weight:bold">CHR</span> <span style="color:#644a9b;font-weight:bold">COUNT</span> <span style="color:#644a9b;font-weight:bold">ENTIER</span> <span style="color:#644a9b;font-weight:bold">INSERT</span> <span style="color:#644a9b;font-weight:bold">LENGTH</span> <span style="color:#644a9b;font-weight:bold">LOG2</span> <span style="color:#644a9b;font-weight:bold">MAX</span> <span style="color:#644a9b;font-weight:bold">MIN</span> <span style="color:#644a9b;font-weight:bold">ODD</span> <span style="color:#644a9b;font-weight:bold">ORD</span>
0052 <span style="color:#644a9b;font-weight:bold">POW2</span> <span style="color:#644a9b;font-weight:bold">PRED</span> <span style="color:#644a9b;font-weight:bold">PTR</span> <span style="color:#644a9b;font-weight:bold">REMOVE</span> <span style="color:#644a9b;font-weight:bold">SGN</span> <span style="color:#644a9b;font-weight:bold">SUCC</span>
0053 
0054 
0055 <span style="color:#898887;font-style:italic">(* UNSAFE facilities *)</span>
0056 
0057 <span style="color:#898887;font-style:italic">(* module identifier *)</span>
0058 
0059 <span style="color:#bf0303;font-weight:bold">UNSAFE</span>
0060 
0061 <span style="color:#898887;font-style:italic">(* reserved words *)</span>
0062 
0063 <span style="color:#bf0303;font-weight:bold">CAST</span>
0064 
0065 <span style="color:#898887;font-style:italic">(* constants *)</span>
0066 
0067 <span style="color:#bf0303;font-weight:bold">BitsPerAddress</span> <span style="color:#bf0303;font-weight:bold">BitsPerByte</span> <span style="color:#bf0303;font-weight:bold">BytesPerWord</span> <span style="color:#bf0303;font-weight:bold">BytesPerLongWord</span>
0068 
0069 <span style="color:#898887;font-style:italic">(* types *)</span>
0070 
0071 <span style="color:#bf0303;font-weight:bold">ADDRESS</span> <span style="color:#bf0303;font-weight:bold">BYTE</span> <span style="color:#bf0303;font-weight:bold">WORD</span> <span style="color:#bf0303;font-weight:bold">LONGWORD</span> <span style="color:#bf0303;font-weight:bold">OCTETSEQ</span>
0072 
0073 <span style="color:#898887;font-style:italic">(* procedures *)</span>
0074 
0075 <span style="color:#bf0303;font-weight:bold">ADD</span> <span style="color:#bf0303;font-weight:bold">ADR</span> <span style="color:#bf0303;font-weight:bold">BIT</span> <span style="color:#bf0303;font-weight:bold">BWAND</span> <span style="color:#bf0303;font-weight:bold">BWNOT</span> <span style="color:#bf0303;font-weight:bold">BWOR</span> <span style="color:#bf0303;font-weight:bold">HALT</span> <span style="color:#bf0303;font-weight:bold">SETBIT</span> <span style="color:#bf0303;font-weight:bold">SHL</span> <span style="color:#bf0303;font-weight:bold">SHR</span> <span style="color:#bf0303;font-weight:bold">SUB</span>
0076 
0077 
0078 <span style="color:#898887;font-style:italic">(* number literals *)</span>
0079 
0080 <span style="font-weight:bold">CONST</span>
0081   b = <span style="color:#b08000">0b0110'1001</span>; <span style="color:#898887;font-style:italic">(* base-2 *)</span>
0082 
0083   n = <span style="color:#b08000">1000'0000</span>; <span style="color:#898887;font-style:italic">(* base-10 *)</span>
0084 
0085   x = <span style="color:#b08000">0xDEAD'BEEF</span>; <span style="color:#898887;font-style:italic">(* base-16 *)</span>
0086 
0087   c = <span style="color:#b08000">0u2A</span>; <span style="color:#898887;font-style:italic">(* character code *)</span>
0088 
0089   r = <span style="color:#b08000">1.234</span>; <span style="color:#898887;font-style:italic">(* real number *)</span>
0090 
0091 
0092 <span style="color:#898887;font-style:italic">(* quoted literals *)</span>
0093 
0094 <span style="font-weight:bold">CONST</span>
0095   apostrophe = <span style="color:#bf0303">"'"</span>; doublequote = <span style="color:#bf0303">'"'</span>;
0096   single =<span style="color:#bf0303">'foobar'</span>; double = <span style="color:#bf0303">"bazbam"</span>;
0097 
0098 
0099 <span style="color:#898887;font-style:italic">(* sample code *)</span>
0100 
0101 <span style="font-weight:bold">TYPE</span> Foo = <span style="font-weight:bold">RECORD</span>
0102   bar : Baz;
0103   bam : Boo
0104 <span style="font-weight:bold">END</span>; <span style="color:#898887;font-style:italic">(* Foobar *)</span>
0105 
0106 
0107 <span style="font-weight:bold">VAR</span>
0108   foo, bar, baz : <span style="color:#0057ae;font-weight:bold">CARDINAL</span>;
0109 
0110 
0111 <span style="font-weight:bold">IF</span> foo > bar <span style="font-weight:bold">THEN</span>
0112   baz := bam
0113 <span style="font-weight:bold">ELSE</span>
0114   baz := boo
0115 <span style="font-weight:bold">END</span>;
0116 
0117 
0118 <span style="color:#898887;font-style:italic">(* EOF *)</span>
0119 </pre></body></html>