0000: 0d 0a 3c 68 74 6d 6c 3e 3c 68 65 61 64 3e 0d 0a ..<html><head>..
0010: 3c 6d 65 74 61 20 68 74 74 70 2d 65 71 75 69 76 <meta http-equiv
0020: 3d 22 63 6f 6e 74 65 6e 74 2d 74 79 70 65 22 20 ="content-type"
0030: 63 6f 6e 74 65 6e 74 3d 22 74 65 78 74 2f 68 74 content="text/ht
0040: 6d 6c 3b 20 63 68 61 72 73 65 74 3d 75 74 66 2d ml; charset=utf-
0050: 38 22 3e 0d 0a 3c 6d 65 74 61 20 63 6f 6e 74 65 8">..<meta conte
0060: 6e 74 3d 22 74 65 78 74 2f 6a 61 76 61 73 63 72 nt="text/javascr
0070: 69 70 74 22 20 68 74 74 70 2d 65 71 75 69 76 3d ipt" http-equiv=
0080: 22 63 6f 6e 74 65 6e 74 2d 73 63 72 69 70 74 2d "content-script-
0090: 74 79 70 65 22 3e 0d 0a 3c 74 69 74 6c 65 3e 50 type">..<title>P
00a0: 6f 6c 65 6d 79 20 52 65 66 65 72 65 6e 63 65 20 olemy Reference
00b0: 4d 61 6e 75 61 6c 3c 2f 74 69 74 6c 65 3e 0d 0a Manual</title>..
00c0: 3c 6c 69 6e 6b 20 72 65 6c 3d 22 73 74 79 6c 65 <link rel="style
00d0: 73 68 65 65 74 22 20 74 79 70 65 3d 22 74 65 78 sheet" type="tex
00e0: 74 2f 63 73 73 22 20 68 72 65 66 3d 22 63 61 6e t/css" href="can
00f0: 64 79 64 6f 63 2f 73 74 79 6c 65 2e 63 73 73 22 dydoc/style.css"
0100: 3e 0d 0a 3c 21 2d 2d 5b 69 66 20 6c 74 20 49 45 >..<!--[if lt IE
0110: 20 37 5d 3e 3c 6c 69 6e 6b 20 72 65 6c 3d 22 73 7]><link rel="s
0120: 74 79 6c 65 73 68 65 65 74 22 20 74 79 70 65 3d tylesheet" type=
0130: 22 74 65 78 74 2f 63 73 73 22 20 68 72 65 66 3d "text/css" href=
0140: 22 63 61 6e 64 79 64 6f 63 2f 69 65 35 36 68 61 "candydoc/ie56ha
0150: 63 6b 2e 63 73 73 22 3e 3c 21 5b 65 6e 64 69 66 ck.css"><![endif
0160: 5d 2d 2d 3e 0d 0a 3c 73 63 72 69 70 74 20 6c 61 ]-->..<script la
0170: 6e 67 75 61 67 65 3d 22 4a 61 76 61 53 63 72 69 nguage="JavaScri
0180: 70 74 22 20 73 72 63 3d 22 63 61 6e 64 79 64 6f pt" src="candydo
0190: 63 2f 75 74 69 6c 2e 6a 73 22 20 74 79 70 65 3d c/util.js" type=
01a0: 22 74 65 78 74 2f 6a 61 76 61 73 63 72 69 70 74 "text/javascript
01b0: 22 3e 3c 2f 73 63 72 69 70 74 3e 0d 0a 3c 73 63 "></script>..<sc
01c0: 72 69 70 74 20 6c 61 6e 67 75 61 67 65 3d 22 4a ript language="J
01d0: 61 76 61 53 63 72 69 70 74 22 20 73 72 63 3d 22 avaScript" src="
01e0: 63 61 6e 64 79 64 6f 63 2f 74 72 65 65 2e 6a 73 candydoc/tree.js
01f0: 22 20 74 79 70 65 3d 22 74 65 78 74 2f 6a 61 76 " type="text/jav
0200: 61 73 63 72 69 70 74 22 3e 3c 2f 73 63 72 69 70 ascript"></scrip
0210: 74 3e 0d 0a 3c 73 63 72 69 70 74 20 6c 61 6e 67 t>..<script lang
0220: 75 61 67 65 3d 22 4a 61 76 61 53 63 72 69 70 74 uage="JavaScript
0230: 22 20 73 72 63 3d 22 63 61 6e 64 79 64 6f 63 2f " src="candydoc/
0240: 65 78 70 6c 6f 72 65 72 2e 6a 73 22 20 74 79 70 explorer.js" typ
0250: 65 3d 22 74 65 78 74 2f 6a 61 76 61 73 63 72 69 e="text/javascri
0260: 70 74 22 3e 3c 2f 73 63 72 69 70 74 3e 0d 0a 3c pt"></script>..<
0270: 2f 68 65 61 64 3e 3c 62 6f 64 79 3e 0d 0a 3c 64 /head><body>..<d
0280: 69 76 20 69 64 3d 22 74 61 62 61 72 65 61 22 3e iv id="tabarea">
0290: 3c 2f 64 69 76 3e 3c 64 69 76 20 69 64 3d 22 65 </div><div id="e
02a0: 78 70 6c 6f 72 65 72 63 6c 69 65 6e 74 22 3e 3c xplorerclient"><
02b0: 2f 64 69 76 3e 0d 0a 3c 64 69 76 20 69 64 3d 22 /div>..<div id="
02c0: 63 6f 6e 74 65 6e 74 22 3e 3c 73 63 72 69 70 74 content"><script
02d0: 3e 65 78 70 6c 6f 72 65 72 2e 69 6e 69 74 69 61 >explorer.initia
02e0: 6c 69 7a 65 28 22 50 6f 6c 65 6d 79 20 52 65 66 lize("Polemy Ref
02f0: 65 72 65 6e 63 65 20 4d 61 6e 75 61 6c 22 29 3b erence Manual");
0300: 3c 2f 73 63 72 69 70 74 3e 0d 0a 09 3c 74 61 62 </script>...<tab
0310: 6c 65 20 63 6c 61 73 73 3d 22 63 6f 6e 74 65 6e le class="conten
0320: 74 22 3e 0d 0a 09 09 3c 74 72 3e 3c 74 64 20 69 t">....<tr><td i
0330: 64 3d 22 64 6f 63 62 6f 64 79 22 3e 3c 68 31 3e d="docbody"><h1>
0340: 50 6f 6c 65 6d 79 20 52 65 66 65 72 65 6e 63 65 Polemy Reference
0350: 20 4d 61 6e 75 61 6c 3c 2f 68 31 3e 3c 21 2d 2d Manual</h1><!--
0360: 20 47 65 6e 65 72 61 74 65 64 20 62 79 20 44 64 Generated by Dd
0370: 6f 63 20 66 72 6f 6d 20 69 6e 64 65 78 2e 64 64 oc from index.dd
0380: 20 2d 2d 3e 0d 0a 0d 0a 3c 62 3e 41 75 74 68 6f -->....<b>Autho
0390: 72 73 3a 3c 2f 62 3e 3c 62 72 3e 0d 0a 6b 2e 69 rs:</b><br>..k.i
03a0: 6e 61 62 61 3c 62 72 3e 3c 62 72 3e 0d 0a 3c 62 naba<br><br>..<b
03b0: 3e 4c 69 63 65 6e 73 65 3a 3c 2f 62 3e 3c 62 72 >License:</b><br
03c0: 3e 0d 0a 4e 59 53 4c 20 30 2e 39 39 38 32 20 28 >..NYSL 0.9982 (
03d0: 68 74 74 70 3a 2f 2f 77 77 77 2e 6b 6d 6f 6e 6f http://www.kmono
03e0: 73 2e 6e 65 74 2f 6e 79 73 6c 2f 29 3c 62 72 3e s.net/nysl/)<br>
03f0: 3c 62 72 3e 0d 0a 0d 0a 3c 70 3e 0d 0a e3 81 93 <br>....<p>.....
0400: e3 81 ae e3 83 95 e3 82 a1 e3 82 a4 e3 83 ab e3 ................
0410: 81 af e3 80 81 e8 a8 80 e8 aa 9e e4 bb 95 e6 a7 ................
0420: 98 e3 81 aa e3 81 a9 e3 81 ae e7 b0 a1 e5 8d 98 ................
0430: e3 81 aa e8 aa ac e6 98 8e e3 81 a7 e3 81 99 e3 ................
0440: 80 82 0d 0a 3c 2f 70 3e 0d 0a 3c 70 3e 0d 0a e3 ....</p>..<p>...
0450: 81 82 e3 81 a8 e3 81 a4 e3 81 84 e3 81 a7 e3 81 ................
0460: ab e3 80 81 e5 b7 a6 e3 81 ae e3 82 b5 e3 82 a4 ................
0470: e3 83 89 e3 83 90 e3 83 bc e3 81 ae 20 22 50 61 ............ "Pa
0480: 63 6b 61 67 65 22 20 e3 82 bf e3 83 96 e3 82 92 ckage" .........
0490: e3 82 af e3 83 aa e3 83 83 e3 82 af e3 81 99 e3 ................
04a0: 82 8b e3 81 a8 e5 ae 9f e8 a3 85 e3 81 ae e3 82 ................
04b0: bd e3 83 bc e3 82 b9 e3 81 ae e3 83 89 e3 82 ad ................
04c0: e3 83 a5 e3 83 a1 e3 83 b3 e3 83 88 e3 81 8c e8 ................
04d0: aa ad e3 82 81 e3 81 be e3 81 99 e3 80 82 0d 0a ................
04e0: 3c 2f 70 3e 0d 0a 0d 0a 0d 0a 3c 73 63 72 69 70 </p>......<scrip
04f0: 74 3e 65 78 70 6c 6f 72 65 72 2e 6f 75 74 6c 69 t>explorer.outli
0500: 6e 65 2e 69 6e 63 53 79 6d 62 6f 6c 4c 65 76 65 ne.incSymbolLeve
0510: 6c 28 29 3b 3c 2f 73 63 72 69 70 74 3e 0d 0a 3c l();</script>..<
0520: 64 6c 3e 0d 0a 3c 73 63 72 69 70 74 3e 65 78 70 dl>..<script>exp
0530: 6c 6f 72 65 72 2e 6f 75 74 6c 69 6e 65 2e 77 72 lorer.outline.wr
0540: 69 74 65 45 6e 61 62 6c 65 64 20 3d 20 74 72 75 iteEnabled = tru
0550: 65 3b 3c 2f 73 63 72 69 70 74 3e 0d 0a 3c 64 74 e;</script>..<dt
0560: 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 64 65 ><span class="de
0570: 63 6c 22 3e 0d 0a 3c 73 70 61 6e 20 63 6c 61 73 cl">..<span clas
0580: 73 3d 22 63 75 72 72 73 79 6d 62 6f 6c 22 3e 53 s="currsymbol">S
0590: 79 6e 74 61 78 3c 2f 73 70 61 6e 3e 0d 0a 3c 73 yntax</span>..<s
05a0: 63 72 69 70 74 3e 65 78 70 6c 6f 72 65 72 2e 6f cript>explorer.o
05b0: 75 74 6c 69 6e 65 2e 61 64 64 44 65 63 6c 28 27 utline.addDecl('
05c0: 53 79 6e 74 61 78 27 29 3b 3c 2f 73 63 72 69 70 Syntax');</scrip
05d0: 74 3e 0d 0a 0d 0a 3c 2f 73 70 61 6e 3e 3c 2f 64 t>....</span></d
05e0: 74 3e 0d 0a 3c 73 63 72 69 70 74 3e 65 78 70 6c t>..<script>expl
05f0: 6f 72 65 72 2e 6f 75 74 6c 69 6e 65 2e 77 72 69 orer.outline.wri
0600: 74 65 45 6e 61 62 6c 65 64 20 3d 20 66 61 6c 73 teEnabled = fals
0610: 65 3b 3c 2f 73 63 72 69 70 74 3e 0d 0a 0d 0a 20 e;</script>....
0620: 3c 64 64 3e 3c 70 3e 0d 0a e6 96 87 e6 b3 95 e3 <dd><p>.........
0630: 81 ab e3 81 a4 e3 81 84 e3 81 a6 e3 80 82 0d 0a ................
0640: e5 ad 97 e5 8f a5 e8 a7 a3 e6 9e 90 e3 81 8c e3 ................
0650: 82 8f e3 82 8a e3 81 a8 e9 81 a9 e5 bd 93 e3 81 ................
0660: aa e3 81 ae e3 81 a7 e3 80 81 0d 0a e5 a4 89 e6 ................
0670: 95 b0 e5 ae a3 e8 a8 80 e3 81 ae e5 a4 89 e6 95 ................
0680: b0 e5 90 8d e3 81 ae e3 81 a8 e3 81 93 e3 82 8d ................
0690: e3 81 ab e3 80 81 e6 95 b0 e5 ad 97 e3 82 92 e5 ................
06a0: a4 89 e6 95 b0 e5 90 8d e3 81 a8 e3 81 97 e3 81 ................
06b0: a6 e4 bd bf e3 81 88 e3 81 a6 e5 8f 82 e7 85 a7 ................
06c0: e3 81 a7 e3 81 8d e3 81 aa e3 81 84 e5 a4 89 e6 ................
06d0: 95 b0 e3 81 8c e4 bd 9c e3 82 8c e3 81 9f e3 82 ................
06e0: 8a e3 80 81 0d 0a e4 ba 88 e7 b4 84 e8 aa 9e e3 ................
06f0: 81 af e4 ba 88 e7 b4 84 e8 aa 9e e3 81 a8 e3 81 ................
0700: 97 e3 81 a6 e8 a7 a3 e9 87 88 e3 81 95 e3 82 8c ................
0710: e5 be 97 e3 81 aa e3 81 84 e3 81 a8 e3 81 93 e3 ................
0720: 82 8d e3 81 a7 e3 81 af e6 99 ae e9 80 9a e3 81 ................
0730: ab e5 a4 89 e6 95 b0 e5 90 8d e3 81 a8 e3 81 97 ................
0740: e3 81 a6 e4 bd bf e3 81 88 e3 81 a1 e3 82 83 e3 ................
0750: 81 a3 e3 81 9f e3 82 8a e3 81 97 e3 81 a6 e3 80 ................
0760: 81 0d 0a e5 81 b6 e3 81 ab e3 81 a8 e3 82 93 e3 ................
0770: 81 a7 e3 82 82 e3 81 aa e3 81 84 e8 a6 8b e3 81 ................
0780: 8b e3 81 91 e3 81 ae e3 82 bd e3 83 bc e3 82 b9 ................
0790: e3 81 8c e6 a7 8b e6 96 87 e8 a7 a3 e6 9e 90 e9 ................
07a0: 80 9a e3 82 8a e3 81 be e3 81 99 e3 81 8c e3 80 ................
07b0: 81 e6 b0 97 e3 81 ab e3 81 97 e3 81 aa e3 81 84 ................
07c0: e3 81 a7 e9 81 a9 e5 bd 93 e3 81 ab e4 bd bf e3 ................
07d0: 81 a3 e3 81 a6 e4 b8 8b e3 81 95 e3 81 84 e3 80 ................
07e0: 82 0d 0a 3c 2f 70 3e 0d 0a 0d 0a 0d 0a 3c 73 63 ...</p>......<sc
07f0: 72 69 70 74 3e 65 78 70 6c 6f 72 65 72 2e 6f 75 ript>explorer.ou
0800: 74 6c 69 6e 65 2e 69 6e 63 53 79 6d 62 6f 6c 4c tline.incSymbolL
0810: 65 76 65 6c 28 29 3b 3c 2f 73 63 72 69 70 74 3e evel();</script>
0820: 0d 0a 3c 64 6c 3e 0d 0a 3c 73 63 72 69 70 74 3e ..<dl>..<script>
0830: 65 78 70 6c 6f 72 65 72 2e 6f 75 74 6c 69 6e 65 explorer.outline
0840: 2e 77 72 69 74 65 45 6e 61 62 6c 65 64 20 3d 20 .writeEnabled =
0850: 74 72 75 65 3b 3c 2f 73 63 72 69 70 74 3e 0d 0a true;</script>..
0860: 3c 64 74 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d <dt><span class=
0870: 22 64 65 63 6c 22 3e 0d 0a 3c 73 70 61 6e 20 63 "decl">..<span c
0880: 6c 61 73 73 3d 22 63 75 72 72 73 79 6d 62 6f 6c lass="currsymbol
0890: 22 3e e6 96 87 e5 ad 97 e3 82 b3 e3 83 bc e3 83 ">..............
08a0: 89 3c 2f 73 70 61 6e 3e 0d 0a 3c 73 63 72 69 70 .</span>..<scrip
08b0: 74 3e 65 78 70 6c 6f 72 65 72 2e 6f 75 74 6c 69 t>explorer.outli
08c0: 6e 65 2e 61 64 64 44 65 63 6c 28 27 e6 96 87 e5 ne.addDecl('....
08d0: ad 97 e3 82 b3 e3 83 bc e3 83 89 27 29 3b 3c 2f ...........');</
08e0: 73 63 72 69 70 74 3e 0d 0a 0d 0a 3c 2f 73 70 61 script>....</spa
08f0: 6e 3e 3c 2f 64 74 3e 0d 0a 3c 73 63 72 69 70 74 n></dt>..<script
0900: 3e 65 78 70 6c 6f 72 65 72 2e 6f 75 74 6c 69 6e >explorer.outlin
0910: 65 2e 77 72 69 74 65 45 6e 61 62 6c 65 64 20 3d e.writeEnabled =
0920: 20 66 61 6c 73 65 3b 3c 2f 73 63 72 69 70 74 3e false;</script>
0930: 0d 0a 0d 0a 20 3c 64 64 3e 3c 70 3e 0d 0a 55 54 .... <dd><p>..UT
0940: 46 2d 38 20 e3 81 ae e3 81 bf e5 af be e5 bf 9c F-8 ............
0950: e3 81 a7 e3 81 99 e3 80 82 0d 0a 3c 2f 70 3e 0d ...........</p>.
0960: 0a 3c 2f 64 64 3e 0d 0a 0d 0a 0d 0a 3c 73 63 72 .</dd>......<scr
0970: 69 70 74 3e 65 78 70 6c 6f 72 65 72 2e 6f 75 74 ipt>explorer.out
0980: 6c 69 6e 65 2e 77 72 69 74 65 45 6e 61 62 6c 65 line.writeEnable
0990: 64 20 3d 20 74 72 75 65 3b 3c 2f 73 63 72 69 70 d = true;</scrip
09a0: 74 3e 0d 0a 3c 64 74 3e 3c 73 70 61 6e 20 63 6c t>..<dt><span cl
09b0: 61 73 73 3d 22 64 65 63 6c 22 3e 0d 0a 3c 73 70 ass="decl">..<sp
09c0: 61 6e 20 63 6c 61 73 73 3d 22 63 75 72 72 73 79 an class="currsy
09d0: 6d 62 6f 6c 22 3e e3 82 b3 e3 83 a1 e3 83 b3 e3 mbol">..........
09e0: 83 88 3c 2f 73 70 61 6e 3e 0d 0a 3c 73 63 72 69 ..</span>..<scri
09f0: 70 74 3e 65 78 70 6c 6f 72 65 72 2e 6f 75 74 6c pt>explorer.outl
0a00: 69 6e 65 2e 61 64 64 44 65 63 6c 28 27 e3 82 b3 ine.addDecl('...
0a10: e3 83 a1 e3 83 b3 e3 83 88 27 29 3b 3c 2f 73 63 .........');</sc
0a20: 72 69 70 74 3e 0d 0a 0d 0a 3c 2f 73 70 61 6e 3e ript>....</span>
0a30: 3c 2f 64 74 3e 0d 0a 3c 73 63 72 69 70 74 3e 65 </dt>..<script>e
0a40: 78 70 6c 6f 72 65 72 2e 6f 75 74 6c 69 6e 65 2e xplorer.outline.
0a50: 77 72 69 74 65 45 6e 61 62 6c 65 64 20 3d 20 66 writeEnabled = f
0a60: 61 6c 73 65 3b 3c 2f 73 63 72 69 70 74 3e 0d 0a alse;</script>..
0a70: 0d 0a 20 3c 64 64 3e 3c 70 3e 0d 0a e8 a1 8c e3 .. <dd><p>......
0a80: 82 b3 e3 83 a1 e3 83 b3 e3 83 88 e3 81 af 20 3c .............. <
0a90: 74 74 3e 23 3c 2f 74 74 3e 20 e3 81 8b e3 82 89 tt>#</tt> ......
0aa0: e6 94 b9 e8 a1 8c e3 81 be e3 81 a7 e3 81 a7 e3 ................
0ab0: 81 99 e3 80 82 0d 0a 3c 2f 70 3e 0d 0a 3c 70 3e .......</p>..<p>
0ac0: 0d 0a e3 83 96 e3 83 ad e3 83 83 e3 82 af e3 82 ................
0ad0: b3 e3 83 a1 e3 83 b3 e3 83 88 e3 81 af e3 81 82 ................
0ae0: e3 82 8a e3 81 be e3 81 9b e3 82 93 e3 80 82 0d ................
0af0: 0a 3c 2f 70 3e 0d 0a 3c 2f 64 64 3e 0d 0a 0d 0a .</p>..</dd>....
0b00: 0d 0a 3c 73 63 72 69 70 74 3e 65 78 70 6c 6f 72 ..<script>explor
0b10: 65 72 2e 6f 75 74 6c 69 6e 65 2e 77 72 69 74 65 er.outline.write
0b20: 45 6e 61 62 6c 65 64 20 3d 20 74 72 75 65 3b 3c Enabled = true;<
0b30: 2f 73 63 72 69 70 74 3e 0d 0a 3c 64 74 3e 3c 73 /script>..<dt><s
0b40: 70 61 6e 20 63 6c 61 73 73 3d 22 64 65 63 6c 22 pan class="decl"
0b50: 3e 0d 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 >..<span class="
0b60: 63 75 72 72 73 79 6d 62 6f 6c 22 3e 42 4e 46 3c currsymbol">BNF<
0b70: 2f 73 70 61 6e 3e 0d 0a 3c 73 63 72 69 70 74 3e /span>..<script>
0b80: 65 78 70 6c 6f 72 65 72 2e 6f 75 74 6c 69 6e 65 explorer.outline
0b90: 2e 61 64 64 44 65 63 6c 28 27 42 4e 46 27 29 3b .addDecl('BNF');
0ba0: 3c 2f 73 63 72 69 70 74 3e 0d 0a 0d 0a 3c 2f 73 </script>....</s
0bb0: 70 61 6e 3e 3c 2f 64 74 3e 0d 0a 3c 73 63 72 69 pan></dt>..<scri
0bc0: 70 74 3e 65 78 70 6c 6f 72 65 72 2e 6f 75 74 6c pt>explorer.outl
0bd0: 69 6e 65 2e 77 72 69 74 65 45 6e 61 62 6c 65 64 ine.writeEnabled
0be0: 20 3d 20 66 61 6c 73 65 3b 3c 2f 73 63 72 69 70 = false;</scrip
0bf0: 74 3e 0d 0a 0d 0a 20 3c 64 64 3e 3c 70 72 65 3e t>.... <dd><pre>
0c00: 0d 0a 20 49 44 20 20 20 20 3a 3a 3d 20 e9 81 a9 .. ID ::= ...
0c10: e5 bd 93 e3 81 ab e8 ad 98 e5 88 a5 e5 ad 90 e3 ................
0c20: 81 a3 e3 81 bd e3 81 84 e6 96 87 e5 ad 97 e5 88 ................
0c30: 97 0d 0a 20 4c 41 59 45 52 20 3a 3a 3d 20 22 40 ... LAYER ::= "@
0c40: 22 20 49 44 0d 0a 0d 0a 20 45 20 3a 3a 3d 0d 0a " ID.... E ::=..
0c50: 20 20 20 3c 66 6f 6e 74 20 63 6f 6c 6f 72 3d 67 <font color=g
0c60: 72 65 65 6e 3e 23 20 e5 a4 89 e6 95 b0 e5 ae a3 reen># .........
0c70: e8 a8 80 3c 2f 66 6f 6e 74 3e 0d 0a 20 20 20 20 ...</font>..
0c80: 20 7c 20 44 45 43 4c 20 22 3d 22 20 45 20 28 22 | DECL "=" E ("
0c90: 3b 22 7c 22 69 6e 22 29 20 45 0d 0a 20 20 20 20 ;"|"in") E..
0ca0: 20 7c 20 44 45 43 4c 20 22 28 22 20 50 41 52 41 | DECL "(" PARA
0cb0: 4d 53 20 22 29 22 20 22 7b 22 20 45 20 22 7d 22 MS ")" "{" E "}"
0cc0: 20 28 22 3b 22 7c 22 69 6e 22 29 20 45 0d 0a 20 (";"|"in") E..
0cd0: 20 20 20 20 7c 20 44 45 43 4c 20 22 3d 22 20 45 | DECL "=" E
0ce0: 0d 0a 20 20 20 20 20 7c 20 44 45 43 4c 20 22 28 .. | DECL "(
0cf0: 22 20 50 41 52 41 4d 53 20 22 29 22 20 22 7b 22 " PARAMS ")" "{"
0d00: 20 45 20 22 7d 22 0d 0a 0d 0a 20 20 20 20 20 20 E "}"....
0d10: 20 20 20 77 68 65 72 65 20 44 45 43 4c 20 3a 3a where DECL ::
0d20: 3d 20 28 22 76 61 72 22 7c 22 6c 65 74 22 7c 22 = ("var"|"let"|"
0d30: 64 65 66 22 7c 4c 41 59 45 52 29 20 49 44 20 7c def"|LAYER) ID |
0d40: 20 22 40 22 20 4c 41 59 45 52 0d 0a 0d 0a 20 20 "@" LAYER....
0d50: 20 3c 66 6f 6e 74 20 63 6f 6c 6f 72 3d 67 72 65 <font color=gre
0d60: 65 6e 3e 23 20 e3 83 aa e3 83 86 e3 83 a9 e3 83 en># ...........
0d70: ab 3c 2f 66 6f 6e 74 3e 0d 0a 20 20 20 20 20 7c .</font>.. |
0d80: 20 49 4e 54 45 47 45 52 20 20 20 20 20 20 20 20 INTEGER
0d90: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
0da0: 3c 66 6f 6e 74 20 63 6f 6c 6f 72 3d 67 72 65 65 <font color=gree
0db0: 6e 3e 23 20 e9 9d 9e e8 b2 a0 e6 95 b4 e6 95 b0 n># ............
0dc0: 3c 2f 66 6f 6e 74 3e 0d 0a 20 20 20 20 20 7c 20 </font>.. |
0dd0: 53 54 52 49 4e 47 20 20 20 20 20 20 20 20 20 20 STRING
0de0: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 3c <
0df0: 66 6f 6e 74 20 63 6f 6c 6f 72 3d 67 72 65 65 6e font color=green
0e00: 3e 23 20 22 22 20 e3 81 a7 e3 81 8f e3 81 8f e3 ># "" ..........
0e10: 81 a3 e3 81 9f e6 96 87 e5 ad 97 e5 88 97 e3 80 ................
0e20: 82 5c 22 20 e3 81 a8 20 5c 5c 20 e3 81 af e4 bd .\" ... \\ .....
0e30: bf e3 81 88 e3 82 8b 3c 2f 66 6f 6e 74 3e 0d 0a .......</font>..
0e40: 20 20 20 20 20 7c 20 22 7b 22 20 45 4e 54 52 59 | "{" ENTRY
0e50: 53 20 22 7d 22 20 20 20 20 20 20 20 20 20 20 20 S "}"
0e60: 20 20 20 20 20 20 3c 66 6f 6e 74 20 63 6f 6c 6f <font colo
0e70: 72 3d 67 72 65 65 6e 3e 23 20 e3 83 86 e3 83 bc r=green># ......
0e80: e3 83 96 e3 83 ab 3c 2f 66 6f 6e 74 3e 0d 0a 20 ......</font>..
0e90: 20 20 20 20 7c 20 22 66 75 6e 22 20 22 28 22 20 | "fun" "("
0ea0: 50 41 52 41 4d 53 20 22 29 22 20 22 7b 22 20 45 PARAMS ")" "{" E
0eb0: 20 22 7d 22 20 3c 66 6f 6e 74 20 63 6f 6c 6f 72 "}" <font color
0ec0: 3d 67 72 65 65 6e 3e 23 20 e7 84 a1 e5 90 8d e9 =green># .......
0ed0: 96 a2 e6 95 b0 3c 2f 66 6f 6e 74 3e 0d 0a 20 20 .....</font>..
0ee0: 20 20 20 7c 20 20 22 ce bb 22 20 22 28 22 20 50 | ".." "(" P
0ef0: 41 52 41 4d 53 20 22 29 22 20 22 7b 22 20 45 20 ARAMS ")" "{" E
0f00: 22 7d 22 20 3c 66 6f 6e 74 20 63 6f 6c 6f 72 3d "}" <font color=
0f10: 67 72 65 65 6e 3e 23 20 e7 84 a1 e5 90 8d e9 96 green># ........
0f20: a2 e6 95 b0 3c 2f 66 6f 6e 74 3e 0d 0a 0d 0a 20 ....</font>....
0f30: 20 20 3c 66 6f 6e 74 20 63 6f 6c 6f 72 3d 67 72 <font color=gr
0f40: 65 65 6e 3e 23 20 e9 96 a2 e6 95 b0 e5 91 bc e3 een># ..........
0f50: 81 b3 e5 87 ba e3 81 97 3c 2f 66 6f 6e 74 3e 0d ........</font>.
0f60: 0a 20 20 20 20 20 7c 20 45 20 22 28 22 20 41 52 . | E "(" AR
0f70: 47 53 22 29 22 0d 0a 0d 0a 20 20 20 20 20 20 20 GS")"....
0f80: 20 20 77 68 65 72 65 20 20 20 20 41 52 47 53 20 where ARGS
0f90: 3a 3a 3d 20 45 20 22 2c 22 20 2e 2e 2e 20 22 2c ::= E "," ... ",
0fa0: 22 20 45 0d 0a 20 20 20 20 20 20 20 20 20 20 20 " E..
0fb0: 20 20 20 20 20 50 41 52 41 4d 53 20 3a 3a 3d 20 PARAMS ::=
0fc0: 28 49 44 7c 4c 41 59 45 52 29 2b 20 22 2c 22 20 (ID|LAYER)+ ","
0fd0: 2e 2e 2e 20 22 2c 22 20 28 49 44 7c 4c 41 59 45 ... "," (ID|LAYE
0fe0: 52 29 2b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 R)+..
0ff0: 20 20 20 20 20 45 4e 54 52 59 53 20 3a 3a 3d 20 ENTRYS ::=
1000: 49 44 20 22 3a 22 20 45 20 20 20 20 22 2c 22 20 ID ":" E ","
1010: 2e 2e 2e 20 22 2c 22 20 49 44 20 22 3a 22 20 45 ... "," ID ":" E
1020: 0d 0a 0d 0a 20 20 20 3c 66 6f 6e 74 20 63 6f 6c .... <font col
1030: 6f 72 3d 67 72 65 65 6e 3e 23 20 e6 bc 94 e7 ae or=green># .....
1040: 97 e5 ad 90 e3 81 aa e3 81 a9 3c 2f 66 6f 6e 74 ..........</font
1050: 3e 0d 0a 20 20 20 20 20 7c 20 22 28 22 20 45 20 >.. | "(" E
1060: 22 29 22 20 20 20 20 20 20 20 20 20 20 20 20 20 ")"
1070: 20 20 20 20 3c 66 6f 6e 74 20 63 6f 6c 6f 72 3d <font color=
1080: 67 72 65 65 6e 3e 23 20 e3 81 9f e3 81 a0 e3 81 green># ........
1090: ae e6 8b ac e5 bc a7 3c 2f 66 6f 6e 74 3e 0d 0a .......</font>..
10a0: 20 20 20 20 20 7c 20 22 2e 2e 2e 22 20 20 20 20 | "..."
10b0: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
10c0: 20 3c 66 6f 6e 74 20 63 6f 6c 6f 72 3d 67 72 65 <font color=gre
10d0: 65 6e 3e 23 20 e3 81 93 e3 82 8c e3 82 92 e5 ae en># ...........
10e0: 9f e8 a1 8c e3 81 99 e3 82 8b e3 81 a8 64 69 65 .............die
10f0: 3c 2f 66 6f 6e 74 3e 0d 0a 20 20 20 20 20 7c 20 </font>.. |
1100: 45 20 42 49 4e 4f 50 20 45 20 20 20 20 20 20 20 E BINOP E
1110: 20 20 20 20 20 20 20 20 20 20 3c 66 6f 6e 74 20 <font
1120: 63 6f 6c 6f 72 3d 67 72 65 65 6e 3e 23 20 e4 ba color=green># ..
1130: 8c e9 a0 85 e6 bc 94 e7 ae 97 e5 ad 90 e3 81 84 ................
1140: e3 82 8d e3 81 84 e3 82 8d 3c 2f 66 6f 6e 74 3e .........</font>
1150: 0d 0a 20 20 20 20 20 7c 20 45 20 22 2e 22 20 20 .. | E "."
1160: 49 44 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ID
1170: 20 20 20 3c 66 6f 6e 74 20 63 6f 6c 6f 72 3d 67 <font color=g
1180: 72 65 65 6e 3e 23 20 e3 83 86 e3 83 bc e3 83 96 reen># .........
1190: e3 83 ab e3 81 ae e3 83 95 e3 82 a3 e3 83 bc e3 ................
11a0: 83 ab e3 83 89 e3 82 a2 e3 82 af e3 82 bb e3 82 ................
11b0: b9 3c 2f 66 6f 6e 74 3e 0d 0a 20 20 20 20 20 7c .</font>.. |
11c0: 20 45 20 22 2e 3f 22 20 49 44 20 20 20 20 20 20 E ".?" ID
11d0: 20 20 20 20 20 20 20 20 20 20 20 3c 66 6f 6e 74 <font
11e0: 20 63 6f 6c 6f 72 3d 67 72 65 65 6e 3e 23 20 e3 color=green># .
11f0: 83 86 e3 83 bc e3 83 96 e3 83 ab e3 81 ab e3 83 ................
1200: 95 e3 82 a3 e3 83 bc e3 83 ab e3 83 89 e3 81 8c ................
1210: e3 81 82 e3 82 8b e3 81 8b e5 90 a6 e3 81 8b 3c ...............<
1220: 2f 66 6f 6e 74 3e 0d 0a 20 20 20 20 20 7c 20 45 /font>.. | E
1230: 20 22 7b 22 20 45 4e 54 52 59 53 20 22 7d 22 20 "{" ENTRYS "}"
1240: 20 20 20 20 20 20 20 20 20 3c 66 6f 6e 74 20 63 <font c
1250: 6f 6c 6f 72 3d 67 72 65 65 6e 3e 23 20 e3 83 86 olor=green># ...
1260: e3 83 bc e3 83 96 e3 83 ab e6 8b a1 e5 bc b5 3c ...............<
1270: 2f 66 6f 6e 74 3e 0d 0a 20 20 20 20 20 7c 20 22 /font>.. | "
1280: 69 66 22 20 45 20 28 22 74 68 65 6e 22 7c 22 3a if" E ("then"|":
1290: 22 7c 22 74 68 65 6e 22 20 22 3a 22 29 20 45 0d "|"then" ":") E.
12a0: 0a 20 20 20 20 20 7c 20 22 69 66 22 20 45 20 28 . | "if" E (
12b0: 22 74 68 65 6e 22 7c 22 3a 22 7c 22 74 68 65 6e "then"|":"|"then
12c0: 22 20 22 3a 22 29 20 45 20 22 65 6c 73 65 22 20 " ":") E "else"
12d0: 22 3a 22 3f 20 45 0d 0a 0d 0a 20 20 20 3c 66 6f ":"? E.... <fo
12e0: 6e 74 20 63 6f 6c 6f 72 3d 67 72 65 65 6e 3e 23 nt color=green>#
12f0: 20 e3 83 91 e3 82 bf e3 83 bc e3 83 b3 e3 83 9e ...............
1300: e3 83 83 e3 83 81 3c 2f 66 6f 6e 74 3e 0d 0a 20 ......</font>..
1310: 20 20 20 20 7c 20 22 63 61 73 65 22 20 45 20 28 | "case" E (
1320: 22 77 68 65 6e 22 20 50 41 54 54 45 52 4e 20 22 "when" PATTERN "
1330: 3a 22 20 45 20 29 2a 20 0d 0a 0d 0a 20 20 20 20 :" E )* ....
1340: 20 20 20 20 20 77 68 65 72 65 20 50 41 54 54 45 where PATTE
1350: 52 4e 20 3a 3a 3d 20 e5 bc 8f e3 81 8c e3 81 a0 RN ::= .........
1360: e3 81 84 e3 81 9f e3 81 84 e3 81 aa e3 82 93 e3 ................
1370: 81 a7 e3 82 82 e6 9b b8 e3 81 91 e3 82 8b e6 b0 ................
1380: 97 e3 81 8c e3 81 99 e3 82 8b 0d 0a 0d 0a 20 20 ..............
1390: 20 3c 66 6f 6e 74 20 63 6f 6c 6f 72 3d 67 72 65 <font color=gre
13a0: 65 6e 3e 23 20 e3 83 ac e3 82 a4 e3 83 a4 e6 8c en># ...........
13b0: 87 e5 ae 9a e5 ae 9f e8 a1 8c 3c 2f 66 6f 6e 74 ..........</font
13c0: 3e 0d 0a 20 20 20 20 20 7c 20 4c 41 59 45 52 20 >.. | LAYER
13d0: 22 28 22 20 45 20 22 29 22 0d 0a 3c 2f 70 72 65 "(" E ")"..</pre
13e0: 3e 0d 0a 3c 2f 64 64 3e 0d 0a 0d 0a 0d 0a 3c 73 >..</dd>......<s
13f0: 63 72 69 70 74 3e 65 78 70 6c 6f 72 65 72 2e 6f cript>explorer.o
1400: 75 74 6c 69 6e 65 2e 77 72 69 74 65 45 6e 61 62 utline.writeEnab
1410: 6c 65 64 20 3d 20 74 72 75 65 3b 3c 2f 73 63 72 led = true;</scr
1420: 69 70 74 3e 0d 0a 3c 64 74 3e 3c 73 70 61 6e 20 ipt>..<dt><span
1430: 63 6c 61 73 73 3d 22 64 65 63 6c 22 3e 0d 0a 3c class="decl">..<
1440: 73 70 61 6e 20 63 6c 61 73 73 3d 22 63 75 72 72 span class="curr
1450: 73 79 6d 62 6f 6c 22 3e e7 b3 96 e8 a1 a3 e6 a7 symbol">........
1460: 8b e6 96 87 3c 2f 73 70 61 6e 3e 0d 0a 3c 73 63 ....</span>..<sc
1470: 72 69 70 74 3e 65 78 70 6c 6f 72 65 72 2e 6f 75 ript>explorer.ou
1480: 74 6c 69 6e 65 2e 61 64 64 44 65 63 6c 28 27 e7 tline.addDecl('.
1490: b3 96 e8 a1 a3 e6 a7 8b e6 96 87 27 29 3b 3c 2f ...........');</
14a0: 73 63 72 69 70 74 3e 0d 0a 0d 0a 3c 2f 73 70 61 script>....</spa
14b0: 6e 3e 3c 2f 64 74 3e 0d 0a 3c 73 63 72 69 70 74 n></dt>..<script
14c0: 3e 65 78 70 6c 6f 72 65 72 2e 6f 75 74 6c 69 6e >explorer.outlin
14d0: 65 2e 77 72 69 74 65 45 6e 61 62 6c 65 64 20 3d e.writeEnabled =
14e0: 20 66 61 6c 73 65 3b 3c 2f 73 63 72 69 70 74 3e false;</script>
14f0: 0d 0a 0d 0a 20 3c 64 64 3e 3c 70 3e 0d 0a e6 bc .... <dd><p>....
1500: 94 e7 ae 97 e5 ad 90 e3 81 a8 e3 81 84 e3 81 86 ................
1510: e3 82 82 e3 81 ae e3 81 af e3 81 82 e3 82 8a e3 ................
1520: 81 be e3 81 9b e3 82 93 e3 80 82 e5 86 85 e9 83 ................
1530: a8 e7 9a 84 e3 81 ab e3 81 af e5 85 a8 e3 81 a6 ................
1540: e9 96 a2 e6 95 b0 e5 91 bc e3 81 b3 e5 87 ba e3 ................
1550: 81 97 e6 a7 8b e6 96 87 e3 81 ab e6 9b b8 e3 81 ................
1560: 8d e6 8f 9b e3 81 88 e3 82 89 e3 82 8c e3 81 a6 ................
1570: e3 81 84 e3 81 be e3 81 99 e3 80 82 3c 74 74 3e ............<tt>
1580: 69 66 3c 2f 74 74 3e 20 e3 82 82 e3 81 a7 e3 81 if</tt> ........
1590: 99 e3 80 82 0d 0a 3c 62 72 2f 3e 0d 0a e3 83 91 ......<br/>.....
15a0: e3 82 bf e3 83 bc e3 83 b3 e3 83 9e e3 83 83 e3 ................
15b0: 83 81 e3 82 82 e5 85 a8 e9 83 a8 20 3c 74 74 3e ........... <tt>
15c0: 69 66 3c 2f 74 74 3e 20 e3 81 a8 20 3c 74 74 3e if</tt> ... <tt>
15d0: 3d 3d 3c 2f 74 74 3e 20 e3 81 a8 20 3c 74 74 3e ==</tt> ... <tt>
15e0: 26 61 6d 70 3b 26 61 6d 70 3b 3c 2f 74 74 3e 20 &&</tt>
15f0: e3 81 a8 0d 0a 3c 74 74 3e 2e 3c 2f 74 74 3e 20 .....<tt>.</tt>
1600: e3 81 a8 20 3c 74 74 3e 2e 3f 3c 2f 74 74 3e 20 ... <tt>.?</tt>
1610: e3 82 92 e4 bd bf e3 81 a3 e3 81 9f e9 96 a2 e6 ................
1620: 95 b0 e5 91 bc e3 81 b3 e5 87 ba e3 81 97 e5 bc ................
1630: 8f e3 81 ab e6 9b b8 e3 81 8d e6 8f 9b e3 81 88 ................
1640: e3 82 89 e3 82 8c e3 81 a6 e3 81 84 e3 81 be e3 ................
1650: 81 99 e3 81 8c e3 80 81 0d 0a e8 a6 8f e5 89 87 ................
1660: e3 81 ae e8 a9 b3 e7 b4 b0 e3 82 92 e8 aa ac e6 ................
1670: 98 8e e3 81 99 e3 82 8b e3 81 ae e3 81 8c e9 9d ................
1680: a2 e5 80 92 e3 81 aa e3 81 ae e3 81 a7 e9 81 a9 ................
1690: e5 bd 93 e3 81 ab e6 83 b3 e5 83 8f e3 81 97 e3 ................
16a0: 81 a6 e4 b8 8b e3 81 95 e3 81 84 e3 80 82 0d 0a ................
16b0: e4 bb 96 e3 81 ae e6 9b b8 e3 81 8d e6 8f 9b e3 ................
16c0: 81 88 e3 81 af e3 81 93 e3 82 93 e3 81 aa e6 84 ................
16d0: 9f e3 81 98 e3 81 a7 e3 81 99 e3 80 82 0d 0a 3c ...............<
16e0: 2f 70 3e 0d 0a 3c 70 72 65 3e 0d 0a 20 20 20 20 /p>..<pre>..
16f0: 69 66 20 45 20 74 68 65 6e 20 45 20 20 20 20 20 if E then E
1700: 20 20 20 20 e2 87 92 20 69 66 28 20 45 2c 20 66 ... if( E, f
1710: 75 6e 28 29 7b 45 7d 2c 20 66 75 6e 28 29 7b 7d un(){E}, fun(){}
1720: 20 29 0d 0a 20 20 20 20 69 66 20 45 20 74 68 65 ).. if E the
1730: 6e 20 45 20 65 6c 73 65 20 45 20 20 e2 87 92 20 n E else E ...
1740: 69 66 28 20 45 2c 20 66 75 6e 28 29 7b 45 7d 2c if( E, fun(){E},
1750: 20 66 75 6e 28 29 7b 45 7d 20 29 0d 0a 20 20 20 fun(){E} )..
1760: 20 45 20 42 49 4e 4f 50 20 45 20 20 20 20 20 20 E BINOP E
1770: 20 20 20 20 20 e2 87 92 20 42 49 4e 4f 50 28 45 ... BINOP(E
1780: 2c 20 45 29 0d 0a 20 20 20 20 7b 20 45 4e 54 52 , E).. { ENTR
1790: 49 45 53 20 7d 20 20 20 20 20 20 20 20 20 e2 87 IES } ..
17a0: 92 20 7b 7d 7b 20 45 4e 54 52 49 45 53 20 7d 0d . {}{ ENTRIES }.
17b0: 0a 20 20 20 20 7b 7d 20 20 20 20 20 20 20 20 20 . {}
17c0: 20 20 20 20 20 20 20 20 20 e2 87 92 20 7b 7d 28 ... {}(
17d0: 29 0d 0a 20 20 20 20 45 20 7b 49 44 3a 45 2c 20 ).. E {ID:E,
17e0: 2e 2e 2e 7d 20 20 20 20 20 20 20 e2 87 92 20 2e ...} ... .
17f0: 3d 28 45 2c 20 49 44 2c 20 45 29 20 7b 20 2e 2e =(E, ID, E) { ..
1800: 2e 20 7d 0d 0a 3c 2f 70 72 65 3e 0d 0a 3c 70 3e . }..</pre>..<p>
1810: 0d 0a e5 a4 89 e6 95 b0 e5 ae a3 e8 a8 80 e3 81 ................
1820: ab e8 89 b2 e3 80 85 e3 81 82 e3 82 8a e3 81 be ................
1830: e3 81 99 e3 81 8c e3 80 81 3c 74 74 3e 6c 65 74 .........<tt>let
1840: 3c 2f 74 74 3e 20 e3 81 a8 20 3c 74 74 3e 76 61 </tt> ... <tt>va
1850: 72 3c 2f 74 74 3e 20 e3 81 a8 20 3c 74 74 3e 64 r</tt> ... <tt>d
1860: 65 66 3c 2f 74 74 3e 20 e3 81 af e5 90 8c e3 81 ef</tt> ........
1870: 98 e6 89 b1 e3 81 84 e3 81 a7 e3 80 81 0d 0a 3c ...............<
1880: 74 74 3e 69 6e 3c 2f 74 74 3e 20 e3 81 a8 20 3c tt>in</tt> ... <
1890: 74 74 3e 3b 3c 2f 74 74 3e 20 e3 81 af e5 90 8c tt>;</tt> ......
18a0: e3 81 98 e6 89 b1 e3 81 84 e3 81 a7 e3 81 99 e3 ................
18b0: 80 82 e3 81 a4 e3 81 be e3 82 8a 0d 0a 3c 2f 70 .............</p
18c0: 3e 0d 0a 3c 70 72 65 3e 0d 0a 20 20 20 6c 65 74 >..<pre>.. let
18d0: 20 78 20 3d 20 45 20 69 6e 20 45 0d 0a 20 20 20 x = E in E..
18e0: 76 61 72 20 78 20 3d 20 45 20 69 6e 20 45 0d 0a var x = E in E..
18f0: 20 20 20 64 65 66 20 78 20 3d 20 45 20 69 6e 20 def x = E in
1900: 45 0d 0a 20 20 20 6c 65 74 20 78 20 3d 20 45 20 E.. let x = E
1910: 3b 20 45 0d 0a 20 20 20 76 61 72 20 78 20 3d 20 ; E.. var x =
1920: 45 20 3b 20 45 0d 0a 20 20 20 64 65 66 20 78 20 E ; E.. def x
1930: 3d 20 45 20 3b 20 45 0d 0a 3c 2f 70 72 65 3e 0d = E ; E..</pre>.
1940: 0a 3c 70 3e 0d 0a e4 bb a5 e4 b8 8a e3 81 ae e3 .<p>............
1950: 81 a9 e3 82 8c e3 82 82 e5 90 8c e3 81 98 e6 84 ................
1960: 8f e5 91 b3 e3 81 aa e3 81 ae e3 81 a7 e3 80 81 ................
1970: e3 81 aa e3 82 93 e3 81 a8 e3 81 aa e3 81 8f e9 ................
1980: 96 a2 e6 95 b0 e5 9e 8b e3 81 a3 e3 81 bd e3 81 ................
1990: 8f e6 9b b8 e3 81 8d e3 81 9f e3 81 84 e6 b0 97 ................
19a0: e5 88 86 e3 81 ae e6 97 a5 e3 81 af 20 3c 74 74 ............ <tt
19b0: 3e 6c 65 74 20 69 6e 3c 2f 74 74 3e 20 e3 82 92 >let in</tt> ...
19c0: e3 80 81 0d 0a e6 89 8b e7 b6 9a e3 81 8d e5 9e ................
19d0: 8b e3 81 a3 e3 81 bd e3 81 8f e6 9b b8 e3 81 8d ................
19e0: e3 81 9f e3 81 84 e6 b0 97 e5 88 86 e3 81 ae e6 ................
19f0: 97 a5 e3 81 af 20 3c 74 74 3e 76 61 72 20 3b 3c ..... <tt>var ;<
1a00: 2f 74 74 3e 20 e3 82 92 e4 bd bf e3 81 86 e3 81 /tt> ...........
1a10: a8 e3 82 88 e3 81 84 e3 81 a8 e6 80 9d e3 81 84 ................
1a20: e3 81 be e3 81 99 e3 80 82 0d 0a 3c 74 74 3e 69 ...........<tt>i
1a30: 66 20 74 68 65 6e 20 65 6c 73 65 3c 2f 74 74 3e f then else</tt>
1a40: 20 e3 82 82 e5 be ae e5 a6 99 e3 81 ab e3 82 b3 ...............
1a50: e3 83 ad e3 83 b3 e3 81 8c e3 81 82 e3 81 a3 e3 ................
1a60: 81 9f e3 82 8a e3 81 aa e3 81 8b e3 81 a3 e3 81 ................
1a70: 9f e3 82 8a e3 83 90 e3 83 aa e3 82 a8 e3 83 bc ................
1a80: e3 82 b7 e3 83 a7 e3 83 b3 e3 81 8c e3 81 82 e3 ................
1a90: 82 8a e3 81 be e3 81 99 e3 81 8c e5 a5 bd e3 81 ................
1aa0: bf e3 81 a7 e4 bd bf e3 81 84 e3 81 be e3 81 99 ................
1ab0: e3 80 82 0d 0a 3c 2f 70 3e 0d 0a 3c 70 3e 0d 0a .....</p>..<p>..
1ac0: e9 96 a2 e6 95 b0 e3 82 92 e5 ae a3 e8 a8 80 e3 ................
1ad0: 81 99 e3 82 8b e3 81 a8 e3 81 8d e3 81 af e3 80 ................
1ae0: 81 3c 74 74 3e 66 75 6e 3c 2f 74 74 3e 20 e3 82 .<tt>fun</tt> ..
1af0: 84 20 3c 74 74 3e ce bb 3c 2f 74 74 3e 20 e3 82 . <tt>..</tt> ..
1b00: 92 e7 9c 81 e7 95 a5 e3 81 a7 e3 81 8d e3 81 be ................
1b10: e3 81 99 e3 80 82 0d 0a e4 bb a5 e4 b8 8b e3 81 ................
1b20: ae e6 9b b8 e3 81 8d e6 8f 9b e3 81 88 e3 81 8c ................
1b30: e8 a1 8c e3 82 8f e3 82 8c e3 81 be e3 81 99 e3 ................
1b40: 80 82 0d 0a 3c 2f 70 3e 0d 0a 3c 70 72 65 3e 0d ....</p>..<pre>.
1b50: 0a 20 20 20 64 65 66 20 66 28 20 41 52 47 53 20 . def f( ARGS
1b60: 29 20 7b 20 45 20 7d 3b 20 45 20 20 20 e2 87 92 ) { E }; E ...
1b70: 20 20 20 64 65 66 20 66 20 3d 20 66 75 6e 28 41 def f = fun(A
1b80: 52 47 53 29 7b 45 7d 3b 20 45 0d 0a 3c 2f 70 72 RGS){E}; E..</pr
1b90: 65 3e 0d 0a 3c 70 3e 0d 0a e4 bb 96 e3 81 ab e3 e>..<p>.........
1ba0: 80 81 e3 82 82 e3 81 a3 e3 81 a8 e6 89 8b e7 b6 ................
1bb0: 9a e3 81 8d e5 9e 8b e3 81 a3 e3 81 bd e3 81 8f ................
1bc0: e3 81 9f e3 82 81 e3 81 ae e6 9b b8 e3 81 8d e6 ................
1bd0: 8f 9b e3 81 88 e8 89 b2 e3 80 85 0d 0a 3c 2f 70 .............</p
1be0: 3e 0d 0a 3c 70 72 65 3e 0d 0a 20 20 20 66 75 6e >..<pre>.. fun
1bf0: 20 28 29 20 7b 20 45 3b 20 45 3b 20 45 20 20 20 () { E; E; E
1c00: 20 20 20 7d 20 20 20 e2 87 92 20 20 20 66 75 6e } ... fun
1c10: 20 28 29 20 7b 20 6c 65 74 20 5f 20 3d 20 45 20 () { let _ = E
1c20: 69 6e 20 6c 65 74 20 5f 20 3d 20 45 20 69 6e 20 in let _ = E in
1c30: 45 20 7d 0d 0a 20 20 20 66 75 6e 20 28 29 20 7b E }.. fun () {
1c40: 20 76 61 72 20 78 20 3d 20 31 30 30 20 20 7d 20 var x = 100 }
1c50: 20 20 e2 87 92 20 20 20 66 75 6e 20 28 29 20 7b ... fun () {
1c60: 20 76 61 72 20 78 20 3d 20 31 30 30 3b 20 78 20 var x = 100; x
1c70: 7d 0d 0a 20 20 20 66 75 6e 20 28 29 20 7b 20 76 }.. fun () { v
1c80: 61 72 20 78 20 3d 20 31 30 30 3b 20 7d 20 20 20 ar x = 100; }
1c90: e2 87 92 20 20 20 66 75 6e 20 28 29 20 7b 20 76 ... fun () { v
1ca0: 61 72 20 78 20 3d 20 31 30 30 3b 20 78 20 7d 0d ar x = 100; x }.
1cb0: 0a 20 20 20 66 75 6e 20 28 29 20 7b 20 7d 20 20 . fun () { }
1cc0: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 e2 87 ..
1cd0: 92 20 20 20 66 75 6e 20 28 29 20 7b 20 22 28 65 . fun () { "(e
1ce0: 6d 70 74 79 20 66 75 6e 63 74 69 6f 6e 20 62 6f mpty function bo
1cf0: 64 79 29 22 20 7d 0d 0a 3c 2f 70 72 65 3e 0d 0a dy)" }..</pre>..
1d00: 3c 70 3e 0d 0a e4 b8 ad e8 ba ab e3 81 8c e7 a9 <p>.............
1d10: ba e3 81 ae e9 96 a2 e6 95 b0 e3 81 ab e4 bd 95 ................
1d20: e3 82 92 e8 bf 94 e3 81 95 e3 81 9b e3 82 8b e3 ................
1d30: 81 8b e3 81 af e9 81 a9 e5 bd 93 e3 81 a7 e3 81 ................
1d40: 99 e3 80 82 e4 bb 8a e3 81 af e3 81 a8 e3 82 8a ................
1d50: e3 81 82 e3 81 88 e3 81 9a e9 81 a9 e5 bd 93 e3 ................
1d60: 81 ab e6 96 87 e5 ad 97 e5 88 97 e8 bf 94 e3 81 ................
1d70: 97 e3 81 a6 e3 81 be e3 81 99 e3 80 82 0d 0a 3c ...............<
1d80: 2f 70 3e 0d 0a 3c 2f 64 64 3e 0d 0a 0d 0a 0d 0a /p>..</dd>......
1d90: 3c 73 63 72 69 70 74 3e 65 78 70 6c 6f 72 65 72 <script>explorer
1da0: 2e 6f 75 74 6c 69 6e 65 2e 77 72 69 74 65 45 6e .outline.writeEn
1db0: 61 62 6c 65 64 20 3d 20 74 72 75 65 3b 3c 2f 73 abled = true;</s
1dc0: 63 72 69 70 74 3e 0d 0a 3c 64 74 3e 3c 73 70 61 cript>..<dt><spa
1dd0: 6e 20 63 6c 61 73 73 3d 22 64 65 63 6c 22 3e 0d n class="decl">.
1de0: 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 63 75 .<span class="cu
1df0: 72 72 73 79 6d 62 6f 6c 22 3e e5 a4 89 e6 95 b0 rrsymbol">......
1e00: e3 81 ae e3 82 b9 e3 82 b3 e3 83 bc e3 83 97 e8 ................
1e10: a6 8f e5 89 87 3c 2f 73 70 61 6e 3e 0d 0a 3c 73 .....</span>..<s
1e20: 63 72 69 70 74 3e 65 78 70 6c 6f 72 65 72 2e 6f cript>explorer.o
1e30: 75 74 6c 69 6e 65 2e 61 64 64 44 65 63 6c 28 27 utline.addDecl('
1e40: e5 a4 89 e6 95 b0 e3 81 ae e3 82 b9 e3 82 b3 e3 ................
1e50: 83 bc e3 83 97 e8 a6 8f e5 89 87 27 29 3b 3c 2f ...........');</
1e60: 73 63 72 69 70 74 3e 0d 0a 0d 0a 3c 2f 73 70 61 script>....</spa
1e70: 6e 3e 3c 2f 64 74 3e 0d 0a 3c 73 63 72 69 70 74 n></dt>..<script
1e80: 3e 65 78 70 6c 6f 72 65 72 2e 6f 75 74 6c 69 6e >explorer.outlin
1e90: 65 2e 77 72 69 74 65 45 6e 61 62 6c 65 64 20 3d e.writeEnabled =
1ea0: 20 66 61 6c 73 65 3b 3c 2f 73 63 72 69 70 74 3e false;</script>
1eb0: 0d 0a 0d 0a 20 3c 64 64 3e 3c 70 3e 0d 0a e5 9f .... <dd><p>....
1ec0: ba e6 9c ac e7 9a 84 e3 81 ab e3 81 af e3 80 81 ................
1ed0: 6c 65 74 20 e3 81 ab e3 82 88 e3 81 a3 e3 81 a6 let ............
1ee0: e5 b8 b8 e8 ad 98 e7 9a 84 e3 81 aa e6 84 9f e3 ................
1ef0: 81 98 e3 81 ab e5 a4 89 e6 95 b0 e3 81 ae e3 82 ................
1f00: b9 e3 82 b3 e3 83 bc e3 83 97 e3 81 8c e3 83 8d ................
1f10: e3 82 b9 e3 83 88 e3 81 97 e3 81 be e3 81 99 e3 ................
1f20: 80 82 0d 0a 3c 2f 70 3e 0d 0a 3c 70 72 65 3e 0d ....</p>..<pre>.
1f30: 0a 20 20 20 6c 65 74 20 78 3d 32 31 20 69 6e 20 . let x=21 in
1f40: 6c 65 74 20 78 3d 78 2b 78 20 69 6e 20 78 20 20 let x=x+x in x
1f50: 20 20 3c 66 6f 6e 74 20 63 6f 6c 6f 72 3d 67 72 <font color=gr
1f60: 65 65 6e 3e 23 20 34 32 3c 2f 66 6f 6e 74 3e 0d een># 42</font>.
1f70: 0a 3c 2f 70 72 65 3e 0d 0a 3c 70 3e 0d 0a e4 b8 .</pre>..<p>....
1f80: 80 e6 96 b9 e3 81 a7 e3 80 81 22 6c 65 74 20 72 .........."let r
1f90: 65 63 22 20 e3 81 ae e3 82 88 e3 81 86 e3 81 aa ec" ............
1fa0: e7 89 b9 e5 88 a5 e3 81 aa e6 a7 8b e6 96 87 e3 ................
1fb0: 81 af e3 81 82 e3 82 8a e3 81 be e3 81 9b e3 82 ................
1fc0: 93 e3 81 8c e3 80 81 0d 0a 3c 2f 70 3e 0d 0a 3c .........</p>..<
1fd0: 70 72 65 3e 0d 0a 20 20 20 6c 65 74 20 66 20 3d pre>.. let f =
1fe0: 20 66 75 6e 28 78 29 20 7b 20 69 66 20 78 3d 3d fun(x) { if x==
1ff0: 30 20 74 68 65 6e 20 31 20 65 6c 73 65 20 78 2a 0 then 1 else x*
2000: 66 28 78 2d 31 29 20 7d 20 69 6e 20 66 28 31 30 f(x-1) } in f(10
2010: 29 20 20 3c 66 6f 6e 74 20 63 6f 6c 6f 72 3d 67 ) <font color=g
2020: 72 65 65 6e 3e 23 20 33 36 32 38 38 30 30 3c 2f reen># 3628800</
2030: 66 6f 6e 74 3e 0d 0a 3c 2f 70 72 65 3e 0d 0a 3c font>..</pre>..<
2040: 70 3e 0d 0a e5 86 8d e5 b8 b0 e7 9a 84 e3 81 aa p>..............
2050: e9 96 a2 e6 95 b0 e5 ae 9a e7 be a9 e3 81 aa e3 ................
2060: 81 a9 e3 82 82 e3 80 81 e3 81 8a e3 81 9d e3 82 ................
2070: 89 e3 81 8f e6 84 8f e5 9b b3 e3 81 95 e3 82 8c ................
2080: e3 81 9f e3 81 a8 e3 81 8a e3 82 8a e3 81 ab e5 ................
2090: 8b 95 e3 81 8d e3 81 be e3 81 99 e3 80 82 0d 0a ................
20a0: e5 86 85 e9 83 a8 e3 81 ae e8 a9 b3 e7 b4 b0 e3 ................
20b0: 81 af e3 80 81 e8 ab b8 e8 88 ac e3 81 ae e4 ba ................
20c0: 8b e6 83 85 e3 81 ab e3 82 88 e3 82 8a e3 80 81 ................
20d0: 0d 0a e3 83 9e e3 82 b8 e3 82 ab e3 83 ab e3 81 ................
20e0: a7 e7 a0 b4 e5 a3 8a e7 9a 84 e3 81 aa e3 82 b9 ................
20f0: e3 82 b3 e3 83 bc e3 83 97 e8 a6 8f e5 89 87 e3 ................
2100: 81 ab e3 81 aa e3 81 a3 e3 81 a6 e3 81 84 e3 82 ................
2110: 8b e3 81 ae e3 81 a7 e3 81 99 e3 81 8c e3 80 81 ................
2120: 0d 0a e5 90 8c e5 90 8d e3 81 ae e5 a4 89 e6 95 ................
2130: b0 e3 82 92 e6 bf 80 e3 81 97 e3 81 8f e9 87 8d ................
2140: e3 81 ad e3 81 a6 e4 bd bf e3 81 a3 e3 81 9f e3 ................
2150: 82 8a e3 81 97 e3 81 aa e3 81 91 e3 82 8c e3 81 ................
2160: b0 e3 80 81 0d 0a e3 81 a0 e3 81 84 e3 81 9f e3 ................
2170: 81 84 e8 87 aa e7 84 b6 e3 81 aa e5 8b 95 e3 81 ................
2180: 8d e3 82 92 e3 81 99 e3 82 8b e3 81 a8 e6 80 9d ................
2190: e3 81 84 e3 81 be e3 81 99 e3 80 81 e3 81 9f e3 ................
21a0: 81 b6 e3 82 93 e3 80 81 e3 81 af e3 81 84 e3 80 ................
21b0: 82 0d 0a 3c 2f 70 3e 0d 0a 3c 70 3e 0d 0a e3 81 ...</p>..<p>....
21c0: b2 e3 81 a8 e3 81 a4 e3 81 a0 e3 81 91 e4 b8 8d ................
21d0: e5 8f af e6 80 9d e8 ad b0 e3 81 aa e5 8b 95 e3 ................
21e0: 81 8d e3 82 92 e3 81 99 e3 82 8b e3 81 ae e3 81 ................
21f0: af e3 80 81 e4 bb a5 e4 b8 8b e3 81 ae e3 82 b1 ................
2200: e3 83 bc e3 82 b9 e3 81 a7 e3 81 99 e3 80 82 0d ................
2210: 0a 3c 2f 70 3e 0d 0a 3c 70 72 65 3e 0d 0a 20 20 .</p>..<pre>..
2220: 20 6c 65 74 20 78 20 3d 20 31 20 69 6e 0d 0a 20 let x = 1 in..
2230: 20 20 6c 65 74 20 66 20 3d 20 66 75 6e 28 29 20 let f = fun()
2240: 7b 78 7d 20 69 6e 0d 0a 20 20 20 6c 65 74 20 78 {x} in.. let x
2250: 20 3d 20 32 20 69 6e 0d 0a 20 20 20 20 20 20 66 = 2 in.. f
2260: 28 29 20 20 20 20 3c 66 6f 6e 74 20 63 6f 6c 6f () <font colo
2270: 72 3d 67 72 65 65 6e 3e 23 20 32 21 21 3c 2f 66 r=green># 2!!</f
2280: 6f 6e 74 3e 0d 0a 3c 2f 70 72 65 3e 0d 0a 3c 70 ont>..</pre>..<p
2290: 3e 0d 0a 6c 65 74 2d 69 6e 20 e3 82 92 e7 b8 a6 >..let-in ......
22a0: e3 81 ab e3 83 81 e3 82 a7 e3 82 a4 e3 83 b3 e3 ................
22b0: 81 97 e3 81 9f e3 81 a8 e3 81 8d e3 81 a0 e3 81 ................
22c0: 91 e3 80 81 e5 90 8c e5 90 8d e5 a4 89 e6 95 b0 ................
22d0: e3 82 92 e7 a0 b4 e5 a3 8a e7 9a 84 e3 81 ab e4 ................
22e0: b8 8a e6 9b b8 e3 81 8d e3 81 97 e3 81 be e3 81 ................
22f0: 99 0d 0a ef bc 88 e5 86 8d e5 b8 b0 e9 96 a2 e6 ................
2300: 95 b0 e3 81 ae e5 ae 9a e7 be a9 e3 81 8c 22 e3 ..............".
2310: 81 86 e3 81 be e3 81 8f 22 e3 81 84 e3 81 a3 e3 ........".......
2320: 81 a6 e3 81 84 e3 82 8b e3 81 ae e3 81 af e3 81 ................
2330: 93 e3 81 ae e4 b8 8a e6 9b b8 e3 81 8d e3 81 ae ................
2340: e3 81 9f e3 82 81 e3 81 a7 e3 81 99 ef bc 89 e3 ................
2350: 80 82 0d 0a e3 81 aa e3 82 93 e3 81 a7 e3 81 93 ................
2360: e3 82 93 e3 81 aa e3 81 93 e3 81 a8 e3 81 ab e3 ................
2370: 81 aa e3 81 a3 e3 81 a6 e3 81 84 e3 82 8b e3 81 ................
2380: 8b e3 81 a8 e3 81 84 e3 81 86 e3 81 a8 e3 80 81 ................
2390: 0d 0a e5 be 8c e3 81 a7 e8 aa ac e6 98 8e e3 81 ................
23a0: 99 e3 82 8b e3 80 8c e3 83 ac e3 82 a4 e3 83 a4 ................
23b0: e3 80 8d e3 82 92 e4 bd bf e3 81 a3 e3 81 9f e3 ................
23c0: 81 a8 e3 81 8d e3 81 ab 0d 0a 3c 74 74 3e 6c 65 ..........<tt>le
23d0: 74 20 66 6f 6f 20 3d 20 2e 2e 2e 20 69 6e 20 40 t foo = ... in @
23e0: 6c 61 79 20 66 6f 6f 20 3d 20 2e 2e 2e 20 69 6e lay foo = ... in
23f0: 20 2e 2e 2e 3c 2f 74 74 3e 0d 0a e3 81 a7 e4 bb ...</tt>.......
2400: 96 e3 83 ac e3 82 a4 e3 83 a4 e3 81 ab e9 87 8d ................
2410: e3 81 ad e6 9b b8 e3 81 8d e3 81 99 e3 82 8b e3 ................
2420: 81 9f e3 82 81 e3 81 a7 e3 81 82 e3 82 8a e3 81 ................
2430: be e3 81 99 e3 80 82 0d 0a 3c 2f 70 3e 0d 0a 3c .........</p>..<
2440: 2f 64 64 3e 0d 0a 3c 2f 64 6c 3e 0d 0a 3c 73 63 /dd>..</dl>..<sc
2450: 72 69 70 74 3e 65 78 70 6c 6f 72 65 72 2e 6f 75 ript>explorer.ou
2460: 74 6c 69 6e 65 2e 64 65 63 53 79 6d 62 6f 6c 4c tline.decSymbolL
2470: 65 76 65 6c 28 29 3b 3c 2f 73 63 72 69 70 74 3e evel();</script>
2480: 0d 0a 0d 0a 0d 0a 3c 2f 64 64 3e 0d 0a 0d 0a 0d ......</dd>.....
2490: 0a 0d 0a 0d 0a 0d 0a 3c 73 63 72 69 70 74 3e 65 .......<script>e
24a0: 78 70 6c 6f 72 65 72 2e 6f 75 74 6c 69 6e 65 2e xplorer.outline.
24b0: 77 72 69 74 65 45 6e 61 62 6c 65 64 20 3d 20 74 writeEnabled = t
24c0: 72 75 65 3b 3c 2f 73 63 72 69 70 74 3e 0d 0a 3c rue;</script>..<
24d0: 64 74 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 dt><span class="
24e0: 64 65 63 6c 22 3e 0d 0a 3c 73 70 61 6e 20 63 6c decl">..<span cl
24f0: 61 73 73 3d 22 63 75 72 72 73 79 6d 62 6f 6c 22 ass="currsymbol"
2500: 3e 42 61 73 69 63 20 46 65 61 74 75 72 65 73 3c >Basic Features<
2510: 2f 73 70 61 6e 3e 0d 0a 3c 73 63 72 69 70 74 3e /span>..<script>
2520: 65 78 70 6c 6f 72 65 72 2e 6f 75 74 6c 69 6e 65 explorer.outline
2530: 2e 61 64 64 44 65 63 6c 28 27 42 61 73 69 63 20 .addDecl('Basic
2540: 46 65 61 74 75 72 65 73 27 29 3b 3c 2f 73 63 72 Features');</scr
2550: 69 70 74 3e 0d 0a 0d 0a 3c 2f 73 70 61 6e 3e 3c ipt>....</span><
2560: 2f 64 74 3e 0d 0a 3c 73 63 72 69 70 74 3e 65 78 /dt>..<script>ex
2570: 70 6c 6f 72 65 72 2e 6f 75 74 6c 69 6e 65 2e 77 plorer.outline.w
2580: 72 69 74 65 45 6e 61 62 6c 65 64 20 3d 20 66 61 riteEnabled = fa
2590: 6c 73 65 3b 3c 2f 73 63 72 69 70 74 3e 0d 0a 0d lse;</script>...
25a0: 0a 20 3c 64 64 3e 3c 70 3e 0d 0a e7 89 b9 e3 81 . <dd><p>.......
25b0: ab e7 89 b9 e5 be b4 e7 9a 84 e3 81 a7 e3 82 82 ................
25c0: e3 81 aa e3 81 84 e9 83 a8 e5 88 86 e3 82 92 e7 ................
25d0: b0 a1 e5 8d 98 e3 81 ab e3 81 be e3 81 a8 e3 82 ................
25e0: 81 e3 80 82 0d 0a 3c 2f 70 3e 0d 0a 3c 75 6c 3e ......</p>..<ul>
25f0: 0d 0a 20 20 3c 6c 69 3e e9 9d 99 e7 9a 84 e5 9e .. <li>........
2600: 8b e3 82 b7 e3 82 b9 e3 83 86 e3 83 a0 e3 81 af ................
2610: e3 81 82 e3 82 8a e3 81 be e3 81 9b e3 82 93 e3 ................
2620: 80 82 3c 2f 6c 69 3e 0d 0a 20 20 3c 6c 69 3e 22 ..</li>.. <li>"
2630: e3 81 bb e3 81 bc 22 20 e7 b4 94 e7 b2 8b e9 96 ......" ........
2640: a2 e6 95 b0 e5 9e 8b e8 a8 80 e8 aa 9e e3 81 a7 ................
2650: e3 81 99 e3 80 82 e5 a4 89 e6 95 b0 e3 82 84 e3 ................
2660: 83 86 e3 83 bc e3 83 96 e3 83 ab e3 81 ae e3 83 ................
2670: 95 e3 82 a3 e3 83 bc e3 83 ab e3 83 89 e3 81 ae ................
2680: e7 a0 b4 e5 a3 8a e7 9a 84 e3 81 aa e6 9b b8 e3 ................
2690: 81 8d e6 8f 9b e3 81 88 e3 81 af e3 81 a7 e3 81 ................
26a0: 8d e3 81 be e3 81 9b e3 82 93 e3 80 82 3c 62 72 .............<br
26b0: 2f 3e 0d 0a 20 20 20 20 20 20 e3 81 9f e3 81 a0 />.. ......
26c0: e3 81 97 e3 80 81 e7 b5 84 e3 81 bf e8 be bc e3 ................
26d0: 81 bf e9 96 a2 e6 95 b0 ef bc 88 3c 74 74 3e 70 ...........<tt>p
26e0: 72 69 6e 74 3c 2f 74 74 3e ef bc 89 e3 81 a8 e3 rint</tt>.......
26f0: 80 81 e5 a4 89 e6 95 b0 e3 81 ae e3 82 b9 e3 82 ................
2700: b3 e3 83 bc e3 83 97 e8 a6 8f e5 89 87 e3 81 ae ................
2710: e3 83 9e e3 82 b8 e3 82 ab e3 83 ab e3 81 aa e7 ................
2720: 89 87 e9 9a 85 e3 81 ab e5 89 af e4 bd 9c e7 94 ................
2730: a8 e3 81 8c e3 81 82 e3 82 8a e3 81 be e3 81 99 ................
2740: e3 80 82 3c 2f 6c 69 3e 0d 0a 3c 2f 75 6c 3e 0d ...</li>..</ul>.
2750: 0a 3c 70 3e 0d 0a e9 9d 99 e7 9a 84 e5 9e 8b e3 .<p>............
2760: 82 b7 e3 82 b9 e3 83 86 e3 83 a0 e3 81 8c e3 81 ................
2770: aa e3 81 84 e3 81 ae e3 81 af e6 84 8f e5 9b b3 ................
2780: e7 9a 84 e3 81 a7 e3 81 99 e3 81 8c e3 80 81 e7 ................
2790: a0 b4 e5 a3 8a e7 9a 84 e4 bb a3 e5 85 a5 e3 81 ................
27a0: 8c e3 81 aa e3 81 84 e3 81 ae e3 81 af e3 80 81 ................
27b0: e5 8d 98 e3 81 ab e5 ae 9f e8 a3 85 e3 81 8c e3 ................
27c0: 82 81 e3 82 93 e3 81 a9 e3 81 8b e3 81 a3 e3 81 ................
27d0: 9f e3 81 a0 e3 81 91 e3 81 aa e3 81 ae e3 81 a7 ................
27e0: e3 80 81 0d 0a e4 bb 8a e5 be 8c e4 bd 95 e3 81 ................
27f0: 8b e5 a2 97 e3 81 88 e3 82 8b e3 81 8b e3 82 82 ................
2800: e3 81 97 e3 82 8c e3 81 be e3 81 9b e3 82 93 e3 ................
2810: 80 82 e5 a2 97 e3 81 88 e3 81 aa e3 81 84 e3 81 ................
2820: 8b e3 82 82 e3 81 97 e3 82 8c e3 81 be e3 81 9b ................
2830: e3 82 93 e3 80 82 0d 0a 3c 2f 70 3e 0d 0a 0d 0a ........</p>....
2840: 3c 73 63 72 69 70 74 3e 65 78 70 6c 6f 72 65 72 <script>explorer
2850: 2e 6f 75 74 6c 69 6e 65 2e 69 6e 63 53 79 6d 62 .outline.incSymb
2860: 6f 6c 4c 65 76 65 6c 28 29 3b 3c 2f 73 63 72 69 olLevel();</scri
2870: 70 74 3e 0d 0a 3c 64 6c 3e 0d 0a 3c 73 63 72 69 pt>..<dl>..<scri
2880: 70 74 3e 65 78 70 6c 6f 72 65 72 2e 6f 75 74 6c pt>explorer.outl
2890: 69 6e 65 2e 77 72 69 74 65 45 6e 61 62 6c 65 64 ine.writeEnabled
28a0: 20 3d 20 74 72 75 65 3b 3c 2f 73 63 72 69 70 74 = true;</script
28b0: 3e 0d 0a 3c 64 74 3e 3c 73 70 61 6e 20 63 6c 61 >..<dt><span cla
28c0: 73 73 3d 22 64 65 63 6c 22 3e 0d 0a 3c 73 70 61 ss="decl">..<spa
28d0: 6e 20 63 6c 61 73 73 3d 22 63 75 72 72 73 79 6d n class="currsym
28e0: 62 6f 6c 22 3e e3 83 87 e3 83 bc e3 82 bf e5 9e bol">...........
28f0: 8b 3c 2f 73 70 61 6e 3e 0d 0a 3c 73 63 72 69 70 .</span>..<scrip
2900: 74 3e 65 78 70 6c 6f 72 65 72 2e 6f 75 74 6c 69 t>explorer.outli
2910: 6e 65 2e 61 64 64 44 65 63 6c 28 27 e3 83 87 e3 ne.addDecl('....
2920: 83 bc e3 82 bf e5 9e 8b 27 29 3b 3c 2f 73 63 72 ........');</scr
2930: 69 70 74 3e 0d 0a 0d 0a 3c 2f 73 70 61 6e 3e 3c ipt>....</span><
2940: 2f 64 74 3e 0d 0a 3c 73 63 72 69 70 74 3e 65 78 /dt>..<script>ex
2950: 70 6c 6f 72 65 72 2e 6f 75 74 6c 69 6e 65 2e 77 plorer.outline.w
2960: 72 69 74 65 45 6e 61 62 6c 65 64 20 3d 20 66 61 riteEnabled = fa
2970: 6c 73 65 3b 3c 2f 73 63 72 69 70 74 3e 0d 0a 0d lse;</script>...
2980: 0a 20 3c 64 64 3e 3c 70 3e 0d 0a e4 bb a5 e4 b8 . <dd><p>.......
2990: 8b e3 81 ae e3 83 87 e3 83 bc e3 82 bf e5 9e 8b ................
29a0: e3 81 8c e3 81 82 e3 82 8a e3 81 be e3 81 99 e3 ................
29b0: 80 82 0d 0a 3c 2f 70 3e 0d 0a 3c 75 6c 3e 0d 0a ....</p>..<ul>..
29c0: 20 20 3c 6c 69 3e e6 95 b4 e6 95 b0 3a 20 20 20 <li>......:
29d0: 20 20 3c 74 74 3e 30 3c 2f 74 74 3e 2c 20 3c 74 <tt>0</tt>, <t
29e0: 74 3e 31 32 33 3c 2f 74 74 3e 2c 20 3c 74 74 3e t>123</tt>, <tt>
29f0: 34 35 36 36 36 36 36 36 36 36 36 36 36 36 36 36 4566666666666666
2a00: 36 36 36 36 36 36 36 36 36 36 36 36 36 36 36 36 6666666666666666
2a10: 36 36 36 36 36 36 36 37 38 39 3c 2f 74 74 3e 2c 6666666789</tt>,
2a20: 20 2e 2e 2e 3c 2f 6c 69 3e 0d 0a 20 20 3c 6c 69 ...</li>.. <li
2a30: 3e e6 96 87 e5 ad 97 e5 88 97 3a 20 20 20 3c 74 >.........: <t
2a40: 74 3e 22 68 65 6c 6c 6f 2c 20 77 6f 72 6c 64 21 t>"hello, world!
2a50: 22 3c 2f 74 74 3e 2c 20 2e 2e 2e 3c 2f 6c 69 3e "</tt>, ...</li>
2a60: 0d 0a 20 20 3c 6c 69 3e e9 96 a2 e6 95 b0 3a 20 .. <li>......:
2a70: 20 20 20 20 3c 74 74 3e 66 75 6e 28 78 29 7b 78 <tt>fun(x){x
2a80: 2b 31 7d 3c 2f 74 74 3e 3c 2f 6c 69 3e 0d 0a 20 +1}</tt></li>..
2a90: 20 3c 6c 69 3e e3 83 86 e3 83 bc e3 83 96 e3 83 <li>...........
2aa0: ab 3a 20 3c 74 74 3e 7b 63 61 72 3a 20 31 2c 20 .: <tt>{car: 1,
2ab0: 63 64 72 3a 20 7b 63 61 72 3a 20 32 2c 20 63 64 cdr: {car: 2, cd
2ac0: 72 3a 20 7b 7d 7d 7d 3c 2f 74 74 3e 3c 2f 6c 69 r: {}}}</tt></li
2ad0: 3e 0d 0a 20 20 3c 6c 69 3e e6 9c aa e5 ae 9a e7 >.. <li>.......
2ae0: be a9 e5 80 a4 3a 20 28 e7 89 b9 e6 ae 8a e3 81 .....: (........
2af0: aa e3 82 b1 e3 83 bc e3 82 b9 e3 81 a7 e4 bd 9c ................
2b00: e3 82 89 e3 82 8c e3 81 be e3 81 99 e3 80 82 e3 ................
2b10: 80 8c e3 83 ac e3 82 a4 e3 83 a4 e3 80 8d e3 81 ................
2b20: ae e8 aa ac e6 98 8e e5 8f 82 e7 85 a7 e3 81 ae ................
2b30: e3 81 93 e3 81 a8 e3 80 82 29 3c 2f 6c 69 3e 0d .........)</li>.
2b40: 0a 3c 2f 75 6c 3e 0d 0a 3c 70 3e 0d 0a e9 96 a2 .</ul>..<p>.....
2b50: e6 95 b0 e3 81 af e3 81 84 e3 82 8f e3 82 86 e3 ................
2b60: 82 8b e3 80 8c e3 82 af e3 83 ad e3 83 bc e3 82 ................
2b70: b8 e3 83 a3 e3 80 8d e3 81 a7 e3 81 99 e3 80 82 ................
2b80: e9 9d 99 e7 9a 84 e3 82 b9 e3 82 b3 e3 83 bc e3 ................
2b90: 83 97 e3 81 a7 e5 a4 96 e5 81 b4 e3 81 ae e7 92 ................
2ba0: b0 e5 a2 83 e3 81 ab e3 82 a2 e3 82 af e3 82 bb ................
2bb0: e3 82 b9 e3 81 a7 e3 81 8d e3 81 be e3 81 99 e3 ................
2bc0: 80 82 0d 0a e3 83 86 e3 83 bc e3 83 96 e3 83 ab ................
2bd0: e3 81 af e3 81 84 e3 82 8f e3 82 86 e3 82 8b e3 ................
2be0: 83 97 e3 83 ad e3 83 88 e3 82 bf e3 82 a4 e3 83 ................
2bf0: 97 e3 83 81 e3 82 a7 e3 83 bc e3 83 b3 e3 82 92 ................
2c00: e6 8c 81 e3 81 a3 e3 81 a6 e3 81 84 e3 81 a6 e3 ................
2c10: 80 81 0d 0a e8 87 aa e5 88 86 e3 81 ab e3 81 aa ................
2c20: e3 81 84 e3 83 95 e3 82 a3 e3 83 bc e3 83 ab e3 ................
2c30: 83 89 e3 81 ae e5 a0 b4 e5 90 88 e3 81 af e8 a6 ................
2c40: aa e3 81 ab e5 95 8f e3 81 84 e5 90 88 e3 82 8f ................
2c50: e3 81 9b e3 81 8c e8 a1 8c e3 81 8f e6 84 9f e3 ................
2c60: 81 98 e3 81 ab e3 81 aa e3 81 a3 e3 81 a6 e3 81 ................
2c70: 84 e3 81 be e3 81 99 e3 81 8c e3 80 81 0d 0a e3 ................
2c80: 83 95 e3 82 a3 e3 83 bc e3 83 ab e3 83 89 e3 81 ................
2c90: ae e6 9b b8 e3 81 8d e6 8f 9b e3 81 88 e3 81 8c ................
2ca0: e3 81 aa e3 81 84 e3 81 ae e3 81 a7 e3 80 81 e3 ................
2cb0: 81 93 e3 82 8c e3 81 af e7 89 b9 e3 81 ab e6 84 ................
2cc0: 8f e5 91 b3 e3 81 aa e3 81 84 e3 81 8b e3 82 82 ................
2cd0: e3 81 97 e3 82 8c e3 81 aa e3 81 84 e2 80 a6 e3 ................
2ce0: 80 82 0d 0a 3c 2f 70 3e 0d 0a 3c 70 3e 0d 0a e3 ....</p>..<p>...
2cf0: 81 be e3 81 9f e3 80 81 e3 83 aa e3 82 b9 e3 83 ................
2d00: 88 e3 82 92 e6 89 b1 e3 81 86 e3 81 9f e3 82 81 ................
2d10: e3 81 ab e3 80 81 e3 81 84 e3 82 8f e3 82 86 e3 ................
2d20: 82 8b e3 80 8c 63 6f 6e 73 20 e3 83 aa e3 82 b9 .....cons ......
2d30: e3 83 88 e3 80 8d e3 82 92 e4 bd bf e3 81 84 e3 ................
2d40: 81 be e3 81 99 e3 80 82 0d 0a e7 a9 ba e3 83 aa ................
2d50: e3 82 b9 e3 83 88 e3 82 92 20 3c 74 74 3e 7b 7d ......... <tt>{}
2d60: 3c 2f 74 74 3e e3 80 81 ef bc 91 e5 80 8b e4 bb </tt>...........
2d70: a5 e4 b8 8a e8 a6 81 e7 b4 a0 e3 81 8c e3 81 82 ................
2d80: e3 82 8b e3 82 82 e3 81 ae e3 82 92 20 3c 74 74 ............ <tt
2d90: 3e 7b 63 61 72 3a 20 e5 85 88 e9 a0 ad e8 a6 81 >{car: .........
2da0: e7 b4 a0 2c 20 63 64 72 3a 20 e4 ba 8c e7 95 aa ..., cdr: ......
2db0: e7 9b ae e4 bb a5 e9 99 8d e3 81 ae e3 83 aa e3 ................
2dc0: 82 b9 e3 83 88 7d 3c 2f 74 74 3e 0d 0a e3 81 a8 .....}</tt>.....
2dd0: e3 81 84 e3 81 86 e5 bd a2 e3 81 a7 e3 80 82 e3 ................
2de0: 81 93 e3 81 ae e5 bd a2 e3 81 a7 e3 83 aa e3 82 ................
2df0: b9 e3 83 88 e3 82 92 e6 89 b1 e3 82 8f e3 81 aa ................
2e00: e3 81 91 e3 82 8c e3 81 b0 e3 81 aa e3 82 89 e3 ................
2e10: 81 aa e3 81 84 e3 81 a8 e3 81 84 e3 81 86 e6 b1 ................
2e20: ba e3 81 be e3 82 8a e3 81 af e3 81 82 e3 82 8a ................
2e30: e3 81 be e3 81 9b e3 82 93 e3 81 8c e3 80 81 0d ................
2e40: 0a e3 81 93 e3 81 ae e5 bd a2 e3 81 af e7 89 b9 ................
2e50: e5 88 a5 e6 89 b1 e3 81 84 e3 81 95 e3 82 8c e3 ................
2e60: 81 a6 20 3c 74 74 3e 70 72 69 6e 74 3c 2f 74 74 .. <tt>print</tt
2e70: 3e 20 e3 81 a7 e7 b6 ba e9 ba 97 e3 81 ab e5 87 > ..............
2e80: ba e5 8a 9b e3 81 95 e3 82 8c e3 81 9f e3 82 8a ................
2e90: e3 81 97 e3 81 be e3 81 99 e3 80 82 0d 0a 3c 2f ..............</
2ea0: 70 3e 0d 0a 3c 2f 64 64 3e 0d 0a 0d 0a 3c 73 63 p>..</dd>....<sc
2eb0: 72 69 70 74 3e 65 78 70 6c 6f 72 65 72 2e 6f 75 ript>explorer.ou
2ec0: 74 6c 69 6e 65 2e 77 72 69 74 65 45 6e 61 62 6c tline.writeEnabl
2ed0: 65 64 20 3d 20 74 72 75 65 3b 3c 2f 73 63 72 69 ed = true;</scri
2ee0: 70 74 3e 0d 0a 3c 64 74 3e 3c 73 70 61 6e 20 63 pt>..<dt><span c
2ef0: 6c 61 73 73 3d 22 64 65 63 6c 22 3e 0d 0a 3c 73 lass="decl">..<s
2f00: 70 61 6e 20 63 6c 61 73 73 3d 22 63 75 72 72 73 pan class="currs
2f10: 79 6d 62 6f 6c 22 3e e3 83 91 e3 82 bf e3 83 bc ymbol">.........
2f20: e3 83 b3 e3 83 9e e3 83 83 e3 83 81 3c 2f 73 70 ............</sp
2f30: 61 6e 3e 0d 0a 3c 73 63 72 69 70 74 3e 65 78 70 an>..<script>exp
2f40: 6c 6f 72 65 72 2e 6f 75 74 6c 69 6e 65 2e 61 64 lorer.outline.ad
2f50: 64 44 65 63 6c 28 27 e3 83 91 e3 82 bf e3 83 bc dDecl('.........
2f60: e3 83 b3 e3 83 9e e3 83 83 e3 83 81 27 29 3b 3c ............');<
2f70: 2f 73 63 72 69 70 74 3e 0d 0a 0d 0a 3c 2f 73 70 /script>....</sp
2f80: 61 6e 3e 3c 2f 64 74 3e 0d 0a 3c 73 63 72 69 70 an></dt>..<scrip
2f90: 74 3e 65 78 70 6c 6f 72 65 72 2e 6f 75 74 6c 69 t>explorer.outli
2fa0: 6e 65 2e 77 72 69 74 65 45 6e 61 62 6c 65 64 20 ne.writeEnabled
2fb0: 3d 20 66 61 6c 73 65 3b 3c 2f 73 63 72 69 70 74 = false;</script
2fc0: 3e 0d 0a 0d 0a 20 3c 64 64 3e 3c 70 3e 0d 0a e9 >.... <dd><p>...
2fd0: 81 a9 e5 bd 93 e3 81 ab e5 ae 9f e8 a3 85 e3 81 ................
2fe0: 95 e3 82 8c e3 81 9f e3 83 91 e3 82 bf e3 83 bc ................
2ff0: e3 83 b3 e3 83 9e e3 83 83 e3 83 81 e3 81 8c e3 ................
3000: 81 82 e3 82 8a e3 81 be e3 81 99 e3 80 82 0d 0a ................
3010: e3 83 aa e3 82 b9 e3 83 88 e3 81 ae 20 32 6e 20 ............ 2n
3020: e7 95 aa e7 9b ae e3 81 a8 20 32 6e 2b 31 20 e7 ......... 2n+1 .
3030: 95 aa e7 9b ae e3 82 92 e8 b6 b3 e3 81 97 e3 81 ................
3040: a6 e9 95 b7 e3 81 95 e3 82 92 e5 8d 8a e5 88 86 ................
3050: e3 81 ab e3 81 99 e3 82 8b e9 96 a2 e6 95 b0 ef ................
3060: bc 9a 0d 0a 3c 2f 70 3e 0d 0a 3c 70 72 65 3e 0d ....</p>..<pre>.
3070: 0a 20 20 20 20 64 65 66 20 61 64 6a 53 75 6d 28 . def adjSum(
3080: 6c 73 74 29 0d 0a 20 20 20 20 7b 0d 0a 20 20 20 lst).. {..
3090: 20 20 20 63 61 73 65 20 6c 73 74 0d 0a 20 20 20 case lst..
30a0: 20 20 20 20 20 77 68 65 6e 20 7b 63 61 72 3a 78 when {car:x
30b0: 2c 20 63 64 72 3a 7b 63 61 72 3a 20 79 2c 20 63 , cdr:{car: y, c
30c0: 64 72 3a 7a 7d 7d 3a 20 7b 63 61 72 3a 20 78 2b dr:z}}: {car: x+
30d0: 79 2c 20 63 64 72 3a 20 61 64 6a 53 75 6d 28 7a y, cdr: adjSum(z
30e0: 29 7d 0d 0a 20 20 20 20 20 20 20 20 77 68 65 6e )}.. when
30f0: 20 7b 63 61 72 3a 78 2c 20 63 64 72 3a 7b 7d 7d {car:x, cdr:{}}
3100: 3a 20 6c 73 74 0d 0a 20 20 20 20 20 20 20 20 77 : lst.. w
3110: 68 65 6e 20 7b 7d 3a 20 7b 7d 0d 0a 20 20 20 20 hen {}: {}..
3120: 7d 0d 0a 3c 2f 70 72 65 3e 0d 0a 3c 70 3e 0d 0a }..</pre>..<p>..
3130: e5 8b 95 e3 81 8b e3 81 99 e3 81 a8 e3 81 8d e3 ................
3140: 81 ab e3 81 af e3 80 81 e5 87 a6 e7 90 86 e7 b3 ................
3150: bb e3 81 8c e3 81 9d e3 82 8c e3 81 a3 e3 81 bd ................
3160: e3 81 84 20 69 66 2d 74 68 65 6e 2d 65 6c 73 65 ... if-then-else
3170: 20 e3 81 ab e5 b1 95 e9 96 8b e3 81 97 e3 81 a6 ...............
3180: e3 81 84 e3 81 be e3 81 99 e3 80 82 0d 0a 3c 74 ..............<t
3190: 74 3e 77 68 65 6e 3c 2f 74 74 3e 20 e3 82 92 e4 t>when</tt> ....
31a0: b8 8a e3 81 8b e3 82 89 e8 a9 a6 e3 81 97 e3 81 ................
31b0: a6 e3 81 84 e3 81 a3 e3 81 a6 e3 80 81 e6 9c 80 ................
31c0: e5 88 9d e3 81 ab e3 83 9e e3 83 83 e3 83 81 e3 ................
31d0: 81 97 e3 81 9f e3 81 a8 e3 81 93 e3 82 8d e3 82 ................
31e0: 92 e5 ae 9f e8 a1 8c e3 81 97 e3 81 be e3 81 99 ................
31f0: e3 80 82 0d 0a e3 81 a9 e3 82 8c e3 81 ab e3 82 ................
3200: 82 e3 83 9e e3 83 83 e3 83 81 e3 81 97 e3 81 aa ................
3210: e3 81 84 e3 81 a8 e3 82 a8 e3 83 a9 e3 83 bc e3 ................
3220: 81 a7 e3 83 97 e3 83 ad e3 82 b0 e3 83 a9 e3 83 ................
3230: a0 e7 b5 82 e4 ba 86 e3 81 97 e3 81 be e3 81 99 ................
3240: e3 80 82 0d 0a 3c 2f 70 3e 0d 0a 3c 70 72 65 3e .....</p>..<pre>
3250: 0d 0a 20 20 20 50 41 54 20 3a 3a 3d 20 22 5f 22 .. PAT ::= "_"
3260: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
3270: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
3280: 20 20 20 20 20 20 3c 66 6f 6e 74 20 63 6f 6c 6f <font colo
3290: 72 3d 67 72 65 65 6e 3e 23 20 e3 83 af e3 82 a4 r=green># ......
32a0: e3 83 ab e3 83 89 e3 82 ab e3 83 bc e3 83 89 3c ...............<
32b0: 2f 66 6f 6e 74 3e 0d 0a 20 20 20 20 20 20 20 20 /font>..
32c0: 20 7c 20 49 44 20 20 20 20 20 20 20 20 20 20 20 | ID
32d0: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
32e0: 20 20 20 20 20 20 20 20 20 20 20 20 3c 66 6f 6e <fon
32f0: 74 20 63 6f 6c 6f 72 3d 67 72 65 65 6e 3e 23 20 t color=green>#
3300: e5 a4 89 e6 95 b0 e3 83 91 e3 82 bf e3 83 bc e3 ................
3310: 83 b3 3c 2f 66 6f 6e 74 3e 0d 0a 20 20 20 20 20 ..</font>..
3320: 20 20 20 20 7c 20 22 7b 22 20 49 44 20 22 3a 22 | "{" ID ":"
3330: 20 50 41 54 20 22 2c 22 20 2e 2e 2e 20 22 2c 22 PAT "," ... ","
3340: 20 49 44 20 3a 20 50 41 54 20 22 7d 22 20 20 3c ID : PAT "}" <
3350: 66 6f 6e 74 20 63 6f 6c 6f 72 3d 67 72 65 65 6e font color=green
3360: 3e 23 20 e3 83 86 e3 83 bc e3 83 96 e3 83 ab e3 ># .............
3370: 83 91 e3 82 bf e3 83 bc e3 83 b3 3c 2f 66 6f 6e ...........</fon
3380: 74 3e 0d 0a 20 20 20 20 20 20 20 20 20 7c 20 45 t>.. | E
3390: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
33a0: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
33b0: 20 20 20 20 20 20 20 20 3c 66 6f 6e 74 20 63 6f <font co
33c0: 6c 6f 72 3d 67 72 65 65 6e 3e 23 20 e5 80 a4 e3 lor=green># ....
33d0: 83 91 e3 82 bf e3 83 bc e3 83 b3 3c 2f 66 6f 6e ...........</fon
33e0: 74 3e 0d 0a 3c 2f 70 72 65 3e 0d 0a 3c 70 3e 0d t>..</pre>..<p>.
33f0: 0a e5 a4 89 e6 95 b0 e3 83 91 e3 82 bf e3 83 bc ................
3400: e3 83 b3 e3 81 af e5 b8 b8 e3 81 ab e3 83 9e e3 ................
3410: 83 83 e3 83 81 e3 81 97 e3 81 a6 e3 80 81 e5 80 ................
3420: a4 e3 82 92 e3 81 9d e3 81 ae e5 a4 89 e6 95 b0 ................
3430: e3 81 ab e6 9d 9f e7 b8 9b e3 81 97 e3 81 be e3 ................
3440: 81 99 e3 80 82 0d 0a e3 83 af e3 82 a4 e3 83 ab ................
3450: e3 83 89 e3 82 ab e3 83 bc e3 83 89 e3 82 82 e5 ................
3460: b8 b8 e3 81 ab e3 83 9e e3 83 83 e3 83 81 e3 81 ................
3470: 97 e3 81 be e3 81 99 e3 81 8c e3 80 81 e5 a4 89 ................
3480: e6 95 b0 e6 9d 9f e7 b8 9b e3 81 97 e3 81 be e3 ................
3490: 81 9b e3 82 93 e3 80 82 0d 0a e5 80 a4 e3 83 91 ................
34a0: e3 82 bf e3 83 bc e3 83 b3 e3 81 af e3 80 81 e4 ................
34b0: bb bb e6 84 8f e3 81 ae e5 bc 8f e3 81 8c e6 9b ................
34c0: b8 e3 81 91 e3 81 be e3 81 99 e3 80 82 e3 81 9d ................
34d0: e3 81 ae e5 bc 8f e3 82 92 e8 a9 95 e4 be a1 e3 ................
34e0: 81 97 e3 81 9f e7 b5 90 e6 9e 9c e3 81 a8 20 3c .............. <
34f0: 74 74 3e 3d 3d 3c 2f 74 74 3e 20 e3 81 aa e3 82 tt>==</tt> .....
3500: 89 e3 83 9e e3 83 83 e3 83 81 e3 81 97 e3 81 be ................
3510: e3 81 99 e3 80 82 0d 0a e5 a4 96 e3 81 a7 e6 9d ................
3520: 9f e7 b8 9b e3 81 95 e3 82 8c e3 81 9f e5 a4 89 ................
3530: e6 95 b0 e3 82 92 e5 80 a4 e3 83 91 e3 82 bf e3 ................
3540: 83 bc e3 83 b3 e3 81 a8 e3 81 97 e3 81 a6 e9 85 ................
3550: 8d e7 bd ae e3 80 81 e3 81 af e7 9b b4 e6 8e a5 ................
3560: e3 81 af e3 81 a7 e3 81 8d e3 81 aa e3 81 84 e3 ................
3570: 81 ae e3 81 a7 0d 0a 3c 2f 70 3e 0d 0a 3c 70 72 .......</p>..<pr
3580: 65 3e 0d 0a 20 20 20 76 61 72 20 78 20 3d 20 31 e>.. var x = 1
3590: 32 33 3b 0d 0a 20 20 20 63 61 73 65 20 66 6f 6f 23;.. case foo
35a0: 0d 0a 20 20 20 20 20 77 68 65 6e 20 7b 76 61 6c .. when {val
35b0: 3a 20 78 2b 30 7d 3a 20 2e 2e 2e 20 3c 66 6f 6e : x+0}: ... <fon
35c0: 74 20 63 6f 6c 6f 72 3d 67 72 65 65 6e 3e 23 20 t color=green>#
35d0: e3 81 93 e3 82 8c e3 81 af 20 7b 76 61 6c 3a 31 ......... {val:1
35e0: 32 33 7d 20 e3 81 a8 e5 90 8c e3 81 98 3c 2f 66 23} .........</f
35f0: 6f 6e 74 3e 0d 0a 20 20 20 20 20 77 68 65 6e 20 ont>.. when
3600: 7b 76 61 6c 3a 20 78 7d 3a 20 20 20 2e 2e 2e 20 {val: x}: ...
3610: 3c 66 6f 6e 74 20 63 6f 6c 6f 72 3d 67 72 65 65 <font color=gree
3620: 6e 3e 23 20 e3 81 93 e3 82 8c e3 81 af e4 bb bb n># ............
3630: e6 84 8f e3 81 ae 20 66 6f 6f 2e 3f 76 61 6c 20 ...... foo.?val
3640: e3 81 aa e3 82 89 e5 b8 b8 e3 81 ab e3 83 9e e3 ................
3650: 83 83 e3 83 81 3c 2f 66 6f 6e 74 3e 0d 0a 3c 2f .....</font>..</
3660: 70 72 65 3e 0d 0a 3c 70 3e 0d 0a e9 81 a9 e5 bd pre>..<p>.......
3670: 93 e3 81 ab e3 81 a1 e3 82 87 e3 81 a3 e3 81 a8 ................
3680: e8 a4 87 e9 9b 91 e3 81 aa e5 bc 8f e3 81 ab e3 ................
3690: 81 97 e3 81 a6 e3 82 84 e3 82 8b e3 81 a8 e3 82 ................
36a0: 88 e3 81 84 e3 81 8b e3 82 82 ef bc 88 e8 a3 8f ................
36b0: e6 8a 80 ef bc 89 e3 80 82 0d 0a 3c 2f 70 3e 0d ...........</p>.
36c0: 0a 3c 70 3e 0d 0a e3 83 86 e3 83 bc e3 83 96 e3 .<p>............
36d0: 83 ab e3 83 91 e3 82 bf e3 83 bc e3 83 b3 e3 81 ................
36e0: af e3 80 81 e6 9b b8 e3 81 8b e3 82 8c e3 81 9f ................
36f0: e3 82 ad e3 83 bc e3 81 8c e5 85 a8 e3 81 a6 e3 ................
3700: 81 82 e3 82 8c e3 81 b0 e3 83 9e e3 83 83 e3 83 ................
3710: 81 e3 81 97 e3 81 be e3 81 99 e3 80 82 0d 0a 3c ...............<
3720: 74 74 3e 7b 61 3a 20 5f 7d 3c 2f 74 74 3e 20 e3 tt>{a: _}</tt> .
3730: 81 af e3 80 81 3c 74 74 3e 2e 61 3c 2f 74 74 3e .....<tt>.a</tt>
3740: 20 e3 82 92 e6 8c 81 e3 81 a3 e3 81 a6 e3 81 95 ...............
3750: e3 81 88 e3 81 84 e3 82 8c e3 81 b0 e3 83 9e e3 ................
3760: 83 83 e3 83 81 e3 81 99 e3 82 8b e3 81 ae e3 81 ................
3770: a7 e3 80 81 0d 0a 3c 74 74 3e 7b 61 3a 20 31 32 ......<tt>{a: 12
3780: 33 2c 20 62 3a 20 34 35 36 7d 3c 2f 74 74 3e 20 3, b: 456}</tt>
3790: e3 81 aa e3 82 93 e3 81 8b e3 81 ab e3 82 82 e3 ................
37a0: 83 9e e3 83 83 e3 83 81 e3 81 97 e3 81 be e3 81 ................
37b0: 99 e3 80 82 0d 0a e3 81 aa e3 81 ae e3 81 a7 e3 ................
37c0: 80 81 e3 83 aa e3 82 b9 e3 83 88 e3 81 ab e5 af ................
37d0: be e3 81 99 e3 82 8b e3 83 91 e3 82 bf e3 83 bc ................
37e0: e3 83 b3 e3 82 92 e6 9b b8 e3 81 8f e3 81 a8 e3 ................
37f0: 81 8d e3 81 ab e3 81 af e3 80 81 63 61 72 2f 63 ...........car/c
3800: 64 72 20 e3 81 ae e5 a0 b4 e5 90 88 e3 82 92 e5 dr .............
3810: 85 88 e3 81 ab e6 9b b8 e3 81 8b e3 81 aa e3 81 ................
3820: 84 e3 81 a8 0d 0a 3c 74 74 3e 77 68 65 6e 20 7b ......<tt>when {
3830: 7d 3c 2f 74 74 3e 20 e3 82 92 e4 b8 8a e3 81 ab }</tt> .........
3840: e6 9b b8 e3 81 8f e3 81 a8 e5 85 a8 e9 83 a8 e3 ................
3850: 83 9e e3 83 83 e3 83 81 e3 81 97 e3 81 a1 e3 82 ................
3860: 83 e3 81 84 e3 81 be e3 81 99 e3 80 82 e6 b3 a8 ................
3870: e6 84 8f e3 80 82 0d 0a 3c 2f 70 3e 0d 0a 3c 2f ........</p>..</
3880: 64 64 3e 0d 0a 3c 2f 64 6c 3e 0d 0a 3c 73 63 72 dd>..</dl>..<scr
3890: 69 70 74 3e 65 78 70 6c 6f 72 65 72 2e 6f 75 74 ipt>explorer.out
38a0: 6c 69 6e 65 2e 64 65 63 53 79 6d 62 6f 6c 4c 65 line.decSymbolLe
38b0: 76 65 6c 28 29 3b 3c 2f 73 63 72 69 70 74 3e 0d vel();</script>.
38c0: 0a 0d 0a 0d 0a 3c 2f 64 64 3e 0d 0a 0d 0a 0d 0a .....</dd>......
38d0: 0d 0a 0d 0a 0d 0a 0d 0a 3c 73 63 72 69 70 74 3e ........<script>
38e0: 65 78 70 6c 6f 72 65 72 2e 6f 75 74 6c 69 6e 65 explorer.outline
38f0: 2e 77 72 69 74 65 45 6e 61 62 6c 65 64 20 3d 20 .writeEnabled =
3900: 74 72 75 65 3b 3c 2f 73 63 72 69 70 74 3e 0d 0a true;</script>..
3910: 3c 64 74 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d <dt><span class=
3920: 22 64 65 63 6c 22 3e 0d 0a 3c 73 70 61 6e 20 63 "decl">..<span c
3930: 6c 61 73 73 3d 22 63 75 72 72 73 79 6d 62 6f 6c lass="currsymbol
3940: 22 3e 4c 61 79 65 72 73 3c 2f 73 70 61 6e 3e 0d ">Layers</span>.
3950: 0a 3c 73 63 72 69 70 74 3e 65 78 70 6c 6f 72 65 .<script>explore
3960: 72 2e 6f 75 74 6c 69 6e 65 2e 61 64 64 44 65 63 r.outline.addDec
3970: 6c 28 27 4c 61 79 65 72 73 27 29 3b 3c 2f 73 63 l('Layers');</sc
3980: 72 69 70 74 3e 0d 0a 0d 0a 3c 2f 73 70 61 6e 3e ript>....</span>
3990: 3c 2f 64 74 3e 0d 0a 3c 73 63 72 69 70 74 3e 65 </dt>..<script>e
39a0: 78 70 6c 6f 72 65 72 2e 6f 75 74 6c 69 6e 65 2e xplorer.outline.
39b0: 77 72 69 74 65 45 6e 61 62 6c 65 64 20 3d 20 66 writeEnabled = f
39c0: 61 6c 73 65 3b 3c 2f 73 63 72 69 70 74 3e 0d 0a alse;</script>..
39d0: 0d 0a 20 3c 64 64 3e 3c 70 72 65 3e 0d 0a 5b 4c .. <dd><pre>..[L
39e0: 61 79 65 72 73 20 3a 3a 20 4f 76 65 72 76 69 65 ayers :: Overvie
39f0: 77 5d 0d 0a 0d 0a 20 20 50 6f 6c 65 6d 79 27 73 w].... Polemy's
3a00: 20 72 75 6e 74 69 6d 65 20 65 6e 76 69 72 6f 6e runtime environ
3a10: 6d 65 6e 74 20 68 61 73 20 6d 61 6e 79 20 22 6c ment has many "l
3a20: 61 79 65 72 22 73 2e 0d 0a 20 20 55 73 75 61 6c ayer"s... Usual
3a30: 20 65 78 65 63 75 74 69 6f 6e 20 72 75 6e 20 69 execution run i
3a40: 6e 20 74 68 65 20 40 76 61 6c 75 65 20 6c 61 79 n the @value lay
3a50: 65 72 2e 0d 0a 0d 0a 20 20 20 20 26 67 74 3b 26 er..... >&
3a60: 67 74 3b 20 31 20 2b 20 32 0d 0a 20 20 20 20 33 gt; 1 + 2.. 3
3a70: 0d 0a 20 20 20 20 26 67 74 3b 26 67 74 3b 20 40 .. >> @
3a80: 76 61 6c 75 65 28 20 31 20 2b 20 32 20 29 0d 0a value( 1 + 2 )..
3a90: 20 20 20 20 33 0d 0a 0d 0a 20 20 48 65 72 65 20 3.... Here
3aa0: 79 6f 75 20 63 61 6e 20 73 65 65 20 74 68 61 74 you can see that
3ab0: 20 40 4c 61 79 65 72 4e 61 6d 65 28 20 45 78 70 @LayerName( Exp
3ac0: 72 65 73 73 69 6f 6e 20 29 20 65 78 65 63 75 74 ression ) execut
3ad0: 65 73 20 74 68 65 20 69 6e 6e 65 72 20 45 78 70 es the inner Exp
3ae0: 72 65 73 73 69 6f 6e 20 69 6e 0d 0a 20 20 74 68 ression in.. th
3af0: 65 20 40 4c 61 79 65 72 4e 61 6d 65 20 6c 61 79 e @LayerName lay
3b00: 65 72 2e 20 4f 74 68 65 72 20 74 68 61 6e 20 40 er. Other than @
3b10: 76 61 6c 75 65 2c 20 6f 6e 65 20 6f 74 68 65 72 value, one other
3b20: 20 70 72 65 64 65 66 69 6e 65 64 20 6c 61 79 65 predefined laye
3b30: 72 20 65 78 69 73 74 73 3a 20 40 6d 61 63 72 6f r exists: @macro
3b40: 2e 0d 0a 0d 0a 20 20 20 20 26 67 74 3b 26 67 74 ..... >>
3b50: 3b 20 40 6d 61 63 72 6f 28 20 31 2b 32 20 29 0d ; @macro( 1+2 ).
3b60: 0a 20 20 20 20 7b 70 6f 73 40 76 61 6c 75 65 3a . {pos@value:
3b70: 7b 6c 69 6e 65 6e 6f 40 76 61 6c 75 65 3a 33 2c {lineno@value:3,
3b80: 20 63 6f 6c 75 6d 6e 40 76 61 6c 75 65 3a 39 2c column@value:9,
3b90: 20 66 69 6c 65 6e 61 6d 65 40 76 61 6c 75 65 3a filename@value:
3ba0: 3c 52 45 50 4c 3e 7d 2c 0d 0a 20 20 20 20 20 20 <REPL>},..
3bb0: 69 73 40 76 61 6c 75 65 3a 61 70 70 2c 0d 0a 20 is@value:app,..
3bc0: 20 20 20 61 72 67 73 40 76 61 6c 75 65 3a 7b 63 args@value:{c
3bd0: 61 72 40 76 61 6c 75 65 3a 7b 70 6f 73 40 76 61 ar@value:{pos@va
3be0: 6c 75 65 3a 7b 6c 69 6e 65 6e 6f 40 76 61 6c 75 lue:{lineno@valu
3bf0: 65 3a 33 2c 20 63 6f 6c 75 6d 6e 40 76 61 6c 75 e:3, column@valu
3c00: 65 3a 39 2c 20 66 69 6c 65 6e 61 6d 65 40 76 61 e:9, filename@va
3c10: 6c 75 65 3a 3c 52 45 50 4c 3e 7d 2c 0d 0a 20 20 lue:<REPL>},..
3c20: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
3c30: 20 20 20 20 20 20 20 20 20 20 69 73 40 76 61 6c is@val
3c40: 75 65 3a 69 6e 74 2c 0d 0a 20 20 20 20 20 20 20 ue:int,..
3c50: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
3c60: 20 20 20 64 61 74 61 40 76 61 6c 75 65 3a 31 7d data@value:1}
3c70: 2c 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 ,..
3c80: 20 20 20 63 64 72 40 76 61 6c 75 65 3a 7b 0d 0a cdr@value:{..
3c90: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
3ca0: 20 20 63 61 72 40 76 61 6c 75 65 3a 7b 70 6f 73 car@value:{pos
3cb0: 40 76 61 6c 75 65 3a 7b 6c 69 6e 65 6e 6f 40 76 @value:{lineno@v
3cc0: 61 6c 75 65 3a 33 2c 20 63 6f 6c 75 6d 6e 40 76 alue:3, column@v
3cd0: 61 6c 75 65 3a 31 31 2c 20 66 69 6c 65 6e 61 6d alue:11, filenam
3ce0: 65 40 76 61 6c 75 65 3a 3c 52 45 50 4c 3e 7d 2c e@value:<REPL>},
3cf0: 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ..
3d00: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
3d10: 69 73 40 76 61 6c 75 65 3a 69 6e 74 2c 0d 0a 20 is@value:int,..
3d20: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
3d30: 20 20 20 20 20 20 20 20 20 20 20 64 61 74 61 40 data@
3d40: 76 61 6c 75 65 3a 32 7d 2c 0d 0a 20 20 20 20 20 value:2},..
3d50: 20 20 20 20 20 20 20 20 20 20 20 20 20 63 64 72 cdr
3d60: 40 76 61 6c 75 65 3a 7b 7d 7d 7d 2c 0d 0a 20 20 @value:{}}},..
3d70: 20 20 20 66 75 6e 40 76 61 6c 75 65 3a 7b 70 6f fun@value:{po
3d80: 73 40 76 61 6c 75 65 3a 7b 6c 69 6e 65 6e 6f 40 s@value:{lineno@
3d90: 76 61 6c 75 65 3a 33 2c 20 63 6f 6c 75 6d 6e 40 value:3, column@
3da0: 76 61 6c 75 65 3a 31 30 2c 20 66 69 6c 65 6e 61 value:10, filena
3db0: 6d 65 40 76 61 6c 75 65 3a 3c 52 45 50 4c 3e 7d me@value:<REPL>}
3dc0: 2c 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 ,..
3dd0: 20 20 20 20 69 73 40 76 61 6c 75 65 3a 76 61 72 is@value:var
3de0: 2c 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 ,..
3df0: 20 20 6e 61 6d 65 40 76 61 6c 75 65 3a 2b 7d 7d name@value:+}}
3e00: 0d 0a 0d 0a 20 20 28 53 6f 72 72 79 2c 20 74 68 .... (Sorry, th
3e10: 69 73 20 70 72 65 74 74 79 20 70 72 69 6e 74 69 is pretty printi
3e20: 6e 67 20 69 73 20 6e 6f 74 20 61 76 61 69 6c 61 ng is not availa
3e30: 62 6c 65 20 6f 6e 20 74 68 65 20 61 63 74 75 61 ble on the actua
3e40: 6c 20 69 6e 74 65 72 70 72 65 74 65 72 2e 2e 2e l interpreter...
3e50: 29 0d 0a 20 20 54 68 69 73 20 65 76 61 6c 75 61 ).. This evalua
3e60: 74 65 73 20 74 68 65 20 65 78 70 72 65 73 73 69 tes the expressi
3e70: 6f 6e 20 31 2b 32 20 69 6e 20 74 68 65 20 40 6d on 1+2 in the @m
3e80: 61 63 72 6f 20 6c 61 79 65 72 2e 20 49 6e 20 74 acro layer. In t
3e90: 68 69 73 20 6c 61 79 65 72 2c 20 74 68 65 20 6d his layer, the m
3ea0: 65 61 6e 69 6e 67 20 6f 66 0d 0a 20 20 74 68 65 eaning of.. the
3eb0: 20 70 72 6f 67 72 61 6d 20 69 73 20 69 74 73 20 program is its
3ec0: 61 62 73 74 72 61 63 74 20 73 79 6e 74 61 78 20 abstract syntax
3ed0: 74 72 65 65 2e 0d 0a 0d 0a 20 20 59 6f 75 20 63 tree..... You c
3ee0: 61 6e 20 69 6e 74 65 72 6c 65 61 76 65 20 6c 61 an interleave la
3ef0: 79 65 72 73 2e 0d 0a 20 20 54 68 65 20 72 6f 6f yers... The roo
3f00: 74 20 6e 6f 64 65 20 6f 66 20 74 68 65 20 61 62 t node of the ab
3f10: 73 74 72 61 63 74 20 73 79 6e 74 61 78 20 74 72 stract syntax tr
3f20: 65 65 20 69 73 20 66 75 6e 63 74 69 6f 6e 20 22 ee is function "
3f30: 61 70 70 22 6c 69 63 61 74 69 6f 6e 2e 0d 0a 0d app"lication....
3f40: 0a 20 20 20 20 26 67 74 3b 26 67 74 3b 20 40 76 . >> @v
3f50: 61 6c 75 65 28 40 6d 61 63 72 6f 28 20 31 2b 32 alue(@macro( 1+2
3f60: 20 29 2e 69 73 29 0d 0a 20 20 20 20 61 70 70 0d ).is).. app.
3f70: 0a 0d 0a 0d 0a 0d 0a 5b 4c 61 79 65 72 73 20 3a .......[Layers :
3f80: 3a 20 44 65 66 69 6e 69 6e 67 20 61 20 6e 65 77 : Defining a new
3f90: 20 6c 61 79 65 72 5d 0d 0a 0d 0a 20 20 54 6f 20 layer].... To
3fa0: 64 65 66 69 6e 65 20 61 20 6e 65 77 20 6c 61 79 define a new lay
3fb0: 65 72 2c 20 79 6f 75 20 73 68 6f 75 6c 64 20 66 er, you should f
3fc0: 69 72 73 74 20 74 65 6c 6c 20 68 6f 77 20 74 6f irst tell how to
3fd0: 20 22 6c 69 66 74 22 20 65 78 69 73 74 69 6e 67 "lift" existing
3fe0: 20 76 61 6c 75 65 73 20 74 77 6f 20 74 68 65 20 values two the
3ff0: 6e 65 77 20 6c 61 79 65 72 2e 0d 0a 20 20 4c 65 new layer... Le
4000: 74 20 75 73 20 64 65 66 69 6e 65 20 74 68 65 20 t us define the
4010: 22 40 74 79 70 65 22 20 6c 61 79 65 72 2c 20 77 "@type" layer, w
4020: 68 65 72 65 20 74 68 65 20 6d 65 61 6e 69 6e 67 here the meaning
4030: 20 6f 66 20 70 72 6f 67 72 61 6d 73 20 69 73 20 of programs is
4040: 74 68 65 69 72 20 73 74 61 74 69 63 20 74 79 70 their static typ
4050: 65 2e 0d 0a 0d 0a 20 20 20 20 26 67 74 3b 26 67 e..... >&g
4060: 74 3b 20 40 40 74 79 70 65 20 3d 20 66 75 6e 28 t; @@type = fun(
4070: 78 29 20 7b 0d 0a 20 20 20 20 26 67 74 3b 26 67 x) {.. >&g
4080: 74 3b 20 20 20 69 66 28 20 5f 69 73 69 6e 74 28 t; if( _isint(
4090: 78 29 20 29 20 7b 20 22 69 6e 74 22 20 7d 20 65 x) ) { "int" } e
40a0: 6c 73 65 20 7b 0d 0a 20 20 20 20 26 67 74 3b 26 lse {.. >&
40b0: 67 74 3b 20 20 20 69 66 28 20 5f 69 73 66 75 6e gt; if( _isfun
40c0: 28 78 29 20 29 20 7b 20 78 20 7d 20 65 6c 73 65 (x) ) { x } else
40d0: 20 7b 20 22 75 6e 6b 6e 6f 77 6e 22 20 7d 20 7d { "unknown" } }
40e0: 0d 0a 20 20 20 20 26 67 74 3b 26 67 74 3b 20 7d .. >> }
40f0: 0d 0a 20 20 20 20 28 4e 6f 74 65 3a 20 70 6f 6c .. (Note: pol
4100: 65 6d 79 20 52 45 50 4c 20 6d 61 79 20 77 61 72 emy REPL may war
4110: 6e 20 73 6f 6d 65 20 65 78 63 65 70 74 69 6f 6e n some exception
4120: 20 68 65 72 65 20 62 75 74 20 70 6c 65 61 73 65 here but please
4130: 20 69 67 6e 6f 72 65 29 0d 0a 0d 0a 20 20 46 6f ignore).... Fo
4140: 72 20 73 69 6d 70 6c 69 63 69 74 79 2c 20 49 20 r simplicity, I
4150: 68 65 72 65 20 64 65 61 6c 20 6f 6e 6c 79 20 77 here deal only w
4160: 69 74 68 20 69 6e 74 65 67 65 72 73 2e 0d 0a 20 ith integers...
4170: 20 5f 69 73 69 6e 74 20 69 73 20 61 20 70 72 69 _isint is a pri
4180: 6d 69 74 69 76 65 20 66 75 6e 63 74 69 6f 6e 20 mitive function
4190: 6f 66 20 50 6f 6c 65 6d 79 20 74 68 61 74 20 63 of Polemy that c
41a0: 68 65 63 6b 73 20 74 68 65 20 64 79 6e 61 6d 69 hecks the dynami
41b0: 63 20 74 79 70 65 20 6f 66 20 61 20 76 61 6c 75 c type of a valu
41c0: 65 2e 0d 0a 20 20 46 6f 72 20 66 75 6e 63 74 69 e... For functi
41d0: 6f 6e 2c 20 6c 65 61 76 69 6e 67 20 69 74 20 75 on, leaving it u
41e0: 6e 74 6f 75 63 68 65 64 20 77 6f 72 6b 73 20 77 ntouched works w
41f0: 65 6c 6c 20 66 6f 72 20 61 6c 6d 6f 73 74 20 61 ell for almost a
4200: 6c 6c 20 6c 61 79 65 72 73 2e 0d 0a 0d 0a 20 20 ll layers.....
4210: 20 20 26 67 74 3b 26 67 74 3b 20 40 74 79 70 65 >> @type
4220: 28 20 31 20 29 0d 0a 20 20 20 20 69 6e 74 0d 0a ( 1 ).. int..
4230: 20 20 20 20 26 67 74 3b 26 67 74 3b 20 40 74 79 >> @ty
4240: 70 65 28 20 32 20 29 0d 0a 20 20 20 20 69 6e 74 pe( 2 ).. int
4250: 0d 0a 20 20 20 20 26 67 74 3b 26 67 74 3b 20 40 .. >> @
4260: 74 79 70 65 28 20 22 66 6f 6f 22 20 29 0d 0a 20 type( "foo" )..
4270: 20 20 20 75 6e 6b 6e 6f 77 6e 0d 0a 0d 0a 20 20 unknown....
4280: 46 69 6e 65 21 20 4c 65 74 27 73 20 74 72 79 20 Fine! Let's try
4290: 74 6f 20 74 79 70 65 20 31 2b 32 2e 0d 0a 0d 0a to type 1+2.....
42a0: 20 20 20 20 26 67 74 3b 26 67 74 3b 20 40 74 79 >> @ty
42b0: 70 65 28 20 31 20 2b 20 32 20 29 0d 0a 20 20 20 pe( 1 + 2 )..
42c0: 20 2e 2e 2e 5c 76 61 6c 75 65 2e 64 28 31 31 39 ...\value.d(119
42d0: 29 3a 20 5b 3c 52 45 50 4c 3e 3a 36 3a 38 5d 20 ): [<REPL>:6:8]
42e0: 6f 6e 6c 79 20 40 76 61 6c 75 65 20 6c 61 79 65 only @value laye
42f0: 72 20 63 61 6e 20 63 61 6c 6c 20 6e 61 74 69 76 r can call nativ
4300: 65 20 66 75 6e 63 74 69 6f 6e 0d 0a 0d 0a 20 20 e function....
4310: 4e 6f 74 65 20 74 68 61 74 20 74 68 65 20 62 65 Note that the be
4320: 68 61 76 69 6f 72 20 6f 66 20 74 68 69 73 20 70 havior of this p
4330: 72 6f 67 72 61 6d 20 69 73 0d 0a 20 20 20 20 2d rogram is.. -
4340: 20 72 75 6e 20 31 2b 32 20 69 6e 20 74 68 65 20 run 1+2 in the
4350: 40 74 79 70 65 20 6c 61 79 65 72 0d 0a 20 20 61 @type layer.. a
4360: 6e 64 20 4e 4f 54 0d 0a 20 20 20 20 2d 20 72 75 nd NOT.. - ru
4370: 6e 20 31 2b 32 20 69 6e 20 40 76 61 6c 75 65 20 n 1+2 in @value
4380: 61 6e 64 20 6f 62 74 61 69 6e 20 33 20 61 6e 64 and obtain 3 and
4390: 20 72 75 6e 20 33 20 69 6e 20 74 68 65 20 40 74 run 3 in the @t
43a0: 79 70 65 2e 0d 0a 20 20 54 68 65 20 70 72 6f 62 ype... The prob
43b0: 6c 65 6d 20 69 73 2c 20 74 68 65 20 76 61 72 69 lem is, the vari
43c0: 61 62 6c 65 20 22 2b 22 20 69 73 20 64 65 66 69 able "+" is defi
43d0: 6e 65 64 20 6f 6e 6c 79 20 69 6e 20 74 68 65 20 ned only in the
43e0: 40 76 61 6c 75 65 20 6c 61 79 65 72 2e 0d 0a 20 @value layer...
43f0: 20 54 6f 20 63 61 72 72 79 20 6f 75 74 20 63 6f To carry out co
4400: 6d 70 75 74 61 74 69 6f 6e 20 69 6e 20 74 68 65 mputation in the
4410: 20 40 74 79 70 65 20 6c 61 79 65 72 2e 20 57 65 @type layer. We
4420: 20 6e 65 65 64 20 74 6f 20 64 65 66 69 6e 65 20 need to define
4430: 69 74 20 61 6c 73 6f 0d 0a 20 20 69 6e 20 74 68 it also.. in th
4440: 65 20 40 74 79 70 65 20 6c 61 79 65 72 2e 0d 0a e @type layer...
4450: 0d 0a 20 20 54 6f 20 64 65 66 69 6e 65 20 73 6f .. To define so
4460: 6d 65 20 76 61 72 69 61 62 6c 65 20 69 6e 20 61 me variable in a
4470: 20 73 70 65 63 69 66 69 63 20 6c 61 79 65 72 2c specific layer,
4480: 20 75 73 65 20 40 4c 61 79 65 72 4e 61 6d 65 20 use @LayerName
4490: 69 6e 20 70 6c 61 63 65 20 6f 66 0d 0a 20 20 28 in place of.. (
44a0: 6c 65 74 7c 76 61 72 7c 64 65 66 29 73 2e 0d 0a let|var|def)s...
44b0: 0d 0a 20 20 20 20 26 67 74 3b 26 67 74 3b 20 6c .. >> l
44c0: 65 74 20 78 20 3d 20 32 0d 0a 20 20 20 20 26 67 et x = 2.. &g
44d0: 74 3b 26 67 74 3b 20 40 76 61 6c 75 65 20 78 20 t;> @value x
44e0: 3d 20 32 0d 0a 20 20 20 20 26 67 74 3b 26 67 74 = 2.. >>
44f0: 3b 20 40 74 79 70 65 20 78 20 3d 20 22 69 6e 74 ; @type x = "int
4500: 22 0d 0a 20 20 20 20 26 67 74 3b 26 67 74 3b 20 ".. >>
4510: 40 68 6f 67 65 20 78 20 3d 20 22 66 75 67 61 22 @hoge x = "fuga"
4520: 0d 0a 0d 0a 20 20 46 6f 72 20 22 2b 22 2c 20 64 .... For "+", d
4530: 6f 20 69 74 20 6c 69 6b 65 20 74 68 69 73 2e 0d o it like this..
4540: 0a 0d 0a 20 20 20 20 26 67 74 3b 26 67 74 3b 20 ... >>
4550: 40 74 79 70 65 20 22 2b 22 20 3d 20 66 75 6e 28 @type "+" = fun(
4560: 78 2c 79 29 20 7b 40 76 61 6c 75 65 28 0d 0a 20 x,y) {@value(..
4570: 20 20 20 26 67 74 3b 26 67 74 3b 20 20 20 69 66 >> if
4580: 28 20 40 74 79 70 65 28 78 29 3d 3d 22 69 6e 74 ( @type(x)=="int
4590: 22 20 26 61 6d 70 3b 26 61 6d 70 3b 20 40 74 79 " && @ty
45a0: 70 65 28 79 29 3d 3d 22 69 6e 74 22 20 29 20 7b pe(y)=="int" ) {
45b0: 20 22 69 6e 74 22 20 7d 20 65 6c 73 65 20 7b 20 "int" } else {
45c0: 22 74 79 70 65 65 72 72 6f 72 22 20 7d 0d 0a 20 "typeerror" }..
45d0: 20 20 20 26 67 74 3b 26 67 74 3b 20 29 7d 0d 0a >> )}..
45e0: 20 20 20 20 70 6f 6c 65 6d 79 2e 76 61 6c 75 65 polemy.value
45f0: 2e 6e 61 74 69 76 65 21 28 49 6e 74 56 61 6c 75 .native!(IntValu
4600: 65 2c 49 6e 74 56 61 6c 75 65 2c 49 6e 74 56 61 e,IntValue,IntVa
4610: 6c 75 65 29 2e 6e 61 74 69 76 65 2e 5f 5f 61 6e lue).native.__an
4620: 6f 6e 63 6c 61 73 73 32 34 0d 0a 0d 0a 20 20 49 onclass24.... I
4630: 74 20 69 73 20 6a 75 73 74 20 63 6f 6d 70 75 74 t is just comput
4640: 69 6e 67 20 74 68 65 20 72 65 74 75 72 6e 20 74 ing the return t
4650: 79 70 65 20 66 72 6f 6d 20 74 68 65 20 69 6e 70 ype from the inp
4660: 75 74 20 74 79 70 65 2e 0d 0a 20 20 4e 6f 74 20 ut type... Not
4670: 68 65 72 65 20 74 68 61 74 20 74 68 65 20 69 6e here that the in
4680: 74 65 6e 64 65 64 20 22 6d 65 61 6e 69 6e 67 22 tended "meaning"
4690: 20 6f 66 20 69 66 2d 74 68 65 6e 2d 65 6c 73 65 of if-then-else
46a0: 20 69 73 20 74 68 65 20 72 75 6e 74 69 6d 65 2d is the runtime-
46b0: 62 72 61 6e 63 68 69 6e 67 2c 0d 0a 20 20 61 6e branching,.. an
46c0: 64 20 74 68 65 20 6d 65 61 6e 69 6e 67 20 6f 66 d the meaning of
46d0: 20 22 3d 3d 22 20 69 73 20 74 68 65 20 76 61 6c "==" is the val
46e0: 75 65 2d 63 6f 6d 70 61 72 69 73 6f 6e 2e 20 54 ue-comparison. T
46f0: 68 65 73 65 20 61 72 65 20 74 68 65 20 40 76 61 hese are the @va
4700: 6c 75 65 20 6c 61 79 65 72 0d 0a 20 20 62 65 68 lue layer.. beh
4710: 61 76 69 6f 72 2e 20 53 6f 20 77 65 20 68 61 76 avior. So we hav
4720: 65 20 64 65 66 69 6e 65 64 20 74 68 65 20 66 75 e defined the fu
4730: 6e 63 74 69 6f 6e 20 62 6f 64 79 20 69 6e 73 69 nction body insi
4740: 64 65 20 40 76 61 6c 75 65 20 6c 61 79 65 72 2e de @value layer.
4750: 0d 0a 20 20 42 75 74 20 77 68 65 6e 20 77 65 20 .. But when we
4760: 72 65 66 65 72 20 74 68 65 20 76 61 72 69 61 62 refer the variab
4770: 6c 65 73 20 78 20 61 6e 64 20 79 2c 20 77 65 20 les x and y, we
4780: 6e 65 65 64 20 69 74 73 20 40 74 79 70 65 20 6c need its @type l
4790: 61 79 65 72 20 6d 65 61 6e 69 6e 67 2e 0d 0a 20 ayer meaning...
47a0: 20 48 65 6e 63 65 20 77 65 20 75 73 65 20 40 74 Hence we use @t
47b0: 79 70 65 28 29 20 74 68 65 72 65 2e 0d 0a 0d 0a ype() there.....
47c0: 20 20 4e 6f 77 20 77 65 20 67 65 74 20 69 74 2e Now we get it.
47d0: 0d 0a 0d 0a 20 20 20 20 26 67 74 3b 26 67 74 3b .... >>
47e0: 20 40 74 79 70 65 28 20 31 20 2b 20 32 20 29 0d @type( 1 + 2 ).
47f0: 0a 20 20 20 20 69 6e 74 0d 0a 0d 0a 20 20 57 65 . int.... We
4800: 6c 6c 2c 20 62 75 74 20 64 6f 20 77 65 20 68 61 ll, but do we ha
4810: 76 65 20 74 6f 20 64 65 66 69 6e 65 20 74 68 65 ve to define the
4820: 20 40 74 79 70 65 20 6c 61 79 65 72 20 6d 65 61 @type layer mea
4830: 6e 69 6e 67 20 66 6f 72 20 65 76 65 72 79 20 76 ning for every v
4840: 61 72 69 61 62 6c 65 73 3f 3f 3f 0d 0a 20 20 4e ariables???.. N
4850: 6f 2e 20 41 66 74 65 72 20 79 6f 75 20 64 65 66 o. After you def
4860: 69 6e 65 64 20 40 74 79 70 65 20 22 2b 22 2c 20 ined @type "+",
4870: 79 6f 75 27 6c 6c 20 61 75 74 6f 6d 61 74 69 63 you'll automatic
4880: 61 6c 6c 79 20 67 65 74 20 74 68 65 20 66 6f 6c ally get the fol
4890: 6c 6f 77 69 6e 67 3a 0d 0a 0d 0a 20 20 20 20 26 lowing:.... &
48a0: 67 74 3b 26 67 74 3b 20 64 65 66 20 64 6f 75 62 gt;> def doub
48b0: 6c 65 28 78 29 20 7b 20 78 20 2b 20 78 20 7d 0d le(x) { x + x }.
48c0: 0a 20 20 20 20 28 66 75 6e 63 74 69 6f 6e 3a 31 . (function:1
48d0: 37 65 34 37 34 30 3a 31 37 38 39 37 32 30 29 0d 7e4740:1789720).
48e0: 0a 0d 0a 20 20 20 20 26 67 74 3b 26 67 74 3b 20 ... >>
48f0: 40 74 79 70 65 28 20 64 6f 75 62 6c 65 28 31 32 @type( double(12
4900: 33 29 20 29 0d 0a 20 20 20 20 69 6e 74 0d 0a 0d 3) ).. int...
4910: 0a 20 20 45 76 65 72 79 20 75 73 65 72 2d 64 65 . Every user-de
4920: 66 69 6e 65 64 20 66 75 6e 63 74 69 6f 6e 73 20 fined functions
4930: 61 72 65 20 61 75 74 6f 6d 61 74 69 63 61 6c 6c are automaticall
4940: 79 20 22 6c 69 66 74 22 65 64 20 74 6f 20 74 68 y "lift"ed to th
4950: 65 20 61 70 70 72 6f 70 72 69 61 74 65 20 6c 61 e appropriate la
4960: 79 65 72 2e 0d 0a 20 20 4f 6e 6c 79 20 70 72 69 yer... Only pri
4970: 6d 69 74 69 76 65 20 66 75 6e 63 74 69 6f 6e 73 mitive functions
4980: 20 6c 69 6b 65 20 22 2b 22 20 72 65 71 75 69 72 like "+" requir
4990: 65 73 20 40 79 6f 75 72 4e 65 77 4c 61 79 65 72 es @yourNewLayer
49a0: 20 61 6e 6e 6f 74 61 74 69 6f 6e 2e 0d 0a 0d 0a annotation.....
49b0: 0d 0a 0d 0a 5b 4c 61 79 65 72 73 20 3a 3a 20 6e ....[Layers :: n
49c0: 65 75 74 72 61 6c 2d 6c 61 79 65 72 5d 0d 0a 0d eutral-layer]...
49d0: 0a 20 20 6c 65 74 7c 76 61 72 7c 64 65 66 20 69 . let|var|def i
49e0: 73 20 74 6f 20 64 65 66 69 6e 65 20 61 20 76 61 s to define a va
49f0: 72 69 61 62 6c 65 20 69 6e 20 74 68 65 20 22 63 riable in the "c
4a00: 75 72 72 65 6e 74 22 20 6c 61 79 65 72 2e 0d 0a urrent" layer...
4a10: 20 20 4e 6f 74 20 6e 65 63 65 73 73 61 72 79 20 Not necessary
4a20: 74 6f 20 74 68 65 20 40 76 61 6c 75 65 20 6c 61 to the @value la
4a30: 79 65 72 2e 0d 0a 0d 0a 20 20 20 20 26 67 74 3b yer..... >
4a40: 26 67 74 3b 20 40 76 61 6c 75 65 28 20 6c 65 74 > @value( let
4a50: 20 78 20 3d 20 31 20 69 6e 20 40 76 61 6c 75 65 x = 1 in @value
4a60: 28 78 29 20 29 0d 0a 20 20 20 20 31 0d 0a 0d 0a (x) ).. 1....
4a70: 20 20 20 20 26 67 74 3b 26 67 74 3b 20 40 6d 61 >> @ma
4a80: 63 72 6f 28 20 6c 65 74 20 78 20 3d 20 31 20 69 cro( let x = 1 i
4a90: 6e 20 40 76 61 6c 75 65 28 78 29 20 29 0d 0a 20 n @value(x) )..
4aa0: 20 20 20 70 6f 6c 65 6d 79 2e 66 61 69 6c 75 72 polemy.failur
4ab0: 65 2e 52 75 6e 74 69 6d 65 45 78 63 65 70 74 69 e.RuntimeExcepti
4ac0: 6f 6e 3a 20 5b 3c 52 45 50 4c 3e 3a 31 34 3a 32 on: [<REPL>:14:2
4ad0: 39 5d 20 76 61 72 69 61 62 6c 65 20 78 20 6e 6f 9] variable x no
4ae0: 74 20 66 6f 75 6e 64 0d 0a 0d 0a 20 20 20 20 26 t found.... &
4af0: 67 74 3b 26 67 74 3b 20 40 6d 61 63 72 6f 28 20 gt;> @macro(
4b00: 6c 65 74 20 78 20 3d 20 31 20 69 6e 20 40 6d 61 let x = 1 in @ma
4b10: 63 72 6f 28 78 29 20 29 0d 0a 20 20 20 20 7b 70 cro(x) ).. {p
4b20: 6f 73 40 76 61 6c 75 65 3a 7b 6c 69 6e 65 6e 6f os@value:{lineno
4b30: 40 76 61 6c 75 65 3a 31 35 2c 20 2e 2e 2e 0d 0a @value:15, .....
4b40: 0d 0a 0d 0a 0d 0a 5b 4c 61 79 65 72 73 20 3a 3a ......[Layers ::
4b50: 20 4c 61 79 65 72 65 64 2d 50 61 72 61 6d 65 74 Layered-Paramet
4b60: 65 72 73 5d 0d 0a 0d 0a 20 20 20 20 26 67 74 3b ers].... >
4b70: 26 67 74 3b 20 64 65 66 20 66 6f 6f 28 78 20 40 > def foo(x @
4b80: 6d 61 63 72 6f 20 40 76 61 6c 75 65 29 20 7b 20 macro @value) {
4b90: 7b 66 73 74 3a 20 78 2c 20 73 6e 64 3a 20 40 6d {fst: x, snd: @m
4ba0: 61 63 72 6f 28 78 29 7d 20 7d 0d 0a 20 20 20 20 acro(x)} }..
4bb0: 28 66 75 6e 63 74 69 6f 6e 3a 31 37 33 30 33 36 (function:173036
4bc0: 30 3a 31 37 38 39 37 32 30 29 0d 0a 0d 0a 20 20 0:1789720)....
4bd0: 49 66 20 79 6f 75 20 61 6e 6e 6f 74 61 74 65 20 If you annotate
4be0: 66 75 6e 63 74 69 6f 6e 20 70 61 72 61 6d 65 74 function paramet
4bf0: 65 72 73 20 62 79 20 40 4c 61 79 65 72 4e 61 6d ers by @LayerNam
4c00: 65 73 2c 20 77 68 65 6e 20 79 6f 75 20 69 6e 76 es, when you inv
4c10: 6f 6b 65 20 74 68 65 20 66 75 6e 63 74 69 6f 6e oke the function
4c20: 2e 2e 2e 0d 0a 0d 0a 20 20 20 20 26 67 74 3b 26 ....... >&
4c30: 67 74 3b 20 66 6f 6f 28 31 2b 32 29 0d 0a 20 20 gt; foo(1+2)..
4c40: 20 20 7b 73 6e 64 40 76 61 6c 75 65 3a 20 7b 70 {snd@value: {p
4c50: 6f 73 40 76 61 6c 75 65 3a 7b 6c 69 6e 65 6e 6f os@value:{lineno
4c60: 40 76 61 6c 75 65 3a 31 37 2c 20 63 6f 6c 75 6d @value:17, colum
4c70: 6e 40 76 61 6c 75 65 3a 35 2c 20 66 69 6c 65 6e n@value:5, filen
4c80: 61 6d 65 40 76 61 6c 75 65 3a 3c 52 45 50 4c 3e ame@value:<REPL>
4c90: 7d 2c 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 },..
4ca0: 20 20 20 20 20 20 69 73 40 76 61 6c 75 65 3a 61 is@value:a
4cb0: 70 70 2c 20 61 72 67 40 76 61 6c 75 65 3a 7b 2e pp, arg@value:{.
4cc0: 2e 2e 0d 0a 20 20 20 20 2f 66 73 74 40 76 61 6c .... /fst@val
4cd0: 75 65 3a 33 0d 0a 20 20 20 20 2f 7d 0d 0a 0d 0a ue:3.. /}....
4ce0: 20 20 69 74 73 20 63 6f 72 72 65 73 70 6f 6e 64 its correspond
4cf0: 69 6e 67 20 61 72 67 75 6d 65 6e 74 73 20 61 72 ing arguments ar
4d00: 65 20 65 76 61 6c 75 61 74 65 64 20 69 6e 20 74 e evaluated in t
4d10: 68 65 20 6c 61 79 65 72 20 61 6e 64 20 70 61 73 he layer and pas
4d20: 73 65 64 20 74 6f 20 69 74 2e 0d 0a 20 20 49 66 sed to it... If
4d30: 20 79 6f 75 20 73 70 65 63 69 66 79 20 6d 75 6c you specify mul
4d40: 74 69 70 6c 65 20 6c 61 79 65 72 73 2c 20 74 68 tiple layers, th
4d50: 65 20 61 72 67 75 6d 65 6e 74 20 65 78 70 72 65 e argument expre
4d60: 73 73 69 6f 6e 20 69 73 20 72 75 6e 20 6d 75 6c ssion is run mul
4d70: 74 69 70 6c 65 20 74 69 6d 65 73 2e 0d 0a 20 20 tiple times...
4d80: 49 66 20 79 6f 75 20 64 6f 20 6e 6f 74 20 73 70 If you do not sp
4d90: 65 63 69 66 79 20 61 6e 79 20 6c 61 79 65 72 20 ecify any layer
4da0: 66 6f 72 20 61 20 70 61 72 61 6d 65 74 65 72 2c for a parameter,
4db0: 20 69 74 20 77 6f 72 6b 73 20 69 6e 20 74 68 65 it works in the
4dc0: 20 6e 65 75 74 72 61 6c 20 6c 61 79 65 72 2e 0d neutral layer..
4dd0: 0a 3c 2f 70 72 65 3e 0d 0a 3c 2f 64 64 3e 0d 0a .</pre>..</dd>..
4de0: 0d 0a 0d 0a 0d 0a 3c 73 63 72 69 70 74 3e 65 78 ......<script>ex
4df0: 70 6c 6f 72 65 72 2e 6f 75 74 6c 69 6e 65 2e 77 plorer.outline.w
4e00: 72 69 74 65 45 6e 61 62 6c 65 64 20 3d 20 74 72 riteEnabled = tr
4e10: 75 65 3b 3c 2f 73 63 72 69 70 74 3e 0d 0a 3c 64 ue;</script>..<d
4e20: 74 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 64 t><span class="d
4e30: 65 63 6c 22 3e 0d 0a 3c 73 70 61 6e 20 63 6c 61 ecl">..<span cla
4e40: 73 73 3d 22 63 75 72 72 73 79 6d 62 6f 6c 22 3e ss="currsymbol">
4e50: 4d 61 63 72 6f 20 4c 61 79 65 72 73 3c 2f 73 70 Macro Layers</sp
4e60: 61 6e 3e 0d 0a 3c 73 63 72 69 70 74 3e 65 78 70 an>..<script>exp
4e70: 6c 6f 72 65 72 2e 6f 75 74 6c 69 6e 65 2e 61 64 lorer.outline.ad
4e80: 64 44 65 63 6c 28 27 4d 61 63 72 6f 20 4c 61 79 dDecl('Macro Lay
4e90: 65 72 73 27 29 3b 3c 2f 73 63 72 69 70 74 3e 0d ers');</script>.
4ea0: 0a 0d 0a 3c 2f 73 70 61 6e 3e 3c 2f 64 74 3e 0d ...</span></dt>.
4eb0: 0a 3c 73 63 72 69 70 74 3e 65 78 70 6c 6f 72 65 .<script>explore
4ec0: 72 2e 6f 75 74 6c 69 6e 65 2e 77 72 69 74 65 45 r.outline.writeE
4ed0: 6e 61 62 6c 65 64 20 3d 20 66 61 6c 73 65 3b 3c nabled = false;<
4ee0: 2f 73 63 72 69 70 74 3e 0d 0a 0d 0a 20 3c 64 64 /script>.... <dd
4ef0: 3e 3c 70 3e 0d 0a 50 6f 6c 65 6d 79 20 e8 a8 80 ><p>..Polemy ...
4f00: e8 aa 9e e7 b5 84 e3 81 bf e8 be bc e3 81 bf e3 ................
4f10: 81 ae e3 83 ac e3 82 a4 e3 83 a4 e3 81 af 20 3c .............. <
4f20: 63 6f 64 65 3e 40 76 61 6c 75 65 3c 2f 63 6f 64 code>@value</cod
4f30: 65 3e 20 e3 81 a8 20 3c 63 6f 64 65 3e 40 6d 61 e> ... <code>@ma
4f40: 63 72 6f 3c 2f 63 6f 64 65 3e 20 e3 81 ae e4 ba cro</code> .....
4f50: 8c e3 81 a4 e3 81 a7 e3 81 99 e3 80 82 0d 0a ef ................
4f60: bc 88 e5 86 85 e9 83 a8 e7 9a 84 e3 81 ab e3 81 ................
4f70: af e3 82 82 e3 81 86 e3 81 84 e3 81 8f e3 81 a4 ................
4f80: e3 81 8b e3 81 82 e3 82 8a e3 81 be e3 81 99 e3 ................
4f90: 81 8c e3 80 81 e3 83 a6 e3 83 bc e3 82 b6 e3 81 ................
4fa0: 8b e3 82 89 e7 9b b4 e6 8e a5 e3 81 af e4 bd bf ................
4fb0: e3 81 88 e3 81 be e3 81 9b e3 82 93 e3 80 82 ef ................
4fc0: bc 89 0d 0a 3c 63 6f 64 65 3e 40 76 61 6c 75 65 ....<code>@value
4fd0: 3c 2f 63 6f 64 65 3e 20 e3 81 af e3 80 81 e3 80 </code> ........
4fe0: 8c e6 99 ae e9 80 9a e3 81 ab e3 80 8d e6 99 ae ................
4ff0: e9 80 9a e3 81 ae e3 82 bb e3 83 9e e3 83 b3 e3 ................
5000: 83 86 e3 82 a3 e3 82 af e3 82 b9 e3 81 a7 e3 83 ................
5010: 97 e3 83 ad e3 82 b0 e3 83 a9 e3 83 a0 e3 82 92 ................
5020: e5 ae 9f e8 a1 8c e3 81 99 e3 82 8b e3 83 ac e3 ................
5030: 82 a4 e3 83 a4 e3 81 a7 e3 81 97 e3 81 9f e3 80 ................
5040: 82 0d 0a 3c 63 6f 64 65 3e 40 6d 61 63 72 6f 3c ...<code>@macro<
5050: 2f 63 6f 64 65 3e 20 e3 81 af e3 80 81 e5 ae 9f /code> .........
5060: e3 81 af e3 80 81 3c 63 6f 64 65 3e 40 76 61 6c ......<code>@val
5070: 75 65 3c 2f 63 6f 64 65 3e 20 e3 82 88 e3 82 8a ue</code> ......
5080: e3 82 82 e5 89 8d e3 81 ab e5 ae 9f e8 a1 8c e3 ................
5090: 81 95 e3 82 8c e3 82 8b e3 83 ac e3 82 a4 e3 83 ................
50a0: a4 e3 81 a7 e3 80 81 0d 0a e3 80 8c e3 83 97 e3 ................
50b0: 83 ad e3 82 b0 e3 83 a9 e3 83 a0 e3 82 92 e5 ae ................
50c0: 9f e8 a1 8c e3 81 99 e3 82 8b e3 81 a8 e3 81 9d ................
50d0: e3 81 ae e6 a7 8b e6 96 87 e6 9c a8 e3 82 92 e8 ................
50e0: bf 94 e3 81 99 e3 80 8d e3 81 a8 e3 81 84 e3 81 ................
50f0: 86 e3 82 bb e3 83 9e e3 83 b3 e3 83 86 e3 82 a3 ................
5100: e3 82 af e3 82 b9 e3 81 a7 e5 8b 95 e3 81 8d e3 ................
5110: 81 be e3 81 99 e3 80 82 0d 0a 3c 2f 70 3e 0d 0a ..........</p>..
5120: 3c 70 72 65 3e 0d 0a 20 20 20 20 28 e3 81 93 e3 <pre>.. (....
5130: 81 93 e3 81 ab e4 be 8b 29 0d 0a 3c 2f 70 72 65 ........)..</pre
5140: 3e 0d 0a 3c 70 3e 0d 0a e5 8b 95 e3 81 8d e3 81 >..<p>..........
5150: a8 e3 81 97 e3 81 a6 e3 81 af e3 81 93 e3 81 86 ................
5160: e3 81 a7 e3 81 99 e3 80 82 0d 0a 3c 2f 70 3e 0d ...........</p>.
5170: 0a 3c 6f 6c 3e 0d 0a 3c 6c 69 3e e9 96 a2 e6 95 .<ol>..<li>.....
5180: b0 e5 91 bc e3 81 b3 e5 87 ba e3 81 97 e6 99 82 ................
5190: ef bc 88 e3 81 a8 e3 83 88 e3 83 83 e3 83 97 e3 ................
51a0: 83 ac e3 83 99 e3 83 ab e7 92 b0 e5 a2 83 e3 81 ................
51b0: ae e5 ae 9f e8 a1 8c e9 96 8b e5 a7 8b e6 99 82 ................
51c0: ef bc 89 e3 81 ab e3 80 81 0d 0a 09 e3 81 be e3 ................
51d0: 81 9a e3 80 81 3c 63 6f 64 65 3e 40 6d 61 63 72 .....<code>@macr
51e0: 6f 3c 2f 63 6f 64 65 3e 20 e3 83 ac e3 82 a4 e3 o</code> .......
51f0: 83 a4 e3 81 a7 e3 82 b3 e3 83 bc e3 83 89 e3 82 ................
5200: 92 e5 ae 9f e8 a1 8c e3 80 82 3c 2f 6c 69 3e 0d ..........</li>.
5210: 0a 3c 6c 69 3e e8 bf 94 e3 81 a3 e3 81 a6 e3 81 .<li>...........
5220: 8d e3 81 9f e6 a7 8b e6 96 87 e6 9c a8 e3 82 92 ................
5230: e3 80 81 3c 63 6f 64 65 3e 40 76 61 6c 75 65 3c ...<code>@value<
5240: 2f 63 6f 64 65 3e 20 e3 83 ac e3 82 a4 e3 83 a4 /code> .........
5250: e3 80 81 0d 0a 09 e3 81 be e3 81 9f e3 81 af e3 ................
5260: 81 9d e3 81 ae e9 96 a2 e6 95 b0 e3 82 92 e5 91 ................
5270: bc e3 81 b3 e5 87 ba e3 81 97 e3 81 9f e3 81 a8 ................
5280: e3 81 8d e3 81 ae e3 83 ac e3 82 a4 e3 83 a4 e3 ................
5290: 81 a7 e5 ae 9f e8 a1 8c e3 80 82 3c 2f 6c 69 3e ...........</li>
52a0: 0d 0a 3c 2f 6f 6c 3e 0d 0a 3c 70 3e 0d 0a 3c 63 ..</ol>..<p>..<c
52b0: 6f 64 65 3e 40 6d 61 63 72 6f 3c 2f 63 6f 64 65 ode>@macro</code
52c0: 3e 20 e3 83 ac e3 82 a4 e3 83 a4 e3 82 82 e6 89 > ..............
52d0: 80 e8 a9 ae e3 81 9f e3 81 a0 e3 81 ae e3 83 ac ................
52e0: e3 82 a4 e3 83 a4 e3 81 a7 e3 81 99 e3 81 ae e3 ................
52f0: 81 a7 e3 80 81 0d 0a e4 b8 8a e3 81 a7 e8 aa ac ................
5300: e6 98 8e e3 81 97 e3 81 9f e6 96 b9 e6 b3 95 e3 ................
5310: 81 a7 20 3c 63 6f 64 65 3e 40 6d 61 63 72 6f 3c .. <code>@macro<
5320: 2f 63 6f 64 65 3e 20 e3 83 ac e3 82 a4 e3 83 a4 /code> .........
5330: e3 81 ab e9 96 a2 e6 95 b0 e3 81 aa e3 81 a9 e3 ................
5340: 82 92 e7 99 bb e9 8c b2 e3 81 97 e3 81 a6 e3 81 ................
5350: 8a e3 81 8f e3 81 93 e3 81 a8 e3 81 a7 e3 80 81 ................
5360: 0d 0a e6 a7 8b e6 96 87 e6 9c a8 e3 81 ae e7 94 ................
5370: 9f e6 88 90 e3 82 92 e3 81 84 e3 81 98 e3 82 8b ................
5380: e3 81 93 e3 81 a8 e3 81 8c e5 8f af e8 83 bd e3 ................
5390: 81 a7 e3 81 99 e3 80 82 e3 81 be e3 81 95 e3 81 ................
53a0: ab e3 83 9e e3 82 af e3 83 ad e3 80 82 0d 0a 3c ...............<
53b0: 2f 70 3e 0d 0a 0d 0a 0d 0a 3c 73 63 72 69 70 74 /p>......<script
53c0: 3e 65 78 70 6c 6f 72 65 72 2e 6f 75 74 6c 69 6e >explorer.outlin
53d0: 65 2e 69 6e 63 53 79 6d 62 6f 6c 4c 65 76 65 6c e.incSymbolLevel
53e0: 28 29 3b 3c 2f 73 63 72 69 70 74 3e 0d 0a 3c 64 ();</script>..<d
53f0: 6c 3e 0d 0a 3c 73 63 72 69 70 74 3e 65 78 70 6c l>..<script>expl
5400: 6f 72 65 72 2e 6f 75 74 6c 69 6e 65 2e 77 72 69 orer.outline.wri
5410: 74 65 45 6e 61 62 6c 65 64 20 3d 20 74 72 75 65 teEnabled = true
5420: 3b 3c 2f 73 63 72 69 70 74 3e 0d 0a 3c 64 74 3e ;</script>..<dt>
5430: 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 64 65 63 <span class="dec
5440: 6c 22 3e 0d 0a 3c 73 70 61 6e 20 63 6c 61 73 73 l">..<span class
5450: 3d 22 63 75 72 72 73 79 6d 62 6f 6c 22 3e e6 a6 ="currsymbol">..
5460: 82 e8 a6 81 3c 2f 73 70 61 6e 3e 0d 0a 3c 73 63 ....</span>..<sc
5470: 72 69 70 74 3e 65 78 70 6c 6f 72 65 72 2e 6f 75 ript>explorer.ou
5480: 74 6c 69 6e 65 2e 61 64 64 44 65 63 6c 28 27 e6 tline.addDecl('.
5490: a6 82 e8 a6 81 27 29 3b 3c 2f 73 63 72 69 70 74 .....');</script
54a0: 3e 0d 0a 0d 0a 3c 2f 73 70 61 6e 3e 3c 2f 64 74 >....</span></dt
54b0: 3e 0d 0a 3c 73 63 72 69 70 74 3e 65 78 70 6c 6f >..<script>explo
54c0: 72 65 72 2e 6f 75 74 6c 69 6e 65 2e 77 72 69 74 rer.outline.writ
54d0: 65 45 6e 61 62 6c 65 64 20 3d 20 66 61 6c 73 65 eEnabled = false
54e0: 3b 3c 2f 73 63 72 69 70 74 3e 0d 0a 0d 0a 20 3c ;</script>.... <
54f0: 64 64 3e 3c 70 3e 0d 0a 73 61 6d 70 6c 65 73 2f dd><p>..samples/
5500: 6d 61 63 72 6f 2e 70 6d 79 20 e3 81 ab e3 81 84 macro.pmy ......
5510: e3 81 8f e3 81 a4 e3 81 8b e4 bd bf e3 81 84 e6 ................
5520: 96 b9 e3 82 b5 e3 83 b3 e3 83 97 e3 83 ab e3 81 ................
5530: 8c e7 bd ae e3 81 84 e3 81 a6 e3 81 82 e3 82 8a ................
5540: e3 81 be e3 81 99 e3 81 ae e3 81 a7 e3 80 81 e8 ................
5550: a9 b3 e3 81 97 e3 81 8f e3 81 af e3 81 9d e3 81 ................
5560: a1 e3 82 89 e3 82 92 e3 81 a9 e3 81 86 e3 81 9e ................
5570: e3 80 82 0d 0a 3c 2f 70 3e 0d 0a 3c 70 72 65 3e .....</p>..<pre>
5580: 0d 0a 20 20 20 20 26 67 74 3b 26 67 74 3b 20 40 .. >> @
5590: 6d 61 63 72 6f 28 20 74 77 69 63 65 28 70 72 69 macro( twice(pri
55a0: 6e 74 28 22 48 65 6c 6c 6f 22 29 29 20 29 0d 0a nt("Hello")) )..
55b0: 20 20 20 20 7b 0d 0a 20 20 20 20 20 20 70 6f 73 {.. pos
55c0: 3a 20 7b 6c 69 6e 65 6e 6f 3a 31 2c 20 63 6f 6c : {lineno:1, col
55d0: 75 6d 6e 3a 39 2c 20 66 69 6c 65 6e 61 6d 65 3a umn:9, filename:
55e0: 3c 52 45 50 4c 3e 7d 2c 0d 0a 20 20 20 20 20 61 <REPL>},.. a
55f0: 72 67 73 3a 20 5b 20 7b 20 70 6f 73 3a 20 7b 6c rgs: [ { pos: {l
5600: 69 6e 65 6e 6f 3a 31 2c 20 63 6f 6c 75 6d 6e 3a ineno:1, column:
5610: 31 35 2c 20 66 69 6c 65 6e 61 6d 65 3a 3c 52 45 15, filename:<RE
5620: 50 4c 3e 7d 2c 0d 0a 20 20 20 20 20 20 20 20 20 PL>},..
5630: 20 20 20 20 20 61 72 67 73 3a 20 5b 7b 70 6f 73 args: [{pos
5640: 3a 7b 6c 69 6e 65 6e 6f 3a 31 2c 20 63 6f 6c 75 :{lineno:1, colu
5650: 6d 6e 3a 32 31 2c 20 66 69 6c 65 6e 61 6d 65 3a mn:21, filename:
5660: 3c 52 45 50 4c 3e 7d 2c 0d 0a 20 20 20 20 20 20 <REPL>},..
5670: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
5680: 20 69 73 3a 53 74 72 2c 0d 0a 20 20 20 20 20 20 is:Str,..
5690: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 64 d
56a0: 61 74 61 3a 48 65 6c 6c 6f 7d 5d 2c 0d 0a 20 20 ata:Hello}],..
56b0: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 69 73 is
56c0: 3a 20 41 70 70 2c 0d 0a 20 20 20 20 20 20 20 20 : App,..
56d0: 20 20 20 20 20 20 20 66 75 6e 3a 20 7b 70 6f 73 fun: {pos
56e0: 3a 7b 6c 69 6e 65 6e 6f 3a 31 2c 20 63 6f 6c 75 :{lineno:1, colu
56f0: 6d 6e 3a 31 35 2c 20 66 69 6c 65 6e 61 6d 65 3a mn:15, filename:
5700: 3c 52 45 50 4c 3e 7d 2c 20 69 73 3a 56 61 72 2c <REPL>}, is:Var,
5710: 20 6e 61 6d 65 3a 70 72 69 6e 74 7d 7d 0d 0a 20 name:print}}..
5720: 20 20 20 20 20 20 20 20 20 20 5d 2c 0d 0a 20 20 ],..
5730: 20 20 20 20 20 69 73 3a 20 41 70 70 2c 0d 0a 20 is: App,..
5740: 20 20 20 20 20 66 75 6e 3a 20 7b 70 6f 73 3a 7b fun: {pos:{
5750: 6c 69 6e 65 6e 6f 3a 31 2c 20 63 6f 6c 75 6d 6e lineno:1, column
5760: 3a 39 2c 20 66 69 6c 65 6e 61 6d 65 3a 3c 52 45 :9, filename:<RE
5770: 50 4c 3e 7d 2c 20 69 73 3a 56 61 72 2c 20 6e 61 PL>}, is:Var, na
5780: 6d 65 3a 74 77 69 63 65 7d 0d 0a 20 20 20 20 7d me:twice}.. }
5790: 0d 0a 3c 2f 70 72 65 3e 0d 0a 3c 70 3e 0d 0a e8 ..</pre>..<p>...
57a0: a9 b3 e7 b4 b0 e3 81 af e6 b0 97 e3 81 ab e3 81 ................
57b0: 97 e3 81 aa e3 81 8f e3 81 a6 e6 a7 8b e3 81 84 ................
57c0: e3 81 be e3 81 9b e3 82 93 e3 81 8c e3 80 81 e3 ................
57d0: 81 a8 e3 81 ab e3 81 8b e3 81 8f e3 80 81 3c 74 ..............<t
57e0: 74 3e 40 6d 61 63 72 6f 3c 2f 74 74 3e 20 e3 83 t>@macro</tt> ..
57f0: ac e3 82 a4 e3 83 a4 e3 81 a7 e3 81 af e3 80 81 ................
5800: 0d 0a e5 9f ba e6 9c ac e7 9a 84 e3 81 ab e3 81 ................
5810: af e3 80 81 e3 82 b3 e3 83 bc e3 83 89 e3 82 92 ................
5820: e5 ae 9f e8 a1 8c e3 81 99 e3 82 8b e3 81 a8 e3 ................
5830: 81 9d e3 81 ae e3 82 b3 e3 83 bc e3 83 89 e3 81 ................
5840: ae e6 a7 8b e6 96 87 e6 9c a8 e3 81 8c e3 81 a7 ................
5850: e3 81 a6 e3 81 8d e3 81 be e3 81 99 e3 80 82 0d ................
5860: 0a e3 81 93 e3 81 ae e6 8c 99 e5 8b 95 e3 81 af ................
5870: 20 3c 74 74 3e 40 6d 61 63 72 6f 3c 2f 74 74 3e <tt>@macro</tt>
5880: 20 e3 83 ac e3 82 a4 e3 83 a4 e3 81 ae e5 a4 89 ...............
5890: e6 95 b0 e3 82 92 e3 82 bb e3 83 83 e3 83 88 e3 ................
58a0: 81 99 e3 82 8b e3 81 93 e3 81 a8 e3 81 a7 e3 80 ................
58b0: 81 e3 82 ab e3 82 b9 e3 82 bf e3 83 9e e3 82 a4 ................
58c0: e3 82 ba e3 81 a7 e3 81 8d e3 81 be e3 81 99 e3 ................
58d0: 80 82 0d 0a 3c 2f 70 3e 0d 0a 3c 70 72 65 3e 0d ....</p>..<pre>.
58e0: 0a 20 20 20 20 26 67 74 3b 26 67 74 3b 20 40 6d . >> @m
58f0: 61 63 72 6f 20 74 77 69 63 65 28 78 29 20 7b 20 acro twice(x) {
5900: 78 3b 20 78 20 7d 20 69 6e 20 74 77 69 63 65 28 x; x } in twice(
5910: 70 72 69 6e 74 28 22 48 65 6c 6c 6f 22 29 29 0d print("Hello")).
5920: 0a 20 20 20 20 48 65 6c 6c 6f 0d 0a 20 20 20 20 . Hello..
5930: 48 65 6c 6c 6f 0d 0a 20 20 20 20 48 65 6c 6c 6f Hello.. Hello
5940: 0d 0a 3c 2f 70 72 65 3e 0d 0a 3c 70 3e 0d 0a ef ..</pre>..<p>...
5950: bc 88 ef bc 93 e5 9b 9e e5 87 ba e5 8a 9b e3 81 ................
5960: 95 e3 82 8c e3 81 a6 e3 81 be e3 81 99 e3 81 8c ................
5970: e3 80 81 ef bc 93 e5 80 8b e7 9b ae e3 81 af 20 ...............
5980: 3c 74 74 3e 70 72 69 6e 74 28 78 29 3c 2f 74 74 <tt>print(x)</tt
5990: 3e 20 e3 81 ae e8 bf 94 e5 80 a4 e3 81 af 20 3c > ............ <
59a0: 74 74 3e 78 3c 2f 74 74 3e 20 e3 81 aa e3 81 ae tt>x</tt> ......
59b0: e3 81 a7 e3 80 81 0d 0a e3 81 9d e3 82 8c e3 81 ................
59c0: 8c 52 45 50 4c e3 81 ab e3 82 88 e3 81 a3 e3 81 .REPL...........
59d0: a6 e5 8d b0 e5 ad 97 e3 81 95 e3 82 8c e3 81 a6 ................
59e0: e3 81 84 e3 82 8b e3 81 a0 e3 81 91 e3 81 a7 e3 ................
59f0: 81 99 e3 80 82 ef bc 89 0d 0a 3c 74 74 3e 40 6d ..........<tt>@m
5a00: 61 63 72 6f 3c 2f 74 74 3e 20 e3 83 ac e3 82 a4 acro</tt> ......
5a10: e3 83 a4 e3 81 a7 20 3c 74 74 3e 69 6e 3c 2f 74 ...... <tt>in</t
5a20: 74 3e 20 e4 bb a5 e9 99 8d e3 82 92 e5 ae 9f e8 t> .............
5a30: a1 8c e3 81 99 e3 82 8b e3 81 a8 e3 80 81 3c 74 ..............<t
5a40: 74 3e 70 72 69 6e 74 28 22 48 65 6c 6c 6f 22 29 t>print("Hello")
5a50: 3c 2f 74 74 3e 20 e3 81 a8 e3 81 84 e3 81 86 e5 </tt> ..........
5a60: bc 8f e3 82 92 e8 a1 a8 e3 81 99 e6 a7 8b e6 96 ................
5a70: 87 e6 9c a8 e3 81 8c e4 bd 9c e3 82 89 e3 82 8c ................
5a80: e3 80 81 0d 0a e3 81 9d e3 82 8c e3 81 8c 20 3c .............. <
5a90: 74 74 3e 74 77 69 63 65 3c 2f 74 74 3e 20 e9 96 tt>twice</tt> ..
5aa0: a2 e6 95 b0 e3 81 ab e6 b8 a1 e3 81 95 e3 82 8c ................
5ab0: e3 81 be e3 81 99 e3 80 82 3c 74 74 3e 74 77 69 .........<tt>twi
5ac0: 63 65 3c 2f 74 74 3e 20 e3 81 ae e4 b8 ad e8 ba ce</tt> ........
5ad0: ab e3 82 82 20 3c 74 74 3e 40 6d 61 63 72 6f 3c .... <tt>@macro<
5ae0: 2f 74 74 3e 20 e3 83 ac e3 82 a4 e3 83 a4 e3 81 /tt> ...........
5af0: a7 e5 ae 9f e8 a1 8c e3 81 95 e3 82 8c e3 82 8b ................
5b00: e3 81 ae e3 81 a7 e3 80 81 0d 0a e6 a7 8b e6 96 ................
5b10: 87 e6 9c a8 e3 82 92 e4 bd 9c e3 82 8d e3 81 86 ................
5b20: e3 81 a8 e3 81 97 e3 81 be e3 81 99 e3 81 8c e3 ................
5b30: 80 81 e5 a4 89 e6 95 b0 20 3c 74 74 3e 78 3c 2f ........ <tt>x</
5b40: 74 74 3e 20 e3 81 ab e3 81 af 20 3c 74 74 3e 40 tt> ...... <tt>@
5b50: 6d 61 63 72 6f 3c 2f 74 74 3e 20 e3 83 ac e3 82 macro</tt> .....
5b60: a4 e3 83 a4 e3 81 a7 e5 80 a4 e3 81 8c e5 85 a5 ................
5b70: e3 81 a3 e3 81 a6 e3 81 84 e3 82 8b e3 81 ae e3 ................
5b80: 81 a7 e3 80 81 0d 0a e3 81 9d e3 81 ae e5 80 a4 ................
5b90: e3 82 92 e8 aa ad e3 81 bf e5 8f 96 e3 81 a3 e3 ................
5ba0: 81 a6 e6 a7 8b e6 96 87 e6 9c a8 e3 82 92 e4 bd ................
5bb0: 9c e6 88 90 e3 81 97 e3 81 be e3 81 99 e3 80 82 ................
5bc0: 0d 0a e7 b5 90 e6 9e 9c e3 81 a8 e3 81 97 e3 81 ................
5bd0: a6 e3 80 81 ef bc 92 e5 9b 9e 20 3c 74 74 3e 70 .......... <tt>p
5be0: 72 69 6e 74 28 22 48 65 6c 6c 6f 22 29 3c 2f 74 rint("Hello")</t
5bf0: 74 3e 20 e3 81 99 e3 82 8b e6 a7 8b e6 96 87 e6 t> .............
5c00: 9c a8 e3 81 8c e4 bd 9c e3 82 89 e3 82 8c e3 81 ................
5c10: a6 e3 80 81 0d 0a e3 81 9d e3 81 ae e5 be 8c e3 ................
5c20: 81 a7 e3 80 81 e3 81 9d e3 82 8c e3 81 8c 20 3c .............. <
5c30: 74 74 3e 40 76 61 6c 75 65 3c 2f 74 74 3e 20 e3 tt>@value</tt> .
5c40: 83 ac e3 82 a4 e3 83 a4 e3 81 a7 e5 ae 9f e8 a1 ................
5c50: 8c e3 81 95 e3 82 8c e3 81 a6 e3 81 84 e3 81 be ................
5c60: e3 81 99 e3 80 82 0d 0a 3c 2f 70 3e 0d 0a 3c 70 ........</p>..<p
5c70: 3e 0d 0a e6 9c ac e5 bd 93 e3 81 ab e3 83 99 e3 >...............
5c80: 82 bf e3 81 ab e6 a7 8b e6 96 87 e6 9c a8 e3 82 ................
5c90: 92 e4 bd 9c e3 82 8b e3 81 a0 e3 81 91 e3 81 aa ................
5ca0: e3 81 ae e3 81 a7 e3 80 81 e5 a4 89 e6 95 b0 e5 ................
5cb0: 90 8d e3 81 ae e8 a1 9d e7 aa 81 e3 81 aa e3 81 ................
5cc0: a9 e3 81 aa e3 81 a9 e3 81 af e6 b0 97 e3 81 ab ................
5cd0: e3 81 97 e3 81 be e3 81 9b e3 82 93 e3 80 82 e3 ................
5ce0: 80 8c e8 a1 9b e7 94 9f e7 9a 84 e3 81 a7 e3 81 ................
5cf0: aa e3 81 84 e3 80 8d e3 83 9e e3 82 af e3 83 ad ................
5d00: e3 81 a7 e3 81 99 e3 80 82 0d 0a 3c 2f 70 3e 0d ...........</p>.
5d10: 0a 3c 70 72 65 3e 0d 0a 20 20 20 20 40 6d 61 63 .<pre>.. @mac
5d20: 72 6f 20 4c 65 74 49 74 42 65 28 78 2c 20 79 29 ro LetItBe(x, y)
5d30: 20 7b 20 76 61 72 20 3c 62 3e 69 74 3c 2f 62 3e { var <b>it</b>
5d40: 20 3d 20 78 3b 20 79 20 7d 3b 20 20 3c 66 6f 6e = x; y }; <fon
5d50: 74 20 63 6f 6c 6f 72 3d 67 72 65 65 6e 3e 23 20 t color=green>#
5d60: 79 20 e3 81 ae e4 b8 ad e3 81 a7 e5 a4 89 e6 95 y ..............
5d70: b0 20 69 74 20 e3 81 8c e4 bd bf e3 81 88 e3 82 . it ...........
5d80: 8b 3c 2f 66 6f 6e 74 3e 0d 0a 20 20 20 20 70 72 .</font>.. pr
5d90: 69 6e 74 28 20 4c 65 74 49 74 42 65 28 22 6d 79 int( LetItBe("my
5da0: 73 65 6c 66 22 2c 20 20 22 77 68 65 6e 20 49 20 self", "when I
5db0: 66 69 6e 64 20 22 20 7e 20 3c 62 3e 69 74 3c 2f find " ~ <b>it</
5dc0: 62 3e 20 7e 20 22 20 69 6e 20 74 69 6d 65 73 20 b> ~ " in times
5dd0: 6f 66 20 74 72 6f 75 62 6c 65 22 29 20 29 3b 0d of trouble") );.
5de0: 0a 3c 2f 70 72 65 3e 0d 0a 3c 70 3e 0d 0a e5 a4 .</pre>..<p>....
5df0: 89 e6 95 b0 e5 90 8d e3 81 ab e6 b0 97 e3 82 92 ................
5e00: e3 81 a4 e3 81 91 e3 82 8b e3 81 ab e3 81 af e3 ................
5e10: 80 81 e7 b5 84 e3 81 bf e8 be bc e3 81 bf e9 96 ................
5e20: a2 e6 95 b0 20 3c 74 74 3e 67 65 6e 73 79 6d 28 .... <tt>gensym(
5e30: 29 3c 2f 74 74 3e 20 e3 82 92 e4 bd bf e3 81 a3 )</tt> .........
5e40: e3 81 a6 e9 a0 91 e5 bc b5 e3 81 a3 e3 81 a6 e4 ................
5e50: b8 8b e3 81 95 e3 81 84 e3 80 82 0d 0a 3c 2f 70 .............</p
5e60: 3e 0d 0a 3c 2f 64 64 3e 0d 0a 0d 0a 3c 73 63 72 >..</dd>....<scr
5e70: 69 70 74 3e 65 78 70 6c 6f 72 65 72 2e 6f 75 74 ipt>explorer.out
5e80: 6c 69 6e 65 2e 77 72 69 74 65 45 6e 61 62 6c 65 line.writeEnable
5e90: 64 20 3d 20 74 72 75 65 3b 3c 2f 73 63 72 69 70 d = true;</scrip
5ea0: 74 3e 0d 0a 3c 64 74 3e 3c 73 70 61 6e 20 63 6c t>..<dt><span cl
5eb0: 61 73 73 3d 22 64 65 63 6c 22 3e 0d 0a 3c 73 70 ass="decl">..<sp
5ec0: 61 6e 20 63 6c 61 73 73 3d 22 63 75 72 72 73 79 an class="currsy
5ed0: 6d 62 6f 6c 22 3e e3 83 ac e3 82 a4 e3 83 a4 e5 mbol">..........
5ee0: 88 87 e3 82 8a e6 9b bf e3 81 88 3c 2f 73 70 61 ...........</spa
5ef0: 6e 3e 0d 0a 3c 73 63 72 69 70 74 3e 65 78 70 6c n>..<script>expl
5f00: 6f 72 65 72 2e 6f 75 74 6c 69 6e 65 2e 61 64 64 orer.outline.add
5f10: 44 65 63 6c 28 27 e3 83 ac e3 82 a4 e3 83 a4 e5 Decl('..........
5f20: 88 87 e3 82 8a e6 9b bf e3 81 88 27 29 3b 3c 2f ...........');</
5f30: 73 63 72 69 70 74 3e 0d 0a 0d 0a 3c 2f 73 70 61 script>....</spa
5f40: 6e 3e 3c 2f 64 74 3e 0d 0a 3c 73 63 72 69 70 74 n></dt>..<script
5f50: 3e 65 78 70 6c 6f 72 65 72 2e 6f 75 74 6c 69 6e >explorer.outlin
5f60: 65 2e 77 72 69 74 65 45 6e 61 62 6c 65 64 20 3d e.writeEnabled =
5f70: 20 66 61 6c 73 65 3b 3c 2f 73 63 72 69 70 74 3e false;</script>
5f80: 0d 0a 0d 0a 20 3c 64 64 3e 3c 70 3e 0d 0a e4 bb .... <dd><p>....
5f90: 96 e3 81 ae e3 83 ac e3 82 a4 e3 83 a4 e5 90 8c ................
5fa0: e6 a7 98 e3 80 81 3c 74 74 3e 40 6d 61 63 72 6f ......<tt>@macro
5fb0: 3c 2f 74 74 3e 20 e3 83 ac e3 82 a4 e3 83 a4 e3 </tt> ..........
5fc0: 82 92 e5 ae 9f e8 a1 8c e4 b8 ad e3 81 ab 20 3c .............. <
5fd0: 74 74 3e 40 6c 61 79 65 72 28 20 2e 2e 2e 20 29 tt>@layer( ... )
5fe0: 3c 2f 74 74 3e 20 e6 a7 8b e6 96 87 e3 82 92 e4 </tt> ..........
5ff0: bd bf e3 81 86 e3 81 93 e3 81 a8 e3 81 a7 e3 80 ................
6000: 81 0d 0a e5 88 a5 e3 81 ae e3 83 ac e3 82 a4 e3 ................
6010: 83 a4 e3 81 a7 e3 82 b3 e3 83 bc e3 83 89 e3 82 ................
6020: 92 e5 8b 95 e3 81 8b e3 81 99 e3 81 93 e3 81 a8 ................
6030: e3 82 82 e3 81 a7 e3 81 8d e3 81 be e3 81 99 e3 ................
6040: 80 82 e3 82 88 e3 81 8f e4 bd bf e3 81 86 e4 be ................
6050: 8b e3 81 af e3 80 81 3c 74 74 3e 40 76 61 6c 75 .......<tt>@valu
6060: 65 3c 2f 74 74 3e 0d 0a e3 83 ac e3 82 a4 e3 83 e</tt>..........
6070: a4 e3 81 ab e7 a7 bb e3 82 8b e3 81 93 e3 81 a8 ................
6080: e3 81 a7 e6 a7 8b e6 96 87 e6 9c a8 e3 82 92 e6 ................
6090: 99 ae e9 80 9a e3 81 ab e8 a8 88 e7 ae 97 e3 81 ................
60a0: 97 e3 81 a6 e8 89 b2 e3 80 85 e3 83 97 e3 83 ad ................
60b0: e3 82 b0 e3 83 a9 e3 83 a0 e7 9a 84 e3 81 ab e3 ................
60c0: 81 84 e3 81 98 e3 82 8b e7 94 a8 e9 80 94 e3 81 ................
60d0: a7 e3 81 99 e3 80 82 0d 0a 3c 2f 70 3e 0d 0a 3c .........</p>..<
60e0: 70 72 65 3e 0d 0a 20 20 20 20 40 6d 61 63 72 6f pre>.. @macro
60f0: 20 72 65 76 65 72 73 65 41 72 67 73 28 65 29 20 reverseArgs(e)
6100: 7b 3c 62 3e 40 76 61 6c 75 65 3c 2f 62 3e 28 0d {<b>@value</b>(.
6110: 0a 20 20 20 20 20 20 20 20 64 65 66 20 72 65 76 . def rev
6120: 28 78 73 2c 20 61 63 63 29 20 7b 0d 0a 20 20 20 (xs, acc) {..
6130: 20 20 20 20 20 20 20 63 61 73 65 20 78 73 20 77 case xs w
6140: 68 65 6e 20 7b 63 61 72 3a 78 2c 20 63 64 72 3a hen {car:x, cdr:
6150: 78 73 7d 3a 20 72 65 76 28 78 73 2c 20 7b 63 61 xs}: rev(xs, {ca
6160: 72 3a 78 2c 20 63 64 72 3a 61 63 63 7d 29 20 77 r:x, cdr:acc}) w
6170: 68 65 6e 20 7b 7d 3a 20 61 63 63 0d 0a 20 20 20 hen {}: acc..
6180: 20 20 20 20 20 7d 3b 0d 0a 20 20 20 20 20 20 20 };..
6190: 20 63 61 73 65 20 40 6d 61 63 72 6f 28 65 29 0d case @macro(e).
61a0: 0a 20 20 20 20 20 20 20 20 20 20 77 68 65 6e 20 . when
61b0: 7b 69 73 3a 22 41 70 70 22 2c 20 66 75 6e 3a 66 {is:"App", fun:f
61c0: 2c 20 61 72 67 73 3a 61 73 7d 3a 20 7b 69 73 3a , args:as}: {is:
61d0: 22 41 70 70 22 2c 20 66 75 6e 3a 66 2c 20 61 72 "App", fun:f, ar
61e0: 67 73 3a 72 65 76 28 61 73 2c 7b 7d 29 7d 0d 0a gs:rev(as,{})}..
61f0: 20 20 20 20 20 20 20 20 20 20 77 68 65 6e 20 65 when e
6200: 3a 20 65 0d 0a 20 20 20 20 29 7d 3b 0d 0a 20 20 : e.. )};..
6210: 20 20 70 72 69 6e 74 28 20 72 65 76 65 72 73 65 print( reverse
6220: 41 72 67 73 28 31 2d 32 29 20 29 3b 20 3c 66 6f Args(1-2) ); <fo
6230: 6e 74 20 63 6f 6c 6f 72 3d 67 72 65 65 6e 3e 23 nt color=green>#
6240: 20 32 2d 31 20 3d 3d 20 31 3c 2f 66 6f 6e 74 3e 2-1 == 1</font>
6250: 0d 0a 3c 2f 70 72 65 3e 0d 0a 3c 70 3e 0d 0a 3c ..</pre>..<p>..<
6260: 74 74 3e 72 65 76 65 72 73 65 41 72 67 73 3c 2f tt>reverseArgs</
6270: 74 74 3e 20 e3 81 af e3 80 81 e9 96 a2 e6 95 b0 tt> ............
6280: e5 91 bc e3 81 b3 e5 87 ba e3 81 97 e3 81 ae e6 ................
6290: a7 8b e6 96 87 e6 9c a8 e3 81 ae e3 80 81 e5 bc ................
62a0: 95 e6 95 b0 e3 81 ae e9 a0 86 e7 95 aa e3 82 92 ................
62b0: e9 80 86 e8 bb a2 e3 81 99 e3 82 8b e9 96 a2 e6 ................
62c0: 95 b0 e3 81 a7 e3 81 99 e3 80 82 0d 0a 3c 74 74 .............<tt
62d0: 3e 40 6d 61 63 72 6f 28 65 29 3c 2f 74 74 3e 20 >@macro(e)</tt>
62e0: e3 81 ab e3 82 88 e3 81 a3 e3 81 a6 e3 83 9e e3 ................
62f0: 82 af e3 83 ad e3 83 ac e3 82 a4 e3 83 a4 e3 81 ................
6300: ab e3 82 bb e3 83 83 e3 83 88 e3 81 95 e3 82 8c ................
6310: e3 81 a6 e3 81 84 e3 82 8b e6 a7 8b e6 96 87 e6 ................
6320: 9c a8 e5 bc 95 e6 95 b0 e3 82 92 e5 8f 96 e3 82 ................
6330: 8a e5 87 ba e3 81 97 e3 80 81 0d 0a e3 81 9d e3 ................
6340: 82 8c e3 82 92 20 3c 74 74 3e 40 76 61 6c 75 65 ..... <tt>@value
6350: 3c 2f 74 74 3e 20 e3 83 ac e3 82 a4 e3 83 a4 e3 </tt> ..........
6360: 81 ab e3 82 88 e3 82 8b e6 99 ae e9 80 9a e3 81 ................
6370: ae e8 a8 88 e7 ae 97 e3 83 97 e3 83 ad e3 82 b0 ................
6380: e3 83 a9 e3 83 a0 e3 81 a7 e6 93 8d e4 bd 9c e3 ................
6390: 81 97 e3 81 a6 e3 81 84 e3 81 be e3 81 99 e3 80 ................
63a0: 82 0d 0a e8 a6 81 e3 81 af e3 80 81 3c 74 74 3e ............<tt>
63b0: 40 6d 61 63 72 6f 28 2e 2e 2e 29 3c 2f 74 74 3e @macro(...)</tt>
63c0: 20 e3 81 af e3 81 84 e3 82 8f e3 82 86 e3 82 8b ...............
63d0: e3 80 8c e6 ba 96 e3 82 af e3 82 aa e3 83 bc e3 ................
63e0: 83 88 20 28 71 75 61 73 69 71 75 6f 74 65 29 e3 .. (quasiquote).
63f0: 80 8d e3 80 81 0d 0a 3c 74 74 3e 40 76 61 6c 75 .......<tt>@valu
6400: 65 28 2e 2e 2e 29 3c 2f 74 74 3e 20 e3 81 af e3 e(...)</tt> ....
6410: 80 8c e9 80 86 e3 82 af e3 82 aa e3 83 bc e3 83 ................
6420: 88 20 28 75 6e 71 75 6f 74 65 29 e3 80 8d e3 81 . (unquote).....
6430: ab e8 bf 91 e3 81 84 e5 83 8d e3 81 8d e3 82 92 ................
6440: e3 81 97 e3 81 be e3 81 99 e3 80 82 0d 0a 3c 2f ..............</
6450: 70 3e 0d 0a 3c 70 3e 0d 0a 3c 74 74 3e 40 6c 61 p>..<p>..<tt>@la
6460: 79 65 72 28 2e 2e 2e 29 3c 2f 74 74 3e 20 e3 81 yer(...)</tt> ..
6470: a0 e3 81 91 e3 81 a7 e3 81 aa e3 81 8f e3 80 81 ................
6480: e9 96 a2 e6 95 b0 e3 81 ae e3 83 ac e3 82 a4 e3 ................
6490: 83 a4 e6 8c 87 e5 ae 9a e5 bc 95 e6 95 b0 e3 81 ................
64a0: aa e3 81 a9 e3 82 82 e5 90 8c e6 a7 98 e3 81 ab ................
64b0: e4 bd bf e3 81 86 e3 81 93 e3 81 a8 e3 81 8c e3 ................
64c0: 81 a7 e3 81 8d e3 82 8b e3 81 ae e3 81 a7 e3 80 ................
64d0: 81 0d 0a e4 b8 80 e9 83 a8 e3 81 ae e5 bc 95 e6 ................
64e0: 95 b0 e3 81 af 20 3c 74 74 3e 40 6d 61 63 72 6f ..... <tt>@macro
64f0: 3c 2f 74 74 3e e3 80 81 e4 b8 80 e9 83 a8 e3 81 </tt>...........
6500: ae e5 bc 95 e6 95 b0 e3 81 af 20 3c 74 74 3e 40 .......... <tt>@
6510: 76 61 6c 75 65 3c 2f 74 74 3e 20 e3 83 ac e3 82 value</tt> .....
6520: a4 e3 83 a4 e3 81 a7 e5 8f 97 e3 81 91 e5 8f 96 ................
6530: e3 82 8b e9 96 a2 e6 95 b0 e3 82 92 e6 9b b8 e3 ................
6540: 81 8f e3 81 aa e3 81 a9 e3 80 81 0d 0a e3 81 95 ................
6550: e3 82 89 e3 81 ab e8 89 b2 e3 80 85 e9 9d a2 e7 ................
6560: 99 bd e3 81 84 e3 81 93 e3 81 a8 e3 81 8c e5 8f ................
6570: af e8 83 bd e3 81 a7 e3 81 99 e3 80 82 0d 0a 3c ...............<
6580: 2f 70 3e 0d 0a 3c 2f 64 64 3e 0d 0a 0d 0a 3c 73 /p>..</dd>....<s
6590: 63 72 69 70 74 3e 65 78 70 6c 6f 72 65 72 2e 6f cript>explorer.o
65a0: 75 74 6c 69 6e 65 2e 77 72 69 74 65 45 6e 61 62 utline.writeEnab
65b0: 6c 65 64 20 3d 20 74 72 75 65 3b 3c 2f 73 63 72 led = true;</scr
65c0: 69 70 74 3e 0d 0a 3c 64 74 3e 3c 73 70 61 6e 20 ipt>..<dt><span
65d0: 63 6c 61 73 73 3d 22 64 65 63 6c 22 3e 0d 0a 3c class="decl">..<
65e0: 73 70 61 6e 20 63 6c 61 73 73 3d 22 63 75 72 72 span class="curr
65f0: 73 79 6d 62 6f 6c 22 3e e6 a7 8b e6 96 87 e6 9c symbol">........
6600: a8 e3 81 ae e6 a7 8b e9 80 a0 3c 2f 73 70 61 6e ..........</span
6610: 3e 0d 0a 3c 73 63 72 69 70 74 3e 65 78 70 6c 6f >..<script>explo
6620: 72 65 72 2e 6f 75 74 6c 69 6e 65 2e 61 64 64 44 rer.outline.addD
6630: 65 63 6c 28 27 e6 a7 8b e6 96 87 e6 9c a8 e3 81 ecl('...........
6640: ae e6 a7 8b e9 80 a0 27 29 3b 3c 2f 73 63 72 69 .......');</scri
6650: 70 74 3e 0d 0a 0d 0a 3c 2f 73 70 61 6e 3e 3c 2f pt>....</span></
6660: 64 74 3e 0d 0a 3c 73 63 72 69 70 74 3e 65 78 70 dt>..<script>exp
6670: 6c 6f 72 65 72 2e 6f 75 74 6c 69 6e 65 2e 77 72 lorer.outline.wr
6680: 69 74 65 45 6e 61 62 6c 65 64 20 3d 20 66 61 6c iteEnabled = fal
6690: 73 65 3b 3c 2f 73 63 72 69 70 74 3e 0d 0a 0d 0a se;</script>....
66a0: 20 3c 64 64 3e 3c 70 3e 0d 0a e6 a7 8b e6 96 87 <dd><p>........
66b0: e6 9c a8 e3 81 8c e3 81 a9 e3 81 ae e3 82 88 e3 ................
66c0: 81 86 e3 81 aa e3 83 86 e3 83 bc e3 83 96 e3 83 ................
66d0: ab e3 81 a7 e6 b8 a1 e3 81 95 e3 82 8c e3 81 a6 ................
66e0: e3 81 8f e3 82 8b e3 81 8b e3 81 ab e3 81 a4 e3 ................
66f0: 81 84 e3 81 a6 e3 81 af e3 80 81 e3 82 bd e3 83 ................
6700: bc e3 82 b9 e3 83 89 e3 82 ad e3 83 a5 e3 83 a1 ................
6710: e3 83 b3 e3 83 88 e3 81 ae 0d 0a 3c 61 20 68 72 ...........<a hr
6720: 65 66 3d 22 68 74 74 70 3a 2f 2f 77 77 77 2e 6b ef="http://www.k
6730: 6d 6f 6e 6f 73 2e 6e 65 74 2f 72 65 70 6f 73 2f monos.net/repos/
6740: 70 6f 6c 65 6d 79 2f 64 6f 63 2f 74 69 70 2f 64 polemy/doc/tip/d
6750: 6f 63 2f 61 73 74 2e 68 74 6d 6c 22 3e 70 6f 6c oc/ast.html">pol
6760: 65 6d 79 2e 61 73 74 3c 2f 61 3e 0d 0a e3 81 ae emy.ast</a>.....
6770: e3 83 9a e3 83 bc e3 82 b8 e3 82 92 e3 81 94 e8 ................
6780: a6 a7 e4 b8 8b e3 81 95 e3 81 84 e3 80 82 e4 be ................
6790: 8b e3 81 88 e3 81 b0 e5 a4 89 e6 95 b0 e5 90 8d ................
67a0: e3 82 92 e8 a1 a8 e3 81 99 20 3c 63 6f 64 65 3e ......... <code>
67b0: 56 61 72 3c 2f 63 6f 64 65 3e 20 e3 82 af e3 83 Var</code> .....
67c0: a9 e3 82 b9 e3 81 ab e3 81 af e3 80 81 0d 0a e7 ................
67d0: b6 99 e6 89 bf e3 81 ae e5 88 86 e3 82 82 e5 90 ................
67e0: 88 e3 82 8f e3 81 9b e3 81 a6 0d 0a 3c 74 74 3e ............<tt>
67f0: 3c 61 20 68 72 65 66 3d 22 68 74 74 70 3a 2f 2f <a href="http://
6800: 77 77 77 2e 6b 6d 6f 6e 6f 73 2e 6e 65 74 2f 72 www.kmonos.net/r
6810: 65 70 6f 73 2f 70 6f 6c 65 6d 79 2f 64 6f 63 2f epos/polemy/doc/
6820: 74 69 70 2f 64 6f 63 2f 66 61 69 6c 75 72 65 2e tip/doc/failure.
6830: 68 74 6d 6c 22 3e 4c 65 78 50 6f 73 69 74 69 6f html">LexPositio
6840: 6e 3c 2f 61 3e 20 70 6f 73 3b 3c 2f 74 74 3e 0d n</a> pos;</tt>.
6850: 0a e3 81 a8 20 3c 74 74 3e 73 74 72 69 6e 67 20 .... <tt>string
6860: 6e 61 6d 65 3b 3c 2f 74 74 3e 20 e3 81 ae ef bc name;</tt> .....
6870: 92 e3 81 a4 e3 81 ae e3 83 a1 e3 83 b3 e3 83 90 ................
6880: e3 81 8c e3 81 82 e3 82 8b e3 81 ae e3 81 a7 0d ................
6890: 0a 3c 2f 70 3e 0d 0a 3c 70 72 65 3e 0d 0a 20 20 .</p>..<pre>..
68a0: 20 20 7b 20 69 73 3a 20 20 20 22 56 61 72 22 2c { is: "Var",
68b0: 0d 0a 20 20 20 20 20 20 70 6f 73 3a 20 20 7b 66 .. pos: {f
68c0: 69 6c 65 6e 61 6d 65 3a 22 66 6f 6f 2e 70 6d 79 ilename:"foo.pmy
68d0: 22 2c 20 6c 69 6e 65 6e 6f 3a 31 32 33 2c 20 63 ", lineno:123, c
68e0: 6f 6c 75 6d 6e 3a 34 35 7d 2c 0d 0a 20 20 20 20 olumn:45},..
68f0: 20 20 6e 61 6d 65 3a 20 22 78 22 20 7d 0d 0a 3c name: "x" }..<
6900: 2f 70 72 65 3e 0d 0a 3c 70 3e 0d 0a e3 81 93 e3 /pre>..<p>......
6910: 82 93 e3 81 aa e6 84 9f e3 81 98 e3 81 ae e3 83 ................
6920: 86 e3 83 bc e3 83 96 e3 83 ab e3 81 ab e3 81 aa ................
6930: e3 82 8a e3 81 be e3 81 99 e3 80 82 0d 0a e3 82 ................
6940: af e3 83 a9 e3 82 b9 e5 90 8d e3 81 8c 20 3c 74 ............. <t
6950: 74 3e 69 73 3c 2f 74 74 3e 20 e3 83 95 e3 82 a3 t>is</tt> ......
6960: e3 83 bc e3 83 ab e3 83 89 e3 81 ab e3 80 81 e3 ................
6970: 83 a1 e3 83 b3 e3 83 90 e5 a4 89 e6 95 b0 e3 81 ................
6980: af e3 81 9d e3 81 ae e3 81 be e3 81 be e3 81 ae ................
6990: e5 90 8d e5 89 8d e3 81 a7 e5 85 a5 e3 82 8a e3 ................
69a0: 81 be e3 81 99 e3 80 82 0d 0a e9 85 8d e5 88 97 ................
69b0: e3 83 a1 e3 83 b3 e3 83 90 e3 81 af 20 63 6f 6e ............ con
69c0: 73 20 e3 83 aa e3 82 b9 e3 83 88 e3 81 ab e3 81 s ..............
69d0: aa e3 81 a3 e3 81 a6 e5 85 a5 e3 81 a3 e3 81 a6 ................
69e0: e3 81 8d e3 81 be e3 81 99 e3 80 82 0d 0a e8 87 ................
69f0: aa e5 88 86 e3 81 a7 e6 a7 8b e6 96 87 e6 9c a8 ................
6a00: e3 82 92 e4 bd 9c e3 82 8b e6 99 82 e3 81 af e3 ................
6a10: 80 81 3c 74 74 3e 70 6f 73 3c 2f 74 74 3e 20 e3 ..<tt>pos</tt> .
6a20: 83 95 e3 82 a3 e3 83 bc e3 83 ab e3 83 89 e3 81 ................
6a30: a0 e3 81 91 e3 81 af e7 9c 81 e7 95 a5 e3 81 97 ................
6a40: e3 81 a6 e3 82 82 e6 a7 8b e3 81 84 e3 81 be e3 ................
6a50: 81 9b e3 82 93 e3 80 82 0d 0a 3c 2f 70 3e 0d 0a ..........</p>..
6a60: 3c 2f 64 64 3e 0d 0a 0d 0a 3c 73 63 72 69 70 74 </dd>....<script
6a70: 3e 65 78 70 6c 6f 72 65 72 2e 6f 75 74 6c 69 6e >explorer.outlin
6a80: 65 2e 77 72 69 74 65 45 6e 61 62 6c 65 64 20 3d e.writeEnabled =
6a90: 20 74 72 75 65 3b 3c 2f 73 63 72 69 70 74 3e 0d true;</script>.
6aa0: 0a 3c 64 74 3e 3c 73 70 61 6e 20 63 6c 61 73 73 .<dt><span class
6ab0: 3d 22 64 65 63 6c 22 3e 0d 0a 3c 73 70 61 6e 20 ="decl">..<span
6ac0: 63 6c 61 73 73 3d 22 63 75 72 72 73 79 6d 62 6f class="currsymbo
6ad0: 6c 22 3e e5 be ae e5 a6 99 e3 81 aa e3 81 a8 e3 l">.............
6ae0: 81 93 e3 82 8d 3c 2f 73 70 61 6e 3e 0d 0a 3c 73 .....</span>..<s
6af0: 63 72 69 70 74 3e 65 78 70 6c 6f 72 65 72 2e 6f cript>explorer.o
6b00: 75 74 6c 69 6e 65 2e 61 64 64 44 65 63 6c 28 27 utline.addDecl('
6b10: e5 be ae e5 a6 99 e3 81 aa e3 81 a8 e3 81 93 e3 ................
6b20: 82 8d 27 29 3b 3c 2f 73 63 72 69 70 74 3e 0d 0a ..');</script>..
6b30: 0d 0a 3c 2f 73 70 61 6e 3e 3c 2f 64 74 3e 0d 0a ..</span></dt>..
6b40: 3c 73 63 72 69 70 74 3e 65 78 70 6c 6f 72 65 72 <script>explorer
6b50: 2e 6f 75 74 6c 69 6e 65 2e 77 72 69 74 65 45 6e .outline.writeEn
6b60: 61 62 6c 65 64 20 3d 20 66 61 6c 73 65 3b 3c 2f abled = false;</
6b70: 73 63 72 69 70 74 3e 0d 0a 0d 0a 20 3c 64 64 3e script>.... <dd>
6b80: 3c 70 3e 0d 0a e3 81 93 e3 81 93 e3 81 be e3 81 <p>.............
6b90: a7 e3 80 81 3c 74 74 3e 40 6d 61 63 72 6f 3c 2f ....<tt>@macro</
6ba0: 74 74 3e 20 e3 81 8c e6 9c ac e5 bd 93 e3 81 ab tt> ............
6bb0: e3 81 9f e3 81 a0 e3 81 ae ef bc 91 e3 83 ac e3 ................
6bc0: 82 a4 e3 83 a4 e3 81 a7 e3 81 82 e3 82 8b e3 81 ................
6bd0: 8b e3 81 ae e3 82 88 e3 81 86 e3 81 ab e8 aa ac ................
6be0: e6 98 8e e3 81 97 e3 81 a6 e3 81 8d e3 81 be e3 ................
6bf0: 81 97 e3 81 9f e3 81 8c e3 80 81 0d 0a e5 ae 9f ................
6c00: e3 81 af e3 81 a1 e3 82 87 e3 81 a3 e3 81 a8 e5 ................
6c10: b9 be e3 81 a4 e3 81 8b e3 81 ae e3 83 88 e3 83 ................
6c20: aa e3 83 83 e3 82 af e3 81 8c e6 bd 9c e3 82 93 ................
6c30: e3 81 a7 e3 81 84 e3 81 be e3 81 99 e3 80 82 0d ................
6c40: 0a 3c 2f 70 3e 0d 0a 3c 70 72 65 3e 0d 0a 20 20 .</p>..<pre>..
6c50: 20 20 26 67 74 3b 26 67 74 3b 20 40 6d 61 63 72 >> @macr
6c60: 6f 20 74 77 69 63 65 28 78 29 20 7b 78 3b 20 78 o twice(x) {x; x
6c70: 7d 20 69 6e 20 74 77 69 63 65 28 3c 62 3e 40 76 } in twice(<b>@v
6c80: 61 6c 75 65 3c 2f 62 3e 28 70 72 69 6e 74 28 22 alue</b>(print("
6c90: 48 65 6c 6c 6f 22 29 29 29 0d 0a 20 20 20 20 48 Hello"))).. H
6ca0: 65 6c 6c 6f 0d 0a 20 20 20 20 48 65 6c 6c 6f 0d ello.. Hello.
6cb0: 0a 20 20 20 20 48 65 6c 6c 6f 0d 0a 3c 2f 70 72 . Hello..</pr
6cc0: 65 3e 0d 0a 3c 70 3e 0d 0a e5 85 88 e3 81 bb e3 e>..<p>.........
6cd0: 81 a9 e3 81 ae e4 be 8b e3 81 ab 20 3c 74 74 3e ........... <tt>
6ce0: 40 76 61 6c 75 65 3c 2f 74 74 3e 20 e3 82 92 e5 @value</tt> ....
6cf0: a2 97 e3 82 84 e3 81 97 e3 81 9f e3 82 82 e3 81 ................
6d00: ae e3 81 a7 e3 81 99 e3 81 8c e3 80 81 e3 81 93 ................
6d10: e3 82 8c e3 81 a7 e3 82 82 e3 82 84 e3 81 af e3 ................
6d20: 82 8a e3 80 81 48 65 6c 6c 6f 0d 0a e3 81 8c ef .....Hello......
6d30: bc 92 e5 9b 9e 20 70 72 69 6e 74 20 e3 81 95 e3 ..... print ....
6d40: 82 8c e3 82 8b e3 82 88 e3 81 86 e3 81 ab e3 81 ................
6d50: aa e3 82 8a e3 81 be e3 81 99 e3 80 82 0d 0a 3c ...............<
6d60: 2f 70 3e 0d 0a 3c 70 72 65 3e 0d 0a 3c 74 74 3e /p>..<pre>..<tt>
6d70: 40 6d 61 63 72 6f 3c 2f 74 74 3e 20 e3 83 ac e3 @macro</tt> ....
6d80: 82 a4 e3 83 a4 e3 81 a8 20 3c 74 74 3e 28 72 61 ........ <tt>(ra
6d90: 77 6d 61 63 72 6f 29 3c 2f 74 74 3e 20 e3 83 ac wmacro)</tt> ...
6da0: e3 82 a4 e3 83 a4 e3 81 a8 e3 81 84 e3 81 86 e4 ................
6db0: ba 8c e3 81 a4 e3 81 8c e5 8d 94 e8 aa bf e3 81 ................
6dc0: 97 e3 81 a6 e5 8b 95 e4 bd 9c e3 81 97 e3 81 a6 ................
6dd0: e3 81 84 e3 81 be e3 81 99 e3 80 82 0d 0a 20 20 ..............
6de0: 20 28 72 61 77 6d 61 63 72 6f 29 20 e3 83 ac e3 (rawmacro) ....
6df0: 82 a4 e3 83 a4 e3 81 ae e8 a9 b1 0d 0a 0d 0a 20 ...............
6e00: 20 20 20 20 20 5b 5b 6c 69 6d 69 74 61 74 69 6f [[limitatio
6e10: 6e 73 5d 5d 0d 0a 0d 0a 20 20 20 54 68 69 73 20 ns]].... This
6e20: 40 6d 61 63 72 6f 20 6c 61 79 65 72 20 69 73 20 @macro layer is
6e30: 61 20 76 65 72 79 20 70 72 69 6d 69 74 69 76 65 a very primitive
6e40: 20 6f 6e 65 2c 20 61 6e 64 20 6e 6f 74 20 61 20 one, and not a
6e50: 70 65 72 66 65 63 74 20 6d 61 63 72 6f 20 6c 61 perfect macro la
6e60: 6e 67 75 61 67 65 2e 0d 0a 20 20 20 54 77 6f 20 nguage... Two
6e70: 6d 61 6a 6f 72 20 6c 69 6d 69 74 61 74 69 6f 6e major limitation
6e80: 73 20 61 72 65 20 73 65 65 6e 20 69 6e 20 74 68 s are seen in th
6e90: 65 20 66 6f 6c 6c 6f 77 69 6e 67 20 22 69 74 22 e following "it"
6ea0: 20 65 78 61 6d 70 6c 65 2e 0d 0a 0d 0a 20 20 20 example.....
6eb0: 20 20 26 67 74 3b 26 67 74 3b 20 40 6d 61 63 72 >> @macr
6ec0: 6f 20 4c 65 74 49 74 42 65 28 78 2c 20 79 29 20 o LetItBe(x, y)
6ed0: 7b 20 6c 65 74 20 69 74 20 3d 20 78 20 69 6e 20 { let it = x in
6ee0: 79 20 7d 3b 0d 0a 0d 0a 20 20 20 54 68 65 20 76 y };.... The v
6ef0: 61 72 69 61 62 6c 65 20 6e 61 6d 65 20 69 73 20 ariable name is
6f00: 6e 6f 74 20 68 79 67 65 6e 69 63 2c 20 61 6e 64 not hygenic, and
6f10: 20 73 6f 20 77 69 74 68 6f 75 74 20 61 6e 79 20 so without any
6f20: 65 66 66 6f 72 74 2c 20 74 68 65 20 73 79 6e 74 effort, the synt
6f30: 61 78 20 74 72 65 65 20 22 79 22 0d 0a 20 20 20 ax tree "y"..
6f40: 63 61 6e 20 61 63 63 65 73 73 20 74 68 65 20 6f can access the o
6f50: 75 74 65 72 20 76 61 72 69 61 62 6c 65 20 22 69 uter variable "i
6f60: 74 22 2e 0d 0a 0d 0a 20 20 20 20 20 26 67 74 3b t"..... >
6f70: 26 67 74 3b 20 64 65 66 20 66 6f 6f 28 29 20 7b > def foo() {
6f80: 20 4c 65 74 49 74 42 65 28 20 31 2b 32 2b 33 2c LetItBe( 1+2+3,
6f90: 20 69 74 2a 69 74 20 29 20 7d 0d 0a 20 20 20 20 it*it ) }..
6fa0: 20 26 67 74 3b 26 67 74 3b 20 66 6f 6f 28 29 0d >> foo().
6fb0: 0a 20 20 20 20 20 33 36 0d 0a 0d 0a 20 20 20 4f . 36.... O
6fc0: 66 20 63 6f 75 72 73 65 2c 20 74 68 69 73 20 69 f course, this i
6fd0: 73 20 6e 6f 74 20 6a 75 73 74 20 61 20 6c 69 6d s not just a lim
6fe0: 69 74 61 74 69 6f 6e 3b 20 69 74 20 63 61 6e 20 itation; it can
6ff0: 73 6f 6d 65 74 69 6d 65 73 20 61 6c 6c 6f 77 20 sometimes allow
7000: 75 73 20 74 6f 20 77 72 69 74 65 0d 0a 20 20 20 us to write..
7010: 6d 61 6e 79 20 69 6e 74 65 72 65 73 74 69 6e 67 many interesting
7020: 20 6d 61 63 72 6f 73 2e 0d 0a 0d 0a 20 20 20 54 macros..... T
7030: 68 65 20 6f 74 68 65 72 20 70 72 6f 62 6c 65 6d he other problem
7040: 20 69 73 20 74 68 61 74 20 74 68 65 20 6d 61 63 is that the mac
7050: 72 6f 20 65 78 70 61 6e 73 69 6f 6e 20 69 73 20 ro expansion is
7060: 6f 6e 6c 79 20 64 6f 6e 65 20 61 74 20 66 75 6e only done at fun
7070: 63 74 69 6f 6e 20 73 74 61 72 74 75 70 2e 0d 0a ction startup...
7080: 20 20 20 53 6f 20 0d 0a 0d 0a 20 20 20 20 20 26 So .... &
7090: 67 74 3b 26 67 74 3b 20 4c 65 74 49 74 42 65 28 gt;> LetItBe(
70a0: 20 31 2b 32 2b 33 2c 20 69 74 2a 69 74 20 29 0d 1+2+3, it*it ).
70b0: 0a 20 20 20 20 20 2e 2e 2e 5c 76 61 6c 75 65 2e . ...\value.
70c0: 64 28 31 37 33 29 3a 20 5b 3c 52 45 50 4c 3e 3a d(173): [<REPL>:
70d0: 32 34 3a 31 5d 20 76 61 72 69 61 62 6c 65 20 4c 24:1] variable L
70e0: 65 74 49 74 42 65 20 69 73 20 6e 6f 74 20 73 65 etItBe is not se
70f0: 74 20 69 6e 20 6c 61 79 65 72 20 40 76 61 6c 75 t in layer @valu
7100: 65 0d 0a 0d 0a 20 20 20 79 6f 75 20 63 61 6e 6e e.... you cann
7110: 6f 74 20 64 69 72 65 63 74 6c 79 20 75 73 65 20 ot directly use
7120: 74 68 65 20 6d 61 63 72 6f 20 69 6e 20 74 68 65 the macro in the
7130: 20 73 61 6d 65 20 73 63 6f 70 65 20 61 73 20 74 same scope as t
7140: 68 65 20 64 65 66 69 6e 69 74 69 6f 6e 2e 0d 0a he definition...
7150: 20 20 20 59 6f 75 20 6e 65 65 64 20 74 6f 20 77 You need to w
7160: 72 61 70 20 69 74 20 75 70 20 69 6e 20 61 20 66 rap it up in a f
7170: 75 6e 63 74 69 6f 6e 20 28 6c 69 6b 65 20 74 68 unction (like th
7180: 65 20 66 6f 6f 28 29 20 69 6e 20 74 68 65 20 61 e foo() in the a
7190: 62 6f 76 65 20 65 78 61 6d 70 6c 65 29 2e 0d 0a bove example)...
71a0: 3c 2f 70 72 65 3e 0d 0a 3c 2f 64 64 3e 0d 0a 3c </pre>..</dd>..<
71b0: 2f 64 6c 3e 0d 0a 3c 73 63 72 69 70 74 3e 65 78 /dl>..<script>ex
71c0: 70 6c 6f 72 65 72 2e 6f 75 74 6c 69 6e 65 2e 64 plorer.outline.d
71d0: 65 63 53 79 6d 62 6f 6c 4c 65 76 65 6c 28 29 3b ecSymbolLevel();
71e0: 3c 2f 73 63 72 69 70 74 3e 0d 0a 0d 0a 0d 0a 3c </script>......<
71f0: 2f 64 64 3e 0d 0a 0d 0a 0d 0a 0d 0a 3c 73 63 72 /dd>........<scr
7200: 69 70 74 3e 65 78 70 6c 6f 72 65 72 2e 6f 75 74 ipt>explorer.out
7210: 6c 69 6e 65 2e 77 72 69 74 65 45 6e 61 62 6c 65 line.writeEnable
7220: 64 20 3d 20 74 72 75 65 3b 3c 2f 73 63 72 69 70 d = true;</scrip
7230: 74 3e 0d 0a 3c 64 74 3e 3c 73 70 61 6e 20 63 6c t>..<dt><span cl
7240: 61 73 73 3d 22 64 65 63 6c 22 3e 0d 0a 3c 73 70 ass="decl">..<sp
7250: 61 6e 20 63 6c 61 73 73 3d 22 63 75 72 72 73 79 an class="currsy
7260: 6d 62 6f 6c 22 3e 42 75 69 6c 74 2d 69 6e 20 50 mbol">Built-in P
7270: 72 69 6d 69 74 69 76 65 73 3c 2f 73 70 61 6e 3e rimitives</span>
7280: 0d 0a 3c 73 63 72 69 70 74 3e 65 78 70 6c 6f 72 ..<script>explor
7290: 65 72 2e 6f 75 74 6c 69 6e 65 2e 61 64 64 44 65 er.outline.addDe
72a0: 63 6c 28 27 42 75 69 6c 74 2d 69 6e 20 50 72 69 cl('Built-in Pri
72b0: 6d 69 74 69 76 65 73 27 29 3b 3c 2f 73 63 72 69 mitives');</scri
72c0: 70 74 3e 0d 0a 0d 0a 3c 2f 73 70 61 6e 3e 3c 2f pt>....</span></
72d0: 64 74 3e 0d 0a 3c 73 63 72 69 70 74 3e 65 78 70 dt>..<script>exp
72e0: 6c 6f 72 65 72 2e 6f 75 74 6c 69 6e 65 2e 77 72 lorer.outline.wr
72f0: 69 74 65 45 6e 61 62 6c 65 64 20 3d 20 66 61 6c iteEnabled = fal
7300: 73 65 3b 3c 2f 73 63 72 69 70 74 3e 0d 0a 0d 0a se;</script>....
7310: 20 3c 64 64 3e 3c 70 3e 0d 0a e7 b5 84 e3 81 bf <dd><p>........
7320: e8 be bc e3 81 bf e9 96 a2 e6 95 b0 e3 83 bb e5 ................
7330: a4 89 e6 95 b0 e3 81 ae e4 b8 80 e8 a6 a7 e3 80 ................
7340: 82 0d 0a 3c 2f 70 3e 0d 0a 0d 0a 3c 73 63 72 69 ...</p>....<scri
7350: 70 74 3e 65 78 70 6c 6f 72 65 72 2e 6f 75 74 6c pt>explorer.outl
7360: 69 6e 65 2e 69 6e 63 53 79 6d 62 6f 6c 4c 65 76 ine.incSymbolLev
7370: 65 6c 28 29 3b 3c 2f 73 63 72 69 70 74 3e 0d 0a el();</script>..
7380: 3c 64 6c 3e 0d 0a 3c 73 63 72 69 70 74 3e 65 78 <dl>..<script>ex
7390: 70 6c 6f 72 65 72 2e 6f 75 74 6c 69 6e 65 2e 77 plorer.outline.w
73a0: 72 69 74 65 45 6e 61 62 6c 65 64 20 3d 20 74 72 riteEnabled = tr
73b0: 75 65 3b 3c 2f 73 63 72 69 70 74 3e 0d 0a 3c 64 ue;</script>..<d
73c0: 74 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 64 t><span class="d
73d0: 65 63 6c 22 3e 0d 0a 3c 73 70 61 6e 20 63 6c 61 ecl">..<span cla
73e0: 73 73 3d 22 63 75 72 72 73 79 6d 62 6f 6c 22 3e ss="currsymbol">
73f0: e3 83 86 e3 83 bc e3 83 96 e3 83 ab e6 93 8d e4 ................
7400: bd 9c 3c 2f 73 70 61 6e 3e 0d 0a 3c 73 63 72 69 ..</span>..<scri
7410: 70 74 3e 65 78 70 6c 6f 72 65 72 2e 6f 75 74 6c pt>explorer.outl
7420: 69 6e 65 2e 61 64 64 44 65 63 6c 28 27 e3 83 86 ine.addDecl('...
7430: e3 83 bc e3 83 96 e3 83 ab e6 93 8d e4 bd 9c 27 ...............'
7440: 29 3b 3c 2f 73 63 72 69 70 74 3e 0d 0a 0d 0a 3c );</script>....<
7450: 2f 73 70 61 6e 3e 3c 2f 64 74 3e 0d 0a 3c 73 63 /span></dt>..<sc
7460: 72 69 70 74 3e 65 78 70 6c 6f 72 65 72 2e 6f 75 ript>explorer.ou
7470: 74 6c 69 6e 65 2e 77 72 69 74 65 45 6e 61 62 6c tline.writeEnabl
7480: 65 64 20 3d 20 66 61 6c 73 65 3b 3c 2f 73 63 72 ed = false;</scr
7490: 69 70 74 3e 0d 0a 0d 0a 20 3c 64 64 3e 20 3c 74 ipt>.... <dd> <t
74a0: 61 62 6c 65 3e 20 20 20 3c 74 72 3e 3c 74 68 3e able> <tr><th>
74b0: 7b 7d 3c 2f 74 68 3e 20 3c 74 64 3e 28 29 3c 2f {}</th> <td>()</
74c0: 74 64 3e 20 3c 74 64 3e e7 a9 ba e3 81 ae e3 83 td> <td>........
74d0: 86 e3 83 bc e3 83 96 e3 83 ab e3 82 92 e4 bd 9c ................
74e0: e3 82 8b 3c 2f 74 64 3e 3c 2f 74 72 3e 0d 0a 20 ...</td></tr>..
74f0: 20 20 20 3c 74 72 3e 3c 74 68 3e 2e 3c 2f 74 68 <tr><th>.</th
7500: 3e 20 3c 74 64 3e 28 74 2c 20 73 29 3c 2f 74 64 > <td>(t, s)</td
7510: 3e 20 3c 74 64 3e e3 83 86 e3 83 bc e3 83 96 e3 > <td>..........
7520: 83 ab 20 74 20 e3 81 ae e5 90 8d e5 89 8d 20 73 .. t ......... s
7530: 20 e3 81 ae e3 83 95 e3 82 a3 e3 83 bc e3 83 ab ...............
7540: e3 83 89 e3 81 ae e5 80 a4 e3 82 92 e5 8f 96 e5 ................
7550: be 97 e3 80 82 e3 81 aa e3 81 91 e3 82 8c e3 81 ................
7560: b0 20 3c 74 74 3e 75 6e 64 65 66 69 6e 65 64 3c . <tt>undefined<
7570: 2f 74 74 3e 3c 2f 74 64 3e 3c 2f 74 72 3e 0d 0a /tt></td></tr>..
7580: 20 20 20 20 3c 74 72 3e 3c 74 68 3e 2e 3f 3c 2f <tr><th>.?</
7590: 74 68 3e 20 3c 74 64 3e 28 74 2c 20 73 29 3c 2f th> <td>(t, s)</
75a0: 74 64 3e 20 3c 74 64 3e e3 83 86 e3 83 bc e3 83 td> <td>........
75b0: 96 e3 83 ab 20 74 20 e3 81 ab e5 90 8d e5 89 8d .... t .........
75c0: 20 73 20 e3 81 ae e3 83 95 e3 82 a3 e3 83 bc e3 s .............
75d0: 83 ab e3 83 89 e3 81 8c e3 81 82 e3 82 8c e3 81 ................
75e0: b0 20 31 e3 80 81 e3 81 aa e3 81 91 e3 82 8c e3 . 1.............
75f0: 81 b0 20 30 3c 2f 74 64 3e 3c 2f 74 72 3e 0d 0a .. 0</td></tr>..
7600: 20 20 20 20 3c 74 72 3e 3c 74 68 3e 2e 3d 3c 2f <tr><th>.=</
7610: 74 68 3e 20 3c 74 64 3e 28 74 2c 20 73 2c 20 76 th> <td>(t, s, v
7620: 29 3c 2f 74 64 3e 20 3c 74 64 3e e3 83 86 e3 83 )</td> <td>.....
7630: bc e3 83 96 e3 83 ab 20 74 20 e3 82 92 e8 a6 aa ....... t ......
7640: e3 81 ab e6 8c 81 e3 81 a1 e3 80 81 e5 90 8d e5 ................
7650: 89 8d 20 73 20 e3 81 ae e3 83 95 e3 82 a3 e3 83 .. s ...........
7660: bc e3 83 ab e3 83 89 e3 81 ab 20 76 20 e3 81 8c .......... v ...
7670: e5 85 a5 e3 81 a3 e3 81 9f e3 83 86 e3 83 bc e3 ................
7680: 83 96 e3 83 ab e3 82 92 e4 bd 9c e3 82 8b 3c 2f ..............</
7690: 74 64 3e 3c 2f 74 72 3e 0d 0a 20 20 3c 2f 74 61 td></tr>.. </ta
76a0: 62 6c 65 3e 0d 0a 3c 2f 64 64 3e 0d 0a 3c 62 72 ble>..</dd>..<br
76b0: 20 2f 3e 0d 0a 0d 0a 0d 0a 3c 73 63 72 69 70 74 />......<script
76c0: 3e 65 78 70 6c 6f 72 65 72 2e 6f 75 74 6c 69 6e >explorer.outlin
76d0: 65 2e 77 72 69 74 65 45 6e 61 62 6c 65 64 20 3d e.writeEnabled =
76e0: 20 74 72 75 65 3b 3c 2f 73 63 72 69 70 74 3e 0d true;</script>.
76f0: 0a 3c 64 74 3e 3c 73 70 61 6e 20 63 6c 61 73 73 .<dt><span class
7700: 3d 22 64 65 63 6c 22 3e 0d 0a 3c 73 70 61 6e 20 ="decl">..<span
7710: 63 6c 61 73 73 3d 22 63 75 72 72 73 79 6d 62 6f class="currsymbo
7720: 6c 22 3e e5 88 b6 e5 be a1 e3 83 95 e3 83 ad e3 l">.............
7730: 83 bc 3c 2f 73 70 61 6e 3e 0d 0a 3c 73 63 72 69 ..</span>..<scri
7740: 70 74 3e 65 78 70 6c 6f 72 65 72 2e 6f 75 74 6c pt>explorer.outl
7750: 69 6e 65 2e 61 64 64 44 65 63 6c 28 27 e5 88 b6 ine.addDecl('...
7760: e5 be a1 e3 83 95 e3 83 ad e3 83 bc 27 29 3b 3c ............');<
7770: 2f 73 63 72 69 70 74 3e 0d 0a 0d 0a 3c 2f 73 70 /script>....</sp
7780: 61 6e 3e 3c 2f 64 74 3e 0d 0a 3c 73 63 72 69 70 an></dt>..<scrip
7790: 74 3e 65 78 70 6c 6f 72 65 72 2e 6f 75 74 6c 69 t>explorer.outli
77a0: 6e 65 2e 77 72 69 74 65 45 6e 61 62 6c 65 64 20 ne.writeEnabled
77b0: 3d 20 66 61 6c 73 65 3b 3c 2f 73 63 72 69 70 74 = false;</script
77c0: 3e 0d 0a 0d 0a 20 3c 64 64 3e 20 3c 74 61 62 6c >.... <dd> <tabl
77d0: 65 3e 20 20 20 3c 74 72 3e 3c 74 68 3e 69 66 3c e> <tr><th>if<
77e0: 2f 74 68 3e 20 3c 74 64 3e 28 6e 2c 20 66 74 2c /th> <td>(n, ft,
77f0: 20 66 65 29 3c 2f 74 64 3e 20 3c 74 64 3e 6e 20 fe)</td> <td>n
7800: e3 81 8c e9 9d 9e 20 30 20 e3 81 aa e3 82 89 20 ...... 0 ......
7810: 3c 74 74 3e 66 74 28 29 3c 2f 74 3e e3 80 81 30 <tt>ft()</t>...0
7820: 20 e3 81 aa e3 82 89 20 3c 74 74 3e 66 65 28 29 ...... <tt>fe()
7830: 3c 2f 74 74 3e 20 e3 82 92 e5 ae 9f e8 a1 8c 3c </tt> .........<
7840: 2f 74 64 3e 3c 2f 74 72 3e 0d 0a 20 20 3c 2f 74 /td></tr>.. </t
7850: 61 62 6c 65 3e 0d 0a 3c 2f 64 64 3e 0d 0a 3c 62 able>..</dd>..<b
7860: 72 20 2f 3e 0d 0a 0d 0a 0d 0a 3c 73 63 72 69 70 r />......<scrip
7870: 74 3e 65 78 70 6c 6f 72 65 72 2e 6f 75 74 6c 69 t>explorer.outli
7880: 6e 65 2e 77 72 69 74 65 45 6e 61 62 6c 65 64 20 ne.writeEnabled
7890: 3d 20 74 72 75 65 3b 3c 2f 73 63 72 69 70 74 3e = true;</script>
78a0: 0d 0a 3c 64 74 3e 3c 73 70 61 6e 20 63 6c 61 73 ..<dt><span clas
78b0: 73 3d 22 64 65 63 6c 22 3e 0d 0a 3c 73 70 61 6e s="decl">..<span
78c0: 20 63 6c 61 73 73 3d 22 63 75 72 72 73 79 6d 62 class="currsymb
78d0: 6f 6c 22 3e e6 bc 94 e7 ae 97 3c 2f 73 70 61 6e ol">......</span
78e0: 3e 0d 0a 3c 73 63 72 69 70 74 3e 65 78 70 6c 6f >..<script>explo
78f0: 72 65 72 2e 6f 75 74 6c 69 6e 65 2e 61 64 64 44 rer.outline.addD
7900: 65 63 6c 28 27 e6 bc 94 e7 ae 97 27 29 3b 3c 2f ecl('......');</
7910: 73 63 72 69 70 74 3e 0d 0a 0d 0a 3c 2f 73 70 61 script>....</spa
7920: 6e 3e 3c 2f 64 74 3e 0d 0a 3c 73 63 72 69 70 74 n></dt>..<script
7930: 3e 65 78 70 6c 6f 72 65 72 2e 6f 75 74 6c 69 6e >explorer.outlin
7940: 65 2e 77 72 69 74 65 45 6e 61 62 6c 65 64 20 3d e.writeEnabled =
7950: 20 66 61 6c 73 65 3b 3c 2f 73 63 72 69 70 74 3e false;</script>
7960: 0d 0a 0d 0a 20 3c 64 64 3e 20 3c 74 61 62 6c 65 .... <dd> <table
7970: 3e 20 20 20 3c 74 72 3e 3c 74 68 3e 2b 3c 2f 74 > <tr><th>+</t
7980: 68 3e 20 3c 74 64 3e 28 6e 2c 20 6d 29 3c 2f 74 h> <td>(n, m)</t
7990: 64 3e 20 3c 74 64 3e e6 95 b4 e6 95 b0 20 6e 20 d> <td>...... n
79a0: e3 81 a8 e6 95 b4 e6 95 b0 20 6d 20 e3 82 92 e8 ......... m ....
79b0: b6 b3 e3 81 97 e3 81 a6 e8 bf 94 e3 81 99 3c 2f ..............</
79c0: 74 64 3e 3c 2f 74 72 3e 0d 0a 20 20 20 20 3c 74 td></tr>.. <t
79d0: 72 3e 3c 74 68 3e 2d 3c 2f 74 68 3e 20 3c 74 64 r><th>-</th> <td
79e0: 3e 28 6e 2c 20 6d 29 3c 2f 74 64 3e 20 3c 74 64 >(n, m)</td> <td
79f0: 3e e6 95 b4 e6 95 b0 e3 81 ae e5 bc 95 e3 81 8d >...............
7a00: e7 ae 97 3c 2f 74 64 3e 3c 2f 74 72 3e 0d 0a 20 ...</td></tr>..
7a10: 20 20 20 3c 74 72 3e 3c 74 68 3e 2a 3c 2f 74 68 <tr><th>*</th
7a20: 3e 20 3c 74 64 3e 28 6e 2c 20 6d 29 3c 2f 74 64 > <td>(n, m)</td
7a30: 3e 20 3c 74 64 3e e6 95 b4 e6 95 b0 e3 81 ae e6 > <td>..........
7a40: 8e 9b e3 81 91 e7 ae 97 3c 2f 74 64 3e 3c 2f 74 ........</td></t
7a50: 72 3e 0d 0a 20 20 20 20 3c 74 72 3e 3c 74 68 3e r>.. <tr><th>
7a60: 2f 3c 2f 74 68 3e 20 3c 74 64 3e 28 6e 2c 20 6d /</th> <td>(n, m
7a70: 29 3c 2f 74 64 3e 20 3c 74 64 3e e6 95 b4 e6 95 )</td> <td>.....
7a80: b0 e3 81 ae e5 89 b2 e3 82 8a e7 ae 97 3c 2f 74 .............</t
7a90: 64 3e 3c 2f 74 72 3e 0d 0a 20 20 20 20 3c 74 72 d></tr>.. <tr
7aa0: 3e 3c 74 68 3e 25 3c 2f 74 68 3e 20 3c 74 64 3e ><th>%</th> <td>
7ab0: 28 6e 2c 20 6d 29 3c 2f 74 64 3e 20 3c 74 64 3e (n, m)</td> <td>
7ac0: e6 95 b4 e6 95 b0 e3 81 ae e5 89 b0 e4 bd 99 3c ...............<
7ad0: 2f 74 64 3e 3c 2f 74 72 3e 0d 0a 20 20 20 20 3c /td></tr>.. <
7ae0: 74 72 3e 3c 74 68 3e 26 61 6d 70 3b 26 61 6d 70 tr><th>&&
7af0: 3b 3c 2f 74 68 3e 20 3c 74 64 3e 28 6e 2c 20 6d ;</th> <td>(n, m
7b00: 29 3c 2f 74 64 3e 20 3c 74 64 3e e6 95 b4 e6 95 )</td> <td>.....
7b10: b0 20 6e 20 e3 81 a8 20 6d 20 e3 81 8c e4 b8 a1 . n ... m ......
7b20: e6 96 b9 e9 9d 9e 20 30 20 e3 81 aa e3 82 89 20 ...... 0 ......
7b30: 31 e3 80 81 e3 81 9d e3 82 8c e4 bb a5 e5 a4 96 1...............
7b40: e3 81 a7 e3 81 af 20 30 3c 2f 74 64 3e 3c 2f 74 ...... 0</td></t
7b50: 72 3e 0d 0a 20 20 20 20 3c 74 72 3e 3c 74 68 3e r>.. <tr><th>
7b60: 7c 7c 3c 2f 74 68 3e 20 3c 74 64 3e 28 6e 2c 20 ||</th> <td>(n,
7b70: 6d 29 3c 2f 74 64 3e 20 3c 74 64 3e e6 95 b4 e6 m)</td> <td>....
7b80: 95 b0 20 6e 20 e3 81 a8 20 6d 20 e3 81 8c e3 81 .. n ... m .....
7b90: a9 e3 81 a1 e3 82 89 e3 81 8b e9 9d 9e 20 30 20 ............. 0
7ba0: e3 81 aa e3 82 89 20 31 e3 80 81 e3 81 9d e3 82 ...... 1........
7bb0: 8c e4 bb a5 e5 a4 96 e3 81 a7 e3 81 af 20 30 3c ............. 0<
7bc0: 2f 74 64 3e 3c 2f 74 72 3e 0d 0a 20 20 20 20 3c /td></tr>.. <
7bd0: 74 72 3e 3c 74 68 3e 7e 3c 2f 74 68 3e 20 3c 74 tr><th>~</th> <t
7be0: 64 3e 28 61 2c 20 62 29 3c 2f 74 64 3e 20 3c 74 d>(a, b)</td> <t
7bf0: 64 3e 61 20 e3 81 a8 20 62 20 e3 82 92 e6 96 87 d>a ... b ......
7c00: e5 ad 97 e5 88 97 e5 8c 96 e3 81 97 e3 81 a6 e7 ................
7c10: b5 90 e5 90 88 3c 2f 74 64 3e 3c 2f 74 72 3e 0d .....</td></tr>.
7c20: 0a 20 20 20 20 3c 74 72 3e 3c 74 68 3e 26 6c 74 . <tr><th><
7c30: 3b 3c 2f 74 68 3e 20 3c 74 64 3e 28 61 2c 20 62 ;</th> <td>(a, b
7c40: 29 3c 2f 74 64 3e 20 3c 74 64 3e 61 20 e3 81 a8 )</td> <td>a ...
7c50: 20 62 20 e3 82 92 e6 af 94 e8 bc 83 3c 2f 74 64 b .........</td
7c60: 3e 3c 2f 74 72 3e 0d 0a 20 20 20 20 3c 74 72 3e ></tr>.. <tr>
7c70: 3c 74 68 3e 26 6c 74 3b 3d 3c 2f 74 68 3e 20 3c <th><=</th> <
7c80: 74 64 3e 28 61 2c 20 62 29 3c 2f 74 64 3e 20 3c td>(a, b)</td> <
7c90: 74 64 3e 61 20 e3 81 a8 20 62 20 e3 82 92 e6 af td>a ... b .....
7ca0: 94 e8 bc 83 3c 2f 74 64 3e 3c 2f 74 72 3e 0d 0a ....</td></tr>..
7cb0: 20 20 20 20 3c 74 72 3e 3c 74 68 3e 26 67 74 3b <tr><th>>
7cc0: 3c 2f 74 68 3e 20 3c 74 64 3e 28 61 2c 20 62 29 </th> <td>(a, b)
7cd0: 3c 2f 74 64 3e 20 3c 74 64 3e 61 20 e3 81 a8 20 </td> <td>a ...
7ce0: 62 20 e3 82 92 e6 af 94 e8 bc 83 3c 2f 74 64 3e b .........</td>
7cf0: 3c 2f 74 72 3e 0d 0a 20 20 20 20 3c 74 72 3e 3c </tr>.. <tr><
7d00: 74 68 3e 26 67 74 3b 3d 3c 2f 74 68 3e 20 3c 74 th>>=</th> <t
7d10: 64 3e 28 61 2c 20 62 29 3c 2f 74 64 3e 20 3c 74 d>(a, b)</td> <t
7d20: 64 3e 61 20 e3 81 a8 20 62 20 e3 82 92 e6 af 94 d>a ... b ......
7d30: e8 bc 83 3c 2f 74 64 3e 3c 2f 74 72 3e 0d 0a 20 ...</td></tr>..
7d40: 20 20 20 3c 74 72 3e 3c 74 68 3e 3d 3d 3c 2f 74 <tr><th>==</t
7d50: 68 3e 20 3c 74 64 3e 28 61 2c 20 62 29 3c 2f 74 h> <td>(a, b)</t
7d60: 64 3e 20 3c 74 64 3e 61 20 e3 81 a8 20 62 20 e3 d> <td>a ... b .
7d70: 82 92 e6 af 94 e8 bc 83 3c 2f 74 64 3e 3c 2f 74 ........</td></t
7d80: 72 3e 0d 0a 20 20 20 20 3c 74 72 3e 3c 74 68 3e r>.. <tr><th>
7d90: 21 3d 3c 2f 74 68 3e 20 3c 74 64 3e 28 61 2c 20 !=</th> <td>(a,
7da0: 62 29 3c 2f 74 64 3e 20 3c 74 64 3e 61 20 e3 81 b)</td> <td>a ..
7db0: a8 20 62 20 e3 82 92 e6 af 94 e8 bc 83 3c 2f 74 . b .........</t
7dc0: 64 3e 3c 2f 74 72 3e 0d 0a 20 20 3c 2f 74 61 62 d></tr>.. </tab
7dd0: 6c 65 3e 0d 0a 3c 70 3e 0d 0a e6 b3 a8 e6 84 8f le>..<p>........
7de0: e7 82 b9 e3 81 a8 e3 81 97 e3 81 a6 e3 80 81 e4 ................
7df0: bd 9c e8 80 85 e3 81 ae e8 b6 a3 e5 91 b3 e3 81 ................
7e00: ae e5 95 8f e9 a1 8c e3 81 a7 e3 80 81 3c 74 74 .............<tt
7e10: 3e 26 61 6d 70 3b 26 61 6d 70 3b 3c 2f 74 74 3e >&&</tt>
7e20: 20 e3 81 a8 20 3c 74 74 3e 7c 7c 3c 2f 74 74 3e ... <tt>||</tt>
7e30: 20 e3 81 af 20 73 68 6f 72 74 2d 63 69 72 63 75 ... short-circu
7e40: 69 74 20 e8 a9 95 e4 be a1 e3 82 92 e3 81 97 e3 it .............
7e50: 81 be e3 81 9b e3 82 93 e3 80 82 0d 0a e6 95 b4 ................
7e60: e6 95 b0 e6 bc 94 e7 ae 97 e3 81 ae e7 a8 ae e9 ................
7e70: a1 9e e3 81 8c e5 b0 91 e3 81 aa e3 81 84 e3 81 ................
7e80: ae e3 81 af e3 80 81 44 20 e8 a8 80 e8 aa 9e e3 .......D .......
7e90: 81 ae 20 73 74 64 2e 62 69 67 69 6e 74 20 e3 81 .. std.bigint ..
7ea0: 8c e3 83 93 e3 83 83 e3 83 88 e6 bc 94 e7 ae 97 ................
7eb0: e3 81 aa e3 81 a9 e3 82 92 e3 82 b5 e3 83 9d e3 ................
7ec0: 83 bc e3 83 88 e3 81 97 e3 81 a6 e3 81 aa e3 81 ................
7ed0: 84 e3 81 9f e3 82 81 e3 81 a7 e3 81 99 e3 80 82 ................
7ee0: 0d 0a e6 96 87 e5 ad 97 e5 88 97 e3 81 8c e7 b5 ................
7ef0: 90 e5 90 88 e3 81 97 e3 81 8b e3 81 a7 e3 81 8d ................
7f00: e3 81 aa e3 81 84 e3 81 ae e3 81 af e3 80 81 e5 ................
7f10: 8d 98 e3 81 ab e6 89 8b e6 8a 9c e3 81 8d e3 81 ................
7f20: a7 e3 81 99 e3 80 82 0d 0a 3c 2f 70 3e 0d 0a 3c .........</p>..<
7f30: 2f 64 64 3e 0d 0a 0d 0a 0d 0a 3c 73 63 72 69 70 /dd>......<scrip
7f40: 74 3e 65 78 70 6c 6f 72 65 72 2e 6f 75 74 6c 69 t>explorer.outli
7f50: 6e 65 2e 77 72 69 74 65 45 6e 61 62 6c 65 64 20 ne.writeEnabled
7f60: 3d 20 74 72 75 65 3b 3c 2f 73 63 72 69 70 74 3e = true;</script>
7f70: 0d 0a 3c 64 74 3e 3c 73 70 61 6e 20 63 6c 61 73 ..<dt><span clas
7f80: 73 3d 22 64 65 63 6c 22 3e 0d 0a 3c 73 70 61 6e s="decl">..<span
7f90: 20 63 6c 61 73 73 3d 22 63 75 72 72 73 79 6d 62 class="currsymb
7fa0: 6f 6c 22 3e e5 a4 96 e9 83 a8 e3 81 a8 e3 81 ae ol">............
7fb0: e3 82 84 e3 82 8a e3 81 a8 e3 82 8a 3c 2f 73 70 ............</sp
7fc0: 61 6e 3e 0d 0a 3c 73 63 72 69 70 74 3e 65 78 70 an>..<script>exp
7fd0: 6c 6f 72 65 72 2e 6f 75 74 6c 69 6e 65 2e 61 64 lorer.outline.ad
7fe0: 64 44 65 63 6c 28 27 e5 a4 96 e9 83 a8 e3 81 a8 dDecl('.........
7ff0: e3 81 ae e3 82 84 e3 82 8a e3 81 a8 e3 82 8a 27 ...............'
8000: 29 3b 3c 2f 73 63 72 69 70 74 3e 0d 0a 0d 0a 3c );</script>....<
8010: 2f 73 70 61 6e 3e 3c 2f 64 74 3e 0d 0a 3c 73 63 /span></dt>..<sc
8020: 72 69 70 74 3e 65 78 70 6c 6f 72 65 72 2e 6f 75 ript>explorer.ou
8030: 74 6c 69 6e 65 2e 77 72 69 74 65 45 6e 61 62 6c tline.writeEnabl
8040: 65 64 20 3d 20 66 61 6c 73 65 3b 3c 2f 73 63 72 ed = false;</scr
8050: 69 70 74 3e 0d 0a 0d 0a 20 3c 64 64 3e 20 3c 74 ipt>.... <dd> <t
8060: 61 62 6c 65 3e 20 20 20 3c 74 72 3e 3c 74 68 3e able> <tr><th>
8070: 70 72 69 6e 74 3c 2f 74 68 3e 20 3c 74 64 3e 28 print</th> <td>(
8080: 61 29 3c 2f 74 64 3e 20 3c 74 64 3e 61 20 e3 82 a)</td> <td>a ..
8090: 92 e6 96 87 e5 ad 97 e5 88 97 e5 8c 96 e6 a8 99 ................
80a0: e6 ba 96 e5 87 ba e5 8a 9b e3 81 ab e6 94 b9 e8 ................
80b0: a1 8c e4 bb 98 e3 81 8d e3 81 a7 e8 a1 a8 e7 a4 ................
80c0: ba e3 81 97 e3 81 a6 e3 80 81 61 20 e3 82 92 e8 ..........a ....
80d0: bf 94 e3 81 99 3c 2f 74 64 3e 3c 2f 74 72 3e 0d .....</td></tr>.
80e0: 0a 20 20 20 20 3c 74 72 3e 3c 74 68 3e 61 72 67 . <tr><th>arg
80f0: 76 3c 2f 74 68 3e 20 3c 74 64 3e 3c 2f 74 64 3e v</th> <td></td>
8100: 20 3c 74 64 3e e3 82 b9 e3 82 af e3 83 aa e3 83 <td>...........
8110: 97 e3 83 88 e3 81 ab e6 b8 a1 e3 81 95 e3 82 8c ................
8120: e3 81 9f e5 bc 95 e6 95 b0 e6 96 87 e5 ad 97 e5 ................
8130: 88 97 e3 81 ae 63 6f 6e 73 e3 83 aa e3 82 b9 e3 .....cons.......
8140: 83 88 3c 2f 74 64 3e 3c 2f 74 72 3e 0d 0a 20 20 ..</td></tr>..
8150: 20 20 3c 74 72 3e 3c 74 68 3e 67 65 6e 73 79 6d <tr><th>gensym
8160: 3c 2f 74 68 3e 20 3c 74 64 3e 28 29 3c 2f 74 64 </th> <td>()</td
8170: 3e 20 3c 74 64 3e e3 82 a8 e3 82 bb 67 65 6e 73 > <td>......gens
8180: 79 6d e3 80 82 e5 a4 89 e6 95 b0 e5 90 8d e3 81 ym..............
8190: a8 e3 81 97 e3 81 a6 e4 bb 96 e3 81 a8 e3 81 8b ................
81a0: e3 81 b6 e3 82 89 e3 81 aa e3 81 9d e3 81 86 e3 ................
81b0: 81 aa e6 96 87 e5 ad 97 e5 88 97 e3 82 92 e8 bf ................
81c0: 94 e3 81 97 e3 81 be e3 81 99 3c 2f 74 64 3e 3c ..........</td><
81d0: 2f 74 72 3e 0d 0a 20 20 20 20 3c 74 72 3e 3c 74 /tr>.. <tr><t
81e0: 68 3e 72 61 6e 64 3c 2f 74 68 3e 20 3c 74 64 3e h>rand</th> <td>
81f0: 28 6e 29 3c 2f 74 64 3e 20 3c 74 64 3e 30 20 e4 (n)</td> <td>0 .
8200: bb a5 e4 b8 8a 20 6e 20 e6 9c aa e6 ba 80 e3 81 ..... n ........
8210: ae e8 87 aa e7 84 b6 e6 95 b0 e3 82 92 33 31 62 .............31b
8220: 69 74 e4 bb a5 e5 86 85 e3 81 a7 e3 83 a9 e3 83 it..............
8230: b3 e3 83 80 e3 83 a0 e3 81 ab e7 94 9f e6 88 90 ................
8240: e3 81 97 e3 81 be e3 81 99 3c 2f 74 64 3e 3c 2f .........</td></
8250: 74 72 3e 0d 0a 20 20 3c 2f 74 61 62 6c 65 3e 0d tr>.. </table>.
8260: 0a 3c 2f 64 64 3e 0d 0a 3c 62 72 20 2f 3e 0d 0a .</dd>..<br />..
8270: 0d 0a 0d 0a 3c 73 63 72 69 70 74 3e 65 78 70 6c ....<script>expl
8280: 6f 72 65 72 2e 6f 75 74 6c 69 6e 65 2e 77 72 69 orer.outline.wri
8290: 74 65 45 6e 61 62 6c 65 64 20 3d 20 74 72 75 65 teEnabled = true
82a0: 3b 3c 2f 73 63 72 69 70 74 3e 0d 0a 3c 64 74 3e ;</script>..<dt>
82b0: 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 64 65 63 <span class="dec
82c0: 6c 22 3e 0d 0a 3c 73 70 61 6e 20 63 6c 61 73 73 l">..<span class
82d0: 3d 22 63 75 72 72 73 79 6d 62 6f 6c 22 3e e3 83 ="currsymbol">..
82e0: 87 e3 83 bc e3 82 bf e5 9e 8b e5 88 a4 e5 ae 9a ................
82f0: 3c 2f 73 70 61 6e 3e 0d 0a 3c 73 63 72 69 70 74 </span>..<script
8300: 3e 65 78 70 6c 6f 72 65 72 2e 6f 75 74 6c 69 6e >explorer.outlin
8310: 65 2e 61 64 64 44 65 63 6c 28 27 e3 83 87 e3 83 e.addDecl('.....
8320: bc e3 82 bf e5 9e 8b e5 88 a4 e5 ae 9a 27 29 3b .............');
8330: 3c 2f 73 63 72 69 70 74 3e 0d 0a 0d 0a 3c 2f 73 </script>....</s
8340: 70 61 6e 3e 3c 2f 64 74 3e 0d 0a 3c 73 63 72 69 pan></dt>..<scri
8350: 70 74 3e 65 78 70 6c 6f 72 65 72 2e 6f 75 74 6c pt>explorer.outl
8360: 69 6e 65 2e 77 72 69 74 65 45 6e 61 62 6c 65 64 ine.writeEnabled
8370: 20 3d 20 66 61 6c 73 65 3b 3c 2f 73 63 72 69 70 = false;</scrip
8380: 74 3e 0d 0a 0d 0a 20 3c 64 64 3e 20 3c 74 61 62 t>.... <dd> <tab
8390: 6c 65 3e 20 20 20 3c 74 72 3e 3c 74 68 3e 5f 69 le> <tr><th>_i
83a0: 73 69 6e 74 3c 2f 74 68 3e 20 3c 74 64 3e 28 61 sint</th> <td>(a
83b0: 29 3c 2f 74 64 3e 20 3c 74 64 3e 61 20 e3 81 8c )</td> <td>a ...
83c0: e6 95 b4 e6 95 b0 e3 81 aa e3 82 89 20 31 e3 80 ............ 1..
83d0: 81 e3 81 a7 e3 81 aa e3 81 91 e3 82 8c e3 81 b0 ................
83e0: 20 30 3c 2f 74 64 3e 3c 2f 74 72 3e 0d 0a 20 20 0</td></tr>..
83f0: 20 20 3c 74 72 3e 3c 74 68 3e 5f 69 73 73 74 72 <tr><th>_isstr
8400: 3c 2f 74 68 3e 20 3c 74 64 3e 28 61 29 3c 2f 74 </th> <td>(a)</t
8410: 64 3e 20 3c 74 64 3e 61 20 e3 81 8c e6 96 87 e5 d> <td>a .......
8420: ad 97 e5 88 97 e3 81 aa e3 82 89 20 31 e3 80 81 ........... 1...
8430: e3 81 a7 e3 81 aa e3 81 91 e3 82 8c e3 81 b0 20 ...............
8440: 30 3c 2f 74 64 3e 3c 2f 74 72 3e 0d 0a 20 20 20 0</td></tr>..
8450: 20 3c 74 72 3e 3c 74 68 3e 5f 69 73 66 75 6e 3c <tr><th>_isfun<
8460: 2f 74 68 3e 20 3c 74 64 3e 28 61 29 3c 2f 74 64 /th> <td>(a)</td
8470: 3e 20 3c 74 64 3e 61 20 e3 81 8c e9 96 a2 e6 95 > <td>a ........
8480: b0 e3 81 aa e3 82 89 20 31 e3 80 81 e3 81 a7 e3 ....... 1.......
8490: 81 aa e3 81 91 e3 82 8c e3 81 b0 20 30 3c 2f 74 ........... 0</t
84a0: 64 3e 3c 2f 74 72 3e 0d 0a 20 20 20 20 3c 74 72 d></tr>.. <tr
84b0: 3e 3c 74 68 3e 5f 69 73 74 61 62 6c 65 3c 2f 74 ><th>_istable</t
84c0: 68 3e 20 3c 74 64 3e 28 61 29 3c 2f 74 64 3e 20 h> <td>(a)</td>
84d0: 3c 74 64 3e 61 20 e3 81 8c e3 83 86 e3 83 bc e3 <td>a ..........
84e0: 83 96 e3 83 ab e3 81 aa e3 82 89 20 31 e3 80 81 ........... 1...
84f0: e3 81 a7 e3 81 aa e3 81 91 e3 82 8c e3 81 b0 20 ...............
8500: 30 3c 2f 74 64 3e 3c 2f 74 72 3e 0d 0a 20 20 20 0</td></tr>..
8510: 20 3c 74 72 3e 3c 74 68 3e 5f 69 73 75 6e 64 65 <tr><th>_isunde
8520: 66 69 6e 65 64 3c 2f 74 68 3e 20 3c 74 64 3e 28 fined</th> <td>(
8530: 61 29 3c 2f 74 64 3e 20 3c 74 64 3e 61 20 e3 81 a)</td> <td>a ..
8540: 8c e6 9c aa e5 ae 9a e7 be a9 e5 80 a4 e3 81 aa ................
8550: e3 82 89 20 31 e3 80 81 e3 81 a7 e3 81 aa e3 81 ... 1...........
8560: 91 e3 82 8c e3 81 b0 20 30 3c 2f 74 64 3e 3c 2f ....... 0</td></
8570: 74 72 3e 0d 0a 20 20 3c 2f 74 61 62 6c 65 3e 0d tr>.. </table>.
8580: 0a 3c 2f 64 64 3e 0d 0a 3c 2f 64 6c 3e 0d 0a 3c .</dd>..</dl>..<
8590: 73 63 72 69 70 74 3e 65 78 70 6c 6f 72 65 72 2e script>explorer.
85a0: 6f 75 74 6c 69 6e 65 2e 64 65 63 53 79 6d 62 6f outline.decSymbo
85b0: 6c 4c 65 76 65 6c 28 29 3b 3c 2f 73 63 72 69 70 lLevel();</scrip
85c0: 74 3e 0d 0a 0d 0a 0d 0a 3c 2f 64 64 3e 0d 0a 0d t>......</dd>...
85d0: 0a 3c 2f 64 6c 3e 0d 0a 3c 73 63 72 69 70 74 3e .</dl>..<script>
85e0: 65 78 70 6c 6f 72 65 72 2e 6f 75 74 6c 69 6e 65 explorer.outline
85f0: 2e 64 65 63 53 79 6d 62 6f 6c 4c 65 76 65 6c 28 .decSymbolLevel(
8600: 29 3b 3c 2f 73 63 72 69 70 74 3e 0d 0a 0d 0a 0d );</script>.....
8610: 0a 3c 2f 74 64 3e 3c 2f 74 72 3e 0d 0a 09 09 3c .</td></tr>....<
8620: 74 72 3e 3c 74 64 20 69 64 3d 22 64 6f 63 66 6f tr><td id="docfo
8630: 6f 74 65 72 22 3e 0d 0a 09 09 09 50 61 67 65 20 oter">.....Page
8640: 77 61 73 20 67 65 6e 65 72 61 74 65 64 20 77 69 was generated wi
8650: 74 68 0d 0a 09 09 09 3c 69 6d 67 20 73 72 63 3d th.....<img src=
8660: 22 63 61 6e 64 79 64 6f 63 2f 69 6d 67 2f 63 61 "candydoc/img/ca
8670: 6e 64 79 64 6f 63 2e 67 69 66 22 20 73 74 79 6c ndydoc.gif" styl
8680: 65 3d 22 76 65 72 74 69 63 61 6c 2d 61 6c 69 67 e="vertical-alig
8690: 6e 3a 6d 69 64 64 6c 65 3b 20 70 6f 73 69 74 69 n:middle; positi
86a0: 6f 6e 3a 72 65 6c 61 74 69 76 65 3b 20 74 6f 70 on:relative; top
86b0: 3a 2d 31 70 78 22 3e 0d 0a 09 09 09 6f 6e 20 46 :-1px">.....on F
86c0: 72 69 20 4e 6f 76 20 32 36 20 31 36 3a 34 31 3a ri Nov 26 16:41:
86d0: 35 32 20 32 30 31 30 0d 0a 0d 0a 09 09 3c 2f 74 52 2010......</t
86e0: 64 3e 3c 2f 74 72 3e 0d 0a 09 3c 2f 74 61 62 6c d></tr>...</tabl
86f0: 65 3e 0d 0a 3c 2f 64 69 76 3e 0d 0a 3c 73 63 72 e>..</div>..<scr
8700: 69 70 74 3e 0d 0a 09 65 78 70 6c 6f 72 65 72 2e ipt>...explorer.
8710: 70 61 63 6b 61 67 65 45 78 70 6c 6f 72 65 72 2e packageExplorer.
8720: 61 64 64 4d 6f 64 75 6c 65 28 22 69 6e 64 65 78 addModule("index
8730: 22 29 3b 0d 0a 09 65 78 70 6c 6f 72 65 72 2e 70 ");...explorer.p
8740: 61 63 6b 61 67 65 45 78 70 6c 6f 72 65 72 2e 61 ackageExplorer.a
8750: 64 64 4d 6f 64 75 6c 65 28 22 6d 61 69 6e 22 29 ddModule("main")
8760: 3b 0d 0a 09 65 78 70 6c 6f 72 65 72 2e 70 61 63 ;...explorer.pac
8770: 6b 61 67 65 45 78 70 6c 6f 72 65 72 2e 61 64 64 kageExplorer.add
8780: 4d 6f 64 75 6c 65 28 22 74 72 69 63 6b 73 2e 74 Module("tricks.t
8790: 72 69 63 6b 73 22 29 3b 0d 0a 09 65 78 70 6c 6f ricks");...explo
87a0: 72 65 72 2e 70 61 63 6b 61 67 65 45 78 70 6c 6f rer.packageExplo
87b0: 72 65 72 2e 61 64 64 4d 6f 64 75 6c 65 28 22 74 rer.addModule("t
87c0: 72 69 63 6b 73 2e 74 65 73 74 22 29 3b 0d 0a 09 ricks.test");...
87d0: 65 78 70 6c 6f 72 65 72 2e 70 61 63 6b 61 67 65 explorer.package
87e0: 45 78 70 6c 6f 72 65 72 2e 61 64 64 4d 6f 64 75 Explorer.addModu
87f0: 6c 65 28 22 70 6f 6c 65 6d 79 2e 5f 63 6f 6d 6d le("polemy._comm
8800: 6f 6e 22 29 3b 0d 0a 09 65 78 70 6c 6f 72 65 72 on");...explorer
8810: 2e 70 61 63 6b 61 67 65 45 78 70 6c 6f 72 65 72 .packageExplorer
8820: 2e 61 64 64 4d 6f 64 75 6c 65 28 22 70 6f 6c 65 .addModule("pole
8830: 6d 79 2e 66 61 69 6c 75 72 65 22 29 3b 0d 0a 09 my.failure");...
8840: 65 78 70 6c 6f 72 65 72 2e 70 61 63 6b 61 67 65 explorer.package
8850: 45 78 70 6c 6f 72 65 72 2e 61 64 64 4d 6f 64 75 Explorer.addModu
8860: 6c 65 28 22 70 6f 6c 65 6d 79 2e 6c 61 79 65 72 le("polemy.layer
8870: 22 29 3b 0d 0a 09 65 78 70 6c 6f 72 65 72 2e 70 ");...explorer.p
8880: 61 63 6b 61 67 65 45 78 70 6c 6f 72 65 72 2e 61 ackageExplorer.a
8890: 64 64 4d 6f 64 75 6c 65 28 22 70 6f 6c 65 6d 79 ddModule("polemy
88a0: 2e 66 72 65 73 68 22 29 3b 0d 0a 09 65 78 70 6c .fresh");...expl
88b0: 6f 72 65 72 2e 70 61 63 6b 61 67 65 45 78 70 6c orer.packageExpl
88c0: 6f 72 65 72 2e 61 64 64 4d 6f 64 75 6c 65 28 22 orer.addModule("
88d0: 70 6f 6c 65 6d 79 2e 6c 65 78 22 29 3b 0d 0a 09 polemy.lex");...
88e0: 65 78 70 6c 6f 72 65 72 2e 70 61 63 6b 61 67 65 explorer.package
88f0: 45 78 70 6c 6f 72 65 72 2e 61 64 64 4d 6f 64 75 Explorer.addModu
8900: 6c 65 28 22 70 6f 6c 65 6d 79 2e 70 61 72 73 65 le("polemy.parse
8910: 22 29 3b 0d 0a 09 65 78 70 6c 6f 72 65 72 2e 70 ");...explorer.p
8920: 61 63 6b 61 67 65 45 78 70 6c 6f 72 65 72 2e 61 ackageExplorer.a
8930: 64 64 4d 6f 64 75 6c 65 28 22 70 6f 6c 65 6d 79 ddModule("polemy
8940: 2e 61 73 74 22 29 3b 0d 0a 09 65 78 70 6c 6f 72 .ast");...explor
8950: 65 72 2e 70 61 63 6b 61 67 65 45 78 70 6c 6f 72 er.packageExplor
8960: 65 72 2e 61 64 64 4d 6f 64 75 6c 65 28 22 70 6f er.addModule("po
8970: 6c 65 6d 79 2e 76 61 6c 75 65 22 29 3b 0d 0a 09 lemy.value");...
8980: 65 78 70 6c 6f 72 65 72 2e 70 61 63 6b 61 67 65 explorer.package
8990: 45 78 70 6c 6f 72 65 72 2e 61 64 64 4d 6f 64 75 Explorer.addModu
89a0: 6c 65 28 22 70 6f 6c 65 6d 79 2e 76 61 6c 75 65 le("polemy.value
89b0: 63 6f 6e 76 22 29 3b 0d 0a 09 65 78 70 6c 6f 72 conv");...explor
89c0: 65 72 2e 70 61 63 6b 61 67 65 45 78 70 6c 6f 72 er.packageExplor
89d0: 65 72 2e 61 64 64 4d 6f 64 75 6c 65 28 22 70 6f er.addModule("po
89e0: 6c 65 6d 79 2e 65 76 61 6c 22 29 3b 0d 0a 09 65 lemy.eval");...e
89f0: 78 70 6c 6f 72 65 72 2e 70 61 63 6b 61 67 65 45 xplorer.packageE
8a00: 78 70 6c 6f 72 65 72 2e 61 64 64 4d 6f 64 75 6c xplorer.addModul
8a10: 65 28 22 70 6f 6c 65 6d 79 2e 72 75 6e 74 69 6d e("polemy.runtim
8a20: 65 22 29 3b 0d 0a 09 65 78 70 6c 6f 72 65 72 2e e");...explorer.
8a30: 70 61 63 6b 61 67 65 45 78 70 6c 6f 72 65 72 2e packageExplorer.
8a40: 61 64 64 4d 6f 64 75 6c 65 28 22 70 6f 6c 65 6d addModule("polem
8a50: 79 2e 72 65 70 6c 22 29 3b 3c 2f 73 63 72 69 70 y.repl");</scrip
8a60: 74 3e 0d 0a 3c 2f 62 6f 64 79 3e 3c 2f 68 74 6d t>..</body></htm
8a70: 6c 3e 0d 0a 0d 0a 0d 0a l>......