|
|
1.1 ! root 1: %!PS-Adobe-1.0 ! 2: %%Creator: mace.Berkeley.EDU:ouster (John Ousterhout,525E,0865,5476132) ! 3: %%Title: stdin (ditroff) ! 4: %%CreationDate: Fri Dec 22 15:50:55 1989 ! 5: %%EndComments ! 6: % @(#)psdit.pro 1.3 4/15/88 ! 7: % lib/psdit.pro -- prolog for psdit (ditroff) files ! 8: % Copyright (c) 1984, 1985 Adobe Systems Incorporated. All Rights Reserved. ! 9: % last edit: shore Sat Nov 23 20:28:03 1985 ! 10: % RCSID: $Header: psdit.pro,v 2.1 85/11/24 12:19:43 shore Rel $ ! 11: ! 12: % Changed by Edward Wang ([email protected]) to handle graphics, ! 13: % 17 Feb, 87. ! 14: ! 15: /$DITroff 140 dict def $DITroff begin ! 16: /fontnum 1 def /fontsize 10 def /fontheight 10 def /fontslant 0 def ! 17: /xi{0 72 11 mul translate 72 resolution div dup neg scale 0 0 moveto ! 18: /fontnum 1 def /fontsize 10 def /fontheight 10 def /fontslant 0 def F ! 19: /pagesave save def}def ! 20: /PB{save /psv exch def currentpoint translate ! 21: resolution 72 div dup neg scale 0 0 moveto}def ! 22: /PE{psv restore}def ! 23: /arctoobig 90 def /arctoosmall .05 def ! 24: /m1 matrix def /m2 matrix def /m3 matrix def /oldmat matrix def ! 25: /tan{dup sin exch cos div}def ! 26: /point{resolution 72 div mul}def ! 27: /dround {transform round exch round exch itransform}def ! 28: /xT{/devname exch def}def ! 29: /xr{/mh exch def /my exch def /resolution exch def}def ! 30: /xp{}def ! 31: /xs{docsave restore end}def ! 32: /xt{}def ! 33: /xf{/fontname exch def /slotno exch def fontnames slotno get fontname eq not ! 34: {fonts slotno fontname findfont put fontnames slotno fontname put}if}def ! 35: /xH{/fontheight exch def F}def ! 36: /xS{/fontslant exch def F}def ! 37: /s{/fontsize exch def /fontheight fontsize def F}def ! 38: /f{/fontnum exch def F}def ! 39: /F{fontheight 0 le{/fontheight fontsize def}if ! 40: fonts fontnum get fontsize point 0 0 fontheight point neg 0 0 m1 astore ! 41: fontslant 0 ne{1 0 fontslant tan 1 0 0 m2 astore m3 concatmatrix}if ! 42: makefont setfont .04 fontsize point mul 0 dround pop setlinewidth}def ! 43: /X{exch currentpoint exch pop moveto show}def ! 44: /N{3 1 roll moveto show}def ! 45: /Y{exch currentpoint pop exch moveto show}def ! 46: /S{show}def ! 47: /ditpush{}def/ditpop{}def ! 48: /AX{3 -1 roll currentpoint exch pop moveto 0 exch ashow}def ! 49: /AN{4 2 roll moveto 0 exch ashow}def ! 50: /AY{3 -1 roll currentpoint pop exch moveto 0 exch ashow}def ! 51: /AS{0 exch ashow}def ! 52: /MX{currentpoint exch pop moveto}def ! 53: /MY{currentpoint pop exch moveto}def ! 54: /MXY{moveto}def ! 55: /cb{pop}def % action on unknown char -- nothing for now ! 56: /n{}def/w{}def ! 57: /p{pop showpage pagesave restore /pagesave save def}def ! 58: /Dt{/Dlinewidth exch def}def 1 Dt ! 59: /Ds{/Ddash exch def}def -1 Ds ! 60: /Di{/Dstipple exch def}def 1 Di ! 61: /Dsetlinewidth{2 Dlinewidth mul setlinewidth}def ! 62: /Dsetdash{Ddash 4 eq{[8 12]}{Ddash 16 eq{[32 36]} ! 63: {Ddash 20 eq{[32 12 8 12]}{[]}ifelse}ifelse}ifelse 0 setdash}def ! 64: /Dstroke{gsave Dsetlinewidth Dsetdash 1 setlinecap stroke grestore ! 65: currentpoint newpath moveto}def ! 66: /Dl{rlineto Dstroke}def ! 67: /arcellipse{/diamv exch def /diamh exch def oldmat currentmatrix pop ! 68: currentpoint translate 1 diamv diamh div scale /rad diamh 2 div def ! 69: currentpoint exch rad add exch rad -180 180 arc oldmat setmatrix}def ! 70: /Dc{dup arcellipse Dstroke}def ! 71: /De{arcellipse Dstroke}def ! 72: /Da{/endv exch def /endh exch def /centerv exch def /centerh exch def ! 73: /cradius centerv centerv mul centerh centerh mul add sqrt def ! 74: /eradius endv endv mul endh endh mul add sqrt def ! 75: /endang endv endh atan def ! 76: /startang centerv neg centerh neg atan def ! 77: /sweep startang endang sub dup 0 lt{360 add}if def ! 78: sweep arctoobig gt ! 79: {/midang startang sweep 2 div sub def /midrad cradius eradius add 2 div def ! 80: /midh midang cos midrad mul def /midv midang sin midrad mul def ! 81: midh neg midv neg endh endv centerh centerv midh midv Da ! 82: Da} ! 83: {sweep arctoosmall ge ! 84: {/controldelt 1 sweep 2 div cos sub 3 sweep 2 div sin mul div 4 mul def ! 85: centerv neg controldelt mul centerh controldelt mul ! 86: endv neg controldelt mul centerh add endh add ! 87: endh controldelt mul centerv add endv add ! 88: centerh endh add centerv endv add rcurveto Dstroke} ! 89: {centerh endh add centerv endv add rlineto Dstroke} ! 90: ifelse} ! 91: ifelse}def ! 92: /Dpatterns[ ! 93: [%cf[widthbits] ! 94: [8<0000000000000010>] ! 95: [8<0411040040114000>] ! 96: [8<0204081020408001>] ! 97: [8<0000103810000000>] ! 98: [8<6699996666999966>] ! 99: [8<0000800100001008>] ! 100: [8<81c36666c3810000>] ! 101: [8<0f0e0c0800000000>] ! 102: [8<0000000000000010>] ! 103: [8<0411040040114000>] ! 104: [8<0204081020408001>] ! 105: [8<0000001038100000>] ! 106: [8<6699996666999966>] ! 107: [8<0000800100001008>] ! 108: [8<81c36666c3810000>] ! 109: [8<0f0e0c0800000000>] ! 110: [8<0042660000246600>] ! 111: [8<0000990000990000>] ! 112: [8<0804020180402010>] ! 113: [8<2418814242811824>] ! 114: [8<6699996666999966>] ! 115: [8<8000000008000000>] ! 116: [8<00001c3e363e1c00>] ! 117: [8<0000000000000000>] ! 118: [32<00000040000000c00000004000000040000000e0000000000000000000000000>] ! 119: [32<00000000000060000000900000002000000040000000f0000000000000000000>] ! 120: [32<000000000000000000e0000000100000006000000010000000e0000000000000>] ! 121: [32<00000000000000002000000060000000a0000000f00000002000000000000000>] ! 122: [32<0000000e0000000000000000000000000000000f000000080000000e00000001>] ! 123: [32<0000090000000600000000000000000000000000000007000000080000000e00>] ! 124: [32<00010000000200000004000000040000000000000000000000000000000f0000>] ! 125: [32<0900000006000000090000000600000000000000000000000000000006000000>]] ! 126: [%ug ! 127: [8<0000020000000000>] ! 128: [8<0000020000002000>] ! 129: [8<0004020000002000>] ! 130: [8<0004020000402000>] ! 131: [8<0004060000402000>] ! 132: [8<0004060000406000>] ! 133: [8<0006060000406000>] ! 134: [8<0006060000606000>] ! 135: [8<00060e0000606000>] ! 136: [8<00060e000060e000>] ! 137: [8<00070e000060e000>] ! 138: [8<00070e000070e000>] ! 139: [8<00070e020070e000>] ! 140: [8<00070e020070e020>] ! 141: [8<04070e020070e020>] ! 142: [8<04070e024070e020>] ! 143: [8<04070e064070e020>] ! 144: [8<04070e064070e060>] ! 145: [8<06070e064070e060>] ! 146: [8<06070e066070e060>] ! 147: [8<06070f066070e060>] ! 148: [8<06070f066070f060>] ! 149: [8<060f0f066070f060>] ! 150: [8<060f0f0660f0f060>] ! 151: [8<060f0f0760f0f060>] ! 152: [8<060f0f0760f0f070>] ! 153: [8<0e0f0f0760f0f070>] ! 154: [8<0e0f0f07e0f0f070>] ! 155: [8<0e0f0f0fe0f0f070>] ! 156: [8<0e0f0f0fe0f0f0f0>] ! 157: [8<0f0f0f0fe0f0f0f0>] ! 158: [8<0f0f0f0ff0f0f0f0>] ! 159: [8<1f0f0f0ff0f0f0f0>] ! 160: [8<1f0f0f0ff1f0f0f0>] ! 161: [8<1f0f0f8ff1f0f0f0>] ! 162: [8<1f0f0f8ff1f0f0f8>] ! 163: [8<9f0f0f8ff1f0f0f8>] ! 164: [8<9f0f0f8ff9f0f0f8>] ! 165: [8<9f0f0f9ff9f0f0f8>] ! 166: [8<9f0f0f9ff9f0f0f9>] ! 167: [8<9f8f0f9ff9f0f0f9>] ! 168: [8<9f8f0f9ff9f8f0f9>] ! 169: [8<9f8f1f9ff9f8f0f9>] ! 170: [8<9f8f1f9ff9f8f1f9>] ! 171: [8<bf8f1f9ff9f8f1f9>] ! 172: [8<bf8f1f9ffbf8f1f9>] ! 173: [8<bf8f1fdffbf8f1f9>] ! 174: [8<bf8f1fdffbf8f1fd>] ! 175: [8<ff8f1fdffbf8f1fd>] ! 176: [8<ff8f1fdffff8f1fd>] ! 177: [8<ff8f1ffffff8f1fd>] ! 178: [8<ff8f1ffffff8f1ff>] ! 179: [8<ff9f1ffffff8f1ff>] ! 180: [8<ff9f1ffffff9f1ff>] ! 181: [8<ff9f9ffffff9f1ff>] ! 182: [8<ff9f9ffffff9f9ff>] ! 183: [8<ffbf9ffffff9f9ff>] ! 184: [8<ffbf9ffffffbf9ff>] ! 185: [8<ffbfdffffffbf9ff>] ! 186: [8<ffbfdffffffbfdff>] ! 187: [8<ffffdffffffbfdff>] ! 188: [8<ffffdffffffffdff>] ! 189: [8<fffffffffffffdff>] ! 190: [8<ffffffffffffffff>]] ! 191: [%mg ! 192: [8<8000000000000000>] ! 193: [8<0822080080228000>] ! 194: [8<0204081020408001>] ! 195: [8<40e0400000000000>] ! 196: [8<66999966>] ! 197: [8<8001000010080000>] ! 198: [8<81c36666c3810000>] ! 199: [8<f0e0c08000000000>] ! 200: [16<07c00f801f003e007c00f800f001e003c007800f001f003e007c00f801f003e0>] ! 201: [16<1f000f8007c003e001f000f8007c003e001f800fc007e003f001f8007c003e00>] ! 202: [8<c3c300000000c3c3>] ! 203: [16<0040008001000200040008001000200040008000000100020004000800100020>] ! 204: [16<0040002000100008000400020001800040002000100008000400020001000080>] ! 205: [16<1fc03fe07df0f8f8f07de03fc01f800fc01fe03ff07df8f87df03fe01fc00f80>] ! 206: [8<80>] ! 207: [8<8040201000000000>] ! 208: [8<84cc000048cc0000>] ! 209: [8<9900009900000000>] ! 210: [8<08040201804020100800020180002010>] ! 211: [8<2418814242811824>] ! 212: [8<66999966>] ! 213: [8<8000000008000000>] ! 214: [8<70f8d8f870000000>] ! 215: [8<0814224180402010>] ! 216: [8<aa00440a11a04400>] ! 217: [8<018245aa45820100>] ! 218: [8<221c224180808041>] ! 219: [8<88000000>] ! 220: [8<0855800080550800>] ! 221: [8<2844004482440044>] ! 222: [8<0810204080412214>] ! 223: [8<00>]]]def ! 224: /Dfill{ ! 225: transform /maxy exch def /maxx exch def ! 226: transform /miny exch def /minx exch def ! 227: minx maxx gt{/minx maxx /maxx minx def def}if ! 228: miny maxy gt{/miny maxy /maxy miny def def}if ! 229: Dpatterns Dstipple 1 sub get exch 1 sub get ! 230: aload pop /stip exch def /stipw exch def /stiph 128 def ! 231: /imatrix[stipw 0 0 stiph 0 0]def ! 232: /tmatrix[stipw 0 0 stiph 0 0]def ! 233: /minx minx cvi stiph idiv stiph mul def ! 234: /miny miny cvi stipw idiv stipw mul def ! 235: gsave eoclip 0 setgray ! 236: miny stiph maxy{ ! 237: tmatrix exch 5 exch put ! 238: minx stipw maxx{ ! 239: tmatrix exch 4 exch put tmatrix setmatrix ! 240: stipw stiph true imatrix {stip} imagemask ! 241: }for ! 242: }for ! 243: grestore ! 244: }def ! 245: /Dp{Dfill Dstroke}def ! 246: /DP{Dfill currentpoint newpath moveto}def ! 247: end ! 248: ! 249: /ditstart{$DITroff begin ! 250: /nfonts 60 def % NFONTS makedev/ditroff dependent! ! 251: /fonts[nfonts{0}repeat]def ! 252: /fontnames[nfonts{()}repeat]def ! 253: /docsave save def ! 254: }def ! 255: ! 256: % character outcalls ! 257: /oc{ ! 258: /pswid exch def /cc exch def /name exch def ! 259: /ditwid pswid fontsize mul resolution mul 72000 div def ! 260: /ditsiz fontsize resolution mul 72 div def ! 261: ocprocs name known{ocprocs name get exec}{name cb}ifelse ! 262: }def ! 263: /fractm [.65 0 0 .6 0 0] def ! 264: /fraction{ ! 265: /fden exch def /fnum exch def gsave /cf currentfont def ! 266: cf fractm makefont setfont 0 .3 dm 2 copy neg rmoveto ! 267: fnum show rmoveto currentfont cf setfont(\244)show setfont fden show ! 268: grestore ditwid 0 rmoveto ! 269: }def ! 270: /oce{grestore ditwid 0 rmoveto}def ! 271: /dm{ditsiz mul}def ! 272: /ocprocs 50 dict def ocprocs begin ! 273: (14){(1)(4)fraction}def ! 274: (12){(1)(2)fraction}def ! 275: (34){(3)(4)fraction}def ! 276: (13){(1)(3)fraction}def ! 277: (23){(2)(3)fraction}def ! 278: (18){(1)(8)fraction}def ! 279: (38){(3)(8)fraction}def ! 280: (58){(5)(8)fraction}def ! 281: (78){(7)(8)fraction}def ! 282: (sr){gsave 0 .06 dm rmoveto(\326)show oce}def ! 283: (is){gsave 0 .15 dm rmoveto(\362)show oce}def ! 284: (->){gsave 0 .02 dm rmoveto(\256)show oce}def ! 285: (<-){gsave 0 .02 dm rmoveto(\254)show oce}def ! 286: (==){gsave 0 .05 dm rmoveto(\272)show oce}def ! 287: (uc){gsave currentpoint 400 .009 dm mul add translate ! 288: 8 -8 scale ucseal oce}def ! 289: end ! 290: ! 291: % an attempt at a PostScript FONT to implement ditroff special chars ! 292: % this will enable us to ! 293: % cache the little buggers ! 294: % generate faster, more compact PS out of psdit ! 295: % confuse everyone (including myself)! ! 296: 50 dict dup begin ! 297: /FontType 3 def ! 298: /FontName /DIThacks def ! 299: /FontMatrix [.001 0 0 .001 0 0] def ! 300: /FontBBox [-260 -260 900 900] def% a lie but ... ! 301: /Encoding 256 array def ! 302: 0 1 255{Encoding exch /.notdef put}for ! 303: Encoding ! 304: dup 8#040/space put %space ! 305: dup 8#110/rc put %right ceil ! 306: dup 8#111/lt put %left top curl ! 307: dup 8#112/bv put %bold vert ! 308: dup 8#113/lk put %left mid curl ! 309: dup 8#114/lb put %left bot curl ! 310: dup 8#115/rt put %right top curl ! 311: dup 8#116/rk put %right mid curl ! 312: dup 8#117/rb put %right bot curl ! 313: dup 8#120/rf put %right floor ! 314: dup 8#121/lf put %left floor ! 315: dup 8#122/lc put %left ceil ! 316: dup 8#140/sq put %square ! 317: dup 8#141/bx put %box ! 318: dup 8#142/ci put %circle ! 319: dup 8#143/br put %box rule ! 320: dup 8#144/rn put %root extender ! 321: dup 8#145/vr put %vertical rule ! 322: dup 8#146/ob put %outline bullet ! 323: dup 8#147/bu put %bullet ! 324: dup 8#150/ru put %rule ! 325: dup 8#151/ul put %underline ! 326: pop ! 327: /DITfd 100 dict def ! 328: /BuildChar{0 begin ! 329: /cc exch def /fd exch def ! 330: /charname fd /Encoding get cc get def ! 331: /charwid fd /Metrics get charname get def ! 332: /charproc fd /CharProcs get charname get def ! 333: charwid 0 fd /FontBBox get aload pop setcachedevice ! 334: 2 setlinejoin 40 setlinewidth ! 335: newpath 0 0 moveto gsave charproc grestore ! 336: end}def ! 337: /BuildChar load 0 DITfd put ! 338: /CharProcs 50 dict def ! 339: CharProcs begin ! 340: /space{}def ! 341: /.notdef{}def ! 342: /ru{500 0 rls}def ! 343: /rn{0 840 moveto 500 0 rls}def ! 344: /vr{0 800 moveto 0 -770 rls}def ! 345: /bv{0 800 moveto 0 -1000 rls}def ! 346: /br{0 840 moveto 0 -1000 rls}def ! 347: /ul{0 -140 moveto 500 0 rls}def ! 348: /ob{200 250 rmoveto currentpoint newpath 200 0 360 arc closepath stroke}def ! 349: /bu{200 250 rmoveto currentpoint newpath 200 0 360 arc closepath fill}def ! 350: /sq{80 0 rmoveto currentpoint dround newpath moveto ! 351: 640 0 rlineto 0 640 rlineto -640 0 rlineto closepath stroke}def ! 352: /bx{80 0 rmoveto currentpoint dround newpath moveto ! 353: 640 0 rlineto 0 640 rlineto -640 0 rlineto closepath fill}def ! 354: /ci{500 360 rmoveto currentpoint newpath 333 0 360 arc ! 355: 50 setlinewidth stroke}def ! 356: ! 357: /lt{0 -200 moveto 0 550 rlineto currx 800 2cx s4 add exch s4 a4p stroke}def ! 358: /lb{0 800 moveto 0 -550 rlineto currx -200 2cx s4 add exch s4 a4p stroke}def ! 359: /rt{0 -200 moveto 0 550 rlineto currx 800 2cx s4 sub exch s4 a4p stroke}def ! 360: /rb{0 800 moveto 0 -500 rlineto currx -200 2cx s4 sub exch s4 a4p stroke}def ! 361: /lk{0 800 moveto 0 300 -300 300 s4 arcto pop pop 1000 sub ! 362: 0 300 4 2 roll s4 a4p 0 -200 lineto stroke}def ! 363: /rk{0 800 moveto 0 300 s2 300 s4 arcto pop pop 1000 sub ! 364: 0 300 4 2 roll s4 a4p 0 -200 lineto stroke}def ! 365: /lf{0 800 moveto 0 -1000 rlineto s4 0 rls}def ! 366: /rf{0 800 moveto 0 -1000 rlineto s4 neg 0 rls}def ! 367: /lc{0 -200 moveto 0 1000 rlineto s4 0 rls}def ! 368: /rc{0 -200 moveto 0 1000 rlineto s4 neg 0 rls}def ! 369: end ! 370: ! 371: /Metrics 50 dict def Metrics begin ! 372: /.notdef 0 def ! 373: /space 500 def ! 374: /ru 500 def ! 375: /br 0 def ! 376: /lt 416 def ! 377: /lb 416 def ! 378: /rt 416 def ! 379: /rb 416 def ! 380: /lk 416 def ! 381: /rk 416 def ! 382: /rc 416 def ! 383: /lc 416 def ! 384: /rf 416 def ! 385: /lf 416 def ! 386: /bv 416 def ! 387: /ob 350 def ! 388: /bu 350 def ! 389: /ci 750 def ! 390: /bx 750 def ! 391: /sq 750 def ! 392: /rn 500 def ! 393: /ul 500 def ! 394: /vr 0 def ! 395: end ! 396: ! 397: DITfd begin ! 398: /s2 500 def /s4 250 def /s3 333 def ! 399: /a4p{arcto pop pop pop pop}def ! 400: /2cx{2 copy exch}def ! 401: /rls{rlineto stroke}def ! 402: /currx{currentpoint pop}def ! 403: /dround{transform round exch round exch itransform} def ! 404: end ! 405: end ! 406: /DIThacks exch definefont pop ! 407: ditstart ! 408: (psc)xT ! 409: 576 1 1 xr ! 410: 1(Times-Roman)xf 1 f ! 411: 2(Times-Italic)xf 2 f ! 412: 3(Times-Bold)xf 3 f ! 413: 4(Times-BoldItalic)xf 4 f ! 414: 5(Helvetica)xf 5 f ! 415: 6(Helvetica-Bold)xf 6 f ! 416: 7(Courier)xf 7 f ! 417: 8(Courier-Bold)xf 8 f ! 418: 9(Symbol)xf 9 f ! 419: 10(DIThacks)xf 10 f ! 420: 10 s ! 421: 1 f ! 422: xi ! 423: %%EndProlog ! 424: ! 425: %%Page: 1 1 ! 426: 10 s 10 xH 0 xS 1 f ! 427: 11 s ! 428: 3 f ! 429: 14 s ! 430: 1420 1144(Tcl:)N ! 431: 1669(An)X ! 432: 1840(Embeddable)X ! 433: 2471(Command)X ! 434: 3004(Language)X ! 435: 2 f ! 436: 12 s ! 437: 2070 1469(John)N ! 438: 2281(K.)X ! 439: 2393(Ousterhout)X ! 440: 1 f ! 441: 1916 1794(Computer)N ! 442: 2325(Science)X ! 443: 2649(Division)X ! 444: 1548 1893 0.3542(Electrical)AN ! 445: 1943(Engineering)X ! 446: 2438(and)X ! 447: 2601(Computer)X ! 448: 3010(Sciences)X ! 449: 1752 1992(University)N ! 450: 2182(of)X ! 451: 2286(California)X ! 452: 2701(at)X ! 453: 2795(Berkeley)X ! 454: 2051 2091(Berkeley,)N ! 455: 2447(CA)X ! 456: 2604(94720)X ! 457: 1920 2190([email protected])N ! 458: 3 f ! 459: 2187 2614(ABSTRACT)N ! 460: 1 f ! 461: 11 s ! 462: 1040 2878(Tcl)N ! 463: 1182(is)X ! 464: 1265(an)X ! 465: 1372(interpreter)X ! 466: 1762(for)X ! 467: 1887(a)X ! 468: 1949(tool)X ! 469: 2110(command)X ! 470: 2481(language.)X ! 471: 2866(It)X ! 472: 2943(consists)X ! 473: 3245(of)X ! 474: 3341(a)X ! 475: 3403(library)X ! 476: 3661(pack-)X ! 477: 1040 2977(age)N ! 478: 1199(that)X ! 479: 1369(is)X ! 480: 1465(embedded)X ! 481: 1864(in)X ! 482: 1970(tools)X ! 483: 2179(\(such)X ! 484: 2406(as)X ! 485: 2515(editors,)X ! 486: 2813(debuggers,)X ! 487: 3232(etc.\))X ! 488: 3422(as)X ! 489: 3531(the)X ! 490: 3675(basic)X ! 491: 1040 3076(command)N ! 492: 1418(interpreter.)X ! 493: 1858(Tcl)X ! 494: 2005(provides)X ! 495: 2337(\(a\))X ! 496: 2463(a)X ! 497: 2531(parser)X ! 498: 2774(for)X ! 499: 2905(a)X ! 500: 2973(simple)X ! 501: 3238(textual)X ! 502: 3508(command)X ! 503: 1040 3175(language,)N ! 504: 1414(\(b\))X ! 505: 1550(a)X ! 506: 1623(collection)X ! 507: 2006(of)X ! 508: 2113(built-in)X ! 509: 2408(utility)X ! 510: 2655(commands,)X ! 511: 3093(and)X ! 512: 3254(\(c\))X ! 513: 3384(a)X ! 514: 3456(C)X ! 515: 3548(interface)X ! 516: 1040 3274(that)N ! 517: 1201(tools)X ! 518: 1401(use)X ! 519: 1546(to)X ! 520: 1642(augment)X ! 521: 1973(the)X ! 522: 2108(built-in)X ! 523: 2396(commands)X ! 524: 2805(with)X ! 525: 2989(tool-speci\256c)X ! 526: 3452(commands.)X ! 527: 1040 3373(Tcl)N ! 528: 1187(is)X ! 529: 1275(particularly)X ! 530: 1711(attractive)X ! 531: 2069(when)X ! 532: 2288(integrated)X ! 533: 2670(with)X ! 534: 2856(the)X ! 535: 2993(widget)X ! 536: 3262(library)X ! 537: 3526(of)X ! 538: 3628(a)X ! 539: 3695(win-)X ! 540: 1040 3472(dow)N ! 541: 1233(system:)X ! 542: 1567(it)X ! 543: 1659(increases)X ! 544: 2022(the)X ! 545: 2171(programmability)X ! 546: 2806(of)X ! 547: 2920(the)X ! 548: 3069(widgets)X ! 549: 3384(by)X ! 550: 3513(providing)X ! 551: 1040 3571(mechanisms)N ! 552: 1504(for)X ! 553: 1634(variables,)X ! 554: 2002(procedures,)X ! 555: 2437(expressions,)X ! 556: 2896(etc;)X ! 557: 3073(it)X ! 558: 3150(allows)X ! 559: 3407(users)X ! 560: 3614(to)X ! 561: 3710(pro-)X ! 562: 1040 3670(gram)N ! 563: 1245(both)X ! 564: 1426(the)X ! 565: 1558(appearance)X ! 566: 1977(and)X ! 567: 2128(the)X ! 568: 2259(actions)X ! 569: 2532(of)X ! 570: 2628(widgets;)X ! 571: 2972(and)X ! 572: 3122(it)X ! 573: 3195(offers)X ! 574: 3422(a)X ! 575: 3484(simple)X ! 576: 3743(but)X ! 577: 1040 3769(powerful)N ! 578: 1379(communication)X ! 579: 1951(mechanism)X ! 580: 2375(between)X ! 581: 2690(interactive)X ! 582: 3085(programs.)X ! 583: 2 f ! 584: 1097 4160(This)N ! 585: 1271(paper)X ! 586: 1498(will)X ! 587: 1654(appear)X ! 588: 1925(in)X ! 589: 2016(the)X ! 590: 2146(1990)X ! 591: 2344(Winter)X ! 592: 2606(USENIX)X ! 593: 2931(Conference)X ! 594: 3359(Proceedings)X ! 595: 1 f ! 596: 10 s ! 597: 10 f ! 598: 720 5323(h)N ! 599: 752(hhhhhhhhhhhhhhhhhhhhhhhhhhhh)X ! 600: 1 f ! 601: 892 5432(The)N ! 602: 1052(work)X ! 603: 1252(described)X ! 604: 1595(here)X ! 605: 1769(was)X ! 606: 1929(supported)X ! 607: 2280(in)X ! 608: 2377(part)X ! 609: 2537(by)X ! 610: 2652(the)X ! 611: 2784(National)X ! 612: 3094(Science)X ! 613: 3378(Foundation)X ! 614: 3776(under)X ! 615: 3993(Grant)X ! 616: 720 5522(ECS-8351961.)N ! 617: ! 618: 1 p ! 619: %%Page: 1 2 ! 620: 10 s 10 xH 0 xS 1 f ! 621: 3 f ! 622: 11 s ! 623: 720 483(Tcl:)N ! 624: 894(An)X ! 625: 1028(Embeddable)X ! 626: 1525(Command)X ! 627: 1942(Language)X ! 628: 3466(December)X ! 629: 3868(22,)X ! 630: 4000(1989)X ! 631: 720 771(1.)N ! 632: 830(Introduction)X ! 633: 1 f ! 634: 920 903(Tcl)N ! 635: 1071(stands)X ! 636: 1324(for)X ! 637: 1459(``tool)X ! 638: 1687(command)X ! 639: 2067(language''.)X ! 640: 2519(It)X ! 641: 2605(consists)X ! 642: 2916(of)X ! 643: 3021(a)X ! 644: 3092(library)X ! 645: 3359(package)X ! 646: 3679(that)X ! 647: 3844(programs)X ! 648: 720 1002(can)N ! 649: 865(use)X ! 650: 1005(as)X ! 651: 1101(the)X ! 652: 1232(basis)X ! 653: 1431(for)X ! 654: 1556(their)X ! 655: 1740(command)X ! 656: 2110(languages.)X ! 657: 2528(The)X ! 658: 2687(development)X ! 659: 3165(of)X ! 660: 3260(Tcl)X ! 661: 3400(was)X ! 662: 3558(motivated)X ! 663: 3934(by)X ! 664: 4044(two)X ! 665: 720 1101(observations.)N ! 666: 1240(The)X ! 667: 1408(\256rst)X ! 668: 1576(observation)X ! 669: 2018(is)X ! 670: 2108(that)X ! 671: 2271(a)X ! 672: 2340(general-purpose)X ! 673: 2936(programmable)X ! 674: 3480(command)X ! 675: 3858(language)X ! 676: 720 1200(ampli\256es)N ! 677: 1075(the)X ! 678: 1214(power)X ! 679: 1464(of)X ! 680: 1568(a)X ! 681: 1637(tool)X ! 682: 1805(by)X ! 683: 1923(allowing)X ! 684: 2262(users)X ! 685: 2472(to)X ! 686: 2571(write)X ! 687: 2782(programs)X ! 688: 3144(in)X ! 689: 3243(the)X ! 690: 3381(command)X ! 691: 3759(language)X ! 692: 4107(in)X ! 693: 720 1299(order)N ! 694: 933(to)X ! 695: 1030(extend)X ! 696: 1293(the)X ! 697: 1429(tool's)X ! 698: 1658(built-in)X ! 699: 1947(facilities.)X ! 700: 2324(Among)X ! 701: 2616(the)X ! 702: 2752(best-known)X ! 703: 3190(examples)X ! 704: 3551(of)X ! 705: 3651(powerful)X ! 706: 3995(com-)X ! 707: 720 1398(mand)N ! 708: 943(languages)X ! 709: 1322(are)X ! 710: 1456(those)X ! 711: 1669(of)X ! 712: 1769(the)X ! 713: 1904(UNIX)X ! 714: 2149(shells)X ! 715: 2377([5])X ! 716: 2506(and)X ! 717: 2660(the)X ! 718: 2795(Emacs)X ! 719: 3057(editor)X ! 720: 3290([8].)X ! 721: 3463(In)X ! 722: 3563(each)X ! 723: 3751(case)X ! 724: 3929(a)X ! 725: 3995(com-)X ! 726: 720 1497(puting)N ! 727: 970(environment)X ! 728: 1440(of)X ! 729: 1537(unusual)X ! 730: 1834(power)X ! 731: 2076(has)X ! 732: 2216(arisen,)X ! 733: 2471(in)X ! 734: 2563(large)X ! 735: 2762(part)X ! 736: 2922(because)X ! 737: 3223(of)X ! 738: 3319(the)X ! 739: 3450 0.2898(availability)AX ! 740: 3872(of)X ! 741: 3968(a)X ! 742: 4030(pro-)X ! 743: 720 1596(grammable)N ! 744: 1139(command)X ! 745: 1509(language.)X ! 746: 920 1728(The)N ! 747: 1083(second)X ! 748: 1352(motivating)X ! 749: 1761(observation)X ! 750: 2197(is)X ! 751: 2281(that)X ! 752: 2439(the)X ! 753: 2572(number)X ! 754: 2866(of)X ! 755: 2964(interactive)X ! 756: 3362(applications)X ! 757: 3814(is)X ! 758: 3898(increas-)X ! 759: 720 1827(ing.)N ! 760: 911(In)X ! 761: 1018(the)X ! 762: 1160(timesharing)X ! 763: 1611(environments)X ! 764: 2125(of)X ! 765: 2232(the)X ! 766: 2374(late)X ! 767: 2536(1970's)X ! 768: 2809(and)X ! 769: 2970(early)X ! 770: 3180(1980's)X ! 771: 3453(almost)X ! 772: 3722(all)X ! 773: 3844(programs)X ! 774: 720 1926(were)N ! 775: 918(batch-oriented.)X ! 776: 1499(They)X ! 777: 1708(were)X ! 778: 1906(typically)X ! 779: 2244(invoked)X ! 780: 2556(using)X ! 781: 2775(an)X ! 782: 2886(interactive)X ! 783: 3287(command)X ! 784: 3663(shell.)X ! 785: 3902(Besides)X ! 786: 720 2025(the)N ! 787: 851(shell,)X ! 788: 1063(only)X ! 789: 1243(a)X ! 790: 1305(few)X ! 791: 1459(other)X ! 792: 1663(programs)X ! 793: 2018(needed)X ! 794: 2290(to)X ! 795: 2382(be)X ! 796: 2488(interactive,)X ! 797: 2906(such)X ! 798: 3090(as)X ! 799: 3186(editors)X ! 800: 3449(and)X ! 801: 3599(mailers.)X ! 802: 3925(In)X ! 803: 4020(con-)X ! 804: 720 2124(trast,)N ! 805: 923(the)X ! 806: 1060(personal)X ! 807: 1387(workstations)X ! 808: 1866(used)X ! 809: 2055(today,)X ! 810: 2301(with)X ! 811: 2486(their)X ! 812: 2676(raster)X ! 813: 2899(displays)X ! 814: 3216(and)X ! 815: 3371(mice,)X ! 816: 3593(encourage)X ! 817: 3982(a)X ! 818: 4049(dif-)X ! 819: 720 2223(ferent)N ! 820: 954(system)X ! 821: 1228(structure)X ! 822: 1565(where)X ! 823: 1808(a)X ! 824: 1876(large)X ! 825: 2081(number)X ! 826: 2379(of)X ! 827: 2480(programs)X ! 828: 2840(are)X ! 829: 2975(interactive)X ! 830: 3376(and)X ! 831: 3531(the)X ! 832: 3667(most)X ! 833: 3867(common)X ! 834: 720 2322(style)N ! 835: 915(of)X ! 836: 1016(interaction)X ! 837: 1422(is)X ! 838: 1509(to)X ! 839: 1606(manipulate)X ! 840: 2026(individual)X ! 841: 2412(applications)X ! 842: 2866(directly)X ! 843: 3163(with)X ! 844: 3347(a)X ! 845: 3413(mouse.)X ! 846: 3714(Furthermore,)X ! 847: 720 2421(the)N ! 848: 855(large)X ! 849: 1058(displays)X ! 850: 1374(available)X ! 851: 1720(today)X ! 852: 1943(make)X ! 853: 2161(it)X ! 854: 2238(possible)X ! 855: 2554(for)X ! 856: 2683(many)X ! 857: 2906(interactive)X ! 858: 3306(applications)X ! 859: 3760(to)X ! 860: 3856(be)X ! 861: 3965(active)X ! 862: 720 2520(at)N ! 863: 806(once,)X ! 864: 1016(whereas)X ! 865: 1325(this)X ! 866: 1475(was)X ! 867: 1633(not)X ! 868: 1768(practical)X ! 869: 2094(with)X ! 870: 2273(the)X ! 871: 2403(smaller)X ! 872: 2685(screens)X ! 873: 2965(of)X ! 874: 3060(ten)X ! 875: 3190(years)X ! 876: 3397(ago.)X ! 877: 920 2652(Unfortunately,)N ! 878: 1462(few)X ! 879: 1619(of)X ! 880: 1718(today's)X ! 881: 2002(interactive)X ! 882: 2400(applications)X ! 883: 2852(have)X ! 884: 3043(the)X ! 885: 3176(power)X ! 886: 3420(of)X ! 887: 3518(the)X ! 888: 3651(shell)X ! 889: 3843(or)X ! 890: 3941(Emacs)X ! 891: 720 2751(command)N ! 892: 1093(languages.)X ! 893: 1514(Where)X ! 894: 1773(good)X ! 895: 1974(command)X ! 896: 2346(languages)X ! 897: 2722(exist,)X ! 898: 2935(they)X ! 899: 3111(tend)X ! 900: 3287(to)X ! 901: 3380(be)X ! 902: 3487(tied)X ! 903: 3644(to)X ! 904: 3737(speci\256c)X ! 905: 4030(pro-)X ! 906: 720 2850(grams.)N ! 907: 1006(Each)X ! 908: 1209(new)X ! 909: 1382(interactive)X ! 910: 1782(application)X ! 911: 2202(requires)X ! 912: 2512(a)X ! 913: 2577(new)X ! 914: 2749(command)X ! 915: 3123(language)X ! 916: 3467(to)X ! 917: 3562(be)X ! 918: 3671(developed.)X ! 919: 4103(In)X ! 920: 720 2949(most)N ! 921: 919(cases)X ! 922: 1131(application)X ! 923: 1551(programmers)X ! 924: 2047(do)X ! 925: 2162(not)X ! 926: 2302(have)X ! 927: 2495(the)X ! 928: 2630(time)X ! 929: 2815(or)X ! 930: 2915(inclination)X ! 931: 3321(to)X ! 932: 3417(implement)X ! 933: 3823(a)X ! 934: 3888(general-)X ! 935: 720 3048(purpose)N ! 936: 1046(facility)X ! 937: 1345(\(particularly)X ! 938: 1829(if)X ! 939: 1931(the)X ! 940: 2087(application)X ! 941: 2528(itself)X ! 942: 2752(is)X ! 943: 2858(simple\),)X ! 944: 3192(so)X ! 945: 3317(the)X ! 946: 3472(resulting)X ! 947: 3828(command)X ! 948: 720 3147(languages)N ! 949: 1094(tend)X ! 950: 1268(to)X ! 951: 1359(have)X ! 952: 1547(insuf\256cient)X ! 953: 1966(power)X ! 954: 2207(and)X ! 955: 2356(clumsy)X ! 956: 2633(syntax.)X ! 957: 920 3279(Tcl)N ! 958: 1065(is)X ! 959: 1151(an)X ! 960: 1261(application-independent)X ! 961: 2141(command)X ! 962: 2516(language.)X ! 963: 2905(It)X ! 964: 2986(exists)X ! 965: 3214(as)X ! 966: 3314(a)X ! 967: 3380(C)X ! 968: 3466(library)X ! 969: 3728(package)X ! 970: 4043(that)X ! 971: 720 3378(can)N ! 972: 869(be)X ! 973: 978(used)X ! 974: 1165(in)X ! 975: 1260(many)X ! 976: 1482(different)X ! 977: 1811(programs.)X ! 978: 2213(The)X ! 979: 2376(Tcl)X ! 980: 2520(library)X ! 981: 2781(provides)X ! 982: 3110(a)X ! 983: 3175(parser)X ! 984: 3415(for)X ! 985: 3543(a)X ! 986: 3608(simple)X ! 987: 3870(but)X ! 988: 4009(fully)X ! 989: 720 3477(programmable)N ! 990: 1271(command)X ! 991: 1656(language.)X ! 992: 2055(The)X ! 993: 2229(library)X ! 994: 2501(also)X ! 995: 2680(implements)X ! 996: 3129(a)X ! 997: 3204(collection)X ! 998: 3589(of)X ! 999: 3698(built-in)X ! 1000: 3995(com-)X ! 1001: 720 3576(mands)N ! 1002: 975(that)X ! 1003: 1133(provide)X ! 1004: 1427(general-purpose)X ! 1005: 2018(programming)X ! 1006: 2523(constructs)X ! 1007: 2905(such)X ! 1008: 3091(as)X ! 1009: 3189(variables,)X ! 1010: 3554(lists,)X ! 1011: 3744(expressions,)X ! 1012: 720 3675(conditionals,)N ! 1013: 1217(looping,)X ! 1014: 1552(and)X ! 1015: 1722(procedures.)X ! 1016: 2194(Individual)X ! 1017: 2599(application)X ! 1018: 3034(programs)X ! 1019: 3408(extend)X ! 1020: 3685(the)X ! 1021: 3835(basic)X ! 1022: 4058(Tcl)X ! 1023: 720 3774(language)N ! 1024: 1066(with)X ! 1025: 1251(application-speci\256c)X ! 1026: 1970(commands.)X ! 1027: 2424(The)X ! 1028: 2589(Tcl)X ! 1029: 2735(library)X ! 1030: 2998(also)X ! 1031: 3168(provides)X ! 1032: 3499(a)X ! 1033: 3565(set)X ! 1034: 3690(of)X ! 1035: 3790(utility)X ! 1036: 4030(rou-)X ! 1037: 720 3873(tines)N ! 1038: 909(to)X ! 1039: 1000(simplify)X ! 1040: 1317(the)X ! 1041: 1447 0.2885(implementation)AX ! 1042: 2025(of)X ! 1043: 2120(tool-speci\256c)X ! 1044: 2578(commands.)X ! 1045: 920 4005(I)N ! 1046: 982(believe)X ! 1047: 1270(that)X ! 1048: 1436(Tcl)X ! 1049: 1587(is)X ! 1050: 1679(particularly)X ! 1051: 2119(useful)X ! 1052: 2367(in)X ! 1053: 2468(a)X ! 1054: 2539(windowing)X ! 1055: 2967(environment,)X ! 1056: 3467(and)X ! 1057: 3626(that)X ! 1058: 3791(it)X ! 1059: 3873(provides)X ! 1060: 720 4104(two)N ! 1061: 876(advantages.)X ! 1062: 1335(First,)X ! 1063: 1543(it)X ! 1064: 1617(can)X ! 1065: 1763(be)X ! 1066: 1870(used)X ! 1067: 2054(as)X ! 1068: 2150(a)X ! 1069: 2212(general-purpose)X ! 1070: 2801(mechanism)X ! 1071: 3226(for)X ! 1072: 3351(programming)X ! 1073: 3854(the)X ! 1074: 3985(inter-)X ! 1075: 720 4203(faces)N ! 1076: 932(of)X ! 1077: 1037(applications.)X ! 1078: 1540(If)X ! 1079: 1630(a)X ! 1080: 1701(tool)X ! 1081: 1871(is)X ! 1082: 1962(based)X ! 1083: 2194(on)X ! 1084: 2314(Tcl,)X ! 1085: 2486(then)X ! 1086: 2669(it)X ! 1087: 2750(should)X ! 1088: 3016(be)X ! 1089: 3130(relatively)X ! 1090: 3495(easy)X ! 1091: 3682(to)X ! 1092: 3782(modify)X ! 1093: 4068(the)X ! 1094: 720 4302(application's)N ! 1095: 1206(user)X ! 1096: 1382(interface)X ! 1097: 1720(and)X ! 1098: 1877(to)X ! 1099: 1975(extend)X ! 1100: 2239(the)X ! 1101: 2376(interface)X ! 1102: 2713(with)X ! 1103: 2899(new)X ! 1104: 3074(commands.)X ! 1105: 3529(Second,)X ! 1106: 3839(and)X ! 1107: 3995(more)X ! 1108: 720 4401(important,)N ! 1109: 1123(Tcl)X ! 1110: 1278(provides)X ! 1111: 1618(a)X ! 1112: 1694(uniform)X ! 1113: 2015(framework)X ! 1114: 2437(for)X ! 1115: 2576(communication)X ! 1116: 3162(between)X ! 1117: 3491(tools.)X ! 1118: 3743(If)X ! 1119: 3837(used)X ! 1120: 4034(uni-)X ! 1121: 720 4500(formly)N ! 1122: 991(in)X ! 1123: 1091(all)X ! 1124: 1211(tools,)X ! 1125: 1436(Tcl)X ! 1126: 1585(will)X ! 1127: 1754(make)X ! 1128: 1976(it)X ! 1129: 2056(possible)X ! 1130: 2375(for)X ! 1131: 2507(tools)X ! 1132: 2709(to)X ! 1133: 2808(work)X ! 1134: 3018(together)X ! 1135: 3337(more)X ! 1136: 3548(gracefully)X ! 1137: 3935(than)X ! 1138: 4117(is)X ! 1139: 720 4599(possible)N ! 1140: 1031(today.)X ! 1141: 920 4731(The)N ! 1142: 1082(rest)X ! 1143: 1234(of)X ! 1144: 1332(this)X ! 1145: 1485(paper)X ! 1146: 1705(is)X ! 1147: 1789(organized)X ! 1148: 2161(as)X ! 1149: 2259(follows.)X ! 1150: 2592(Section)X ! 1151: 2882(2)X ! 1152: 2951(describes)X ! 1153: 3303(the)X ! 1154: 3436(Tcl)X ! 1155: 3579(language)X ! 1156: 3922(as)X ! 1157: 4020(seen)X ! 1158: 720 4830(by)N ! 1159: 833(users.)X ! 1160: 1082(Section)X ! 1161: 1372(3)X ! 1162: 1441(discusses)X ! 1163: 1793(how)X ! 1164: 1969(Tcl)X ! 1165: 2112(is)X ! 1166: 2196(used)X ! 1167: 2382(in)X ! 1168: 2475(applications,)X ! 1169: 2948(including)X ! 1170: 3306(the)X ! 1171: 3438(C-language)X ! 1172: 3868(interface)X ! 1173: 720 4929(between)N ! 1174: 1040(application)X ! 1175: 1460(programs)X ! 1176: 1819(and)X ! 1177: 1973(the)X ! 1178: 2108(Tcl)X ! 1179: 2253(library.)X ! 1180: 2559(Section)X ! 1181: 2851(4)X ! 1182: 2922(describes)X ! 1183: 3276(how)X ! 1184: 3454(Tcl)X ! 1185: 3598(can)X ! 1186: 3746(be)X ! 1187: 3855(used)X ! 1188: 4042(in)X ! 1189: 4137(a)X ! 1190: 720 5028(windowing)N ! 1191: 1148(environment)X ! 1192: 1626(to)X ! 1193: 1727(customize)X ! 1194: 2117(interface)X ! 1195: 2457(actions)X ! 1196: 2739(and)X ! 1197: 2898(appearances.)X ! 1198: 3403(Section)X ! 1199: 3700(5)X ! 1200: 3775(shows)X ! 1201: 4025(how)X ! 1202: 720 5127(Tcl)N ! 1203: 864(can)X ! 1204: 1012(be)X ! 1205: 1121(used)X ! 1206: 1308(as)X ! 1207: 1407(a)X ! 1208: 1471(vehicle)X ! 1209: 1751(for)X ! 1210: 1878(communication)X ! 1211: 2453(between)X ! 1212: 2771(applications,)X ! 1213: 3245(and)X ! 1214: 3397(why)X ! 1215: 3573(this)X ! 1216: 3726(is)X ! 1217: 3810(important.)X ! 1218: 720 5226(Section)N ! 1219: 1010(6)X ! 1220: 1079(presents)X ! 1221: 1392(the)X ! 1222: 1525(status)X ! 1223: 1750(of)X ! 1224: 1847(the)X ! 1225: 1979(Tcl)X ! 1226: 2121 0.2885(implementation)AX ! 1227: 2701(and)X ! 1228: 2852(some)X ! 1229: 3062(preliminary)X ! 1230: 3498(performance)X ! 1231: 3966(meas-)X ! 1232: 720 5325(urements.)N ! 1233: 1126(Section)X ! 1234: 1430(7)X ! 1235: 1513(compares)X ! 1236: 1889(Tcl)X ! 1237: 2046(to)X ! 1238: 2154(Lisp,)X ! 1239: 2372(Emacs,)X ! 1240: 2668(and)X ! 1241: 2834(NeWS,)X ! 1242: 3128(and)X ! 1243: 3293(Section)X ! 1244: 3596(8)X ! 1245: 3678(concludes)X ! 1246: 4068(the)X ! 1247: 720 5424(paper.)N ! 1248: 3 f ! 1249: 2375 6048(-)N ! 1250: 2426(1)X ! 1251: 2492(-)X ! 1252: ! 1253: 2 p ! 1254: %%Page: 2 3 ! 1255: 11 s 11 xH 0 xS 3 f ! 1256: 720 483(Tcl:)N ! 1257: 894(An)X ! 1258: 1028(Embeddable)X ! 1259: 1525(Command)X ! 1260: 1942(Language)X ! 1261: 3466(December)X ! 1262: 3868(22,)X ! 1263: 4000(1989)X ! 1264: 720 771(2.)N ! 1265: 830(The)X ! 1266: 999(Tcl)X ! 1267: 1144(Language)X ! 1268: 1 f ! 1269: 920 903(In)N ! 1270: 1033(a)X ! 1271: 1112(sense,)X ! 1272: 1364(the)X ! 1273: 1512(syntax)X ! 1274: 1782(of)X ! 1275: 1895(the)X ! 1276: 2043(Tcl)X ! 1277: 2200(language)X ! 1278: 2557(is)X ! 1279: 2655(unimportant:)X ! 1280: 3151(any)X ! 1281: 3317(programming)X ! 1282: 3836(language,)X ! 1283: 720 1002(whether)N ! 1284: 1035(it)X ! 1285: 1117(is)X ! 1286: 1208(C)X ! 1287: 1299([6],)X ! 1288: 1455(Forth)X ! 1289: 1678([4],)X ! 1290: 1834(Lisp)X ! 1291: 2023([1],)X ! 1292: 2179(or)X ! 1293: 2284(Postscript)X ! 1294: 2664([2],)X ! 1295: 2820(could)X ! 1296: 3048(provide)X ! 1297: 3348(many)X ! 1298: 3575(of)X ! 1299: 3679(the)X ! 1300: 3818(same)X ! 1301: 4030(pro-)X ! 1302: 720 1101(grammability)N ! 1303: 1223(and)X ! 1304: 1376(communication)X ! 1305: 1952(advantages)X ! 1306: 2369(as)X ! 1307: 2468(Tcl.)X ! 1308: 2656(This)X ! 1309: 2839(suggests)X ! 1310: 3162(that)X ! 1311: 3320(the)X ! 1312: 3453(best)X ! 1313: 3620 0.2885(implementation)AX ! 1314: 720 1200(approach)N ! 1315: 1065(is)X ! 1316: 1147(to)X ! 1317: 1239(borrow)X ! 1318: 1515(an)X ! 1319: 1621(existing)X ! 1320: 1924(language)X ! 1321: 2265(and)X ! 1322: 2415(concentrate)X ! 1323: 2844(on)X ! 1324: 2955(providing)X ! 1325: 3321(a)X ! 1326: 3382(convenient)X ! 1327: 3791(framework)X ! 1328: 720 1299(for)N ! 1329: 852(the)X ! 1330: 990(use)X ! 1331: 1137(of)X ! 1332: 1240(that)X ! 1333: 1403(language.)X ! 1334: 1795(However,)X ! 1335: 2168(the)X ! 1336: 2306(environment)X ! 1337: 2782(for)X ! 1338: 2914(an)X ! 1339: 3026(embeddable)X ! 1340: 3481(command)X ! 1341: 3858(language)X ! 1342: 720 1398(presents)N ! 1343: 1038(an)X ! 1344: 1150(unusual)X ! 1345: 1453(set)X ! 1346: 1580(of)X ! 1347: 1682(constraints)X ! 1348: 2093(on)X ! 1349: 2210(the)X ! 1350: 2347(language,)X ! 1351: 2716(which)X ! 1352: 2960(are)X ! 1353: 3096(described)X ! 1354: 3462(below.)X ! 1355: 3750(I)X ! 1356: 3808(eventually)X ! 1357: 720 1497(decided)N ! 1358: 1020(that)X ! 1359: 1179(a)X ! 1360: 1244(new)X ! 1361: 1415(language)X ! 1362: 1758(designed)X ! 1363: 2096(from)X ! 1364: 2292(scratch)X ! 1365: 2566(could)X ! 1366: 2787(probably)X ! 1367: 3125(meet)X ! 1368: 3322(the)X ! 1369: 3455(constraints)X ! 1370: 3862(with)X ! 1371: 4044(less)X ! 1372: 720 1596 0.2885(implementation)AN ! 1373: 1298(effort)X ! 1374: 1515(than)X ! 1375: 1689(any)X ! 1376: 1838(existing)X ! 1377: 2140(language.)X ! 1378: 920 1728(Tcl)N ! 1379: 1065(is)X ! 1380: 1151(unusual)X ! 1381: 1452(because)X ! 1382: 1757(it)X ! 1383: 1834(presents)X ! 1384: 2149(two)X ! 1385: 2308(different)X ! 1386: 2638(interfaces:)X ! 1387: 3054(a)X ! 1388: 3120(textual)X ! 1389: 3388(interface)X ! 1390: 3723(to)X ! 1391: 3819(users)X ! 1392: 4025(who)X ! 1393: 720 1827(issue)N ! 1394: 934(Tcl)X ! 1395: 1090(commands,)X ! 1396: 1532(and)X ! 1397: 1697(a)X ! 1398: 1774(procedural)X ! 1399: 2188(interface)X ! 1400: 2534(to)X ! 1401: 2641(the)X ! 1402: 2787(applications)X ! 1403: 3251(in)X ! 1404: 3357(which)X ! 1405: 3609(it)X ! 1406: 3696(is)X ! 1407: 3792(embedded.)X ! 1408: 720 1926(Each)N ! 1409: 919(of)X ! 1410: 1015(these)X ! 1411: 1219(interfaces)X ! 1412: 1584(must)X ! 1413: 1779(be)X ! 1414: 1885(simple,)X ! 1415: 2166(powerful,)X ! 1416: 2527(and)X ! 1417: 2676(ef\256cient.)X ! 1418: 3031(There)X ! 1419: 3258(were)X ! 1420: 3450(four)X ! 1421: 3618(major)X ! 1422: 3846(factors)X ! 1423: 4107(in)X ! 1424: 720 2025(the)N ! 1425: 850(language)X ! 1426: 1190(design:)X ! 1427: 720 2157([1])N ! 1428: 3 f ! 1429: 920(The)X ! 1430: 1092(language)X ! 1431: 1454(is)X ! 1432: 1537(for)X ! 1433: 1673(commands.)X ! 1434: 1 f ! 1435: 2146(Almost)X ! 1436: 2430(all)X ! 1437: 2543(Tcl)X ! 1438: 2685(``programs'')X ! 1439: 3157(will)X ! 1440: 3319(be)X ! 1441: 3426(short,)X ! 1442: 3648(many)X ! 1443: 3868(only)X ! 1444: 4049(one)X ! 1445: 920 2256(line)N ! 1446: 1079(long.)X ! 1447: 1306(Most)X ! 1448: 1513(programs)X ! 1449: 1871(will)X ! 1450: 2035(be)X ! 1451: 2144(typed)X ! 1452: 2366(in,)X ! 1453: 2483(executed)X ! 1454: 2822(once)X ! 1455: 3014(or)X ! 1456: 3113(perhaps)X ! 1457: 3412(a)X ! 1458: 3477(few)X ! 1459: 3633(times,)X ! 1460: 3872(and)X ! 1461: 4024(then)X ! 1462: 920 2355(discarded.)N ! 1463: 1327(This)X ! 1464: 1510(suggests)X ! 1465: 1834(that)X ! 1466: 1993(the)X ! 1467: 2127(language)X ! 1468: 2471(should)X ! 1469: 2732(have)X ! 1470: 2924(a)X ! 1471: 2989(simple)X ! 1472: 3251(syntax)X ! 1473: 3506(so)X ! 1474: 3609(that)X ! 1475: 3767(it)X ! 1476: 3842(is)X ! 1477: 3926(easy)X ! 1478: 4107(to)X ! 1479: 920 2454(type)N ! 1480: 1102(commands.)X ! 1481: 1558(Most)X ! 1482: 1769(existing)X ! 1483: 2079(programming)X ! 1484: 2589(languages)X ! 1485: 2971(have)X ! 1486: 3167(complex)X ! 1487: 3501(syntax;)X ! 1488: 3808(the)X ! 1489: 3946(syntax)X ! 1490: 920 2553(is)N ! 1491: 1025(helpful)X ! 1492: 1321(when)X ! 1493: 1557(writing)X ! 1494: 1858(long)X ! 1495: 2061(programs)X ! 1496: 2439(but)X ! 1497: 2598(would)X ! 1498: 2864(be)X ! 1499: 2992(clumsy)X ! 1500: 3292(if)X ! 1501: 3391(used)X ! 1502: 3597(for)X ! 1503: 3744(a)X ! 1504: 3828(command)X ! 1505: 920 2652(language.)N ! 1506: 720 2784([2])N ! 1507: 3 f ! 1508: 920(The)X ! 1509: 1092(language)X ! 1510: 1455(must)X ! 1511: 1665(be)X ! 1512: 1778(programmable.)X ! 1513: 1 f ! 1514: 2409(It)X ! 1515: 2488(should)X ! 1516: 2748(contain)X ! 1517: 3032(general)X ! 1518: 3315(programming)X ! 1519: 3819(constructs)X ! 1520: 920 2883(such)N ! 1521: 1109(as)X ! 1522: 1210(variables,)X ! 1523: 1578(procedures,)X ! 1524: 2013(conditionals,)X ! 1525: 2495(and)X ! 1526: 2650(loops,)X ! 1527: 2891(so)X ! 1528: 2997(that)X ! 1529: 3158(users)X ! 1530: 3366(can)X ! 1531: 3516(extend)X ! 1532: 3779(the)X ! 1533: 3915(built-in)X ! 1534: 920 2982(command)N ! 1535: 1293(set)X ! 1536: 1416(by)X ! 1537: 1528(writing)X ! 1538: 1807(Tcl)X ! 1539: 1949(procedures.)X ! 1540: 2402 0.2760(Extensibility)AX ! 1541: 2879(also)X ! 1542: 3045(argues)X ! 1543: 3298(for)X ! 1544: 3424(a)X ! 1545: 3487(simple)X ! 1546: 3747(syntax:)X ! 1547: 4048(this)X ! 1548: 920 3081(makes)N ! 1549: 1167(it)X ! 1550: 1239(easier)X ! 1551: 1466(for)X ! 1552: 1590(Tcl)X ! 1553: 1730(programs)X ! 1554: 2084(to)X ! 1555: 2175(generate)X ! 1556: 2495(other)X ! 1557: 2698(Tcl)X ! 1558: 2838(programs.)X ! 1559: 720 3213([3])N ! 1560: 3 f ! 1561: 920(The)X ! 1562: 1097(language)X ! 1563: 1465(must)X ! 1564: 1680(permit)X ! 1565: 1963(a)X ! 1566: 2036(simple)X ! 1567: 2310(and)X ! 1568: 2481(ef\256cient)X ! 1569: 2808(interpreter.)X ! 1570: 1 f ! 1571: 3296(For)X ! 1572: 3447(the)X ! 1573: 3584(Tcl)X ! 1574: 3731(library)X ! 1575: 3995(to)X ! 1576: 4093(be)X ! 1577: 920 3312(included)N ! 1578: 1247(in)X ! 1579: 1339(many)X ! 1580: 1558(small)X ! 1581: 1772(programs,)X ! 1582: 2148(particularly)X ! 1583: 2577(on)X ! 1584: 2687(machines)X ! 1585: 3042(without)X ! 1586: 3334(shared-library)X ! 1587: 3849(facilities,)X ! 1588: 920 3411(the)N ! 1589: 1058(interpreter)X ! 1590: 1455(must)X ! 1591: 1657(not)X ! 1592: 1800(occupy)X ! 1593: 2084(much)X ! 1594: 2310(memory.)X ! 1595: 2678(The)X ! 1596: 2845(mechanism)X ! 1597: 3276(for)X ! 1598: 3407(interpreting)X ! 1599: 3848(Tcl)X ! 1600: 3995(com-)X ! 1601: 920 3510(mands)N ! 1602: 1179(must)X ! 1603: 1380(be)X ! 1604: 1492(fast)X ! 1605: 1648(enough)X ! 1606: 1936(to)X ! 1607: 2034(be)X ! 1608: 2146(usable)X ! 1609: 2400(for)X ! 1610: 2531(events)X ! 1611: 2785(that)X ! 1612: 2947(occur)X ! 1613: 3171(hundreds)X ! 1614: 3522(of)X ! 1615: 3623(times)X ! 1616: 3843(a)X ! 1617: 3910(second,)X ! 1618: 920 3609(such)N ! 1619: 1103(as)X ! 1620: 1198(mouse)X ! 1621: 1450(motion.)X ! 1622: 720 3741([4])N ! 1623: 3 f ! 1624: 920(The)X ! 1625: 1097(language)X ! 1626: 1465(must)X ! 1627: 1680(permit)X ! 1628: 1964(a)X ! 1629: 2038(simple)X ! 1630: 2313(interface)X ! 1631: 2675(to)X ! 1632: 2778(C)X ! 1633: 2871(applications.)X ! 1634: 1 f ! 1635: 3401(It)X ! 1636: 3485(must)X ! 1637: 3687(be)X ! 1638: 3800(easy)X ! 1639: 3986(for)X ! 1640: 4117(C)X ! 1641: 920 3840(applications)N ! 1642: 1380(to)X ! 1643: 1482(invoke)X ! 1644: 1755(the)X ! 1645: 1896(interpreter)X ! 1646: 2296(and)X ! 1647: 2456(easy)X ! 1648: 2645(for)X ! 1649: 2780(them)X ! 1650: 2990(to)X ! 1651: 3092(extend)X ! 1652: 3360(the)X ! 1653: 3501(built-in)X ! 1654: 3794(commands)X ! 1655: 920 3939(with)N ! 1656: 1104(application-speci\256c)X ! 1657: 1822(commands.)X ! 1658: 2275(This)X ! 1659: 2459(factor)X ! 1660: 2691(was)X ! 1661: 2854(one)X ! 1662: 3008(of)X ! 1663: 3108(the)X ! 1664: 3242(reasons)X ! 1665: 3531(why)X ! 1666: 3708(I)X ! 1667: 3763(decided)X ! 1668: 4063(not)X ! 1669: 920 4038(to)N ! 1670: 1024(use)X ! 1671: 1176(Lisp)X ! 1672: 1368(as)X ! 1673: 1476(the)X ! 1674: 1619(command)X ! 1675: 2002(language:)X ! 1676: 2402(Lisp's)X ! 1677: 2657(basic)X ! 1678: 2873(data)X ! 1679: 3055(types)X ! 1680: 3276(and)X ! 1681: 3437(storage)X ! 1682: 3725(management)X ! 1683: 920 4137(mechanisms)N ! 1684: 1385(are)X ! 1685: 1521(so)X ! 1686: 1628(different)X ! 1687: 1960(than)X ! 1688: 2141(those)X ! 1689: 2356(of)X ! 1690: 2458(C)X ! 1691: 2546(that)X ! 1692: 2708(it)X ! 1693: 2787(would)X ! 1694: 3036(be)X ! 1695: 3148(dif\256cult)X ! 1696: 3457(to)X ! 1697: 3555(build)X ! 1698: 3766(a)X ! 1699: 3834(clean)X ! 1700: 4049(and)X ! 1701: 920 4236(simple)N ! 1702: 1178(interface)X ! 1703: 1508(between)X ! 1704: 1823(them.)X ! 1705: 2066(For)X ! 1706: 2210(Tcl)X ! 1707: 2350(I)X ! 1708: 2401(used)X ! 1709: 2584(a)X ! 1710: 2645(data)X ! 1711: 2814(type)X ! 1712: 2988(\(string\))X ! 1713: 3269(that)X ! 1714: 3424(is)X ! 1715: 3505(natural)X ! 1716: 3772(to)X ! 1717: 3863(C.)X ! 1718: 3 f ! 1719: 720 4431(2.1.)N ! 1720: 896(Tcl)X ! 1721: 1041(Language)X ! 1722: 1435(Syntax)X ! 1723: 1 f ! 1724: 920 4563(Tcl's)N ! 1725: 1126(basic)X ! 1726: 1332(syntax)X ! 1727: 1587(is)X ! 1728: 1671(similar)X ! 1729: 1941(to)X ! 1730: 2034(that)X ! 1731: 2191(of)X ! 1732: 2288(the)X ! 1733: 2420(UNIX)X ! 1734: 2662(shells:)X ! 1735: 2912(a)X ! 1736: 2975(command)X ! 1737: 3347(consists)X ! 1738: 3650(of)X ! 1739: 3747(one)X ! 1740: 3898(or)X ! 1741: 3995(more)X ! 1742: 720 4662(\256elds)N ! 1743: 938(separated)X ! 1744: 1297(spaces)X ! 1745: 1553(or)X ! 1746: 1653(tabs.)X ! 1747: 1866(The)X ! 1748: 2030(\256rst)X ! 1749: 2194(\256eld)X ! 1750: 2378(is)X ! 1751: 2464(the)X ! 1752: 2599(name)X ! 1753: 2817(of)X ! 1754: 2917(a)X ! 1755: 2983(command,)X ! 1756: 3380(which)X ! 1757: 3622(may)X ! 1758: 3801(be)X ! 1759: 3910(either)X ! 1760: 4137(a)X ! 1761: 720 4761(built-in)N ! 1762: 1011(command,)X ! 1763: 1411(an)X ! 1764: 1524(application-speci\256c)X ! 1765: 2245(command,)X ! 1766: 2645(or)X ! 1767: 2747(a)X ! 1768: 2815(procedure)X ! 1769: 3195(consisting)X ! 1770: 3582(of)X ! 1771: 3684(a)X ! 1772: 3752(sequence)X ! 1773: 4103(of)X ! 1774: 720 4860(Tcl)N ! 1775: 861(commands.)X ! 1776: 1310(Fields)X ! 1777: 1549(after)X ! 1778: 1733(the)X ! 1779: 1864(\256rst)X ! 1780: 2023(one)X ! 1781: 2172(are)X ! 1782: 2301(passed)X ! 1783: 2557(to)X ! 1784: 2648(the)X ! 1785: 2778(command)X ! 1786: 3148(as)X ! 1787: 3243(arguments.)X ! 1788: 3676(Newline)X ! 1789: 3996(char-)X ! 1790: 720 4959(acters)N ! 1791: 951(are)X ! 1792: 1084(used)X ! 1793: 1271(as)X ! 1794: 1370(command)X ! 1795: 1744(separators,)X ! 1796: 2148(just)X ! 1797: 2302(as)X ! 1798: 2401(in)X ! 1799: 2496(the)X ! 1800: 2630(UNIX)X ! 1801: 2874(shells,)X ! 1802: 3123(and)X ! 1803: 3276(semi-colons)X ! 1804: 3728(may)X ! 1805: 3906(be)X ! 1806: 4015(used)X ! 1807: 720 5058(to)N ! 1808: 820(separate)X ! 1809: 1139(commands)X ! 1810: 1552(on)X ! 1811: 1671(the)X ! 1812: 1810(same)X ! 1813: 2022(line.)X ! 1814: 2230(Unlike)X ! 1815: 2501(the)X ! 1816: 2640(UNIX)X ! 1817: 2889(shells,)X ! 1818: 3143(each)X ! 1819: 3335(Tcl)X ! 1820: 3484(command)X ! 1821: 3863(returns)X ! 1822: 4137(a)X ! 1823: 720 5157(string)N ! 1824: 943(result,)X ! 1825: 1183(or)X ! 1826: 1278(the)X ! 1827: 1408(empty)X ! 1828: 1651(string)X ! 1829: 1874(if)X ! 1830: 1950(a)X ! 1831: 2011(return)X ! 1832: 2243(value)X ! 1833: 2456(isn't)X ! 1834: 2635(appropriate.)X ! 1835: 920 5289(There)N ! 1836: 1157(are)X ! 1837: 1296(four)X ! 1838: 1474(additional)X ! 1839: 1860(syntactic)X ! 1840: 2206(constructs)X ! 1841: 2595(in)X ! 1842: 2696(Tcl,)X ! 1843: 2868(which)X ! 1844: 3115(give)X ! 1845: 3299(the)X ! 1846: 3438(language)X ! 1847: 3787(a)X ! 1848: 3857(Lisp-like)X ! 1849: 720 5388(\257avor.)N ! 1850: 993(Curly)X ! 1851: 1218(braces)X ! 1852: 1466(are)X ! 1853: 1597(used)X ! 1854: 1782(to)X ! 1855: 1875(group)X ! 1856: 2104(complex)X ! 1857: 2432(arguments;)X ! 1858: 2870(they)X ! 1859: 3045(act)X ! 1860: 3171(as)X ! 1861: 3267(nestable)X ! 1862: 3579(quote)X ! 1863: 3798(characters.)X ! 1864: 720 5487(If)N ! 1865: 803(the)X ! 1866: 936(\256rst)X ! 1867: 1097(character)X ! 1868: 1443(of)X ! 1869: 1540(an)X ! 1870: 1647(argument)X ! 1871: 2004(is)X ! 1872: 2087(a)X ! 1873: 2150(open)X ! 1874: 2345(brace,)X ! 1875: 2581(then)X ! 1876: 2757(the)X ! 1877: 2889(argument)X ! 1878: 3246(is)X ! 1879: 3329(not)X ! 1880: 3466(terminated)X ! 1881: 3868(by)X ! 1882: 3980(white)X ! 1883: 720 5586(space.)N ! 1884: 969(Instead,)X ! 1885: 1277(it)X ! 1886: 1359(is)X ! 1887: 1450(terminated)X ! 1888: 1860(by)X ! 1889: 1980(the)X ! 1890: 2120(matching)X ! 1891: 2481(close)X ! 1892: 2694(brace.)X ! 1893: 2959(The)X ! 1894: 3127(argument)X ! 1895: 3491(passed)X ! 1896: 3756(to)X ! 1897: 3856(the)X ! 1898: 3995(com-)X ! 1899: 720 5685(mand)N ! 1900: 955(consists)X ! 1901: 1273(of)X ! 1902: 1385(everything)X ! 1903: 1801(between)X ! 1904: 2133(the)X ! 1905: 2280(braces,)X ! 1906: 2565(with)X ! 1907: 2761(the)X ! 1908: 2908(enclosing)X ! 1909: 3285(braces)X ! 1910: 3548(stripped)X ! 1911: 3870(off.)X ! 1912: 4054(For)X ! 1913: 720 5784(example,)N ! 1914: 1063(the)X ! 1915: 1193(command)X ! 1916: 3 f ! 1917: 2375 6048(-)N ! 1918: 2426(2)X ! 1919: 2492(-)X ! 1920: ! 1921: 3 p ! 1922: %%Page: 3 4 ! 1923: 11 s 11 xH 0 xS 3 f ! 1924: 720 483(Tcl:)N ! 1925: 894(An)X ! 1926: 1028(Embeddable)X ! 1927: 1525(Command)X ! 1928: 1942(Language)X ! 1929: 3466(December)X ! 1930: 3868(22,)X ! 1931: 4000(1989)X ! 1932: 7 f ! 1933: 10 s ! 1934: 1040 771(set)N ! 1935: 1232(a)X ! 1936: 1328({dog)X ! 1937: 1568(cat)X ! 1938: 1760({horse)X ! 1939: 2096(cow)X ! 1940: 2288(mule})X ! 1941: 2576(bear})X ! 1942: 1 f ! 1943: 11 s ! 1944: 720 903(will)N ! 1945: 886(receive)X ! 1946: 1168(two)X ! 1947: 1328(arguments:)X ! 1948: 1748(``)X ! 1949: 7 f ! 1950: 1806(a)X ! 1951: 1 f ! 1952: 1859('')X ! 1953: 1945(and)X ! 1954: 2100(``)X ! 1955: 7 f ! 1956: 2158(dog)X ! 1957: 2376(cat)X ! 1958: 2594({horse)X ! 1959: 2970(cow)X ! 1960: 3187(mule})X ! 1961: 3510(bear)X ! 1962: 1 f ! 1963: 3722(''.)X ! 1964: 3851(This)X ! 1965: 4035(par-)X ! 1966: 720 1002(ticular)N ! 1967: 970(command)X ! 1968: 1342(will)X ! 1969: 1504(set)X ! 1970: 1626(the)X ! 1971: 1758(variable)X ! 1972: 7 f ! 1973: 2097(a)X ! 1974: 1 f ! 1975: 2174(to)X ! 1976: 2266(a)X ! 1977: 2328(string)X ! 1978: 2552(equal)X ! 1979: 2766(to)X ! 1980: 2858(the)X ! 1981: 2989(second)X ! 1982: 3256(argument.)X ! 1983: 3656(If)X ! 1984: 3737(an)X ! 1985: 3843(argument)X ! 1986: 720 1101(is)N ! 1987: 808(enclosed)X ! 1988: 1145(in)X ! 1989: 1243(braces,)X ! 1990: 1518(then)X ! 1991: 1699(none)X ! 1992: 1899(of)X ! 1993: 2001(the)X ! 1994: 2138(other)X ! 1995: 2348(substitutions)X ! 1996: 2824(described)X ! 1997: 3190(below)X ! 1998: 3433(is)X ! 1999: 3520(made)X ! 2000: 3739(on)X ! 2001: 3855(the)X ! 2002: 3991(argu-)X ! 2003: 720 1200(ment.)N ! 2004: 964(One)X ! 2005: 1133(of)X ! 2006: 1229(the)X ! 2007: 1360(most)X ! 2008: 1555(common)X ! 2009: 1886(uses)X ! 2010: 2059(of)X ! 2011: 2154(braces)X ! 2012: 2400(is)X ! 2013: 2481(to)X ! 2014: 2572(specify)X ! 2015: 2848(a)X ! 2016: 2909(Tcl)X ! 2017: 3049(subprogram)X ! 2018: 3491(as)X ! 2019: 3586(an)X ! 2020: 3691(argument)X ! 2021: 4046(to)X ! 2022: 4137(a)X ! 2023: 720 1299(Tcl)N ! 2024: 860(command.)X ! 2025: 920 1431(The)N ! 2026: 1079(second)X ! 2027: 1345(syntactic)X ! 2028: 1681(construct)X ! 2029: 2026(in)X ! 2030: 2117(Tcl)X ! 2031: 2257(is)X ! 2032: 2338(square)X ! 2033: 2589(brackets,)X ! 2034: 2926(which)X ! 2035: 3163(are)X ! 2036: 3292(used)X ! 2037: 3475(to)X ! 2038: 3566(invoke)X ! 2039: 3828(command)X ! 2040: 720 1530(substitution.)N ! 2041: 1207(If)X ! 2042: 1295(an)X ! 2043: 1408(open)X ! 2044: 1609(bracket)X ! 2045: 1898(appears)X ! 2046: 2196(in)X ! 2047: 2295(an)X ! 2048: 2408(argument,)X ! 2049: 2793(then)X ! 2050: 2974(everything)X ! 2051: 3380(from)X ! 2052: 3580(the)X ! 2053: 3717(open)X ! 2054: 3917(bracket)X ! 2055: 720 1629(up)N ! 2056: 841(to)X ! 2057: 943(the)X ! 2058: 1084(matching)X ! 2059: 1446(close)X ! 2060: 1660(bracket)X ! 2061: 1952(is)X ! 2062: 2043(treated)X ! 2063: 2315(as)X ! 2064: 2420(a)X ! 2065: 2491(command)X ! 2066: 2871(and)X ! 2067: 3030(executed)X ! 2068: 3375(recursively)X ! 2069: 3798(by)X ! 2070: 3918(the)X ! 2071: 4058(Tcl)X ! 2072: 720 1728(interpreter.)N ! 2073: 1170(The)X ! 2074: 1346(result)X ! 2075: 1581(of)X ! 2076: 1693(the)X ! 2077: 1839(command)X ! 2078: 2225(is)X ! 2079: 2322(then)X ! 2080: 2512(substituted)X ! 2081: 2933(into)X ! 2082: 3109(the)X ! 2083: 3255(argument)X ! 2084: 3626(in)X ! 2085: 3733(place)X ! 2086: 3957(of)X ! 2087: 4068(the)X ! 2088: 720 1827(bracketed)N ! 2089: 1084(string.)X ! 2090: 1351(For)X ! 2091: 1495(example,)X ! 2092: 1838(consider)X ! 2093: 2158(the)X ! 2094: 2288(command)X ! 2095: 7 f ! 2096: 10 s ! 2097: 1040 1959(set)N ! 2098: 1232(a)X ! 2099: 1328([format)X ! 2100: 1712({Santa)X ! 2101: 2048(Claus)X ! 2102: 2336(is)X ! 2103: 2480(%s)X ! 2104: 2624(years)X ! 2105: 2912(old})X ! 2106: 3152(99])X ! 2107: 1 f ! 2108: 11 s ! 2109: 720 2091(The)N ! 2110: 7 f ! 2111: 914(format)X ! 2112: 1 f ! 2113: 1258(command)X ! 2114: 1632(does)X ! 2115: 7 f ! 2116: 1849(printf)X ! 2117: 1 f ! 2118: 2167(-like)X ! 2119: 2354(formatting)X ! 2120: 2752(and)X ! 2121: 2904(returns)X ! 2122: 3173(the)X ! 2123: 3306(string)X ! 2124: 3532(``)X ! 2125: 7 f ! 2126: 3590(Santa)X ! 2127: 3911(Claus)X ! 2128: 720 2190(is)N ! 2129: 879(99)X ! 2130: 1038(years)X ! 2131: 1356(old)X ! 2132: 1 f ! 2133: 1515('',)X ! 2134: 1617(which)X ! 2135: 1854(is)X ! 2136: 1935(then)X ! 2137: 2109(passed)X ! 2138: 2365(to)X ! 2139: 7 f ! 2140: 2487(set)X ! 2141: 1 f ! 2142: 2668(and)X ! 2143: 2817(assigned)X ! 2144: 3142(to)X ! 2145: 3233(variable)X ! 2146: 7 f ! 2147: 3570(a)X ! 2148: 1 f ! 2149: 3623(.)X ! 2150: 920 2322(The)N ! 2151: 1083(third)X ! 2152: 1276(syntactic)X ! 2153: 1616(construct)X ! 2154: 1965(is)X ! 2155: 2050(the)X ! 2156: 2184(dollar)X ! 2157: 2416(sign,)X ! 2158: 2611(which)X ! 2159: 2852(is)X ! 2160: 2937(used)X ! 2161: 3124(for)X ! 2162: 3252(variable)X ! 2163: 3561(substitution.)X ! 2164: 4043(If)X ! 2165: 4126(it)X ! 2166: 720 2421(appears)N ! 2167: 1013(in)X ! 2168: 1106(an)X ! 2169: 1213(argument)X ! 2170: 1570(then)X ! 2171: 1746(the)X ! 2172: 1878(following)X ! 2173: 2245(characters)X ! 2174: 2625(are)X ! 2175: 2756(treated)X ! 2176: 3020(as)X ! 2177: 3117(a)X ! 2178: 3180(variable)X ! 2179: 3488(name;)X ! 2180: 3750(the)X ! 2181: 3882(contents)X ! 2182: 720 2520(of)N ! 2183: 819(the)X ! 2184: 953(variable)X ! 2185: 1263(are)X ! 2186: 1396(substituted)X ! 2187: 1804(into)X ! 2188: 1967(the)X ! 2189: 2100(argument)X ! 2190: 2458(in)X ! 2191: 2552(place)X ! 2192: 2763(of)X ! 2193: 2861(the)X ! 2194: 2994(dollar)X ! 2195: 3225(sign)X ! 2196: 3397(and)X ! 2197: 3549(name.)X ! 2198: 3809(For)X ! 2199: 3956(exam-)X ! 2200: 720 2619(ple,)N ! 2201: 872(the)X ! 2202: 1002(commands)X ! 2203: 7 f ! 2204: 10 s ! 2205: 1040 2751(set)N ! 2206: 1232(b)X ! 2207: 1328(99)X ! 2208: 1040 2850(set)N ! 2209: 1232(a)X ! 2210: 1328([format)X ! 2211: 1712({Santa)X ! 2212: 2048(Claus)X ! 2213: 2336(is)X ! 2214: 2480(%s)X ! 2215: 2624(years)X ! 2216: 2912(old})X ! 2217: 3152($b])X ! 2218: 1 f ! 2219: 11 s ! 2220: 720 2982(result)N ! 2221: 945(in)X ! 2222: 1043(the)X ! 2223: 1179(same)X ! 2224: 1388(\256nal)X ! 2225: 1573(value)X ! 2226: 1792(for)X ! 2227: 7 f ! 2228: 1953(a)X ! 2229: 1 f ! 2230: 2034(as)X ! 2231: 2135(the)X ! 2232: 2271(single)X ! 2233: 2510(command)X ! 2234: 2886(in)X ! 2235: 2983(the)X ! 2236: 3119(previous)X ! 2237: 3450(paragraph.)X ! 2238: 3873(Variable)X ! 2239: 720 3081(substitution)N ! 2240: 1164(isn't)X ! 2241: 1352(strictly)X ! 2242: 1629(necessary)X ! 2243: 2001(since)X ! 2244: 2213(there)X ! 2245: 2420(are)X ! 2246: 2558(other)X ! 2247: 2770(ways)X ! 2248: 2981(to)X ! 2249: 3081(achieve)X ! 2250: 3381(the)X ! 2251: 3520(same)X ! 2252: 3731(effect,)X ! 2253: 3983(but)X ! 2254: 4126(it)X ! 2255: 720 3180(reduces)N ! 2256: 1010(typing.)X ! 2257: 920 3312(The)N ! 2258: 1085(last)X ! 2259: 1236(syntactic)X ! 2260: 1578(construct)X ! 2261: 1929(is)X ! 2262: 2016(the)X ! 2263: 2152(backslash)X ! 2264: 2522(character,)X ! 2265: 2893(which)X ! 2266: 3135(may)X ! 2267: 3314(be)X ! 2268: 3424(used)X ! 2269: 3612(to)X ! 2270: 3708(insert)X ! 2271: 3931(special)X ! 2272: 720 3411(characters)N ! 2273: 1098(into)X ! 2274: 1258(arguments,)X ! 2275: 1669(such)X ! 2276: 1852(as)X ! 2277: 1947(curly)X ! 2278: 2150(braces)X ! 2279: 2396(or)X ! 2280: 2491(non-printing)X ! 2281: 2954(characters.)X ! 2282: 3 f ! 2283: 720 3606(2.2.)N ! 2284: 896(Data)X ! 2285: 1098(Types)X ! 2286: 1 f ! 2287: 920 3738(There)N ! 2288: 1159(is)X ! 2289: 1252(only)X ! 2290: 1443(one)X ! 2291: 1604(type)X ! 2292: 1789(of)X ! 2293: 1895(data)X ! 2294: 2075(in)X ! 2295: 2177(Tcl:)X ! 2296: 2375(strings.)X ! 2297: 2687(All)X ! 2298: 2833(commands,)X ! 2299: 3270(arguments)X ! 2300: 3670(to)X ! 2301: 3772(commands,)X ! 2302: 720 3837(results)N ! 2303: 999(returned)X ! 2304: 1341(by)X ! 2305: 1478(commands,)X ! 2306: 1931(and)X ! 2307: 2106(variable)X ! 2308: 2438(values)X ! 2309: 2711(are)X ! 2310: 2866(ASCII)X ! 2311: 3143(strings.)X ! 2312: 3470(The)X ! 2313: 3655(use)X ! 2314: 3820(of)X ! 2315: 3941(strings)X ! 2316: 720 3936(throughout)N ! 2317: 1135(Tcl)X ! 2318: 1281(makes)X ! 2319: 1534(it)X ! 2320: 1612(easy)X ! 2321: 1796(to)X ! 2322: 1893(pass)X ! 2323: 2072(information)X ! 2324: 2517(back)X ! 2325: 2711(and)X ! 2326: 2866(forth)X ! 2327: 3064(between)X ! 2328: 3384(Tcl)X ! 2329: 3529(library)X ! 2330: 3791(procedures)X ! 2331: 720 4035(and)N ! 2332: 878(C)X ! 2333: 968(code)X ! 2334: 1164(in)X ! 2335: 1263(the)X ! 2336: 1401(enclosing)X ! 2337: 1769(application.)X ! 2338: 2236(It)X ! 2339: 2320(also)X ! 2340: 2492(makes)X ! 2341: 2747(it)X ! 2342: 2827(easier)X ! 2343: 3062(to)X ! 2344: 3161(pass)X ! 2345: 3342(Tcl-related)X ! 2346: 3759(information)X ! 2347: 720 4134(back)N ! 2348: 908(and)X ! 2349: 1057(forth)X ! 2350: 1250(between)X ! 2351: 1565(machines)X ! 2352: 1920(of)X ! 2353: 2015(different)X ! 2354: 2340(types.)X ! 2355: 920 4266(Although)N ! 2356: 1287(everything)X ! 2357: 1698(in)X ! 2358: 1800(Tcl)X ! 2359: 1951(is)X ! 2360: 2043(a)X ! 2361: 2115(string,)X ! 2362: 2371(many)X ! 2363: 2600(commands)X ! 2364: 3015(expect)X ! 2365: 3278(their)X ! 2366: 3473(string)X ! 2367: 3707(arguments)X ! 2368: 4107(to)X ! 2369: 720 4365(have)N ! 2370: 916(particular)X ! 2371: 1284(formats.)X ! 2372: 1627(There)X ! 2373: 1862(are)X ! 2374: 1999(three)X ! 2375: 2205(particularly)X ! 2376: 2642(common)X ! 2377: 2981(formats)X ! 2378: 3280(for)X ! 2379: 3412(strings:)X ! 2380: 3724(lists,)X ! 2381: 3918(expres-)X ! 2382: 720 4464(sions,)N ! 2383: 957(and)X ! 2384: 1118(commands.)X ! 2385: 1578(A)X ! 2386: 1675(list)X ! 2387: 1818(is)X ! 2388: 1911(just)X ! 2389: 2073(a)X ! 2390: 2146(string)X ! 2391: 2381(containing)X ! 2392: 2788(one)X ! 2393: 2949(or)X ! 2394: 3056(more)X ! 2395: 3270(\256elds)X ! 2396: 3494(separated)X ! 2397: 3859(by)X ! 2398: 3980(white)X ! 2399: 720 4563(space,)N ! 2400: 963(similar)X ! 2401: 1235(to)X ! 2402: 1330(a)X ! 2403: 1395(command.)X ! 2404: 1813(Curly)X ! 2405: 2040(braces)X ! 2406: 2290(may)X ! 2407: 2468(be)X ! 2408: 2577(used)X ! 2409: 2763(to)X ! 2410: 2857(enclose)X ! 2411: 3146(complex)X ! 2412: 3475(list)X ! 2413: 3609(elements;)X ! 2414: 3995(these)X ! 2415: 720 4662(complex)N ! 2416: 1046(list)X ! 2417: 1177(elements)X ! 2418: 1513(are)X ! 2419: 1642(often)X ! 2420: 1845(lists)X ! 2421: 2010(in)X ! 2422: 2101(their)X ! 2423: 2285(own)X ! 2424: 2458(right,)X ! 2425: 2669(as)X ! 2426: 2764(in)X ! 2427: 2855(Lisp.)X ! 2428: 3078(For)X ! 2429: 3222(example,)X ! 2430: 3565(the)X ! 2431: 3695(string)X ! 2432: 7 f ! 2433: 10 s ! 2434: 1040 4794(dog)N ! 2435: 1232(cat)X ! 2436: 1424({horse)X ! 2437: 1760(cow)X ! 2438: 1952(mule})X ! 2439: 2240(bear)X ! 2440: 1 f ! 2441: 11 s ! 2442: 720 4926(is)N ! 2443: 810(a)X ! 2444: 880(list)X ! 2445: 1020(with)X ! 2446: 1208(four)X ! 2447: 1385(elements,)X ! 2448: 1752(the)X ! 2449: 1891(third)X ! 2450: 2088(of)X ! 2451: 2191(which)X ! 2452: 2436(is)X ! 2453: 2525(a)X ! 2454: 2594(list)X ! 2455: 2733(with)X ! 2456: 2920(three)X ! 2457: 3126(elements.)X ! 2458: 3514(Tcl)X ! 2459: 3662(provides)X ! 2460: 3995(com-)X ! 2461: 720 5025(mands)N ! 2462: 982(for)X ! 2463: 1116(a)X ! 2464: 1187(number)X ! 2465: 1488(of)X ! 2466: 1593 0.2383(list-manipulation)AX ! 2467: 2229(operations,)X ! 2468: 2649(such)X ! 2469: 2841(as)X ! 2470: 2945(creating)X ! 2471: 3260(lists,)X ! 2472: 3456(extracting)X ! 2473: 3840(elements,)X ! 2474: 720 5124(and)N ! 2475: 869(computing)X ! 2476: 1269(list)X ! 2477: 1400(lengths.)X ! 2478: 920 5256(The)N ! 2479: 1089(second)X ! 2480: 1365(common)X ! 2481: 1706(form)X ! 2482: 1909(for)X ! 2483: 2043(a)X ! 2484: 2114(string)X ! 2485: 2347(is)X ! 2486: 2438(a)X ! 2487: 2509(numeric)X ! 2488: 2830(expression.)X ! 2489: 3281(Tcl)X ! 2490: 3430(expressions)X ! 2491: 3871(have)X ! 2492: 4068(the)X ! 2493: 720 5355(same)N ! 2494: 927(operators)X ! 2495: 1280(and)X ! 2496: 1433(precedence)X ! 2497: 1854(as)X ! 2498: 1953(expressions)X ! 2499: 2389(in)X ! 2500: 2484(C.)X ! 2501: 2612(The)X ! 2502: 7 f ! 2503: 2805(expr)X ! 2504: 1 f ! 2505: 3042(Tcl)X ! 2506: 3185(command)X ! 2507: 3558(evaluates)X ! 2508: 3911(a)X ! 2509: 3975(string)X ! 2510: 720 5454(as)N ! 2511: 815(an)X ! 2512: 920(expression)X ! 2513: 1318(and)X ! 2514: 1467(returns)X ! 2515: 1733(the)X ! 2516: 1863(result)X ! 2517: 2081(\(as)X ! 2518: 2205(a)X ! 2519: 2266(string,)X ! 2520: 2511(of)X ! 2521: 2606(course\).)X ! 2522: 2930(For)X ! 2523: 3074(example,)X ! 2524: 3417(the)X ! 2525: 3547(command)X ! 2526: 7 f ! 2527: 10 s ! 2528: 1040 5586(expr)N ! 2529: 1280({\($a)X ! 2530: 1520(<)X ! 2531: 1616($b\))X ! 2532: 1808(||)X ! 2533: 1952(\($c)X ! 2534: 2144(!=)X ! 2535: 2288(0\)})X ! 2536: 1 f ! 2537: 11 s ! 2538: 720 5718(returns)N ! 2539: 988(``)X ! 2540: 7 f ! 2541: 1046(1)X ! 2542: 1 f ! 2543: 1099('')X ! 2544: 1181(if)X ! 2545: 1259(the)X ! 2546: 1391(numeric)X ! 2547: 1704(value)X ! 2548: 1919(of)X ! 2549: 2016(variable)X ! 2550: 7 f ! 2551: 2354(a)X ! 2552: 1 f ! 2553: 2430(is)X ! 2554: 2512(less)X ! 2555: 2667(than)X ! 2556: 2842(that)X ! 2557: 2998(of)X ! 2558: 3094(variable)X ! 2559: 7 f ! 2560: 3432(b)X ! 2561: 1 f ! 2562: 3485(,)X ! 2563: 3530(or)X ! 2564: 3626(if)X ! 2565: 3703(variable)X ! 2566: 7 f ! 2567: 4041(c)X ! 2568: 1 f ! 2569: 4117(is)X ! 2570: 3 f ! 2571: 2375 6048(-)N ! 2572: 2426(3)X ! 2573: 2492(-)X ! 2574: ! 2575: 4 p ! 2576: %%Page: 4 5 ! 2577: 11 s 11 xH 0 xS 3 f ! 2578: 720 483(Tcl:)N ! 2579: 894(An)X ! 2580: 1028(Embeddable)X ! 2581: 1525(Command)X ! 2582: 1942(Language)X ! 2583: 3466(December)X ! 2584: 3868(22,)X ! 2585: 4000(1989)X ! 2586: 1 f ! 2587: 720 771(zero;)N ! 2588: 946(otherwise)X ! 2589: 1316(it)X ! 2590: 1394(returns)X ! 2591: 1666(``)X ! 2592: 7 f ! 2593: 1724(0)X ! 2594: 1 f ! 2595: 1777(''.)X ! 2596: 1907(Several)X ! 2597: 2199(other)X ! 2598: 2408(commands,)X ! 2599: 2840(such)X ! 2600: 3029(as)X ! 2601: 7 f ! 2602: 3161(if)X ! 2603: 1 f ! 2604: 3295(and)X ! 2605: 7 f ! 2606: 3481(for)X ! 2607: 1 f ! 2608: 3640(,)X ! 2609: 3690(expect)X ! 2610: 3948(one)X ! 2611: 4103(or)X ! 2612: 720 870(more)N ! 2613: 923(of)X ! 2614: 1018(their)X ! 2615: 1202(arguments)X ! 2616: 1591(to)X ! 2617: 1682(be)X ! 2618: 1787(expressions.)X ! 2619: 920 1002(The)N ! 2620: 1089(third)X ! 2621: 1288(common)X ! 2622: 1629(interpretation)X ! 2623: 2137(of)X ! 2624: 2242(strings)X ! 2625: 2509(is)X ! 2626: 2600(as)X ! 2627: 2705(commands)X ! 2628: 3119(\(or)X ! 2629: 3252(sequences)X ! 2630: 3639(of)X ! 2631: 3743(commands\).)X ! 2632: 720 1101(Arguments)N ! 2633: 1138(of)X ! 2634: 1238(this)X ! 2635: 1392(form)X ! 2636: 1589(are)X ! 2637: 1722(used)X ! 2638: 1909(in)X ! 2639: 2004(Tcl)X ! 2640: 2148(commands)X ! 2641: 2556(that)X ! 2642: 2715(implement)X ! 2643: 3120(control)X ! 2644: 3396(structures.)X ! 2645: 3808(For)X ! 2646: 3956(exam-)X ! 2647: 720 1200(ple,)N ! 2648: 872(consider)X ! 2649: 1192(the)X ! 2650: 1322(following)X ! 2651: 1687(command:)X ! 2652: 7 f ! 2653: 10 s ! 2654: 1040 1332(if)N ! 2655: 1184({$a)X ! 2656: 1376(<)X ! 2657: 1472($b})X ! 2658: 1664({)X ! 2659: 1266 1431(set)N ! 2660: 1458(tmp)X ! 2661: 1650($a)X ! 2662: 1266 1530(set)N ! 2663: 1458(a)X ! 2664: 1554($b)X ! 2665: 1266 1629(set)N ! 2666: 1458(b)X ! 2667: 1554($tmp)X ! 2668: 1040 1728(})N ! 2669: 1 f ! 2670: 11 s ! 2671: 720 1893(The)N ! 2672: 7 f ! 2673: 912(if)X ! 2674: 1 f ! 2675: 1042(command)X ! 2676: 1414(receives)X ! 2677: 1726(two)X ! 2678: 1882(arguments)X ! 2679: 2273(here,)X ! 2680: 2470(each)X ! 2681: 2655(of)X ! 2682: 2752(which)X ! 2683: 2991(is)X ! 2684: 3074(delimited)X ! 2685: 3433(by)X ! 2686: 3544(curly)X ! 2687: 3748(braces.)X ! 2688: 7 f ! 2689: 4070(If)X ! 2690: 1 f ! 2691: 720 1992(is)N ! 2692: 806(a)X ! 2693: 872(built-in)X ! 2694: 1160(command)X ! 2695: 1535(that)X ! 2696: 1695(evaluates)X ! 2697: 2050(its)X ! 2698: 2161(\256rst)X ! 2699: 2325(argument)X ! 2700: 2685(as)X ! 2701: 2785(an)X ! 2702: 2894(expression;)X ! 2703: 3321(if)X ! 2704: 3401(the)X ! 2705: 3535(result)X ! 2706: 3757(is)X ! 2707: 3842(non-zero,)X ! 2708: 7 f ! 2709: 720 2091(if)N ! 2710: 1 f ! 2711: 853(executes)X ! 2712: 1183(its)X ! 2713: 1294(second)X ! 2714: 1565(argument)X ! 2715: 1925(as)X ! 2716: 2025(a)X ! 2717: 2091(Tcl)X ! 2718: 2236(command.)X ! 2719: 2655(This)X ! 2720: 2839(particular)X ! 2721: 3203(command)X ! 2722: 3577(swaps)X ! 2723: 3817(the)X ! 2724: 3951(values)X ! 2725: 720 2190(of)N ! 2726: 815(the)X ! 2727: 945(variables)X ! 2728: 7 f ! 2729: 1316(a)X ! 2730: 1 f ! 2731: 1391(and)X ! 2732: 7 f ! 2733: 1571(b)X ! 2734: 1 f ! 2735: 1646(if)X ! 2736: 7 f ! 2737: 1753(a)X ! 2738: 1 f ! 2739: 1828(is)X ! 2740: 1909(less)X ! 2741: 2063(than)X ! 2742: 7 f ! 2743: 2268(b)X ! 2744: 1 f ! 2745: 2321(.)X ! 2746: 920 2322(Tcl)N ! 2747: 1060(also)X ! 2748: 1224(allows)X ! 2749: 1476(users)X ! 2750: 1678(to)X ! 2751: 1769(de\256ne)X ! 2752: 2006(command)X ! 2753: 2376(procedures)X ! 2754: 2783(written)X ! 2755: 3055(in)X ! 2756: 3146(the)X ! 2757: 3276(Tcl)X ! 2758: 3416(language.)X ! 2759: 3800(I)X ! 2760: 3851(will)X ! 2761: 4011(refer)X ! 2762: 720 2421(to)N ! 2763: 815(these)X ! 2764: 1022(procedures)X ! 2765: 1433(as)X ! 2766: 2 f ! 2767: 1532(tclproc)X ! 2768: 1 f ! 2769: 1782('s,)X ! 2770: 1893(in)X ! 2771: 1988(order)X ! 2772: 2199(to)X ! 2773: 2294(distinguish)X ! 2774: 2708(them)X ! 2775: 2911(from)X ! 2776: 3108(other)X ! 2777: 3315(procedures)X ! 2778: 3726(written)X ! 2779: 4001(in)X ! 2780: 4095(C.)X ! 2781: 720 2520(The)N ! 2782: 7 f ! 2783: 919(proc)X ! 2784: 1 f ! 2785: 1162(built-in)X ! 2786: 1453(command)X ! 2787: 1831(is)X ! 2788: 1920(used)X ! 2789: 2111(to)X ! 2790: 2210(create)X ! 2791: 2450(a)X ! 2792: 2519(tclproc.)X ! 2793: 2838(For)X ! 2794: 2990(example,)X ! 2795: 3341(here)X ! 2796: 3522(is)X ! 2797: 3611(a)X ! 2798: 3680(Tcl)X ! 2799: 3828(command)X ! 2800: 720 2619(that)N ! 2801: 875(de\256nes)X ! 2802: 1146(a)X ! 2803: 1207(recursive)X ! 2804: 1551(factorial)X ! 2805: 1867(procedure:)X ! 2806: 7 f ! 2807: 10 s ! 2808: 1040 2751(proc)N ! 2809: 1280(fac)X ! 2810: 1472(x)X ! 2811: 1568({)X ! 2812: 1266 2850(if)N ! 2813: 1410({$x)X ! 2814: 1602(==)X ! 2815: 1746(1})X ! 2816: 1890({return)X ! 2817: 2274(1})X ! 2818: 1266 2949(return)N ! 2819: 1602([expr)X ! 2820: 1890({$x)X ! 2821: 2082(*)X ! 2822: 2178([fac)X ! 2823: 2418([expr)X ! 2824: 2706($x-1]]}])X ! 2825: 1040 3048(})N ! 2826: 1 f ! 2827: 11 s ! 2828: 720 3213(The)N ! 2829: 7 f ! 2830: 912(proc)X ! 2831: 1 f ! 2832: 1148(command)X ! 2833: 1520(takes)X ! 2834: 1725(three)X ! 2835: 1925(arguments:)X ! 2836: 2363(a)X ! 2837: 2425(name)X ! 2838: 2639(for)X ! 2839: 2764(the)X ! 2840: 2895(new)X ! 2841: 3064(tclproc,)X ! 2842: 3354(a)X ! 2843: 3416(list)X ! 2844: 3548(of)X ! 2845: 3644(variable)X ! 2846: 3951(names)X ! 2847: 720 3312(\(in)N ! 2848: 841(this)X ! 2849: 992(case)X ! 2850: 1166(the)X ! 2851: 1297(list)X ! 2852: 1428(has)X ! 2853: 1567(only)X ! 2854: 1746(a)X ! 2855: 1807(single)X ! 2856: 2040(element,)X ! 2857: 7 f ! 2858: 2395(x)X ! 2859: 1 f ! 2860: 2448(\),)X ! 2861: 2521(and)X ! 2862: 2670(a)X ! 2863: 2731(Tcl)X ! 2864: 2871(command)X ! 2865: 3241(that)X ! 2866: 3396(comprises)X ! 2867: 3775(the)X ! 2868: 3905(body)X ! 2869: 4103(of)X ! 2870: 720 3411(the)N ! 2871: 858(tclproc.)X ! 2872: 1177(Once)X ! 2873: 1392(this)X ! 2874: 7 f ! 2875: 1581(proc)X ! 2876: 1 f ! 2877: 1823(command)X ! 2878: 2200(has)X ! 2879: 2346(been)X ! 2880: 2541(executed,)X ! 2881: 7 f ! 2882: 2936(fac)X ! 2883: 1 f ! 2884: 3124(may)X ! 2885: 3305(be)X ! 2886: 3417(invoked)X ! 2887: 3730(just)X ! 2888: 3887(like)X ! 2889: 4049(any)X ! 2890: 720 3510(other)N ! 2891: 923(Tcl)X ! 2892: 1063(command.)X ! 2893: 1477(For)X ! 2894: 1621(example)X ! 2895: 7 f ! 2896: 10 s ! 2897: 1040 3642(fac)N ! 2898: 1232(4)X ! 2899: 1 f ! 2900: 11 s ! 2901: 720 3774(will)N ! 2902: 880(return)X ! 2903: 1112(the)X ! 2904: 1242(string)X ! 2905: 1465(``)X ! 2906: 7 f ! 2907: 1523(24)X ! 2908: 1 f ! 2909: 1629(''.)X ! 2910: 920 3906(Figure)N ! 2911: 1186(1)X ! 2912: 1266(lists)X ! 2913: 1445(all)X ! 2914: 1570(of)X ! 2915: 1679(the)X ! 2916: 1823(built-in)X ! 2917: 2120(Tcl)X ! 2918: 2274(commands)X ! 2919: 2692(in)X ! 2920: 2796(groups.)X ! 2921: 3114(In)X ! 2922: 3222(addition)X ! 2923: 3547(to)X ! 2924: 3651(the)X ! 2925: 3794(commands)X ! 2926: 720 4005(already)N ! 2927: 1005(mentioned,)X ! 2928: 1426(Tcl)X ! 2929: 1570(provides)X ! 2930: 1899(commands)X ! 2931: 2307(for)X ! 2932: 2434(manipulating)X ! 2933: 2926(strings)X ! 2934: 3186(\(comparison,)X ! 2935: 3673(matching,)X ! 2936: 4049(and)X ! 2937: 7 f ! 2938: 720 4104(printf/scanf)N ! 2939: 1 f ! 2940: 1356(-like)X ! 2941: 1546(operations\),)X ! 2942: 1992(commands)X ! 2943: 2402(for)X ! 2944: 2532(manipulating)X ! 2945: 3027(\256les)X ! 2946: 3202(and)X ! 2947: 3357(\256le)X ! 2948: 3498(names,)X ! 2949: 3773(and)X ! 2950: 3928(a)X ! 2951: 3995(com-)X ! 2952: 720 4203(mand)N ! 2953: 941(to)X ! 2954: 1035(fork)X ! 2955: 1206(a)X ! 2956: 1270(subprocess)X ! 2957: 1680(and)X ! 2958: 1832(return)X ! 2959: 2067(the)X ! 2960: 2200(subprocess's)X ! 2961: 2673(standard)X ! 2962: 2996(output)X ! 2963: 3247(as)X ! 2964: 3345(result.)X ! 2965: 3610(The)X ! 2966: 3772(built-in)X ! 2967: 4058(Tcl)X ! 2968: 720 4302(commands)N ! 2969: 1129(provide)X ! 2970: 1424(a)X ! 2971: 1489(simple)X ! 2972: 1751(but)X ! 2973: 1890(complete)X ! 2974: 2240(programming)X ! 2975: 2746(language.)X ! 2976: 3134(The)X ! 2977: 3297(built-in)X ! 2978: 3584(facilities)X ! 2979: 3915(may)X ! 2980: 4093(be)X ! 2981: 720 4401(extended)N ! 2982: 1066(in)X ! 2983: 1163(three)X ! 2984: 1367(ways:)X ! 2985: 1622(by)X ! 2986: 1738(writing)X ! 2987: 2021(tclprocs;)X ! 2988: 2353(by)X ! 2989: 2469(invoking)X ! 2990: 2811(other)X ! 2991: 3019(programs)X ! 2992: 3378(as)X ! 2993: 3478(subprocesses;)X ! 2994: 3988(or)X ! 2995: 4088(by)X ! 2996: 720 4500(de\256ning)N ! 2997: 1031(new)X ! 2998: 1199(commands)X ! 2999: 1603(with)X ! 3000: 1782(C)X ! 3001: 1863(procedures)X ! 3002: 2270(as)X ! 3003: 2365(described)X ! 3004: 2724(in)X ! 3005: 2815(the)X ! 3006: 2945(next)X ! 3007: 3119(section.)X ! 3008: 3 f ! 3009: 720 4794(3.)N ! 3010: 830(Embedding)X ! 3011: 1288(Tcl)X ! 3012: 1433(in)X ! 3013: 1529(Applications)X ! 3014: 1 f ! 3015: 920 4926(Although)N ! 3016: 1282(the)X ! 3017: 1419(built-in)X ! 3018: 1709(Tcl)X ! 3019: 1856(commands)X ! 3020: 2267(could)X ! 3021: 2492(conceivably)X ! 3022: 2947(be)X ! 3023: 3058(used)X ! 3024: 3247(as)X ! 3025: 3348(a)X ! 3026: 3415(stand-alone)X ! 3027: 3849(program-)X ! 3028: 720 5025(ming)N ! 3029: 927(system,)X ! 3030: 1219(Tcl)X ! 3031: 1362(is)X ! 3032: 1446(really)X ! 3033: 1672(intended)X ! 3034: 2001(to)X ! 3035: 2094(be)X ! 3036: 2201(embedded)X ! 3037: 2587(in)X ! 3038: 2680(application)X ! 3039: 3097(programs.)X ! 3040: 3497(I)X ! 3041: 3550(have)X ! 3042: 3740(built)X ! 3043: 3927(several)X ! 3044: 720 5124(application)N ! 3045: 1137(programs)X ! 3046: 1492(using)X ! 3047: 1706(Tcl,)X ! 3048: 1869(one)X ! 3049: 2019(of)X ! 3050: 2115(which)X ! 3051: 2353(is)X ! 3052: 2435(a)X ! 3053: 2497(mouse-based)X ! 3054: 2979(editor)X ! 3055: 3208(for)X ! 3056: 3333(X)X ! 3057: 3419(called)X ! 3058: 2 f ! 3059: 3653(mx)X ! 3060: 1 f ! 3061: 3755(.)X ! 3062: 3822(In)X ! 3063: 3918(the)X ! 3064: 4049(rest)X ! 3065: 720 5223(of)N ! 3066: 816(the)X ! 3067: 947(paper)X ! 3068: 1165(I)X ! 3069: 1217(will)X ! 3070: 1378(use)X ! 3071: 1518(examples)X ! 3072: 1873(from)X ! 3073: 2 f ! 3074: 2066(mx)X ! 3075: 1 f ! 3076: 2190(to)X ! 3077: 2281(illustrate)X ! 3078: 2613(how)X ! 3079: 2786(Tcl)X ! 3080: 2926(interacts)X ! 3081: 3247(with)X ! 3082: 3426(its)X ! 3083: 3532(enclosing)X ! 3084: 3892(applica-)X ! 3085: 720 5322(tion.)N ! 3086: 920 5454(An)N ! 3087: 1058(application)X ! 3088: 1482(using)X ! 3089: 1704(Tcl)X ! 3090: 1853(extends)X ! 3091: 2152(the)X ! 3092: 2290(built-in)X ! 3093: 2581(commands)X ! 3094: 2993(with)X ! 3095: 3180(a)X ! 3096: 3249(few)X ! 3097: 3410(additional)X ! 3098: 3794(commands)X ! 3099: 720 5553(related)N ! 3100: 997(to)X ! 3101: 1103(that)X ! 3102: 1273(particular)X ! 3103: 1648(application.)X ! 3104: 2122(For)X ! 3105: 2281(example,)X ! 3106: 2638(a)X ! 3107: 2713(clock)X ! 3108: 2940(program)X ! 3109: 3274(might)X ! 3110: 3517(provide)X ! 3111: 3822(additional)X ! 3112: 720 5652(commands)N ! 3113: 1129(to)X ! 3114: 1225(control)X ! 3115: 1502(how)X ! 3116: 1680(the)X ! 3117: 1815(clock)X ! 3118: 2033(is)X ! 3119: 2119(displayed)X ! 3120: 2484(and)X ! 3121: 2638(to)X ! 3122: 2734(set)X ! 3123: 2859(alarms;)X ! 3124: 3168(the)X ! 3125: 2 f ! 3126: 3303(mx)X ! 3127: 1 f ! 3128: 3432(editor)X ! 3129: 3665(provides)X ! 3130: 3995(addi-)X ! 3131: 720 5751(tional)N ! 3132: 955(commands)X ! 3133: 1370(to)X ! 3134: 1472(read)X ! 3135: 1656(a)X ! 3136: 1728(\256le)X ! 3137: 1874(from)X ! 3138: 2078(disk,)X ! 3139: 2280(display)X ! 3140: 2568(it)X ! 3141: 2651(in)X ! 3142: 2753(a)X ! 3143: 2825(window,)X ! 3144: 3163(select)X ! 3145: 3396(and)X ! 3146: 3555(modify)X ! 3147: 3842(ranges)X ! 3148: 4103(of)X ! 3149: 3 f ! 3150: 2375 6048(-)N ! 3151: 2426(4)X ! 3152: 2492(-)X ! 3153: ! 3154: 5 p ! 3155: %%Page: 5 6 ! 3156: 11 s 11 xH 0 xS 3 f ! 3157: 720 483(Tcl:)N ! 3158: 894(An)X ! 3159: 1028(Embeddable)X ! 3160: 1525(Command)X ! 3161: 1942(Language)X ! 3162: 3466(December)X ! 3163: 3868(22,)X ! 3164: 4000(1989)X ! 3165: 7 f ! 3166: 10 s ! 3167: 1881 3355(catch,)N ! 3168: 2217(error,)X ! 3169: 2553(info,)X ! 3170: 2841(time)X ! 3171: 3 f ! 3172: 2217 3257(Miscellaneous)N ! 3173: 7 f ! 3174: 2361 3041(exec)N ! 3175: 3 f ! 3176: 2068 2943(Invoking)N ! 3177: 2393(Subprocesses)X ! 3178: 7 f ! 3179: 1857 2727(file,)N ! 3180: 2145(glob,)X ! 3181: 2433(print,)X ! 3182: 2769(source)X ! 3183: 3 f ! 3184: 2150 2629(File)N ! 3185: 2299(Manipulation)X ! 3186: 7 f ! 3187: 1977 2413(format,)N ! 3188: 2361(scan,)X ! 3189: 2649(string)X ! 3190: 3 f ! 3191: 2108 2315(String)N ! 3192: 2341(Manipulation)X ! 3193: 7 f ! 3194: 2361 2099(expr)N ! 3195: 3 f ! 3196: 2253 2000(Expressions)N ! 3197: 7 f ! 3198: 1641 1784(concat,)N ! 3199: 2025(index,)X ! 3200: 2361(length,)X ! 3201: 2745(list,)X ! 3202: 3033(range)X ! 3203: 3 f ! 3204: 2148 1686(List)N ! 3205: 2301(Manipulation)X ! 3206: 7 f ! 3207: 1857 1470(global,)N ! 3208: 2241(proc,)X ! 3209: 2529(return,)X ! 3210: 2913(set)X ! 3211: 3 f ! 3212: 2015 1372(Variables)N ! 3213: 2364(and)X ! 3214: 2512(Procedures)X ! 3215: 7 f ! 3216: 1377 1156(break,)N ! 3217: 1713(case,)X ! 3218: 2001(continue,)X ! 3219: 2481(eval,)X ! 3220: 2769(for,)X ! 3221: 3009(foreach,)X ! 3222: 3441(if)X ! 3223: 3 f ! 3224: 2324 1058(Control)N ! 3225: -1 Ds ! 3226: 1 Dt ! 3227: 1260 3459 MXY ! 3228: 0 -2592 Dl ! 3229: 2376 0 Dl ! 3230: 0 2592 Dl ! 3231: -2376 0 Dl ! 3232: 3 Dt ! 3233: -1 Ds ! 3234: 880 3641(Figure)N ! 3235: 1130(1)X ! 3236: 1 f ! 3237: (.)S ! 3238: 1233(The)X ! 3239: 1381(built-in)X ! 3240: 1638(Tcl)X ! 3241: 1767(commands.)X ! 3242: 2176(This)X ! 3243: 2340(set)X ! 3244: 2451(of)X ! 3245: 2540(commands)X ! 3246: 2909(is)X ! 3247: 2984(available)X ! 3248: 3296(to)X ! 3249: 3380(any)X ! 3250: 3518(application)X ! 3251: 3896(that)X ! 3252: 880 3731(uses)N ! 3253: 1038(Tcl.)X ! 3254: 1205(Additional)X ! 3255: 1567(commands)X ! 3256: 1934(may)X ! 3257: 2092(be)X ! 3258: 2188(de\256ned)X ! 3259: 2444(by)X ! 3260: 2544(the)X ! 3261: 2662(application.)X ! 3262: 11 s ! 3263: 720 3959(bytes,)N ! 3264: 957(and)X ! 3265: 1113(write)X ! 3266: 1323(the)X ! 3267: 1460(modi\256ed)X ! 3268: 1803(\256le)X ! 3269: 1945(back)X ! 3270: 2140(to)X ! 3271: 2238(disk.)X ! 3272: 2458(An)X ! 3273: 2594(application)X ! 3274: 3016(programmer)X ! 3275: 3480(need)X ! 3276: 3674(only)X ! 3277: 3859(write)X ! 3278: 4068(the)X ! 3279: 720 4058(application-speci\256c)N ! 3280: 1439(commands;)X ! 3281: 1896(the)X ! 3282: 2032(built-in)X ! 3283: 2321(commands)X ! 3284: 2731(provide)X ! 3285: 3028(programmability)X ! 3286: 3649(and)X ! 3287: 3803(extensibil-)X ! 3288: 720 4157(ity)N ! 3289: 839(``for)X ! 3290: 1023(free''.)X ! 3291: 1285(To)X ! 3292: 1407(users,)X ! 3293: 1633(the)X ! 3294: 1765(application-speci\256c)X ! 3295: 2480(commands)X ! 3296: 2886(appear)X ! 3297: 3144(the)X ! 3298: 3276(same)X ! 3299: 3481(as)X ! 3300: 3578(the)X ! 3301: 3710(built-in)X ! 3302: 3995(com-)X ! 3303: 720 4256(mands.)N ! 3304: 920 4388(Figure)N ! 3305: 1188(2)X ! 3306: 1270(shows)X ! 3307: 1527(the)X ! 3308: 1673(relationship)X ! 3309: 2128(between)X ! 3310: 2458(Tcl)X ! 3311: 2613(and)X ! 3312: 2777(the)X ! 3313: 2922(rest)X ! 3314: 3086(of)X ! 3315: 3196(an)X ! 3316: 3316(application.)X ! 3317: 3790(Tcl)X ! 3318: 3945(is)X ! 3319: 4041(a)X ! 3320: 4117(C)X ! 3321: 720 4487(library)N ! 3322: 984(package)X ! 3323: 1301(that)X ! 3324: 1463(is)X ! 3325: 1551(linked)X ! 3326: 1801(with)X ! 3327: 1986(the)X ! 3328: 2122(application.)X ! 3329: 2587(The)X ! 3330: 2752(Tcl)X ! 3331: 2898(library)X ! 3332: 3161(includes)X ! 3333: 3483(a)X ! 3334: 3550(parser)X ! 3335: 3792(for)X ! 3336: 3922(the)X ! 3337: 4058(Tcl)X ! 3338: 720 4586(language,)N ! 3339: 1087(procedures)X ! 3340: 1499(to)X ! 3341: 1595(execute)X ! 3342: 1890(the)X ! 3343: 2024(built-in)X ! 3344: 2311(commands,)X ! 3345: 2741(and)X ! 3346: 2894(a)X ! 3347: 2959(set)X ! 3348: 3083(of)X ! 3349: 3182(utility)X ! 3350: 3421(procedures)X ! 3351: 3832(for)X ! 3352: 3960(things)X ! 3353: 720 4685(like)N ! 3354: 882(expression)X ! 3355: 1287(evaluation)X ! 3356: 1684(and)X ! 3357: 1840(list)X ! 3358: 1978(management.)X ! 3359: 2501(The)X ! 3360: 2666(parser)X ! 3361: 2908(includes)X ! 3362: 3230(an)X ! 3363: 3341(extension)X ! 3364: 3707(interface)X ! 3365: 4043(that)X ! 3366: 720 4784(may)N ! 3367: 894(be)X ! 3368: 999(used)X ! 3369: 1182(to)X ! 3370: 1273(extend)X ! 3371: 1530(the)X ! 3372: 1660(language's)X ! 3373: 2063(command)X ! 3374: 2433(set.)X ! 3375: 920 4916(To)N ! 3376: 1047(use)X ! 3377: 1193(Tcl,)X ! 3378: 1362(an)X ! 3379: 1474(application)X ! 3380: 1896(\256rst)X ! 3381: 2062(creates)X ! 3382: 2335(an)X ! 3383: 2447(object)X ! 3384: 2692(called)X ! 3385: 2932(an)X ! 3386: 2 f ! 3387: 3044(interpreter)X ! 3388: 1 f ! 3389: 3426(,)X ! 3390: 3477(using)X ! 3391: 3697(the)X ! 3392: 3833(following)X ! 3393: 720 5015(library)N ! 3394: 977(procedure:)X ! 3395: 7 f ! 3396: 10 s ! 3397: 1040 5147(Tcl_Interp)N ! 3398: 1568(*)X ! 3399: 1664(Tcl_CreateInterp\(\))X ! 3400: 1 f ! 3401: 11 s ! 3402: 720 5279(An)N ! 3403: 855(interpreter)X ! 3404: 1250(consists)X ! 3405: 1557(of)X ! 3406: 1658(a)X ! 3407: 1725(set)X ! 3408: 1851(of)X ! 3409: 1952(commands,)X ! 3410: 2384(a)X ! 3411: 2451(set)X ! 3412: 2577(of)X ! 3413: 2678(variable)X ! 3414: 2990(bindings,)X ! 3415: 3344(and)X ! 3416: 3499(a)X ! 3417: 3566(command)X ! 3418: 3942(execu-)X ! 3419: 720 5378(tion)N ! 3420: 882(state.)X ! 3421: 1112(It)X ! 3422: 1190(is)X ! 3423: 1273(the)X ! 3424: 1405(basic)X ! 3425: 1610(unit)X ! 3426: 1772(manipulated)X ! 3427: 2233(by)X ! 3428: 2345(most)X ! 3429: 2540(of)X ! 3430: 2636(the)X ! 3431: 2767(Tcl)X ! 3432: 2908(library)X ! 3433: 3166(procedures.)X ! 3434: 3618(Simple)X ! 3435: 3892(applica-)X ! 3436: 720 5477(tions)N ! 3437: 919(will)X ! 3438: 1084(use)X ! 3439: 1228(only)X ! 3440: 1412(a)X ! 3441: 1478(single)X ! 3442: 1715(interpreter,)X ! 3443: 2130(while)X ! 3444: 2352(more)X ! 3445: 2559(complex)X ! 3446: 2889(applications)X ! 3447: 3342(may)X ! 3448: 3520(use)X ! 3449: 3663(multiple)X ! 3450: 3985(inter-)X ! 3451: 720 5576(preters)N ! 3452: 997(for)X ! 3453: 1137(different)X ! 3454: 1478(purposes.)X ! 3455: 1872(For)X ! 3456: 2032(example,)X ! 3457: 2 f ! 3458: 2391(mx)X ! 3459: 1 f ! 3460: 2530(uses)X ! 3461: 2718(one)X ! 3462: 2882(interpreter)X ! 3463: 3286(for)X ! 3464: 3425(each)X ! 3465: 3623(window)X ! 3466: 3943(on)X ! 3467: 4068(the)X ! 3468: 720 5675(screen.)N ! 3469: 3 f ! 3470: 2375 6048(-)N ! 3471: 2426(5)X ! 3472: 2492(-)X ! 3473: ! 3474: 6 p ! 3475: %%Page: 6 7 ! 3476: 11 s 11 xH 0 xS 3 f ! 3477: 720 483(Tcl:)N ! 3478: 894(An)X ! 3479: 1028(Embeddable)X ! 3480: 1525(Command)X ! 3481: 1942(Language)X ! 3482: 3466(December)X ! 3483: 3868(22,)X ! 3484: 4000(1989)X ! 3485: 1 f ! 3486: -1 Ds ! 3487: 1 Dt ! 3488: 2183 1045 MXY ! 3489: 604 0 Dl ! 3490: 2183 1400 MXY ! 3491: 16 -25 Dl ! 3492: -16 9 Dl ! 3493: -15 -9 Dl ! 3494: 15 25 Dl ! 3495: 0 -355 Dl ! 3496: 13 s ! 3497: 3006 867(Application)N ! 3498: 3142 1471 MXY ! 3499: 25 15 Dl ! 3500: -9 -15 Dl ! 3501: 9 -16 Dl ! 3502: -25 16 Dl ! 3503: 71 0 Dl ! 3504: 2929 1542 MXY ! 3505: 0 71 Dl ! 3506: 284 0 Dl ! 3507: 0 -142 Dl ! 3508: 2929 1400 MXY ! 3509: 16 -25 Dl ! 3510: -16 9 Dl ! 3511: -15 -9 Dl ! 3512: 15 25 Dl ! 3513: 0 -284 Dl ! 3514: 2361 1471 MXY ! 3515: 24 15 Dl ! 3516: -8 -15 Dl ! 3517: 8 -16 Dl ! 3518: -24 16 Dl ! 3519: 355 0 Dl ! 3520: 1367 867(Tcl)N ! 3521: 3 Dt ! 3522: 2787 1116 MXY ! 3523: 0 -142 Dl ! 3524: 284 0 Dl ! 3525: 0 142 Dl ! 3526: -284 0 Dl ! 3527: 2716 1542 MXY ! 3528: 0 -142 Dl ! 3529: 426 0 Dl ! 3530: 0 142 Dl ! 3531: -426 0 Dl ! 3532: 2779 1506(Collect)N ! 3533: 2857 1080(Init)N ! 3534: 1935 2465 MXY ! 3535: 0 -142 Dl ! 3536: 426 0 Dl ! 3537: 0 142 Dl ! 3538: -426 0 Dl ! 3539: 2006 1542 MXY ! 3540: 0 -142 Dl ! 3541: 355 0 Dl ! 3542: 0 142 Dl ! 3543: -355 0 Dl ! 3544: 1980 2429(Utilities)N ! 3545: 3 f ! 3546: 9 s ! 3547: 1349 2087(Commands)N ! 3548: 1349 1980(Built-in)N ! 3549: 3142 2140(Commands)N ! 3550: 3142 2033(Speci\256c)N ! 3551: 3142 1927(Application-)N ! 3552: 1 f ! 3553: 13 s ! 3554: 2053 1506(Parser)N ! 3555: 3000 2039 MXY ! 3556: 0 -71 Dl ! 3557: 71 0 Dl ! 3558: 0 71 Dl ! 3559: -71 0 Dl ! 3560: 2858 MX ! 3561: 0 -71 Dl ! 3562: 71 0 Dl ! 3563: 0 71 Dl ! 3564: -71 0 Dl ! 3565: 2716 MX ! 3566: 0 -71 Dl ! 3567: 71 0 Dl ! 3568: 0 71 Dl ! 3569: -71 0 Dl ! 3570: 2574 MX ! 3571: 0 -71 Dl ! 3572: 71 0 Dl ! 3573: 0 71 Dl ! 3574: -71 0 Dl ! 3575: 2290 MX ! 3576: 0 -71 Dl ! 3577: 71 0 Dl ! 3578: 0 71 Dl ! 3579: -71 0 Dl ! 3580: 2148 MX ! 3581: 0 -71 Dl ! 3582: 71 0 Dl ! 3583: 0 71 Dl ! 3584: -71 0 Dl ! 3585: 2006 MX ! 3586: 0 -71 Dl ! 3587: 71 0 Dl ! 3588: 0 71 Dl ! 3589: -71 0 Dl ! 3590: 1864 MX ! 3591: 0 -71 Dl ! 3592: 71 0 Dl ! 3593: 0 71 Dl ! 3594: -71 0 Dl ! 3595: 1722 MX ! 3596: 0 -71 Dl ! 3597: 71 0 Dl ! 3598: 0 71 Dl ! 3599: -71 0 Dl ! 3600: 1 Dt ! 3601: 1757 MX ! 3602: 0 213 Dl ! 3603: 249 0 Dl ! 3604: 1899 2039 MXY ! 3605: 0 178 Dl ! 3606: 142 0 Dl ! 3607: 2006 2323 MXY ! 3608: 15 -24 Dl ! 3609: -15 9 Dl ! 3610: -16 -9 Dl ! 3611: 16 24 Dl ! 3612: 0 -71 Dl ! 3613: 2041 2323 MXY ! 3614: 16 -24 Dl ! 3615: -16 9 Dl ! 3616: -15 -9 Dl ! 3617: 15 24 Dl ! 3618: 0 -106 Dl ! 3619: 2039 MY ! 3620: 0 142 Dl ! 3621: 36 0 Dl ! 3622: 2323 MY ! 3623: 15 -24 Dl ! 3624: -15 9 Dl ! 3625: -16 -9 Dl ! 3626: 16 24 Dl ! 3627: 0 -142 Dl ! 3628: 3036 2039 MXY ! 3629: 0 213 Dl ! 3630: -746 0 Dl ! 3631: 2323 MY ! 3632: 16 -24 Dl ! 3633: -16 9 Dl ! 3634: -16 -9 Dl ! 3635: 16 24 Dl ! 3636: 0 -71 Dl ! 3637: 2894 2039 MXY ! 3638: 0 178 Dl ! 3639: -640 0 Dl ! 3640: 2323 MY ! 3641: 16 -24 Dl ! 3642: -16 9 Dl ! 3643: -15 -9 Dl ! 3644: 15 24 Dl ! 3645: 0 -106 Dl ! 3646: 2752 2039 MXY ! 3647: 0 142 Dl ! 3648: -533 0 Dl ! 3649: 2323 MY ! 3650: 16 -24 Dl ! 3651: -16 9 Dl ! 3652: -16 -9 Dl ! 3653: 16 24 Dl ! 3654: 0 -142 Dl ! 3655: 2610 2039 MXY ! 3656: 0 107 Dl ! 3657: -427 0 Dl ! 3658: 2323 MY ! 3659: 16 -24 Dl ! 3660: -16 9 Dl ! 3661: -15 -9 Dl ! 3662: 15 24 Dl ! 3663: 0 -177 Dl ! 3664: 2326 2039 MXY ! 3665: 0 71 Dl ! 3666: -178 0 Dl ! 3667: 2323 MY ! 3668: 16 -24 Dl ! 3669: -16 9 Dl ! 3670: -16 -9 Dl ! 3671: 16 24 Dl ! 3672: 0 -213 Dl ! 3673: 2183 2039 MXY ! 3674: 0 35 Dl ! 3675: -71 0 Dl ! 3676: 2323 MY ! 3677: 16 -24 Dl ! 3678: -16 9 Dl ! 3679: -15 -9 Dl ! 3680: 15 24 Dl ! 3681: 0 -249 Dl ! 3682: 2326 1968 MXY ! 3683: 15 -25 Dl ! 3684: -15 9 Dl ! 3685: -16 -9 Dl ! 3686: 16 25 Dl ! 3687: 0 -107 Dl ! 3688: 2183 1968 MXY ! 3689: 16 -25 Dl ! 3690: -16 9 Dl ! 3691: -15 -9 Dl ! 3692: 15 25 Dl ! 3693: 0 -71 Dl ! 3694: 2610 1968 MXY ! 3695: 15 -25 Dl ! 3696: -15 9 Dl ! 3697: -16 -9 Dl ! 3698: 16 25 Dl ! 3699: 0 -142 Dl ! 3700: 2752 1968 MXY ! 3701: 15 -25 Dl ! 3702: -15 9 Dl ! 3703: -16 -9 Dl ! 3704: 16 25 Dl ! 3705: 0 -178 Dl ! 3706: 2894 1968 MXY ! 3707: 15 -25 Dl ! 3708: -15 9 Dl ! 3709: -16 -9 Dl ! 3710: 16 25 Dl ! 3711: 0 -213 Dl ! 3712: 3036 1968 MXY ! 3713: 15 -25 Dl ! 3714: -15 9 Dl ! 3715: -16 -9 Dl ! 3716: 16 25 Dl ! 3717: 0 -249 Dl ! 3718: 2326 1542 MXY ! 3719: 0 177 Dl ! 3720: 710 0 Dl ! 3721: 2290 1542 MXY ! 3722: 0 213 Dl ! 3723: 604 0 Dl ! 3724: 2254 1542 MXY ! 3725: 0 248 Dl ! 3726: 498 0 Dl ! 3727: 2219 1542 MXY ! 3728: 0 284 Dl ! 3729: 391 0 Dl ! 3730: 2183 1542 MXY ! 3731: 0 319 Dl ! 3732: 143 0 Dl ! 3733: 2148 1542 MXY ! 3734: 0 355 Dl ! 3735: 35 0 Dl ! 3736: 2041 1542 MXY ! 3737: 0 177 Dl ! 3738: -284 0 Dl ! 3739: 1968 MY ! 3740: 16 -25 Dl ! 3741: -16 9 Dl ! 3742: -15 -9 Dl ! 3743: 15 25 Dl ! 3744: 0 -249 Dl ! 3745: 2077 1542 MXY ! 3746: 0 213 Dl ! 3747: -178 0 Dl ! 3748: 1968 MY ! 3749: 16 -25 Dl ! 3750: -16 9 Dl ! 3751: -15 -9 Dl ! 3752: 15 25 Dl ! 3753: 0 -213 Dl ! 3754: 2112 1542 MXY ! 3755: 0 248 Dl ! 3756: -71 0 Dl ! 3757: 1968 MY ! 3758: 16 -25 Dl ! 3759: -16 9 Dl ! 3760: -15 -9 Dl ! 3761: 15 25 Dl ! 3762: 0 -178 Dl ! 3763: 4 Ds ! 3764: 2503 2536 MXY ! 3765: 0 -1633 Dl ! 3766: 1066 0 Dl ! 3767: 0 1633 Dl ! 3768: -1066 0 Dl ! 3769: 2432 903 MXY ! 3770: 0 1633 Dl ! 3771: -1136 0 Dl ! 3772: 0 -1633 Dl ! 3773: 1136 0 Dl ! 3774: 3 Dt ! 3775: -1 Ds ! 3776: 3 f ! 3777: 10 s ! 3778: 880 2718(Figure)N ! 3779: 1128(2)X ! 3780: 1 f ! 3781: (.)S ! 3782: 1229(The)X ! 3783: 1375(Tcl)X ! 3784: 1503(library)X ! 3785: 1738(provides)X ! 3786: 2035(a)X ! 3787: 2092(parser)X ! 3788: 2310(for)X ! 3789: 2425(the)X ! 3790: 2544(Tcl)X ! 3791: 2672(language,)X ! 3792: 3003(a)X ! 3793: 3060(set)X ! 3794: 3170(of)X ! 3795: 3258(built-in)X ! 3796: 3513(commands,)X ! 3797: 3900(and)X ! 3798: 880 2808(several)N ! 3799: 1145(utility)X ! 3800: 1372(procedures.)X ! 3801: 1801(The)X ! 3802: 1962(application)X ! 3803: 2354(provides)X ! 3804: 2666(application-speci\256c)X ! 3805: 3330(commands)X ! 3806: 3713(plus)X ! 3807: 3882(pro-)X ! 3808: 880 2898(cedures)N ! 3809: 1148(to)X ! 3810: 1232(collect)X ! 3811: 1468(commands)X ! 3812: 1837(for)X ! 3813: 1953(execution.)X ! 3814: 2327(The)X ! 3815: 2474(commands)X ! 3816: 2843(are)X ! 3817: 2963(parsed)X ! 3818: 3194(by)X ! 3819: 3295(Tcl)X ! 3820: 3423(and)X ! 3821: 3560(then)X ! 3822: 3719(passed)X ! 3823: 3954(to)X ! 3824: 880 2988(relevant)N ! 3825: 1159(command)X ! 3826: 1495(procedures)X ! 3827: 1868(\(either)X ! 3828: 2098(in)X ! 3829: 2180(Tcl)X ! 3830: 2307(or)X ! 3831: 2394(in)X ! 3832: 2476(the)X ! 3833: 2594(application\))X ! 3834: 2997(for)X ! 3835: 3111(execution.)X ! 3836: 11 s ! 3837: 920 3216(Once)N ! 3838: 1138(an)X ! 3839: 1254(application)X ! 3840: 1679(has)X ! 3841: 1828(created)X ! 3842: 2114(an)X ! 3843: 2229(interpreter,)X ! 3844: 2650(it)X ! 3845: 2732(calls)X ! 3846: 2926(the)X ! 3847: 7 f ! 3848: 3097 0.1992(Tcl_CreateCommand)AX ! 3849: 1 f ! 3850: 4030(pro-)X ! 3851: 720 3315(cedure)N ! 3852: 976(to)X ! 3853: 1067(extend)X ! 3854: 1324(the)X ! 3855: 1454(interpreter)X ! 3856: 1843(with)X ! 3857: 2022(application-speci\256c)X ! 3858: 2735(commands:)X ! 3859: 7 f ! 3860: 10 s ! 3861: 1360 3480(typedef)N ! 3862: 1744(int)X ! 3863: 1936(\(*Tcl_CmdProc\)\(ClientData)X ! 3864: 3184(clientData,)X ! 3865: 1586 3579(Tcl_Interp)N ! 3866: 2114(*interp,)X ! 3867: 2546(int)X ! 3868: 2738(argc,)X ! 3869: 3026(char)X ! 3870: 3266(*argv[]\);)X ! 3871: 1360 3777(Tcl_CreateCommand\(Tcl_Interp)N ! 3872: 2752(*interp,)X ! 3873: 3184(char)X ! 3874: 3424(*name,)X ! 3875: 1586 3876(Tcl_CmdProc)N ! 3876: 2162(proc,)X ! 3877: 2450(ClientData)X ! 3878: 2978(clientData\))X ! 3879: 1 f ! 3880: 11 s ! 3881: 720 4041(Each)N ! 3882: 919(call)X ! 3883: 1070(to)X ! 3884: 7 f ! 3885: 1193 0.1992(Tcl_CreateCommand)AX ! 3886: 1 f ! 3887: 2117(associates)X ! 3888: 2492(a)X ! 3889: 2554(particular)X ! 3890: 2915(command)X ! 3891: 3285(name)X ! 3892: 3498(\()X ! 3893: 7 f ! 3894: 3527(name)X ! 3895: 1 f ! 3896: 3739(\))X ! 3897: 3790(with)X ! 3898: 3969(a)X ! 3899: 4030(pro-)X ! 3900: 720 4140(cedure)N ! 3901: 982(that)X ! 3902: 1142(implements)X ! 3903: 1582(that)X ! 3904: 1742(command)X ! 3905: 2117(\()X ! 3906: 7 f ! 3907: 2146(proc)X ! 3908: 1 f ! 3909: 2358(\))X ! 3910: 2414(and)X ! 3911: 2568(an)X ! 3912: 2678(arbitrary)X ! 3913: 3008(single-word)X ! 3914: 3455(value)X ! 3915: 3673(to)X ! 3916: 3769(pass)X ! 3917: 3947(to)X ! 3918: 4043(that)X ! 3919: 720 4239(procedure)N ! 3920: 1093(\()X ! 3921: 7 f ! 3922: 1122(clientData)X ! 3923: 1 f ! 3924: 1652(\).)X ! 3925: 920 4371(After)N ! 3926: 1136(creating)X ! 3927: 1451(application-speci\256c)X ! 3928: 2173(commands,)X ! 3929: 2608(the)X ! 3930: 2747(application)X ! 3931: 3171(enters)X ! 3932: 3412(a)X ! 3933: 3482(main)X ! 3934: 3689(loop)X ! 3935: 3876(that)X ! 3936: 4039(col-)X ! 3937: 720 4470(lects)N ! 3938: 904(commands)X ! 3939: 1308(and)X ! 3940: 1457(passes)X ! 3941: 1703(them)X ! 3942: 1902(to)X ! 3943: 1993(the)X ! 3944: 7 f ! 3945: 2154(Tcl_Eval)X ! 3946: 1 f ! 3947: 2600(procedure)X ! 3948: 2973(for)X ! 3949: 3097(execution:)X ! 3950: 7 f ! 3951: 10 s ! 3952: 1040 4602(int)N ! 3953: 1232(Tcl_Eval\(Tcl_Interp)X ! 3954: 2192(*interp,)X ! 3955: 2624(char)X ! 3956: 2864(*cmd\))X ! 3957: 1 f ! 3958: 11 s ! 3959: 720 4734(In)N ! 3960: 825(the)X ! 3961: 965(simplest)X ! 3962: 1292(form,)X ! 3963: 1517(an)X ! 3964: 1632(application)X ! 3965: 2057(might)X ! 3966: 2296(simply)X ! 3967: 2569(read)X ! 3968: 2751(commands)X ! 3969: 3164(from)X ! 3970: 3366(the)X ! 3971: 3505(terminal)X ! 3972: 3831(or)X ! 3973: 3935(from)X ! 3974: 4137(a)X ! 3975: 720 4833(\256le.)N ! 3976: 908(In)X ! 3977: 1012(the)X ! 3978: 2 f ! 3979: 1151(mx)X ! 3980: 1 f ! 3981: 1284(editor)X ! 3982: 1521(Tcl)X ! 3983: 1669(commands)X ! 3984: 2081(are)X ! 3985: 2218(associated)X ! 3986: 2610(with)X ! 3987: 2797(events)X ! 3988: 3052(such)X ! 3989: 3243(as)X ! 3990: 3346(keystrokes,)X ! 3991: 3774(mouse)X ! 3992: 4034(but-)X ! 3993: 720 4932(tons,)N ! 3994: 916(or)X ! 3995: 1016(menu)X ! 3996: 1239(activations;)X ! 3997: 1696(each)X ! 3998: 1884(time)X ! 3999: 2069(an)X ! 4000: 2179(event)X ! 4001: 2397(occurs,)X ! 4002: 2675(the)X ! 4003: 2810(corresponding)X ! 4004: 3339(Tcl)X ! 4005: 3483(command)X ! 4006: 3857(is)X ! 4007: 3942(passed)X ! 4008: 720 5031(to)N ! 4009: 7 f ! 4010: 842(Tcl_Eval)X ! 4011: 1 f ! 4012: 1266(.)X ! 4013: 920 5163(The)N ! 4014: 7 f ! 4015: 1122(Tcl_Eval)X ! 4016: 1 f ! 4017: 1580(procedure)X ! 4018: 1965(parses)X ! 4019: 2218(its)X ! 4020: 7 f ! 4021: 2367(cmd)X ! 4022: 1 f ! 4023: 2559(argument)X ! 4024: 2925(into)X ! 4025: 3096(\256elds,)X ! 4026: 3342(looks)X ! 4027: 3566(up)X ! 4028: 3687(the)X ! 4029: 3828(command)X ! 4030: 720 5262(name)N ! 4031: 942(in)X ! 4032: 1042(the)X ! 4033: 1181(table)X ! 4034: 1384(of)X ! 4035: 1488(those)X ! 4036: 1705(associated)X ! 4037: 2098(with)X ! 4038: 2286(the)X ! 4039: 2425(interpreter,)X ! 4040: 2845(and)X ! 4041: 3003(invokes)X ! 4042: 3308(the)X ! 4043: 3447(command)X ! 4044: 3825(procedure)X ! 4045: 720 5361(associated)N ! 4046: 1133(with)X ! 4047: 1341(that)X ! 4048: 1525(command.)X ! 4049: 1968(All)X ! 4050: 2132(command)X ! 4051: 2530(procedures,)X ! 4052: 2987(whether)X ! 4053: 3320(built-in)X ! 4054: 3631(or)X ! 4055: 3754(application-)X ! 4056: 720 5460(speci\256c,)N ! 4057: 1039(are)X ! 4058: 1174(called)X ! 4059: 1413(in)X ! 4060: 1510(the)X ! 4061: 1646(same)X ! 4062: 1855(way,)X ! 4063: 2050(as)X ! 4064: 2150(described)X ! 4065: 2514(in)X ! 4066: 2610(the)X ! 4067: 7 f ! 4068: 2776(typedef)X ! 4069: 1 f ! 4070: 3174(for)X ! 4071: 7 f ! 4072: 3334(Tcl_CmdProc)X ! 4073: 1 f ! 4074: 3944(above.)X ! 4075: 720 5559(A)N ! 4076: 809(command)X ! 4077: 1183(procedure)X ! 4078: 1560(is)X ! 4079: 1645(passed)X ! 4080: 1905(an)X ! 4081: 2014(array)X ! 4082: 2220(of)X ! 4083: 2319(strings)X ! 4084: 2580(describing)X ! 4085: 2973(the)X ! 4086: 3107(command's)X ! 4087: 3543(arguments)X ! 4088: 3935(\()X ! 4089: 7 f ! 4090: 3964(argc)X ! 4091: 1 f ! 4092: 720 5658(and)N ! 4093: 7 f ! 4094: 909(argv)X ! 4095: 1 f ! 4096: 1121(\))X ! 4097: 1181(plus)X ! 4098: 1359(the)X ! 4099: 7 f ! 4100: 1529(clientData)X ! 4101: 1 f ! 4102: 2090(value)X ! 4103: 2312(that)X ! 4104: 2476(was)X ! 4105: 2643(associated)X ! 4106: 3036(with)X ! 4107: 3224(the)X ! 4108: 3362(command)X ! 4109: 3740(when)X ! 4110: 3960(it)X ! 4111: 4040(was)X ! 4112: 720 5757(created.)N ! 4113: 7 f ! 4114: 1091(ClientData)X ! 4115: 1 f ! 4116: 1663(is)X ! 4117: 1764(typically)X ! 4118: 2116(a)X ! 4119: 2197(pointer)X ! 4120: 2488(to)X ! 4121: 2598(an)X ! 4122: 2722(application-speci\256c)X ! 4123: 3454(structure)X ! 4124: 3803(containing)X ! 4125: 3 f ! 4126: 2375 6048(-)N ! 4127: 2426(6)X ! 4128: 2492(-)X ! 4129: ! 4130: 7 p ! 4131: %%Page: 7 8 ! 4132: 11 s 11 xH 0 xS 3 f ! 4133: 720 483(Tcl:)N ! 4134: 894(An)X ! 4135: 1028(Embeddable)X ! 4136: 1525(Command)X ! 4137: 1942(Language)X ! 4138: 3466(December)X ! 4139: 3868(22,)X ! 4140: 4000(1989)X ! 4141: 1 f ! 4142: 720 771(information)N ! 4143: 1165(needed)X ! 4144: 1442(to)X ! 4145: 1539(execute)X ! 4146: 1836(the)X ! 4147: 1972(command.)X ! 4148: 2392(For)X ! 4149: 2542(example,)X ! 4150: 2891(in)X ! 4151: 2 f ! 4152: 2988(mx)X ! 4153: 1 f ! 4154: 3118(the)X ! 4155: 7 f ! 4156: 3285(clientData)X ! 4157: 1 f ! 4158: 3843(argument)X ! 4159: 720 870(points)N ! 4160: 978(to)X ! 4161: 1089(a)X ! 4162: 1170(per-window)X ! 4163: 1636(data)X ! 4164: 1825(structure)X ! 4165: 2175(describing)X ! 4166: 2584(the)X ! 4167: 2734(\256le)X ! 4168: 2889(being)X ! 4169: 3127(edited)X ! 4170: 3385(and)X ! 4171: 3553(the)X ! 4172: 3702(window)X ! 4173: 4026(it)X ! 4174: 4117(is)X ! 4175: 720 969(displayed)N ! 4176: 1080(in.)X ! 4177: 920 1101(Control)N ! 4178: 1253(mechanisms)X ! 4179: 1752(like)X ! 4180: 7 f ! 4181: 1978(if)X ! 4182: 1 f ! 4183: 2146(and)X ! 4184: 7 f ! 4185: 2366(for)X ! 4186: 1 f ! 4187: 2587(are)X ! 4188: 2756(implemented)X ! 4189: 3280(with)X ! 4190: 3499(recursive)X ! 4191: 3883(calls)X ! 4192: 4107(to)X ! 4193: 7 f ! 4194: 720 1200(Tcl_Eval)N ! 4195: 1 f ! 4196: 1144(.)X ! 4197: 1212(For)X ! 4198: 1358(example,)X ! 4199: 1703(the)X ! 4200: 1835(command)X ! 4201: 2207(procedure)X ! 4202: 2582(for)X ! 4203: 2708(the)X ! 4204: 7 f ! 4205: 2871(if)X ! 4206: 1 f ! 4207: 3001(command)X ! 4208: 3373(evaluates)X ! 4209: 3724(its)X ! 4210: 3831(\256rst)X ! 4211: 3991(argu-)X ! 4212: 720 1299(ment)N ! 4213: 924(as)X ! 4214: 1024(an)X ! 4215: 1134(expression;)X ! 4216: 1584(if)X ! 4217: 1665(the)X ! 4218: 1800(result)X ! 4219: 2023(is)X ! 4220: 2109(non-zero,)X ! 4221: 2470(then)X ! 4222: 2649(it)X ! 4223: 2726(calls)X ! 4224: 7 f ! 4225: 2945(Tcl_Eval)X ! 4226: 1 f ! 4227: 3395(recursively)X ! 4228: 3812(to)X ! 4229: 3907(execute)X ! 4230: 720 1398(its)N ! 4231: 838(second)X ! 4232: 1116(argument)X ! 4233: 1483(as)X ! 4234: 1590(a)X ! 4235: 1663(Tcl)X ! 4236: 1815(command.)X ! 4237: 2241(During)X ! 4238: 2524(the)X ! 4239: 2666(execution)X ! 4240: 3043(of)X ! 4241: 3150(that)X ! 4242: 3317(command,)X ! 4243: 7 f ! 4244: 3752(Tcl_Eval)X ! 4245: 1 f ! 4246: 720 1497(may)N ! 4247: 901(be)X ! 4248: 1013(called)X ! 4249: 1253(recursively)X ! 4250: 1673(again,)X ! 4251: 1915(and)X ! 4252: 2071(so)X ! 4253: 2178(on.)X ! 4254: 7 f ! 4255: 2370(Tcl_Eval)X ! 4256: 1 f ! 4257: 2823(also)X ! 4258: 2994(calls)X ! 4259: 3185(itself)X ! 4260: 3391(recursively)X ! 4261: 3810(to)X ! 4262: 3907(execute)X ! 4263: 720 1596(bracketed)N ! 4264: 1084(commands)X ! 4265: 1488(that)X ! 4266: 1643(appear)X ! 4267: 1899(in)X ! 4268: 1990(arguments.)X ! 4269: 920 1728(Even)N ! 4270: 1127(tclprocs)X ! 4271: 1431(such)X ! 4272: 1617(as)X ! 4273: 7 f ! 4274: 1746(fac)X ! 4275: 1 f ! 4276: 1930(use)X ! 4277: 2072(this)X ! 4278: 2225(same)X ! 4279: 2431(basic)X ! 4280: 2637(mechanism.)X ! 4281: 3108(When)X ! 4282: 3343(the)X ! 4283: 7 f ! 4284: 3507(proc)X ! 4285: 1 f ! 4286: 3744(command)X ! 4287: 4117(is)X ! 4288: 720 1827(invoked)N ! 4289: 1045(to)X ! 4290: 1155(create)X ! 4291: 7 f ! 4292: 1437(fac)X ! 4293: 1 f ! 4294: 1596(,)X ! 4295: 1659(the)X ! 4296: 7 f ! 4297: 1839(proc)X ! 4298: 1 f ! 4299: 2091(command)X ! 4300: 2479(procedure)X ! 4301: 2870(creates)X ! 4302: 3154(a)X ! 4303: 3233(new)X ! 4304: 3419(command)X ! 4305: 3807(by)X ! 4306: 3935(calling)X ! 4307: 7 f ! 4308: 720 1926 0.1992(Tcl_CreateCommand)AN ! 4309: 1 f ! 4310: 1650(as)X ! 4311: 1752(illustrated)X ! 4312: 2135(in)X ! 4313: 2233(Figure)X ! 4314: 2492(3.)X ! 4315: 2609(The)X ! 4316: 2775(new)X ! 4317: 2950(command)X ! 4318: 3326(has)X ! 4319: 3471(the)X ! 4320: 3607(name)X ! 4321: 7 f ! 4322: 3857(fac)X ! 4323: 1 f ! 4324: 4016(.)X ! 4325: 4088(Its)X ! 4326: 720 2025(command)N ! 4327: 1095(procedure)X ! 4328: 1472(\()X ! 4329: 7 f ! 4330: 1501(proc)X ! 4331: 1 f ! 4332: 1739(in)X ! 4333: 1834(the)X ! 4334: 1968(call)X ! 4335: 2122(to)X ! 4336: 7 f ! 4337: 2248 0.1992(Tcl_CreateCommand)AX ! 4338: 1 f ! 4339: 3149(\))X ! 4340: 3204(is)X ! 4341: 3289(a)X ! 4342: 3354(special)X ! 4343: 3625(Tcl)X ! 4344: 3769(library)X ! 4345: 4030(pro-)X ! 4346: 720 2124(cedure)N ! 4347: 987(called)X ! 4348: 7 f ! 4349: 1261(InterpProc)X ! 4350: 1 f ! 4351: 1791(,)X ! 4352: 1845(and)X ! 4353: 2004(its)X ! 4354: 7 f ! 4355: 2151(clientData)X ! 4356: 1 f ! 4357: 2713(is)X ! 4358: 2804(a)X ! 4359: 2875(pointer)X ! 4360: 3157(to)X ! 4361: 3258(a)X ! 4362: 3329(structure)X ! 4363: 3669(describing)X ! 4364: 4068(the)X ! 4365: 720 2223(tclproc.)N ! 4366: 1036(This)X ! 4367: 1220(structure)X ! 4368: 1555(contains,)X ! 4369: 1898(among)X ! 4370: 2165(other)X ! 4371: 2373(things,)X ! 4372: 2638(a)X ! 4373: 2704(copy)X ! 4374: 2902(of)X ! 4375: 3002(the)X ! 4376: 3137(body)X ! 4377: 3340(of)X ! 4378: 3440(the)X ! 4379: 3575(tclproc)X ! 4380: 3846(\(the)X ! 4381: 4009(third)X ! 4382: 720 2322(argument)N ! 4383: 1090(to)X ! 4384: 1196(the)X ! 4385: 7 f ! 4386: 1372(proc)X ! 4387: 1 f ! 4388: 1621(command\).)X ! 4389: 2079(When)X ! 4390: 2326(the)X ! 4391: 7 f ! 4392: 2502(fac)X ! 4393: 1 f ! 4394: 2698(command)X ! 4395: 3083(is)X ! 4396: 3179(invoked,)X ! 4397: 7 f ! 4398: 3553(Tcl_Eval)X ! 4399: 1 f ! 4400: 4014(calls)X ! 4401: 7 f ! 4402: 720 2421(InterpProc)N ! 4403: 1 f ! 4404: 1250(,)X ! 4405: 1309(which)X ! 4406: 1560(in)X ! 4407: 1665(turn)X ! 4408: 1843(calls)X ! 4409: 7 f ! 4410: 2072(Tcl_Eval)X ! 4411: 1 f ! 4412: 2532(to)X ! 4413: 2637(execute)X ! 4414: 2942(the)X ! 4415: 3086(body)X ! 4416: 3298(of)X ! 4417: 3407(the)X ! 4418: 3551(tclproc.)X ! 4419: 3876(There)X ! 4420: 4117(is)X ! 4421: 720 2520(some)N ! 4422: 933(additional)X ! 4423: 1314(code)X ! 4424: 1507(required)X ! 4425: 1827(to)X ! 4426: 1923(associate)X ! 4427: 2268(the)X ! 4428: 2403(argument)X ! 4429: 2763(of)X ! 4430: 2863(the)X ! 4431: 7 f ! 4432: 3028(fac)X ! 4433: 1 f ! 4434: 3213(command)X ! 4435: 3587(\(which)X ! 4436: 3857(is)X ! 4437: 3942(passed)X ! 4438: 720 2619(to)N ! 4439: 7 f ! 4440: 847(InterpProc)X ! 4441: 1 f ! 4442: 1404(in)X ! 4443: 1499(its)X ! 4444: 7 f ! 4445: 1640(argv)X ! 4446: 1 f ! 4447: 1878(array\))X ! 4448: 2113(with)X ! 4449: 2296(the)X ! 4450: 7 f ! 4451: 2461(x)X ! 4452: 1 f ! 4453: 2540(variable)X ! 4454: 2850(used)X ! 4455: 3037(inside)X ! 4456: 7 f ! 4457: 3305(fac)X ! 4458: 1 f ! 4459: 3464('s)X ! 4460: 3553(body,)X ! 4461: 3777(and)X ! 4462: 3930(to)X ! 4463: 4025(sup-)X ! 4464: 720 2718(port)N ! 4465: 893(variables)X ! 4466: 1242(with)X ! 4467: 1430(local)X ! 4468: 1633(scope,)X ! 4469: 1886(but)X ! 4470: 2030(much)X ! 4471: 2256(of)X ! 4472: 2359(the)X ! 4473: 2497(mechanism)X ! 4474: 2929(for)X ! 4475: 3061(tclprocs)X ! 4476: 3370(is)X ! 4477: 3459(the)X ! 4478: 3597(same)X ! 4479: 3808(as)X ! 4480: 3911(that)X ! 4481: 4074(for)X ! 4482: 720 2817(any)N ! 4483: 869(other)X ! 4484: 1072(Tcl)X ! 4485: 1212(command.)X ! 4486: -1 Ds ! 4487: 1 Dt ! 4488: 2489 4389 MXY ! 4489: 2489 4338 2489 4287 2547.33 4261.5 curveto ! 4490: 2605.67 4236 2722.33 4236 2780.67 4206.83 curveto ! 4491: 2839 4177.67 2839 4119.33 2839 4061 curveto ! 4492: Dstroke ! 4493: 2140 4389 MXY ! 4494: 2140 4338 2140 4287 2081.67 4261.5 curveto ! 4495: 2023.33 4236 1906.67 4236 1848.33 4206.83 curveto ! 4496: 1790 4177.67 1790 4119.33 1790 4061 curveto ! 4497: Dstroke ! 4498: 2424 3974 MXY ! 4499: 2387.33 3974 2350.67 3974 2332.33 3904.83 curveto ! 4500: 2314 3835.67 2314 3697.33 2314 3559 curveto ! 4501: Dstroke ! 4502: 1499 3749(\(h\))N ! 4503: 1914 4361(\(g\))N ! 4504: 1922 3683(\(f\))N ! 4505: 2351 3880(\(d\))N ! 4506: 2616 4361(\(c\))N ! 4507: 2613 3683(\(b\))N ! 4508: 2140 3449 MXY ! 4509: -30 -19 Dl ! 4510: 10 19 Dl ! 4511: -10 20 Dl ! 4512: 30 -20 Dl ! 4513: 4411 MY ! 4514: 19 -30 Dl ! 4515: -19 11 Dl ! 4516: -20 -11 Dl ! 4517: 20 30 Dl ! 4518: 2402 3537 MXY ! 4519: 2402 3595.33 2402 3653.67 2474.83 3682.83 curveto ! 4520: 2547.67 3712 2693.33 3712 2766.17 3737.5 curveto ! 4521: 2839 3763 2839 3814 2839 3865 curveto ! 4522: Dstroke ! 4523: 2227 3537 MXY ! 4524: 2227 3595.33 2227 3653.67 2154.17 3682.83 curveto ! 4525: 2081.33 3712 1935.67 3712 1862.83 3737.5 curveto ! 4526: 1790 3763 1790 3814 1790 3865 curveto ! 4527: Dstroke ! 4528: 3886 MY ! 4529: 19 -30 Dl ! 4530: -19 11 Dl ! 4531: -19 -11 Dl ! 4532: 19 30 Dl ! 4533: 2314 3537 MXY ! 4534: -19 30 Dl ! 4535: 19 -11 Dl ! 4536: 20 11 Dl ! 4537: -20 -30 Dl ! 4538: 2489 4411 MXY ! 4539: 19 -30 Dl ! 4540: -19 11 Dl ! 4541: -19 -11 Dl ! 4542: 19 30 Dl ! 4543: 2839 3886 MXY ! 4544: 19 -30 Dl ! 4545: -19 11 Dl ! 4546: -19 -11 Dl ! 4547: 19 30 Dl ! 4548: 4 Ds ! 4549: 1965 4673 MXY ! 4550: 0 -262 Dl ! 4551: 699 0 Dl ! 4552: 0 262 Dl ! 4553: -699 0 Dl ! 4554: 2059 4623(Data)N ! 4555: 2247(Structure)X ! 4556: 1605 4011(InterpProc)N ! 4557: 2466 4033(Command)N ! 4558: 2856(Procedure)X ! 4559: 7 f ! 4560: 2733 3945(proc)N ! 4561: 1 f ! 4562: 2205 3486(Parser)N ! 4563: -1 Ds ! 4564: 3 Dt ! 4565: 2140 3537 MXY ! 4566: 0 -175 Dl ! 4567: 349 0 Dl ! 4568: 0 175 Dl ! 4569: -349 0 Dl ! 4570: 2424 4061 MXY ! 4571: 0 -175 Dl ! 4572: 830 0 Dl ! 4573: 0 175 Dl ! 4574: -830 0 Dl ! 4575: 1571 MX ! 4576: 0 -175 Dl ! 4577: 438 0 Dl ! 4578: 0 175 Dl ! 4579: -438 0 Dl ! 4580: 1 Dt ! 4581: 3974 MY ! 4582: 1527.33 3974 1483.67 3974 1461.83 3886.5 curveto ! 4583: 1440 3799 1440 3624 1553 3536.5 curveto ! 4584: 1666 3449 1892 3449 2118 3449 curveto ! 4585: Dstroke ! 4586: 7 f ! 4587: 2235 4514(fac)N ! 4588: 2533 3049(proc)N ! 4589: 2798(fac)X ! 4590: 3010(x)X ! 4591: 3116({...})X ! 4592: 1 f ! 4593: 2402 3362 MXY ! 4594: 19 -30 Dl ! 4595: -19 11 Dl ! 4596: -19 -11 Dl ! 4597: 19 30 Dl ! 4598: 0 -350 Dl ! 4599: 2227 3362 MXY ! 4600: 19 -30 Dl ! 4601: -19 11 Dl ! 4602: -19 -11 Dl ! 4603: 19 30 Dl ! 4604: 0 -350 Dl ! 4605: 2402 MX ! 4606: 87 0 Dl ! 4607: 2227 MX ! 4608: -87 0 Dl ! 4609: 2446 3224(\(a\))N ! 4610: 2086(\(e\))X ! 4611: 7 f ! 4612: 1831 3049(fac)N ! 4613: 2043(5)X ! 4614: 1 f ! 4615: 3 Dt ! 4616: -1 Ds ! 4617: 3 f ! 4618: 10 s ! 4619: 880 4855(Figure)N ! 4620: 1135(3)X ! 4621: 1 f ! 4622: (.)S ! 4623: 1242(The)X ! 4624: 1394(creation)X ! 4625: 1680(and)X ! 4626: 1823(execution)X ! 4627: 2162(of)X ! 4628: 2256(a)X ! 4629: 2319(tclproc)X ! 4630: 2569(\(a)X ! 4631: 2659(procedure)X ! 4632: 3008(written)X ! 4633: 3262(in)X ! 4634: 3351(Tcl\):)X ! 4635: 3554(\(a\))X ! 4636: 3671(the)X ! 4637: 7 f ! 4638: 3824(proc)X ! 4639: 1 f ! 4640: 880 4945(command)N ! 4641: 1218(is)X ! 4642: 1293(invoked,)X ! 4643: 1593(e.g.)X ! 4644: 1731(to)X ! 4645: 1815(create)X ! 4646: 2030(the)X ! 4647: 7 f ! 4648: 2178(fac)X ! 4649: 1 f ! 4650: 2344(procedure;)X ! 4651: 2730(\(b\))X ! 4652: 2846(the)X ! 4653: 2965(Tcl)X ! 4654: 3093(parser)X ! 4655: 3311(invokes)X ! 4656: 3581(the)X ! 4657: 3700(command)X ! 4658: 880 5035(procedure)N ! 4659: 1225(associated)X ! 4660: 1578(with)X ! 4661: 7 f ! 4662: 1771(proc)X ! 4663: 1 f ! 4664: (;)S ! 4665: 2028(\(c\))X ! 4666: 2141(the)X ! 4667: 7 f ! 4668: 2290(proc)X ! 4669: 1 f ! 4670: 2505(command)X ! 4671: 2844(procedure)X ! 4672: 3189(creates)X ! 4673: 3436(a)X ! 4674: 3495(data)X ! 4675: 3651(structure)X ! 4676: 3954(to)X ! 4677: 880 5125(hold)N ! 4678: 1047(the)X ! 4679: 1170(Tcl)X ! 4680: 1301(command)X ! 4681: 1641(that)X ! 4682: 1785(is)X ! 4683: 7 f ! 4684: 1890(fac)X ! 4685: 1 f ! 4686: ('s)S ! 4687: 2116(body;)X ! 4688: 2342(\(d\))X ! 4689: 7 f ! 4690: 2488(fac)X ! 4691: 1 f ! 4692: 2656(is)X ! 4693: 2733(registered)X ! 4694: 3074(as)X ! 4695: 3165(a)X ! 4696: 3225(new)X ! 4697: 3383(Tcl)X ! 4698: 3514(command,)X ! 4699: 3874(with)X ! 4700: 7 f ! 4701: 880 5215(InterpProc)N ! 4702: 1 f ! 4703: 1388(as)X ! 4704: 1483(its)X ! 4705: 1585(command)X ! 4706: 1928(procedure;)X ! 4707: 2319(\(e\))X ! 4708: 7 f ! 4709: 2464(fac)X ! 4710: 1 f ! 4711: 2635(is)X ! 4712: 2715(invoked)X ! 4713: 3000(as)X ! 4714: 3094(a)X ! 4715: 3157(Tcl)X ! 4716: 3291(command;)X ! 4717: 3676(\(f\))X ! 4718: 3784(the)X ! 4719: 3909(Tcl)X ! 4720: 880 5305(parser)N ! 4721: 1112(invokes)X ! 4722: 7 f ! 4723: 1424(InterpProc)X ! 4724: 1 f ! 4725: 1939(as)X ! 4726: 2041(the)X ! 4727: 2174(command)X ! 4728: 2524(procedure)X ! 4729: 2880(for)X ! 4730: 7 f ! 4731: 3036(fac)X ! 4732: 1 f ! 4733: (;)S ! 4734: 3256(\(g\))X ! 4735: 7 f ! 4736: 3412(InterpProc)X ! 4737: 1 f ! 4738: 3926(re-)X ! 4739: 880 5395(trieves)N ! 4740: 1118(the)X ! 4741: 1240(body)X ! 4742: 1424(of)X ! 4743: 7 f ! 4744: 1543(fac)X ! 4745: 1 f ! 4746: 1711(from)X ! 4747: 1891(the)X ! 4748: 2013(data)X ! 4749: 2171(structure;)X ! 4750: 2518(and)X ! 4751: 2658(\(h\))X ! 4752: 2775(the)X ! 4753: 2896(Tcl)X ! 4754: 3026(commands)X ! 4755: 3396(in)X ! 4756: 7 f ! 4757: 3509(fac)X ! 4758: 1 f ! 4759: ('s)S ! 4760: 3734(body)X ! 4761: 3917(are)X ! 4762: 880 5485(passed)N ! 4763: 1114(back)X ! 4764: 1286(to)X ! 4765: 1368(the)X ! 4766: 1486(Tcl)X ! 4767: 1613(parser)X ! 4768: 1830(for)X ! 4769: 1944(execution.)X ! 4770: 3 f ! 4771: 11 s ! 4772: 2375 6048(-)N ! 4773: 2426(7)X ! 4774: 2492(-)X ! 4775: ! 4776: 8 p ! 4777: %%Page: 8 9 ! 4778: 11 s 11 xH 0 xS 3 f ! 4779: 720 483(Tcl:)N ! 4780: 894(An)X ! 4781: 1028(Embeddable)X ! 4782: 1525(Command)X ! 4783: 1942(Language)X ! 4784: 3466(December)X ! 4785: 3868(22,)X ! 4786: 4000(1989)X ! 4787: 1 f ! 4788: 920 771(A)N ! 4789: 1009(Tcl)X ! 4790: 1152(command)X ! 4791: 1525(procedure)X ! 4792: 1901(returns)X ! 4793: 2170(two)X ! 4794: 2327(results)X ! 4795: 2582(to)X ! 4796: 7 f ! 4797: 2707(Tcl_Eval)X ! 4798: 1 f ! 4799: 3131(:)X ! 4800: 3181(an)X ! 4801: 3289(integer)X ! 4802: 3559(return)X ! 4803: 3794(code)X ! 4804: 3985(and)X ! 4805: 4137(a)X ! 4806: 720 870(string.)N ! 4807: 992(The)X ! 4808: 1156(return)X ! 4809: 1393(code)X ! 4810: 1586(is)X ! 4811: 1672(returned)X ! 4812: 1992(as)X ! 4813: 2092(the)X ! 4814: 2227(procedure's)X ! 4815: 2668(result,)X ! 4816: 2913(and)X ! 4817: 3067(the)X ! 4818: 3202(string)X ! 4819: 3430(is)X ! 4820: 3515(stored)X ! 4821: 3756(in)X ! 4822: 3851(the)X ! 4823: 3985(inter-)X ! 4824: 720 969(preter,)N ! 4825: 975(from)X ! 4826: 1174(which)X ! 4827: 1417(it)X ! 4828: 1495(can)X ! 4829: 1645(be)X ! 4830: 1756(retrieved)X ! 4831: 2097(later.)X ! 4832: 7 f ! 4833: 2356(Tcl_Eval)X ! 4834: 1 f ! 4835: 2807(returns)X ! 4836: 3078(the)X ! 4837: 3213(same)X ! 4838: 3421(code)X ! 4839: 3614(and)X ! 4840: 3768(string)X ! 4841: 3996(to)X ! 4842: 4092(its)X ! 4843: 720 1068(caller.)N ! 4844: 990(Table)X ! 4845: 1221(I)X ! 4846: 1280(summarizes)X ! 4847: 1731(the)X ! 4848: 1869(return)X ! 4849: 2108(codes)X ! 4850: 2337(and)X ! 4851: 2493(strings.)X ! 4852: 2801(Normally)X ! 4853: 3168(the)X ! 4854: 3305(return)X ! 4855: 3544(code)X ! 4856: 3739(is)X ! 4857: 7 f ! 4858: 3858(TCL_OK)X ! 4859: 1 f ! 4860: 720 1167(and)N ! 4861: 878(the)X ! 4862: 1017(string)X ! 4863: 1249(contains)X ! 4864: 1574(the)X ! 4865: 1713(result)X ! 4866: 1940(of)X ! 4867: 2044(the)X ! 4868: 2183(command.)X ! 4869: 2605(If)X ! 4870: 2693(an)X ! 4871: 2806(error)X ! 4872: 3006(occurs)X ! 4873: 3265(in)X ! 4874: 3364(executing)X ! 4875: 3737(a)X ! 4876: 3806(command,)X ! 4877: 720 1266(then)N ! 4878: 896(the)X ! 4879: 1028(return)X ! 4880: 1262(code)X ! 4881: 1452(will)X ! 4882: 1614(be)X ! 4883: 7 f ! 4884: 1752(TCL_ERROR)X ! 4885: 1 f ! 4886: 2253(and)X ! 4887: 2404(the)X ! 4888: 2536(string)X ! 4889: 2761(will)X ! 4890: 2923(describe)X ! 4891: 3240(the)X ! 4892: 3372(error)X ! 4893: 3565(condition.)X ! 4894: 3966(When)X ! 4895: 7 f ! 4896: 720 1365(TCL_ERROR)N ! 4897: 1 f ! 4898: 1220(is)X ! 4899: 1302(returned)X ! 4900: 1618(\(or)X ! 4901: 1742(any)X ! 4902: 1891(value)X ! 4903: 2104(other)X ! 4904: 2307(than)X ! 4905: 7 f ! 4906: 2512(TCL_OK)X ! 4907: 1 f ! 4908: 2830(\),)X ! 4909: 2903(the)X ! 4910: 3033(normal)X ! 4911: 3305(action)X ! 4912: 3543(is)X ! 4913: 3624(for)X ! 4914: 3748(nested)X ! 4915: 3995(com-)X ! 4916: 720 1464(mand)N ! 4917: 943(procedures)X ! 4918: 1355(to)X ! 4919: 1451(return)X ! 4920: 1688(the)X ! 4921: 1823(same)X ! 4922: 2031(code)X ! 4923: 2224(and)X ! 4924: 2378(string)X ! 4925: 2606(to)X ! 4926: 2701(their)X ! 4927: 2889(callers,)X ! 4928: 3167(unwinding)X ! 4929: 3570(all)X ! 4930: 3685(pending)X ! 4931: 3995(com-)X ! 4932: 720 1563(mand)N ! 4933: 945(executions)X ! 4934: 1351(until)X ! 4935: 1543(eventually)X ! 4936: 1940(the)X ! 4937: 2077(return)X ! 4938: 2316(code)X ! 4939: 2511(and)X ! 4940: 2667(string)X ! 4941: 2897(are)X ! 4942: 3033(returned)X ! 4943: 3355(by)X ! 4944: 3472(the)X ! 4945: 3609(top-level)X ! 4946: 3951(call)X ! 4947: 4107(to)X ! 4948: 7 f ! 4949: 720 1662(Tcl_Eval)N ! 4950: 1 f ! 4951: 1144(.)X ! 4952: 1212(At)X ! 4953: 1324(this)X ! 4954: 1476(point)X ! 4955: 1682(the)X ! 4956: 1814(application)X ! 4957: 2231(will)X ! 4958: 2393(normally)X ! 4959: 2736(display)X ! 4960: 3015(the)X ! 4961: 3147(error)X ! 4962: 3341(message)X ! 4963: 3663(for)X ! 4964: 3788(the)X ! 4965: 3919(user)X ! 4966: 4088(by)X ! 4967: 720 1761(printing)N ! 4968: 1022(it)X ! 4969: 1094(on)X ! 4970: 1204(the)X ! 4971: 1334(terminal)X ! 4972: 1651(or)X ! 4973: 1746(displaying)X ! 4974: 2136(it)X ! 4975: 2208(in)X ! 4976: 2299(a)X ! 4977: 2360(noti\256er)X ! 4978: 2637(window.)X ! 4979: 920 1893(Return)N ! 4980: 1185(codes)X ! 4981: 1410(other)X ! 4982: 1616(than)X ! 4983: 7 f ! 4984: 1824(TCL_OK)X ! 4985: 1 f ! 4986: 2166(or)X ! 4987: 7 f ! 4988: 2294(TCL_ERROR)X ! 4989: 1 f ! 4990: 2795(cause)X ! 4991: 3014(partial)X ! 4992: 3264(unwinding.)X ! 4993: 3709(For)X ! 4994: 3855(example,)X ! 4995: 720 1992(the)N ! 4996: 7 f ! 4997: 884(break)X ! 4998: 1 f ! 4999: 1174(command)X ! 5000: 1547(returns)X ! 5001: 1816(a)X ! 5002: 7 f ! 5003: 1911(TCL_BREAK)X ! 5004: 1 f ! 5005: 2413(code.)X ! 5006: 2648(This)X ! 5007: 2830(causes)X ! 5008: 3084(nested)X ! 5009: 3334(command)X ! 5010: 3706(executions)X ! 5011: 4107(to)X ! 5012: 720 2091(be)N ! 5013: 855(unwound)X ! 5014: 1234(until)X ! 5015: 1449(a)X ! 5016: 1540(nested)X ! 5017: 7 f ! 5018: 1847(for)X ! 5019: 1 f ! 5020: 2057(or)X ! 5021: 7 f ! 5022: 2212(foreach)X ! 5023: 1 f ! 5024: 2634(command)X ! 5025: 3033(is)X ! 5026: 3143(reached.)X ! 5027: 3511(When)X ! 5028: 3772(a)X ! 5029: 7 f ! 5030: 3893(for)X ! 5031: 1 f ! 5032: 4103(or)X ! 5033: 7 f ! 5034: 720 2190(foreach)N ! 5035: 1 f ! 5036: 1119(command)X ! 5037: 1495(invokes)X ! 5038: 7 f ! 5039: 1828(Tcl_Eval)X ! 5040: 1 f ! 5041: 2280(recursively,)X ! 5042: 2720(it)X ! 5043: 2797(checks)X ! 5044: 3063(specially)X ! 5045: 3404(for)X ! 5046: 3533(the)X ! 5047: 7 f ! 5048: 3699(TCL_BREAK)X ! 5049: 1 f ! 5050: 720 2289(result.)N ! 5051: 993(When)X ! 5052: 1236(this)X ! 5053: 1397(occurs)X ! 5054: 1658(the)X ! 5055: 7 f ! 5056: 1829(for)X ! 5057: 1 f ! 5058: 2020(or)X ! 5059: 7 f ! 5060: 2156(foreach)X ! 5061: 1 f ! 5062: 2559(command)X ! 5063: 2939(terminates)X ! 5064: 3339(the)X ! 5065: 3479(loop,)X ! 5066: 3690(but)X ! 5067: 3835(it)X ! 5068: 3917(doesn't)X ! 5069: 720 2388(return)N ! 5070: 955(the)X ! 5071: 7 f ! 5072: 1119(TCL_BREAK)X ! 5073: 1 f ! 5074: 1620(code)X ! 5075: 1810(to)X ! 5076: 1903(its)X ! 5077: 2011(caller.)X ! 5078: 2275(Instead)X ! 5079: 2553(it)X ! 5080: 2627(returns)X ! 5081: 7 f ! 5082: 2926(TCL_OK)X ! 5083: 1 f ! 5084: 3244(.)X ! 5085: 3312(Thus)X ! 5086: 3512(no)X ! 5087: 3624(higher)X ! 5088: 3873(levels)X ! 5089: 4103(of)X ! 5090: 720 2487(execution)N ! 5091: 1104(are)X ! 5092: 1252(aborted.)X ! 5093: 1601(The)X ! 5094: 7 f ! 5095: 1810(TCL_CONTINUE)X ! 5096: 1 f ! 5097: 2487(return)X ! 5098: 2737(code)X ! 5099: 2943(is)X ! 5100: 3042(also)X ! 5101: 3224(handled)X ! 5102: 3543(by)X ! 5103: 3671(the)X ! 5104: 7 f ! 5105: 3850(for)X ! 5106: 1 f ! 5107: 4049(and)X ! 5108: 7 f ! 5109: 720 2586(foreach)N ! 5110: 1 f ! 5111: 1122(commands)X ! 5112: 1535(\(they)X ! 5113: 1746(go)X ! 5114: 1864(on)X ! 5115: 1982(to)X ! 5116: 2081(the)X ! 5117: 2219(next)X ! 5118: 2401(loop)X ! 5119: 2588(iteration\))X ! 5120: 2942(and)X ! 5121: 7 f ! 5122: 3130(TCL_RETURN)X ! 5123: 1 f ! 5124: 3690(is)X ! 5125: 3779(handled)X ! 5126: 4088(by)X ! 5127: 720 2685(the)N ! 5128: 7 f ! 5129: 887(InterpProc)X ! 5130: 1 f ! 5131: 1445(procedure.)X ! 5132: 1868(Only)X ! 5133: 2072(a)X ! 5134: 2138(few)X ! 5135: 2296(command)X ! 5136: 2671(procedures,)X ! 5137: 3105(like)X ! 5138: 7 f ! 5139: 3296(break)X ! 5140: 1 f ! 5141: 3588(and)X ! 5142: 7 f ! 5143: 3773(for)X ! 5144: 1 f ! 5145: 3932(,)X ! 5146: 3981(know)X ! 5147: 720 2784(anything)N ! 5148: 1061(about)X ! 5149: 1289(special)X ! 5150: 1566(return)X ! 5151: 1808(codes)X ! 5152: 2040(such)X ! 5153: 2233(as)X ! 5154: 7 f ! 5155: 2369(TCL_BREAK)X ! 5156: 1 f ! 5157: 2846(;)X ! 5158: 2925(other)X ! 5159: 3138(command)X ! 5160: 3518(procedures)X ! 5161: 3935(simply)X ! 5162: 720 2883(abort)N ! 5163: 923(whenever)X ! 5164: 1286(they)X ! 5165: 1460(see)X ! 5166: 1594(any)X ! 5167: 1743(return)X ! 5168: 1975(code)X ! 5169: 2163(other)X ! 5170: 2366(than)X ! 5171: 7 f ! 5172: 2571(TCL_OK)X ! 5173: 1 f ! 5174: 2889(.)X ! 5175: 920 3015(The)N ! 5176: 7 f ! 5177: 1129(catch)X ! 5178: 1 f ! 5179: 1435(command)X ! 5180: 1824(may)X ! 5181: 2017(be)X ! 5182: 2141(used)X ! 5183: 2343(to)X ! 5184: 2453(prevent)X ! 5185: 2758(complete)X ! 5186: 3123(unwinding)X ! 5187: 3540(on)X ! 5188: 7 f ! 5189: 3699(TCL_ERROR)X ! 5190: 1 f ! 5191: 720 3114(returns.)N ! 5192: 7 f ! 5193: 1064(Catch)X ! 5194: 1 f ! 5195: 1354(takes)X ! 5196: 1560(an)X ! 5197: 1668(argument)X ! 5198: 2026(that)X ! 5199: 2184(is)X ! 5200: 2268(a)X ! 5201: 2332(Tcl)X ! 5202: 2475(command)X ! 5203: 2847(to)X ! 5204: 2940(execute.)X ! 5205: 3277(It)X ! 5206: 3355(passes)X ! 5207: 3603(the)X ! 5208: 3735(command)X ! 5209: 4107(to)X ! 5210: 7 f ! 5211: 720 3213(Tcl_Eval)N ! 5212: 1 f ! 5213: 1182(for)X ! 5214: 1322(execution,)X ! 5215: 1725(but)X ! 5216: 1875(always)X ! 5217: 2156(returns)X ! 5218: 7 f ! 5219: 2468(TCL_OK)X ! 5220: 1 f ! 5221: 2786(.)X ! 5222: 2867(If)X ! 5223: 2962(an)X ! 5224: 3082(error)X ! 5225: 3289(occurs)X ! 5226: 3555(in)X ! 5227: 3661(the)X ! 5228: 3806(command,)X ! 5229: 7 f ! 5230: 720 3312(catch)N ! 5231: 1 f ! 5232: 985('s)X ! 5233: 1081(command)X ! 5234: 1462(procedure)X ! 5235: 1846(detects)X ! 5236: 2124(the)X ! 5237: 7 f ! 5238: 2296(TCL_ERROR)X ! 5239: 1 f ! 5240: 2806(return)X ! 5241: 3049(value)X ! 5242: 3273(from)X ! 5243: 7 f ! 5244: 3508(Tcl_Eval)X ! 5245: 1 f ! 5246: 3932(,)X ! 5247: 3986(saves)X ! 5248: 720 3411(information)N ! 5249: 1162(about)X ! 5250: 1383(the)X ! 5251: 1516(error)X ! 5252: 1710(in)X ! 5253: 1803(Tcl)X ! 5254: 1945(variables,)X ! 5255: 2309(and)X ! 5256: 2460(then)X ! 5257: 2636(returns)X ! 5258: 2904(TCL_OK)X ! 5259: 3265(to)X ! 5260: 3358(its)X ! 5261: 3466(caller.)X ! 5262: 3730(In)X ! 5263: 3827(almost)X ! 5264: 4087(all)X ! 5265: 720 3510(cases)N ! 5266: 928(I)X ! 5267: 980(think)X ! 5268: 1185(the)X ! 5269: 1316(best)X ! 5270: 1481(response)X ! 5271: 1811(to)X ! 5272: 1903(an)X ! 5273: 2009(error)X ! 5274: 2202(is)X ! 5275: 2284(to)X ! 5276: 2376(abort)X ! 5277: 2580(all)X ! 5278: 2692(command)X ! 5279: 3063(invocations)X ! 5280: 3493(and)X ! 5281: 3642(notify)X ! 5282: 3875(the)X ! 5283: 4005(user;)X ! 5284: 7 f ! 5285: 720 3609(catch)N ! 5286: 1 f ! 5287: 1026(is)X ! 5288: 1126(provided)X ! 5289: 1480(for)X ! 5290: 1623(those)X ! 5291: 1850(few)X ! 5292: 2022(occasions)X ! 5293: 2405(where)X ! 5294: 2660(an)X ! 5295: 2783(error)X ! 5296: 2993(is)X ! 5297: 3092(expected)X ! 5298: 3445(and)X ! 5299: 3612(can)X ! 5300: 3774(be)X ! 5301: 3897(handled)X ! 5302: 720 3708(without)N ! 5303: 1012(aborting.)X ! 5304: 3 f ! 5305: 720 4002(4.)N ! 5306: 830(Tcl)X ! 5307: 975(and)X ! 5308: 1139(Window)X ! 5309: 1479(Applications)X ! 5310: 1 f ! 5311: 920 4134(An)N ! 5312: 1061(embeddable)X ! 5313: 1521(command)X ! 5314: 1903(language)X ! 5315: 2255(like)X ! 5316: 2422(Tcl)X ! 5317: 2574(offers)X ! 5318: 2811(particular)X ! 5319: 3182(advantages)X ! 5320: 3606(in)X ! 5321: 3708(a)X ! 5322: 3780(windowing)X ! 5323: 720 4233(environment.)N ! 5324: 1259(This)X ! 5325: 1465(is)X ! 5326: 1572(partly)X ! 5327: 1826(because)X ! 5328: 2152(there)X ! 5329: 2376(are)X ! 5330: 2531(many)X ! 5331: 2775(interactive)X ! 5332: 3196(programs)X ! 5333: 3576(in)X ! 5334: 3693(a)X ! 5335: 3780(windowing)X ! 5336: 720 4332(environment)N ! 5337: 1192(\(hence)X ! 5338: 1452(many)X ! 5339: 1674(places)X ! 5340: 1920(to)X ! 5341: 2015(use)X ! 5342: 2158(a)X ! 5343: 2223(command)X ! 5344: 2597(language\))X ! 5345: 2970(and)X ! 5346: 3122(partly)X ! 5347: 3353(because)X ! 5348: 3656(con\256gurability)X ! 5349: 10 f ! 5350: 955 4472(i)N ! 5351: 992(iiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiii)X ! 5352: 1 f ! 5353: 1093 4571(Return)N ! 5354: 1355(Code)X ! 5355: 2322(Meaning)X ! 5356: 3501(String)X ! 5357: 10 f ! 5358: 955 4582(i)N ! 5359: 992(iiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiii)X ! 5360: 7 f ! 5361: 999 4681(TCL_OK)N ! 5362: 1 f ! 5363: 1767(Command)X ! 5364: 2157(completed)X ! 5365: 2547(normally)X ! 5366: 3322(Result)X ! 5367: 7 f ! 5368: 999 4780(TCL_ERROR)N ! 5369: 1 f ! 5370: 1767(Error)X ! 5371: 1974(occurred)X ! 5372: 2303(in)X ! 5373: 2394(command)X ! 5374: 3322(Error)X ! 5375: 3529(message)X ! 5376: 7 f ! 5377: 999 4879(TCL_BREAK)N ! 5378: 1 f ! 5379: 1767(Should)X ! 5380: 2039(abort)X ! 5381: 2242(innermost)X ! 5382: 2617(loop)X ! 5383: 3322(None)X ! 5384: 7 f ! 5385: 999 4978(TCL_CONTINUE)N ! 5386: 1 f ! 5387: 1767(Should)X ! 5388: 2039(skip)X ! 5389: 2208(innermost)X ! 5390: 2583(iteration)X ! 5391: 3322(None)X ! 5392: 7 f ! 5393: 999 5077(TCL_RETURN)N ! 5394: 1 f ! 5395: 1767(Should)X ! 5396: 2039(return)X ! 5397: 2271(from)X ! 5398: 2464(innermost)X ! 5399: 2839(procedure)X ! 5400: 3322(Procedure)X ! 5401: 3700(result)X ! 5402: 10 f ! 5403: 955 5088(i)N ! 5404: 992(iiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiii)X ! 5405: 955(c)X ! 5406: 5000(c)Y ! 5407: 4912(c)Y ! 5408: 4824(c)Y ! 5409: 4736(c)Y ! 5410: 4648(c)Y ! 5411: 4560(c)Y ! 5412: 1701 5088(c)N ! 5413: 5000(c)Y ! 5414: 4912(c)Y ! 5415: 4824(c)Y ! 5416: 4736(c)Y ! 5417: 4648(c)Y ! 5418: 4560(c)Y ! 5419: 3256 5088(c)N ! 5420: 5000(c)Y ! 5421: 4912(c)Y ! 5422: 4824(c)Y ! 5423: 4736(c)Y ! 5424: 4648(c)Y ! 5425: 4560(c)Y ! 5426: 3940 5088(c)N ! 5427: 5000(c)Y ! 5428: 4912(c)Y ! 5429: 4824(c)Y ! 5430: 4736(c)Y ! 5431: 4648(c)Y ! 5432: 4560(c)Y ! 5433: 3 f ! 5434: 10 s ! 5435: 880 5244(Table)N ! 5436: 1099(I)X ! 5437: 1 f ! 5438: 1130(.)X ! 5439: 1194(Each)X ! 5440: 1378(Tcl)X ! 5441: 1508(command)X ! 5442: 1847(returns)X ! 5443: 2093(a)X ! 5444: 2152(code)X ! 5445: 2327(describing)X ! 5446: 2684(what)X ! 5447: 2863(happened)X ! 5448: 3194(and)X ! 5449: 3333(a)X ! 5450: 3392(string)X ! 5451: 3597(that)X ! 5452: 3740(provides)X ! 5453: 880 5334(additional)N ! 5454: 1235(information.)X ! 5455: 1687(If)X ! 5456: 1775(the)X ! 5457: 1907(return)X ! 5458: 2133(code)X ! 5459: 2319(is)X ! 5460: 2406(not)X ! 5461: 7 f ! 5462: 2570(TCL_OK)X ! 5463: 1 f ! 5464: (,)S ! 5465: 2912(then)X ! 5466: 3084(nested)X ! 5467: 3323(command)X ! 5468: 3673(executions)X ! 5469: 880 5424(unwind)N ! 5470: 1146(and)X ! 5471: 1287(return)X ! 5472: 1504(the)X ! 5473: 1627(same)X ! 5474: 1817(code,)X ! 5475: 2014(until)X ! 5476: 2185(reaching)X ! 5477: 2487(top-level)X ! 5478: 2797(or)X ! 5479: 2889(some)X ! 5480: 3083(command)X ! 5481: 3424(that)X ! 5482: 3569(is)X ! 5483: 3647(prepared)X ! 5484: 3954(to)X ! 5485: 880 5514(deal)N ! 5486: 1034(with)X ! 5487: 1196(the)X ! 5488: 1314(exceptional)X ! 5489: 1704(return)X ! 5490: 1916(code.)X ! 5491: 3 f ! 5492: 11 s ! 5493: 2375 6048(-)N ! 5494: 2426(8)X ! 5495: 2492(-)X ! 5496: ! 5497: 9 p ! 5498: %%Page: 9 10 ! 5499: 11 s 11 xH 0 xS 3 f ! 5500: 720 483(Tcl:)N ! 5501: 894(An)X ! 5502: 1028(Embeddable)X ! 5503: 1525(Command)X ! 5504: 1942(Language)X ! 5505: 3466(December)X ! 5506: 3868(22,)X ! 5507: 4000(1989)X ! 5508: 1 f ! 5509: 720 771(is)N ! 5510: 807(important)X ! 5511: 1179(in)X ! 5512: 1276(today's)X ! 5513: 1563(windowing)X ! 5514: 1987(environments)X ! 5515: 2495(and)X ! 5516: 2650(a)X ! 5517: 2716(language)X ! 5518: 3061(like)X ! 5519: 3221(Tcl)X ! 5520: 3366(provides)X ! 5521: 3696(the)X ! 5522: 3831(\257exibility)X ! 5523: 720 870(to)N ! 5524: 828(recon\256gure.)X ! 5525: 1311(Tcl)X ! 5526: 1468(can)X ! 5527: 1628(be)X ! 5528: 1749(used)X ! 5529: 1948(for)X ! 5530: 2088(two)X ! 5531: 2258(purposes)X ! 5532: 2608(in)X ! 5533: 2715(a)X ! 5534: 2792(window)X ! 5535: 3113(application:)X ! 5536: 3591(to)X ! 5537: 3698(con\256gure)X ! 5538: 4068(the)X ! 5539: 720 969(application's)N ! 5540: 1211(interface)X ! 5541: 2 f ! 5542: 1554(actions)X ! 5543: 1 f ! 5544: 1809(,)X ! 5545: 1866(and)X ! 5546: 2028(to)X ! 5547: 2132(con\256gure)X ! 5548: 2499(the)X ! 5549: 2641(application's)X ! 5550: 3131(interface)X ! 5551: 2 f ! 5552: 3473(appearance)X ! 5553: 1 f ! 5554: 3888(.)X ! 5555: 3966(These)X ! 5556: 720 1068(two)N ! 5557: 874(purposes)X ! 5558: 1208(are)X ! 5559: 1337(discussed)X ! 5560: 1696(in)X ! 5561: 1787(the)X ! 5562: 1917(paragraphs)X ! 5563: 2324(below.)X ! 5564: 920 1200(The)N ! 5565: 1086(\256rst)X ! 5566: 1251(use)X ! 5567: 1396(of)X ! 5568: 1497(Tcl)X ! 5569: 1643(is)X ! 5570: 1730(for)X ! 5571: 1860(interface)X ! 5572: 2196(actions.)X ! 5573: 2518(Ideally,)X ! 5574: 2813(each)X ! 5575: 3002(event)X ! 5576: 3221(that)X ! 5577: 3382(has)X ! 5578: 3527(any)X ! 5579: 3682(importance)X ! 5580: 4107(to)X ! 5581: 720 1299(the)N ! 5582: 867(application)X ! 5583: 1299(should)X ! 5584: 1573(be)X ! 5585: 1695(bound)X ! 5586: 1954(to)X ! 5587: 2062(a)X ! 5588: 2140(Tcl)X ! 5589: 2297(command.)X ! 5590: 2728(Each)X ! 5591: 2943(keystroke,)X ! 5592: 3346(each)X ! 5593: 3546(mouse)X ! 5594: 3814(motion)X ! 5595: 4103(or)X ! 5596: 720 1398(mouse)N ! 5597: 977(button)X ! 5598: 1230(press)X ! 5599: 1437(\(or)X ! 5600: 1566(release\),)X ! 5601: 1887(and)X ! 5602: 2040(each)X ! 5603: 2227(menu)X ! 5604: 2449(entry)X ! 5605: 2656(should)X ! 5606: 2917(be)X ! 5607: 3026(associated)X ! 5608: 3414(with)X ! 5609: 3597(a)X ! 5610: 3662(Tcl)X ! 5611: 3806(command.)X ! 5612: 720 1497(When)N ! 5613: 960(the)X ! 5614: 1098(event)X ! 5615: 1319(occurs,)X ! 5616: 1600(it)X ! 5617: 1680(is)X ! 5618: 1769(\256rst)X ! 5619: 1936(mapped)X ! 5620: 2244(to)X ! 5621: 2342(its)X ! 5622: 2455(Tcl)X ! 5623: 2602(command)X ! 5624: 2979(and)X ! 5625: 3135(then)X ! 5626: 3316(executed)X ! 5627: 3658(by)X ! 5628: 3775(passing)X ! 5629: 4068(the)X ! 5630: 720 1596(command)N ! 5631: 1109(to)X ! 5632: 7 f ! 5633: 1250(Tcl_Eval)X ! 5634: 1 f ! 5635: 1674(.)X ! 5636: 1758(The)X ! 5637: 1935(application)X ! 5638: 2368(should)X ! 5639: 2643(not)X ! 5640: 2796(take)X ! 5641: 2983(any)X ! 5642: 3150(actions)X ! 5643: 3440(directly;)X ! 5644: 3797(all)X ! 5645: 3926(actions)X ! 5646: 720 1695(should)N ! 5647: 989(\256rst)X ! 5648: 1159(pass)X ! 5649: 1343(through)X ! 5650: 1650(Tcl.)X ! 5651: 1845(Furthermore,)X ! 5652: 2340(the)X ! 5653: 2481(application)X ! 5654: 2907(should)X ! 5655: 3175(provide)X ! 5656: 3477(Tcl)X ! 5657: 3628(commands)X ! 5658: 4043(that)X ! 5659: 720 1794(allow)N ! 5660: 938(the)X ! 5661: 1068(user)X ! 5662: 1236(to)X ! 5663: 1327(change)X ! 5664: 1598(the)X ! 5665: 1728(Tcl)X ! 5666: 1868(command)X ! 5667: 2238(associated)X ! 5668: 2622(with)X ! 5669: 2801(any)X ! 5670: 2950(event.)X ! 5671: 920 1926(In)N ! 5672: 1020(interactive)X ! 5673: 1420(windowing)X ! 5674: 1843(applications,)X ! 5675: 2319(the)X ! 5676: 2454(use)X ! 5677: 2598(of)X ! 5678: 2698(Tcl)X ! 5679: 2843(will)X ! 5680: 3007(probably)X ! 5681: 3346(not)X ! 5682: 3485(be)X ! 5683: 3594(visible)X ! 5684: 3856(to)X ! 5685: 3951(begin-)X ! 5686: 720 2025(ning)N ! 5687: 903(users:)X ! 5688: 1156(they)X ! 5689: 1334(will)X ! 5690: 1498(manipulate)X ! 5691: 1917(the)X ! 5692: 2051(applications)X ! 5693: 2504(using)X ! 5694: 2720(buttons,)X ! 5695: 3027(menus,)X ! 5696: 3304(and)X ! 5697: 3456(other)X ! 5698: 3662(interface)X ! 5699: 3995(com-)X ! 5700: 720 2124(ponents.)N ! 5701: 1063(However,)X ! 5702: 1431(if)X ! 5703: 1510(Tcl)X ! 5704: 1653(is)X ! 5705: 1737(used)X ! 5706: 1923(as)X ! 5707: 2021(an)X ! 5708: 2129(intermediary)X ! 5709: 2605(for)X ! 5710: 2732(all)X ! 5711: 2846(interface)X ! 5712: 3179(actions)X ! 5713: 3453(then)X ! 5714: 3629(two)X ! 5715: 3785(advantages)X ! 5716: 720 2223(accrue.)N ! 5717: 1021(First,)X ! 5718: 1233(it)X ! 5719: 1311(becomes)X ! 5720: 1646(possible)X ! 5721: 1962(to)X ! 5722: 2058(write)X ! 5723: 2266(Tcl)X ! 5724: 2411(programs)X ! 5725: 2770(to)X ! 5726: 2866(recon\256gure)X ! 5727: 3293(the)X ! 5728: 3428(interface.)X ! 5729: 3807(For)X ! 5730: 3956(exam-)X ! 5731: 720 2322(ple,)N ! 5732: 878(users)X ! 5733: 1086(will)X ! 5734: 1252(be)X ! 5735: 1363(able)X ! 5736: 1538(to)X ! 5737: 1635(rebind)X ! 5738: 1887(keystrokes,)X ! 5739: 2312(change)X ! 5740: 2588(mouse)X ! 5741: 2845(buttons,)X ! 5742: 3154(or)X ! 5743: 3254(replace)X ! 5744: 3535(an)X ! 5745: 3645(existing)X ! 5746: 3952(opera-)X ! 5747: 720 2421(tion)N ! 5748: 882(with)X ! 5749: 1063(a)X ! 5750: 1126(more)X ! 5751: 1331(complex)X ! 5752: 1659(one)X ! 5753: 1810(speci\256ed)X ! 5754: 2147(as)X ! 5755: 2243(a)X ! 5756: 2305(set)X ! 5757: 2426(of)X ! 5758: 2522(Tcl)X ! 5759: 2663(commands)X ! 5760: 3068(or)X ! 5761: 3164(tclprocs.)X ! 5762: 3510(The)X ! 5763: 3670(second)X ! 5764: 3937(advan-)X ! 5765: 720 2520(tage)N ! 5766: 891(is)X ! 5767: 974(that)X ! 5768: 1131(this)X ! 5769: 1283(approach)X ! 5770: 1628(forces)X ! 5771: 1865(all)X ! 5772: 1977(of)X ! 5773: 2073(the)X ! 5774: 2204(application's)X ! 5775: 2683(functionality)X ! 5776: 3158(to)X ! 5777: 3250(be)X ! 5778: 3356(accessible)X ! 5779: 3736(through)X ! 5780: 4033(Tcl:)X ! 5781: 720 2619(anything)N ! 5782: 1053(that)X ! 5783: 1210(can)X ! 5784: 1355(be)X ! 5785: 1461(invoked)X ! 5786: 1768(with)X ! 5787: 1948(the)X ! 5788: 2079(mouse)X ! 5789: 2332(or)X ! 5790: 2428(keyboard)X ! 5791: 2778(can)X ! 5792: 2923(also)X ! 5793: 3088(be)X ! 5794: 3194(invoked)X ! 5795: 3501(with)X ! 5796: 3681(Tcl)X ! 5797: 3822(programs.)X ! 5798: 720 2718(This)N ! 5799: 902(makes)X ! 5800: 1152(it)X ! 5801: 1227(possible)X ! 5802: 1541(to)X ! 5803: 1635(write)X ! 5804: 1841(tclprocs)X ! 5805: 2145(that)X ! 5806: 2303(simulate)X ! 5807: 2628(the)X ! 5808: 2761(actions)X ! 5809: 3036(of)X ! 5810: 3133(the)X ! 5811: 3265(program,)X ! 5812: 3609(or)X ! 5813: 3706(that)X ! 5814: 3863(compose)X ! 5815: 720 2817(the)N ! 5816: 854(program's)X ! 5817: 1241(basic)X ! 5818: 1447(actions)X ! 5819: 1722(into)X ! 5820: 1885(more)X ! 5821: 2091(powerful)X ! 5822: 2433(actions.)X ! 5823: 2752(It)X ! 5824: 2831(also)X ! 5825: 2998(permits)X ! 5826: 3288(interactive)X ! 5827: 3686(sessions)X ! 5828: 3999(to)X ! 5829: 4093(be)X ! 5830: 720 2916(recorded)N ! 5831: 1049(and)X ! 5832: 1198(replayed)X ! 5833: 1523(as)X ! 5834: 1618(a)X ! 5835: 1679(sequence)X ! 5836: 2023(of)X ! 5837: 2118(Tcl)X ! 5838: 2258(commands)X ! 5839: 2662(\(see)X ! 5840: 2825(Section)X ! 5841: 3112(5\).)X ! 5842: 920 3048(The)N ! 5843: 1083(second)X ! 5844: 1353(use)X ! 5845: 1496(for)X ! 5846: 1624(Tcl)X ! 5847: 1767(in)X ! 5848: 1861(a)X ! 5849: 1925(window)X ! 5850: 2233(application)X ! 5851: 2651(is)X ! 5852: 2735(to)X ! 5853: 2829(con\256gure)X ! 5854: 3186(the)X ! 5855: 3319(appearance)X ! 5856: 3739(of)X ! 5857: 3837(the)X ! 5858: 3970(appli-)X ! 5859: 720 3147(cation.)N ! 5860: 1017(All)X ! 5861: 1167(of)X ! 5862: 1277(the)X ! 5863: 1422(application's)X ! 5864: 1915(interface)X ! 5865: 2260(components)X ! 5866: 2723(\(``widgets'')X ! 5867: 3179(in)X ! 5868: 3285(X)X ! 5869: 3385(terminology\),)X ! 5870: 3905(such)X ! 5871: 4103(as)X ! 5872: 720 3246(labels,)N ! 5873: 982(buttons,)X ! 5874: 1298(text)X ! 5875: 1465(entries,)X ! 5876: 1756(menus,)X ! 5877: 2042(and)X ! 5878: 2203(scrollbars,)X ! 5879: 2601(should)X ! 5880: 2870(be)X ! 5881: 2987(con\256gured)X ! 5882: 3397(using)X ! 5883: 3621(Tcl)X ! 5884: 3772(commands.)X ! 5885: 720 3345(For)N ! 5886: 872(example,)X ! 5887: 1223(in)X ! 5888: 1322(the)X ! 5889: 1460(case)X ! 5890: 1641(of)X ! 5891: 1744(a)X ! 5892: 1813(button)X ! 5893: 2068(the)X ! 5894: 2205(application)X ! 5895: 2627(\(or)X ! 5896: 2758(the)X ! 5897: 2895(button)X ! 5898: 3150(widget)X ! 5899: 3419(code\))X ! 5900: 3643(should)X ! 5901: 3907(provide)X ! 5902: 720 3444(Tcl)N ! 5903: 866(commands)X ! 5904: 1276(to)X ! 5905: 1373(change)X ! 5906: 1650(the)X ! 5907: 1786(button's)X ! 5908: 2103(size)X ! 5909: 2268(and)X ! 5910: 2423(location,)X ! 5911: 2758(its)X ! 5912: 2870(text,)X ! 5913: 3053(its)X ! 5914: 3165(colors,)X ! 5915: 3430(and)X ! 5916: 3585(the)X ! 5917: 3720(action)X ! 5918: 3963(\(a)X ! 5919: 4058(Tcl)X ! 5920: 720 3543(command,)N ! 5921: 1117(of)X ! 5922: 1217(course\))X ! 5923: 1502(to)X ! 5924: 1598(invoke)X ! 5925: 1865(when)X ! 5926: 2082(the)X ! 5927: 2217(button)X ! 5928: 2470(is)X ! 5929: 2556(activated.)X ! 5930: 2946(This)X ! 5931: 3130(makes)X ! 5932: 3382(it)X ! 5933: 3458(possible)X ! 5934: 3773(for)X ! 5935: 3901(users)X ! 5936: 4107(to)X ! 5937: 720 3642(write)N ! 5938: 933(Tcl)X ! 5939: 1083(programs)X ! 5940: 1447(to)X ! 5941: 1548(personalize)X ! 5942: 1981(the)X ! 5943: 2121(layout)X ! 5944: 2374(and)X ! 5945: 2533(appearance)X ! 5946: 2960(of)X ! 5947: 3065(the)X ! 5948: 3205(applications)X ! 5949: 3664(they)X ! 5950: 3847(use.)X ! 5951: 4039(The)X ! 5952: 720 3741(most)N ! 5953: 916(common)X ! 5954: 1249(use)X ! 5955: 1390(of)X ! 5956: 1487(such)X ! 5957: 1672(recon\256gurability)X ! 5958: 2284(would)X ! 5959: 2528(probably)X ! 5960: 2865(be)X ! 5961: 2971(in)X ! 5962: 3063(Tcl)X ! 5963: 3204(command)X ! 5964: 3575(\256les)X ! 5965: 3745(read)X ! 5966: 3919(by)X ! 5967: 4030(pro-)X ! 5968: 720 3840(grams)N ! 5969: 962 0.2604(automatically)AX ! 5970: 1471(when)X ! 5971: 1688(they)X ! 5972: 1867(start)X ! 5973: 2046(execution.)X ! 5974: 2460(However,)X ! 5975: 2830(the)X ! 5976: 2964(Tcl)X ! 5977: 3108(commands)X ! 5978: 3516(could)X ! 5979: 3738(also)X ! 5980: 3906(be)X ! 5981: 4015(used)X ! 5982: 720 3939(to)N ! 5983: 811(change)X ! 5984: 1082(an)X ! 5985: 1187(application's)X ! 5986: 1665(appearance)X ! 5987: 2082(while)X ! 5988: 2300(it)X ! 5989: 2372(is)X ! 5990: 2453(running,)X ! 5991: 2771(if)X ! 5992: 2847(that)X ! 5993: 3002(should)X ! 5994: 3259(prove)X ! 5995: 3481(useful.)X ! 5996: 920 4071(If)N ! 5997: 1010(Tcl)X ! 5998: 1160(is)X ! 5999: 1251(used)X ! 6000: 1444(as)X ! 6001: 1549(described)X ! 6002: 1918(above,)X ! 6003: 2182(then)X ! 6004: 2366(it)X ! 6005: 2448(could)X ! 6006: 2676(serve)X ! 6007: 2893(as)X ! 6008: 2998(a)X ! 6009: 3069(speci\256cation)X ! 6010: 3547(language)X ! 6011: 3897(for)X ! 6012: 4030(user)X ! 6013: 720 4170(interfaces.)N ! 6014: 1143(User)X ! 6015: 1345(interface)X ! 6016: 1690(editors)X ! 6017: 1967(could)X ! 6018: 2200(be)X ! 6019: 2320(written)X ! 6020: 2606(to)X ! 6021: 2711(display)X ! 6022: 3002(widgets)X ! 6023: 3312(and)X ! 6024: 3475(let)X ! 6025: 3600(users)X ! 6026: 3816(re-arrange)X ! 6027: 720 4269(them)N ! 6028: 925(and)X ! 6029: 1080(con\256gure)X ! 6030: 1440(attributes)X ! 6031: 1797(such)X ! 6032: 1986(as)X ! 6033: 2087(colors)X ! 6034: 2330(and)X ! 6035: 2484(associated)X ! 6036: 2873(Tcl)X ! 6037: 3018(commands.)X ! 6038: 3471(The)X ! 6039: 3635(interface)X ! 6040: 3970(editor)X ! 6041: 720 4368(could)N ! 6042: 939(then)X ! 6043: 1114(output)X ! 6044: 1363(information)X ! 6045: 1803(about)X ! 6046: 2022(the)X ! 6047: 2152(interface)X ! 6048: 2482(as)X ! 6049: 2577(a)X ! 6050: 2638(Tcl)X ! 6051: 2778(command)X ! 6052: 3148(\256le)X ! 6053: 3283(to)X ! 6054: 3374(be)X ! 6055: 3479(read)X ! 6056: 3652(by)X ! 6057: 3762(the)X ! 6058: 3892(applica-)X ! 6059: 720 4467(tion)N ! 6060: 881(when)X ! 6061: 1094(it)X ! 6062: 1167(starts)X ! 6063: 1376(up.)X ! 6064: 1531(Some)X ! 6065: 1755(current)X ! 6066: 2027(interface)X ! 6067: 2358(editors)X ! 6068: 2620(output)X ! 6069: 2868(C)X ! 6070: 2949(code)X ! 6071: 3137(which)X ! 6072: 3374(must)X ! 6073: 3568(then)X ! 6074: 3742(be)X ! 6075: 3847(compiled)X ! 6076: 720 4566(into)N ! 6077: 887(the)X ! 6078: 1024(application)X ! 6079: 1445([7];)X ! 6080: 1622(unfortunately)X ! 6081: 2125(this)X ! 6082: 2281(approach)X ! 6083: 2631(requires)X ! 6084: 2942(an)X ! 6085: 3053(application)X ! 6086: 3474(to)X ! 6087: 3571(be)X ! 6088: 3682(recompiled)X ! 6089: 4107(in)X ! 6090: 720 4665(order)N ! 6091: 929(to)X ! 6092: 1022(change)X ! 6093: 1295(its)X ! 6094: 1403(interface)X ! 6095: 1735(\(or,)X ! 6096: 1883(alternatively,)X ! 6097: 2371(it)X ! 6098: 2445(requires)X ! 6099: 2752(a)X ! 6100: 2814(dynamic-code-loading)X ! 6101: 3630(facility\).)X ! 6102: 3977(If)X ! 6103: 4058(Tcl)X ! 6104: 720 4764(were)N ! 6105: 914(used)X ! 6106: 1099(as)X ! 6107: 1196(the)X ! 6108: 1328(interface)X ! 6109: 1660(speci\256cation)X ! 6110: 2130(language)X ! 6111: 2472(then)X ! 6112: 2648(no)X ! 6113: 2760(recompilation)X ! 6114: 3274(would)X ! 6115: 3517(be)X ! 6116: 3623(necessary)X ! 6117: 3987(and)X ! 6118: 4137(a)X ! 6119: 720 4863(single)N ! 6120: 953(application)X ! 6121: 1368(binary)X ! 6122: 1615(could)X ! 6123: 1833(support)X ! 6124: 2119(many)X ! 6125: 2337(different)X ! 6126: 2662(interfaces.)X ! 6127: 3 f ! 6128: 720 5157(5.)N ! 6129: 830(Communication)X ! 6130: 1458(Between)X ! 6131: 1797(Applications)X ! 6132: 1 f ! 6133: 920 5289(The)N ! 6134: 1086(advantages)X ! 6135: 1505(of)X ! 6136: 1606(an)X ! 6137: 1717(embedded)X ! 6138: 2107(command)X ! 6139: 2483(language)X ! 6140: 2829(like)X ! 6141: 2990(Tcl)X ! 6142: 3136(become)X ! 6143: 3438(even)X ! 6144: 3632(greater)X ! 6145: 3904(if)X ! 6146: 3986(all)X ! 6147: 4103(of)X ! 6148: 720 5388(the)N ! 6149: 862(tools)X ! 6150: 1068(in)X ! 6151: 1171(an)X ! 6152: 1288(environment)X ! 6153: 1768(are)X ! 6154: 1909(based)X ! 6155: 2143(on)X ! 6156: 2265(the)X ! 6157: 2407(same)X ! 6158: 2622(language.)X ! 6159: 3018(First,)X ! 6160: 3236(users)X ! 6161: 3450(need)X ! 6162: 3650(only)X ! 6163: 3840(learn)X ! 6164: 4049(one)X ! 6165: 720 5487(basic)N ! 6166: 938(command)X ! 6167: 1323(language;)X ! 6168: 1725(to)X ! 6169: 1831(move)X ! 6170: 2064(from)X ! 6171: 2272(one)X ! 6172: 2436(application)X ! 6173: 2866(to)X ! 6174: 2972(another)X ! 6175: 3273(they)X ! 6176: 3461(need)X ! 6177: 3663(only)X ! 6178: 3856(learn)X ! 6179: 4068(the)X ! 6180: 720 5586(\(few?\))N ! 6181: 976(application-speci\256c)X ! 6182: 1695(commands)X ! 6183: 2105(for)X ! 6184: 2235(the)X ! 6185: 2370(new)X ! 6186: 2543(application.)X ! 6187: 3007(Second,)X ! 6188: 3315(generic)X ! 6189: 3601(interface)X ! 6190: 3936(editors)X ! 6191: 720 5685(become)N ! 6192: 1017(possible,)X ! 6193: 1351(as)X ! 6194: 1447(described)X ! 6195: 1806(in)X ! 6196: 1897(the)X ! 6197: 2027(previous)X ! 6198: 2352(section.)X ! 6199: 2668(Third,)X ! 6200: 2908(and)X ! 6201: 3057(most)X ! 6202: 3251(important)X ! 6203: 3617(in)X ! 6204: 3708(my)X ! 6205: 3843(view,)X ! 6206: 4058(Tcl)X ! 6207: 720 5784(can)N ! 6208: 864(provide)X ! 6209: 1155(a)X ! 6210: 1216(means)X ! 6211: 1463(of)X ! 6212: 1558(communication)X ! 6213: 2130(between)X ! 6214: 2445(applications.)X ! 6215: 3 f ! 6216: 2375 6048(-)N ! 6217: 2426(9)X ! 6218: 2492(-)X ! 6219: ! 6220: 10 p ! 6221: %%Page: 10 11 ! 6222: 11 s 11 xH 0 xS 3 f ! 6223: 720 483(Tcl:)N ! 6224: 894(An)X ! 6225: 1028(Embeddable)X ! 6226: 1525(Command)X ! 6227: 1942(Language)X ! 6228: 3466(December)X ! 6229: 3868(22,)X ! 6230: 4000(1989)X ! 6231: 1 f ! 6232: 920 771(I)N ! 6233: 977(have)X ! 6234: 1170(implemented)X ! 6235: 1659(a)X ! 6236: 1725(communication)X ! 6237: 2302(mechanism)X ! 6238: 2731(for)X ! 6239: 2860(X11)X ! 6240: 3038(in)X ! 6241: 3134(the)X ! 6242: 3269(form)X ! 6243: 3467(of)X ! 6244: 3567(an)X ! 6245: 3677(additional)X ! 6246: 4058(Tcl)X ! 6247: 720 870(command)N ! 6248: 1095(called)X ! 6249: 7 f ! 6250: 1364(send)X ! 6251: 1 f ! 6252: 1576(.)X ! 6253: 1647(For)X ! 6254: 7 f ! 6255: 1827(send)X ! 6256: 1 f ! 6257: 2066(to)X ! 6258: 2161(work,)X ! 6259: 2389(each)X ! 6260: 2576(Tcl)X ! 6261: 2720(interpreter)X ! 6262: 3113(associated)X ! 6263: 3501(with)X ! 6264: 3684(an)X ! 6265: 3793(X11)X ! 6266: 3970(appli-)X ! 6267: 720 969(cation)N ! 6268: 961(is)X ! 6269: 1045(given)X ! 6270: 1266(a)X ! 6271: 1330(textual)X ! 6272: 1596(name,)X ! 6273: 1834(such)X ! 6274: 2020(as)X ! 6275: 7 f ! 6276: 2149(xmh)X ! 6277: 1 f ! 6278: 2333(for)X ! 6279: 2460(an)X ! 6280: 2568(X)X ! 6281: 2656(mail)X ! 6282: 2839(handler)X ! 6283: 3128(or)X ! 6284: 7 f ! 6285: 3256(mx.foo.c)X ! 6286: 1 f ! 6287: 3704(for)X ! 6288: 3830(a)X ! 6289: 3893(window)X ! 6290: 720 1068(in)N ! 6291: 813(which)X ! 6292: 2 f ! 6293: 1052(mx)X ! 6294: 1 f ! 6295: 1178(is)X ! 6296: 1261(displaying)X ! 6297: 1653(a)X ! 6298: 1716(\256le)X ! 6299: 1853(named)X ! 6300: 7 f ! 6301: 2143(foo.c)X ! 6302: 1 f ! 6303: 2408(.)X ! 6304: 2475(The)X ! 6305: 7 f ! 6306: 2666(send)X ! 6307: 1 f ! 6308: 2901(command)X ! 6309: 3272(takes)X ! 6310: 3476(two)X ! 6311: 3631(arguments:)X ! 6312: 4068(the)X ! 6313: 720 1167(name)N ! 6314: 937(of)X ! 6315: 1036(an)X ! 6316: 1145(interpreter)X ! 6317: 1538(and)X ! 6318: 1691(a)X ! 6319: 1756(Tcl)X ! 6320: 1900(command)X ! 6321: 2274(to)X ! 6322: 2369(execute)X ! 6323: 2663(in)X ! 6324: 2757(that)X ! 6325: 2915(interpreter.)X ! 6326: 7 f ! 6327: 3382(Send)X ! 6328: 1 f ! 6329: 3619(arranges)X ! 6330: 3941(for)X ! 6331: 4068(the)X ! 6332: 720 1266(command)N ! 6333: 1093(to)X ! 6334: 1187(be)X ! 6335: 1295(passed)X ! 6336: 1554(to)X ! 6337: 1648(the)X ! 6338: 1781(process)X ! 6339: 2069(containing)X ! 6340: 2467(the)X ! 6341: 2600(named)X ! 6342: 2860(interpreter;)X ! 6343: 3276(the)X ! 6344: 3408(command)X ! 6345: 3780(is)X ! 6346: 3863(executed)X ! 6347: 720 1365(by)N ! 6348: 844(that)X ! 6349: 1013(interpreter)X ! 6350: 1416(and)X ! 6351: 1579(the)X ! 6352: 1723(results)X ! 6353: 1989(\(return)X ! 6354: 2264(code)X ! 6355: 2466(and)X ! 6356: 2629(string\))X ! 6357: 2895(are)X ! 6358: 3038(returned)X ! 6359: 3367(to)X ! 6360: 3472(the)X ! 6361: 3615(application)X ! 6362: 4043(that)X ! 6363: 720 1464(issued)N ! 6364: 962(the)X ! 6365: 7 f ! 6366: 1123(send)X ! 6367: 1 f ! 6368: 1357(command.)X ! 6369: 920 1596(The)N ! 6370: 1092(X11)X ! 6371: 1278 0.2885(implementation)AX ! 6372: 1869(of)X ! 6373: 7 f ! 6374: 2007(send)X ! 6375: 1 f ! 6376: 2253(uses)X ! 6377: 2438(a)X ! 6378: 2511(special)X ! 6379: 2790(property)X ! 6380: 3122(attached)X ! 6381: 3450(to)X ! 6382: 3553(the)X ! 6383: 3695(root)X ! 6384: 3871(window.)X ! 6385: 720 1695(The)N ! 6386: 882(property)X ! 6387: 1205(stores)X ! 6388: 1435(the)X ! 6389: 1568(names)X ! 6390: 1818(of)X ! 6391: 1916(all)X ! 6392: 2030(the)X ! 6393: 2163(interpreters)X ! 6394: 2589(plus)X ! 6395: 2761(a)X ! 6396: 2825(window)X ! 6397: 3133(identi\256er)X ! 6398: 3476(for)X ! 6399: 3602(each)X ! 6400: 3787(interpreter.)X ! 6401: 720 1794(A)N ! 6402: 813(command)X ! 6403: 1191(is)X ! 6404: 1280(sent)X ! 6405: 1452(to)X ! 6406: 1551(an)X ! 6407: 1663(interpreter)X ! 6408: 2059(by)X ! 6409: 2176(appending)X ! 6410: 2572(it)X ! 6411: 2651(to)X ! 6412: 2749(a)X ! 6413: 2817(particular)X ! 6414: 3184(property)X ! 6415: 3511(in)X ! 6416: 3609(the)X ! 6417: 3746(interpreter's)X ! 6418: 720 1893(associated)N ! 6419: 1110(window.)X ! 6420: 1465(The)X ! 6421: 1630(property)X ! 6422: 1955(change)X ! 6423: 2231(is)X ! 6424: 2317(detected)X ! 6425: 2638(by)X ! 6426: 2753(the)X ! 6427: 2888(process)X ! 6428: 3178(that)X ! 6429: 3338(owns)X ! 6430: 3550(the)X ! 6431: 3685(interpreter;)X ! 6432: 4126(it)X ! 6433: 720 1992(reads)N ! 6434: 928(the)X ! 6435: 1059(property,)X ! 6436: 1402(executes)X ! 6437: 1728(the)X ! 6438: 1859(command,)X ! 6439: 2252(and)X ! 6440: 2402(appends)X ! 6441: 2713(result)X ! 6442: 2932(information)X ! 6443: 3372(onto)X ! 6444: 3551(a)X ! 6445: 3612(property)X ! 6446: 3932(associ-)X ! 6447: 720 2091(ated)N ! 6448: 902(with)X ! 6449: 1094(the)X ! 6450: 1236(sending)X ! 6451: 1544(application.)X ! 6452: 2015(Finally,)X ! 6453: 2322(the)X ! 6454: 2464(sending)X ! 6455: 2772(application)X ! 6456: 3199(detects)X ! 6457: 3478(this)X ! 6458: 3640(change)X ! 6459: 3923(of)X ! 6460: 4030(pro-)X ! 6461: 720 2190(perty,)N ! 6462: 945(reads)X ! 6463: 1152(the)X ! 6464: 1282(result)X ! 6465: 1500(information,)X ! 6466: 1961(and)X ! 6467: 2110(returns)X ! 6468: 2376(it)X ! 6469: 2448(as)X ! 6470: 2543(the)X ! 6471: 2673(result)X ! 6472: 2891(of)X ! 6473: 2986(the)X ! 6474: 7 f ! 6475: 3147(send)X ! 6476: 1 f ! 6477: 3381(command.)X ! 6478: 920 2322(The)N ! 6479: 7 f ! 6480: 1116(send)X ! 6481: 1 f ! 6482: 1355(command)X ! 6483: 1730(provides)X ! 6484: 2060(a)X ! 6485: 2126(powerful)X ! 6486: 2470(way)X ! 6487: 2643(for)X ! 6488: 2772(one)X ! 6489: 2926(application)X ! 6490: 3346(to)X ! 6491: 3442(control)X ! 6492: 3719(another.)X ! 6493: 4054(For)X ! 6494: 720 2421(example,)N ! 6495: 1069(a)X ! 6496: 1136(debugger)X ! 6497: 1491(could)X ! 6498: 1715(send)X ! 6499: 1904(commands)X ! 6500: 2314(to)X ! 6501: 2411(an)X ! 6502: 2522(editor)X ! 6503: 2756(to)X ! 6504: 2852(highlight)X ! 6505: 3199(the)X ! 6506: 3334(current)X ! 6507: 3610(source)X ! 6508: 3866(line)X ! 6509: 4026(as)X ! 6510: 4126(it)X ! 6511: 720 2520(single-steps)N ! 6512: 1170(through)X ! 6513: 1478(a)X ! 6514: 1551(program.)X ! 6515: 1927(Or,)X ! 6516: 2075(a)X ! 6517: 2148(user)X ! 6518: 2328(interface)X ! 6519: 2670(editor)X ! 6520: 2910(could)X ! 6521: 3139(use)X ! 6522: 7 f ! 6523: 3320(send)X ! 6524: 1 f ! 6525: 3565(to)X ! 6526: 3667(manipulate)X ! 6527: 4093(an)X ! 6528: 720 2619(application's)N ! 6529: 1217(interface)X ! 6530: 1566(directly:)X ! 6531: 1924(rather)X ! 6532: 2170(than)X ! 6533: 2363(modifying)X ! 6534: 2771(a)X ! 6535: 2850(dummy)X ! 6536: 3160(version)X ! 6537: 3459(of)X ! 6538: 3572(the)X ! 6539: 3720(application's)X ! 6540: 720 2718(interface)N ! 6541: 1062(displayed)X ! 6542: 1434(by)X ! 6543: 1556(the)X ! 6544: 1698(interface)X ! 6545: 2040(editor,)X ! 6546: 2302(the)X ! 6547: 2443(interface)X ! 6548: 2784(editor)X ! 6549: 3023(could)X ! 6550: 3252(use)X ! 6551: 7 f ! 6552: 3433(send)X ! 6553: 1 f ! 6554: 3678(to)X ! 6555: 3780(modify)X ! 6556: 4068(the)X ! 6557: 720 2817(interface)N ! 6558: 1065(of)X ! 6559: 1175(a)X ! 6560: 1251(``live'')X ! 6561: 1537(application,)X ! 6562: 1989(while)X ! 6563: 2222(also)X ! 6564: 2401(saving)X ! 6565: 2668(the)X ! 6566: 2813(con\256guration)X ! 6567: 3320(for)X ! 6568: 3459(a)X ! 6569: 3535(con\256guration)X ! 6570: 4041(\256le.)X ! 6571: 720 2916(This)N ! 6572: 905(would)X ! 6573: 1153(allow)X ! 6574: 1377(an)X ! 6575: 1488(interface)X ! 6576: 1824(designer)X ! 6577: 2150(to)X ! 6578: 2247(try)X ! 6579: 2373(out)X ! 6580: 2513(the)X ! 6581: 2648(look)X ! 6582: 2832(and)X ! 6583: 2986(feel)X ! 6584: 3145(of)X ! 6585: 3245(a)X ! 6586: 3311(new)X ! 6587: 3484(interface)X ! 6588: 3819(incremen-)X ! 6589: 720 3015(tally)N ! 6590: 900(as)X ! 6591: 995(changes)X ! 6592: 1300(are)X ! 6593: 1429(made)X ! 6594: 1642(to)X ! 6595: 1733(the)X ! 6596: 1863(interface.)X ! 6597: 920 3147(Another)N ! 6598: 1230(example)X ! 6599: 1551(of)X ! 6600: 1646(using)X ! 6601: 7 f ! 6602: 1890(send)X ! 6603: 1 f ! 6604: 2124(is)X ! 6605: 2205(for)X ! 6606: 2329(changing)X ! 6607: 2674(user)X ! 6608: 2842(preferences.)X ! 6609: 3312(If)X ! 6610: 3392(one)X ! 6611: 3541(user)X ! 6612: 3709(walks)X ! 6613: 3936(up)X ! 6614: 4046(to)X ! 6615: 4137(a)X ! 6616: 720 3246(display)N ! 6617: 1000(that)X ! 6618: 1158(has)X ! 6619: 1300(been)X ! 6620: 1491(con\256gured)X ! 6621: 1892(for)X ! 6622: 2019(some)X ! 6623: 2230(other)X ! 6624: 2436(user,)X ! 6625: 2629(the)X ! 6626: 2762(new)X ! 6627: 2932(user)X ! 6628: 3102(could)X ! 6629: 3322(run)X ! 6630: 3463(a)X ! 6631: 3526(program)X ! 6632: 3848(that)X ! 6633: 4005(\256nds)X ! 6634: 720 3345(out)N ! 6635: 860(about)X ! 6636: 1083(all)X ! 6637: 1199(the)X ! 6638: 1334(existing)X ! 6639: 1641(applications)X ! 6640: 2095(on)X ! 6641: 2210(the)X ! 6642: 2345(screen)X ! 6643: 2595(\(by)X ! 6644: 2738(querying)X ! 6645: 3077(the)X ! 6646: 3211(property)X ! 6647: 3535(that)X ! 6648: 3694(contains)X ! 6649: 4014(their)X ! 6650: 720 3444(names\),)N ! 6651: 1023(reads)X ! 6652: 1234(the)X ! 6653: 1368(new)X ! 6654: 1540(user's)X ! 6655: 1775(con\256guration)X ! 6656: 2271(\256le)X ! 6657: 2410(for)X ! 6658: 2538(each)X ! 6659: 2725(application,)X ! 6660: 3166(and)X ! 6661: 3319(sends)X ! 6662: 3540(commands)X ! 6663: 3948(to)X ! 6664: 4043(that)X ! 6665: 720 3543(application)N ! 6666: 1139(to)X ! 6667: 1234(recon\256gure)X ! 6668: 1660(it)X ! 6669: 1736(for)X ! 6670: 1864(the)X ! 6671: 1998(new)X ! 6672: 2170(user's)X ! 6673: 2405(preferences.)X ! 6674: 2879(When)X ! 6675: 3115(the)X ! 6676: 3249(old)X ! 6677: 3388(user)X ! 6678: 3560(returns,)X ! 6679: 3852(he)X ! 6680: 3961(or)X ! 6681: 4059(she)X ! 6682: 720 3642(could)N ! 6683: 938(invoke)X ! 6684: 1200(the)X ! 6685: 1330(same)X ! 6686: 1533(program)X ! 6687: 1853(to)X ! 6688: 1944(restore)X ! 6689: 2205(the)X ! 6690: 2335(original)X ! 6691: 2632(preferences.)X ! 6692: 7 f ! 6693: 920 3774(Send)N ! 6694: 1 f ! 6695: 1159(could)X ! 6696: 1382(also)X ! 6697: 1551(be)X ! 6698: 1661(used)X ! 6699: 1849(to)X ! 6700: 1945(record)X ! 6701: 2196(interactive)X ! 6702: 2595(sessions)X ! 6703: 2909(involving)X ! 6704: 3274(multiple)X ! 6705: 3596(applications)X ! 6706: 4049(and)X ! 6707: 720 3873(then)N ! 6708: 897(replay)X ! 6709: 1142(the)X ! 6710: 1275(sessions)X ! 6711: 1588(later)X ! 6712: 1770(\(e.g.)X ! 6713: 1951(for)X ! 6714: 2078(demonstration)X ! 6715: 2608(purposes\).)X ! 6716: 3017(This)X ! 6717: 3198(would)X ! 6718: 3442(require)X ! 6719: 3715(an)X ! 6720: 3822(additional)X ! 6721: 720 3972(Tcl)N ! 6722: 871(command)X ! 6723: 1252(called)X ! 6724: 7 f ! 6725: 1527(trace)X ! 6726: 1 f ! 6727: 1792(;)X ! 6728: 7 f ! 6729: 1903(trace)X ! 6730: 1 f ! 6731: 2201(would)X ! 6732: 2454(take)X ! 6733: 2634(a)X ! 6734: 2706(single)X ! 6735: 2950(argument)X ! 6736: 3316(\(a)X ! 6737: 3416(Tcl)X ! 6738: 3566(command)X ! 6739: 3946(string\))X ! 6740: 720 4071(and)N ! 6741: 876(cause)X ! 6742: 1100(that)X ! 6743: 1261(command)X ! 6744: 1637(string)X ! 6745: 1866(to)X ! 6746: 1963(be)X ! 6747: 2074(executed)X ! 6748: 2415(before)X ! 6749: 2667(each)X ! 6750: 2856(other)X ! 6751: 3065(command)X ! 6752: 3441(was)X ! 6753: 3605(executed)X ! 6754: 3946(in)X ! 6755: 4043(that)X ! 6756: 720 4170(interpreter.)N ! 6757: 1168(Within)X ! 6758: 1451(a)X ! 6759: 1527(single)X ! 6760: 1775(application,)X ! 6761: 7 f ! 6762: 2258(trace)X ! 6763: 1 f ! 6764: 2560(could)X ! 6765: 2793(be)X ! 6766: 2913(used)X ! 6767: 3111(to)X ! 6768: 3217(record)X ! 6769: 3477(each)X ! 6770: 3674(Tcl)X ! 6771: 3828(command)X ! 6772: 720 4269(before)N ! 6773: 986(it)X ! 6774: 1078(is)X ! 6775: 1179(executed,)X ! 6776: 1556(so)X ! 6777: 1676(that)X ! 6778: 1851(the)X ! 6779: 2001(commands)X ! 6780: 2425(could)X ! 6781: 2662(be)X ! 6782: 2786(replayed)X ! 6783: 3130(later.)X ! 6784: 3372(In)X ! 6785: 3486(a)X ! 6786: 3566 0.2500(multi-application)AX ! 6787: 720 4368(environment,)N ! 6788: 1225(a)X ! 6789: 1301(recorder)X ! 6790: 1630(program)X ! 6791: 1965(could)X ! 6792: 2198(be)X ! 6793: 2318(built)X ! 6794: 2518(using)X ! 6795: 7 f ! 6796: 2777(send)X ! 6797: 1 f ! 6798: 2989(.)X ! 6799: 3070(The)X ! 6800: 3244(recorder)X ! 6801: 3573(sends)X ! 6802: 3805(a)X ! 6803: 7 f ! 6804: 3911(trace)X ! 6805: 1 f ! 6806: 720 4467(command)N ! 6807: 1093(to)X ! 6808: 1187(each)X ! 6809: 1373(application)X ! 6810: 1791(to)X ! 6811: 1884(be)X ! 6812: 1991(recorded.)X ! 6813: 2366(The)X ! 6814: 7 f ! 6815: 2558(trace)X ! 6816: 1 f ! 6817: 2847(command)X ! 6818: 3219(arranges)X ! 6819: 3540(for)X ! 6820: 3666(information)X ! 6821: 4107(to)X ! 6822: 720 4566(be)N ! 6823: 827(sent)X ! 6824: 993(back)X ! 6825: 1183(to)X ! 6826: 1276(the)X ! 6827: 1408(recorder)X ! 6828: 1724(about)X ! 6829: 1944(each)X ! 6830: 2129(command)X ! 6831: 2501(executed)X ! 6832: 2838(in)X ! 6833: 2931(that)X ! 6834: 3088(application.)X ! 6835: 3549(The)X ! 6836: 3709(recorder)X ! 6837: 4024(then)X ! 6838: 720 4665(logs)N ! 6839: 909(information)X ! 6840: 1367(about)X ! 6841: 1604(which)X ! 6842: 1860(applications)X ! 6843: 2328(executed)X ! 6844: 2682(which)X ! 6845: 2938(commands.)X ! 6846: 3405(The)X ! 6847: 3583(recorder)X ! 6848: 3916(can)X ! 6849: 4079(re-)X ! 6850: 720 4764(execute)N ! 6851: 1022(the)X ! 6852: 1163(commands)X ! 6853: 1578(by)X ! 6854: 7 f ! 6855: 1730(send)X ! 6856: 1 f ! 6857: 1942(-ing)X ! 6858: 2117(them)X ! 6859: 2327(back)X ! 6860: 2526(to)X ! 6861: 2628(the)X ! 6862: 2769(applications)X ! 6863: 3229(again.)X ! 6864: 3497(The)X ! 6865: 7 f ! 6866: 3698(trace)X ! 6867: 1 f ! 6868: 3995(com-)X ! 6869: 720 4863(mand)N ! 6870: 938(does)X ! 6871: 1121(not)X ! 6872: 1256(yet)X ! 6873: 1386(exist)X ! 6874: 1575(in)X ! 6875: 1666(Tcl,)X ! 6876: 1828(but)X ! 6877: 1963(it)X ! 6878: 2035(could)X ! 6879: 2253(easily)X ! 6880: 2481(be)X ! 6881: 2586(added.)X ! 6882: 7 f ! 6883: 920 4995(Send)N ! 6884: 1 f ! 6885: 1156(provides)X ! 6886: 1483(a)X ! 6887: 1546(much)X ! 6888: 1766(more)X ! 6889: 1970(powerful)X ! 6890: 2310(mechanism)X ! 6891: 2735(for)X ! 6892: 2860(communication)X ! 6893: 3433(between)X ! 6894: 3749(applications)X ! 6895: 720 5094(than)N ! 6896: 899(is)X ! 6897: 985(available)X ! 6898: 1331(today.)X ! 6899: 1598(The)X ! 6900: 1762(only)X ! 6901: 1946(easy-to-use)X ! 6902: 2373(form)X ! 6903: 2571(of)X ! 6904: 2671(communication)X ! 6905: 3248(for)X ! 6906: 3377(today's)X ! 6907: 3663(applications)X ! 6908: 4117(is)X ! 6909: 720 5193(the)N ! 6910: 855(selection)X ! 6911: 1195(or)X ! 6912: 1294(cut)X ! 6913: 1428(buffer:)X ! 6914: 1715(a)X ! 6915: 1780(single)X ! 6916: 2017(string)X ! 6917: 2244(of)X ! 6918: 2343(text)X ! 6919: 2502(that)X ! 6920: 2661(may)X ! 6921: 2839(be)X ! 6922: 2948(set)X ! 6923: 3072(by)X ! 6924: 3186(one)X ! 6925: 3339(application)X ! 6926: 3758(and)X ! 6927: 3911(read)X ! 6928: 4088(by)X ! 6929: 720 5292(another.)N ! 6930: 7 f ! 6931: 1089(Send)X ! 6932: 1 f ! 6933: 1331(provides)X ! 6934: 1664(a)X ! 6935: 1733(more)X ! 6936: 1944(general)X ! 6937: 2233(form)X ! 6938: 2434(of)X ! 6939: 2536(communication)X ! 6940: 3115(akin)X ! 6941: 3296(to)X ! 6942: 3394(remote)X ! 6943: 3668(procedure)X ! 6944: 4048(call)X ! 6945: 720 5391([3].)N ! 6946: 891(If)X ! 6947: 974(all)X ! 6948: 1088(of)X ! 6949: 1186(an)X ! 6950: 1294(application's)X ! 6951: 1775(functionality)X ! 6952: 2252(is)X ! 6953: 2336(made)X ! 6954: 2552(available)X ! 6955: 2896(through)X ! 6956: 3195(Tcl,)X ! 6957: 3360(as)X ! 6958: 3457(described)X ! 6959: 3818(in)X ! 6960: 3911(Section)X ! 6961: 720 5490(4,)N ! 6962: 823(then)X ! 6963: 7 f ! 6964: 1043(send)X ! 6965: 1 f ! 6966: 1291(makes)X ! 6967: 1552(all)X ! 6968: 1677(of)X ! 6969: 1786(each)X ! 6970: 1983(application's)X ! 6971: 2475(functionality)X ! 6972: 2963(available)X ! 6973: 3318(to)X ! 6974: 3423(other)X ! 6975: 3640(applications)X ! 6976: 4103(as)X ! 6977: 720 5589(well.)N ! 6978: 3 f ! 6979: 2353 6048(-)N ! 6980: 2404(10)X ! 6981: 2514(-)X ! 6982: ! 6983: 11 p ! 6984: %%Page: 11 12 ! 6985: 11 s 11 xH 0 xS 3 f ! 6986: 720 483(Tcl:)N ! 6987: 894(An)X ! 6988: 1028(Embeddable)X ! 6989: 1525(Command)X ! 6990: 1942(Language)X ! 6991: 3466(December)X ! 6992: 3868(22,)X ! 6993: 4000(1989)X ! 6994: 1 f ! 6995: 920 771(If)N ! 6996: 1011(Tcl)X ! 6997: 1161(\(and)X ! 6998: 7 f ! 6999: 1380(send)X ! 7000: 1 f ! 7001: 1592(\))X ! 7002: 1653(were)X ! 7003: 1855(to)X ! 7004: 1956(become)X ! 7005: 2262(widely)X ! 7006: 2534(used)X ! 7007: 2727(in)X ! 7008: 2828(window)X ! 7009: 3143(applications,)X ! 7010: 3624(I)X ! 7011: 3685(believe)X ! 7012: 3972(that)X ! 7013: 4137(a)X ! 7014: 720 870(better)N ! 7015: 946(kind)X ! 7016: 1128(of)X ! 7017: 1226(interactive)X ! 7018: 1624(environment)X ! 7019: 2095(would)X ! 7020: 2340(arise,)X ! 7021: 2553(consisting)X ! 7022: 2936(of)X ! 7023: 3033(a)X ! 7024: 3096(large)X ! 7025: 3296(number)X ! 7026: 3589(of)X ! 7027: 3686(small)X ! 7028: 3902(special-)X ! 7029: 720 969(ized)N ! 7030: 898(applications)X ! 7031: 1356(rather)X ! 7032: 1592(than)X ! 7033: 1775(a)X ! 7034: 1845(few)X ! 7035: 2007(monolithic)X ! 7036: 2422(ones.)X ! 7037: 2658(Today's)X ! 7038: 2977(applications)X ! 7039: 3435(cannot)X ! 7040: 3700(communicate)X ! 7041: 720 1068(with)N ! 7042: 902(each)X ! 7043: 1088(other)X ! 7044: 1294(very)X ! 7045: 1475(well,)X ! 7046: 1674(so)X ! 7047: 1777(each)X ! 7048: 1963(application)X ! 7049: 2381(must)X ! 7050: 2577(incorporate)X ! 7051: 3002(all)X ! 7052: 3115(the)X ! 7053: 3247(functionality)X ! 7054: 3723(that)X ! 7055: 3880(it)X ! 7056: 3954(needs.)X ! 7057: 720 1167(For)N ! 7058: 890(example,)X ! 7059: 1259(some)X ! 7060: 1493(window-based)X ! 7061: 2053(debuggers)X ! 7062: 2462(contain)X ! 7063: 2770(built-in)X ! 7064: 3079(text)X ! 7065: 3260(editors)X ! 7066: 3548(so)X ! 7067: 3674(that)X ! 7068: 3855(they)X ! 7069: 4054(can)X ! 7070: 720 1266(highlight)N ! 7071: 1066(the)X ! 7072: 1200(current)X ! 7073: 1475(point)X ! 7074: 1682(of)X ! 7075: 1780(execution.)X ! 7076: 2192(With)X ! 7077: 2394(Tcl)X ! 7078: 2537(and)X ! 7079: 7 f ! 7080: 2720(send)X ! 7081: 1 f ! 7082: 2932(,)X ! 7083: 2979(the)X ! 7084: 3112(debugger)X ! 7085: 3464(and)X ! 7086: 3616(the)X ! 7087: 3749(editor)X ! 7088: 3980(could)X ! 7089: 720 1365(be)N ! 7090: 829(distinct)X ! 7091: 1116(programs,)X ! 7092: 1496(with)X ! 7093: 1679(each)X ! 7094: 7 f ! 7095: 1897(send)X ! 7096: 1 f ! 7097: 2109(-ing)X ! 7098: 2277(commands)X ! 7099: 2685(to)X ! 7100: 2780(the)X ! 7101: 2914(other)X ! 7102: 3121(as)X ! 7103: 3219(necessary.)X ! 7104: 3629(Ideally,)X ! 7105: 3921(monol-)X ! 7106: 720 1464(ithic)N ! 7107: 909(applications)X ! 7108: 1367(could)X ! 7109: 1594(be)X ! 7110: 1708(replaced)X ! 7111: 2037(by)X ! 7112: 2156(lots)X ! 7113: 2315(of)X ! 7114: 2419(small)X ! 7115: 2642(applications)X ! 7116: 3100(that)X ! 7117: 3263(work)X ! 7118: 3473(together)X ! 7119: 3792(in)X ! 7120: 3891(exciting)X ! 7121: 720 1563(new)N ! 7122: 894(ways,)X ! 7123: 1124(just)X ! 7124: 1280(as)X ! 7125: 1381(the)X ! 7126: 1517(UNIX)X ! 7127: 1763(shells)X ! 7128: 1992(allowed)X ! 7129: 2298(lots)X ! 7130: 2453(of)X ! 7131: 2553(small)X ! 7132: 2772(text)X ! 7133: 2932(processing)X ! 7134: 3335(applications)X ! 7135: 3789(to)X ! 7136: 3885(be)X ! 7137: 3995(com-)X ! 7138: 720 1662(bined)N ! 7139: 945(together.)X ! 7140: 1307(I)X ! 7141: 1365(think)X ! 7142: 1576(that)X ! 7143: 1738(Tcl,)X ! 7144: 1907(or)X ! 7145: 2009(some)X ! 7146: 2224(other)X ! 7147: 2434(language)X ! 7148: 2781(like)X ! 7149: 2943(it,)X ! 7150: 3044(will)X ! 7151: 3211(provide)X ! 7152: 3508(the)X ! 7153: 3644(glue)X ! 7154: 3824(that)X ! 7155: 3985(binds)X ! 7156: 720 1761(together)N ! 7157: 1031(the)X ! 7158: 1161(windowing)X ! 7159: 1579(applications)X ! 7160: 2028(of)X ! 7161: 2123(the)X ! 7162: 2253(1990's.)X ! 7163: 3 f ! 7164: 720 2055(6.)N ! 7165: 830(Status)X ! 7166: 1086(and)X ! 7167: 1250(Performance)X ! 7168: 1 f ! 7169: 920 2187(The)N ! 7170: 1084(Tcl)X ! 7171: 1229(language)X ! 7172: 1574(was)X ! 7173: 1737(designed)X ! 7174: 2077(in)X ! 7175: 2173(the)X ! 7176: 2308(fall)X ! 7177: 2453(of)X ! 7178: 2553(1987)X ! 7179: 2756(and)X ! 7180: 2910(implemented)X ! 7181: 3399(in)X ! 7182: 3494(the)X ! 7183: 3628(winter)X ! 7184: 3879(of)X ! 7185: 3978(1988.)X ! 7186: 720 2286(In)N ! 7187: 825(the)X ! 7188: 965(spring)X ! 7189: 1217(of)X ! 7190: 1322(1988)X ! 7191: 1530(I)X ! 7192: 1590(incorporated)X ! 7193: 2066(Tcl)X ! 7194: 2215(into)X ! 7195: 2384(the)X ! 7196: 2 f ! 7197: 2523(mx)X ! 7198: 1 f ! 7199: 2656(editor)X ! 7200: 2893(\(which)X ! 7201: 3168(already)X ! 7202: 3458(existed,)X ! 7203: 3761(but)X ! 7204: 3905(with)X ! 7205: 4093(an)X ! 7206: 720 2385(inferior)N ! 7207: 1018(command)X ! 7208: 1399(language\),)X ! 7209: 1801(and)X ! 7210: 1961(also)X ! 7211: 2136(into)X ! 7212: 2307(a)X ! 7213: 2379(companion)X ! 7214: 2804(terminal)X ! 7215: 3132(emulator)X ! 7216: 3479(called)X ! 7217: 3723(Tx.)X ! 7218: 3898(Both)X ! 7219: 4103(of)X ! 7220: 720 2484(these)N ! 7221: 931(programs)X ! 7222: 1293(have)X ! 7223: 1489(been)X ! 7224: 1684(in)X ! 7225: 1782(use)X ! 7226: 1928(by)X ! 7227: 2045(a)X ! 7228: 2113(small)X ! 7229: 2334(user)X ! 7230: 2509(community)X ! 7231: 2941(at)X ! 7232: 3034(Berkeley)X ! 7233: 3381(for)X ! 7234: 3512(the)X ! 7235: 3649(last)X ! 7236: 3801(year)X ! 7237: 3981(and)X ! 7238: 4137(a)X ! 7239: 720 2583(half.)N ! 7240: 926(All)X ! 7241: 1064(of)X ! 7242: 1162(the)X ! 7243: 1295(Tcl)X ! 7244: 1438(language)X ! 7245: 1781(facilities)X ! 7246: 2111(exist)X ! 7247: 2303(as)X ! 7248: 2401(described)X ! 7249: 2762(above,)X ! 7250: 3018(except)X ! 7251: 3272(that)X ! 7252: 3429(the)X ! 7253: 7 f ! 7254: 3592(send)X ! 7255: 1 f ! 7256: 3828(command)X ! 7257: 720 2682(is)N ! 7258: 806(still)X ! 7259: 967(in)X ! 7260: 1063(prototype)X ! 7261: 1428(form)X ! 7262: 1626(and)X ! 7263: 7 f ! 7264: 1811(trace)X ! 7265: 1 f ! 7266: 2103(hasn't)X ! 7267: 2345(been)X ! 7268: 2538(implemented.)X ! 7269: 3071(Some)X ! 7270: 3299(of)X ! 7271: 3399(the)X ! 7272: 3534(features)X ! 7273: 3839(described)X ! 7274: 720 2781(in)N ! 7275: 824(Section)X ! 7276: 1124(4,)X ! 7277: 1225(such)X ! 7278: 1421(as)X ! 7279: 1529(menu)X ! 7280: 1760(and)X ! 7281: 1922(keystroke)X ! 7282: 2299(bindings,)X ! 7283: 2660(are)X ! 7284: 2802(implemented)X ! 7285: 3299(in)X ! 7286: 2 f ! 7287: 3402(mx)X ! 7288: 1 f ! 7289: 3504(,)X ! 7290: 3560(but)X ! 7291: 3707(in)X ! 7292: 3810(an)X ! 7293: 2 f ! 7294: 3927(ad)X ! 7295: 4049(hoc)X ! 7296: 1 f ! 7297: 720 2880(fashion:)N ! 7298: 1057(Tcl)X ! 7299: 1206(is)X ! 7300: 1296(not)X ! 7301: 1440(yet)X ! 7302: 1579(integrated)X ! 7303: 1963(with)X ! 7304: 2151(a)X ! 7305: 2221(widget)X ! 7306: 2492(set.)X ! 7307: 2665(I)X ! 7308: 2725(am)X ! 7309: 2864(currently)X ! 7310: 3213(building)X ! 7311: 3539(a)X ! 7312: 3609(new)X ! 7313: 3786(toolkit)X ! 7314: 4049(and)X ! 7315: 720 2979(widget)N ! 7316: 991(set)X ! 7317: 1120(that)X ! 7318: 1284(is)X ! 7319: 1374(based)X ! 7320: 1605(entirely)X ! 7321: 1906(on)X ! 7322: 2025(Tcl.)X ! 7323: 2218(When)X ! 7324: 2459(it)X ! 7325: 2540(is)X ! 7326: 2629(completed,)X ! 7327: 3049(I)X ! 7328: 3108(expect)X ! 7329: 3368(it)X ! 7330: 3448(to)X ! 7331: 3547(provide)X ! 7332: 3846(all)X ! 7333: 3965(of)X ! 7334: 4068(the)X ! 7335: 720 3078(features)N ! 7336: 1020(described)X ! 7337: 1379(in)X ! 7338: 1470(Section)X ! 7339: 1757(4.)X ! 7340: 1867(As)X ! 7341: 1986(of)X ! 7342: 2081(this)X ! 7343: 2231(writing,)X ! 7344: 2530(the)X ! 7345: 2660 0.2885(implementation)AX ! 7346: 3238(has)X ! 7347: 3377(barely)X ! 7348: 3619(begun.)X ! 7349: 920 3210(Table)N ! 7350: 1147(II)X ! 7351: 1230(shows)X ! 7352: 1474(how)X ! 7353: 1650(long)X ! 7354: 1832(it)X ! 7355: 1907(takes)X ! 7356: 2113(Tcl)X ! 7357: 2256(to)X ! 7358: 2350(execute)X ! 7359: 2644(various)X ! 7360: 2928(commands)X ! 7361: 3335(on)X ! 7362: 3448(two)X ! 7363: 3605(different)X ! 7364: 3933(works-)X ! 7365: 720 3309(tations.)N ! 7366: 1062(On)X ! 7367: 1231(Sun-3)X ! 7368: 1503(workstations,)X ! 7369: 2037(the)X ! 7370: 2207(average)X ! 7371: 2542(time)X ! 7372: 2762(for)X ! 7373: 2926(simple)X ! 7374: 3224(commands)X ! 7375: 3667(is)X ! 7376: 3787(about)X ! 7377: 4044(500)X ! 7378: 720 3408(microseconds,)N ! 7379: 1279(while)X ! 7380: 1528(on)X ! 7381: 1669(DECstation)X ! 7382: 2134(3100's)X ! 7383: 2426(the)X ! 7384: 2586(average)X ! 7385: 2911(time)X ! 7386: 3121(per)X ! 7387: 3285(command)X ! 7388: 3685(is)X ! 7389: 3796(about)X ! 7390: 4044(160)X ! 7391: 720 3507(microseconds.)N ! 7392: 1271(Although)X ! 7393: 2 f ! 7394: 1627(mx)X ! 7395: 1 f ! 7396: 1752(does)X ! 7397: 1936(not)X ! 7398: 2072(currently)X ! 7399: 2413(use)X ! 7400: 2553(a)X ! 7401: 2615(Tcl)X ! 7402: 2756(command)X ! 7403: 3127(for)X ! 7404: 3252(each)X ! 7405: 3436(mouse)X ! 7406: 3689(motion)X ! 7407: 3963(event,)X ! 7408: 720 3606(the)N ! 7409: 861(times)X ! 7410: 1086(in)X ! 7411: 1188(Table)X ! 7412: 1421(II)X ! 7413: 1511(suggest)X ! 7414: 1807(that)X ! 7415: 1972(this)X ! 7416: 2132(would)X ! 7417: 2384(be)X ! 7418: 2499(possible,)X ! 7419: 2842(even)X ! 7420: 3040(on)X ! 7421: 3160(Sun-3)X ! 7422: 3402(workstations,)X ! 7423: 3906(without)X ! 7424: 720 3705(signi\256cant)N ! 7425: 1120(degradation)X ! 7426: 1568(of)X ! 7427: 1673(response.)X ! 7428: 2056(For)X ! 7429: 2210(example,)X ! 7430: 2563(if)X ! 7431: 2649(mouse)X ! 7432: 2911(motion)X ! 7433: 3194(events)X ! 7434: 3451(occur)X ! 7435: 3678(100)X ! 7436: 3841(times)X ! 7437: 4064(per)X ! 7438: 720 3804(second,)N ! 7439: 1012(the)X ! 7440: 1146(Tcl)X ! 7441: 1290(overhead)X ! 7442: 1638(for)X ! 7443: 1766(dispatching)X ! 7444: 2199(one)X ! 7445: 2352(command)X ! 7446: 2726(per)X ! 7447: 2864(event)X ! 7448: 3081(will)X ! 7449: 3245(consume)X ! 7450: 3583(only)X ! 7451: 3765(about)X ! 7452: 3986(1-2%)X ! 7453: 720 3903(of)N ! 7454: 819(a)X ! 7455: 884(Sun-3)X ! 7456: 1120(processor.)X ! 7457: 1526(For)X ! 7458: 1674(the)X ! 7459: 1808(ways)X ! 7460: 2013(in)X ! 7461: 2107(which)X ! 7462: 2347(Tcl)X ! 7463: 2490(is)X ! 7464: 2574(currently)X ! 7465: 2917(used)X ! 7466: 3103(\(keystroke)X ! 7467: 3499(and)X ! 7468: 3651(menu)X ! 7469: 3872(bindings)X ! 7470: 720 4002(consisting)N ! 7471: 1129(of)X ! 7472: 1253(a)X ! 7473: 1343(few)X ! 7474: 1525(commands\),)X ! 7475: 2009(there)X ! 7476: 2236(are)X ! 7477: 2394(no)X ! 7478: 2533(noticeable)X ! 7479: 2947(delays)X ! 7480: 3223(associated)X ! 7481: 3635(with)X ! 7482: 3842(Tcl.)X ! 7483: 4054(For)X ! 7484: 720 4101(application-speci\256c)N ! 7485: 1437(commands)X ! 7486: 1845(such)X ! 7487: 2032(as)X ! 7488: 2131(those)X ! 7489: 2343(for)X ! 7490: 2471(the)X ! 7491: 2 f ! 7492: 2605(mx)X ! 7493: 1 f ! 7494: 2733(editor,)X ! 7495: 2987(the)X ! 7496: 3121(time)X ! 7497: 3305(to)X ! 7498: 3400(execute)X ! 7499: 3695(the)X ! 7500: 3828(command)X ! 7501: 720 4200(is)N ! 7502: 801(much)X ! 7503: 1019(greater)X ! 7504: 1285(than)X ! 7505: 1459(the)X ! 7506: 1589(time)X ! 7507: 1769(required)X ! 7508: 2084(by)X ! 7509: 2194(Tcl)X ! 7510: 2334(to)X ! 7511: 2425(parse)X ! 7512: 2632(it)X ! 7513: 2704(and)X ! 7514: 2853(call)X ! 7515: 3003(the)X ! 7516: 3133(command)X ! 7517: 3503(procedure.)X ! 7518: 920 4332(The)N ! 7519: 1084(Tcl)X ! 7520: 1229(library)X ! 7521: 1491(is)X ! 7522: 1577(small)X ! 7523: 1796(enough)X ! 7524: 2082(to)X ! 7525: 2178(be)X ! 7526: 2288(used)X ! 7527: 2476(in)X ! 7528: 2572(a)X ! 7529: 2638(wide)X ! 7530: 2836(variety)X ! 7531: 3108(of)X ! 7532: 3208(programs,)X ! 7533: 3589(even)X ! 7534: 3782(on)X ! 7535: 3897(systems)X ! 7536: 720 4431(without)N ! 7537: 1020(mechanisms)X ! 7538: 1486(for)X ! 7539: 1618(sharing)X ! 7540: 1907(libraries.)X ! 7541: 2270(The)X ! 7542: 2437(Tcl)X ! 7543: 2585(code)X ! 7544: 2781(consists)X ! 7545: 3090(of)X ! 7546: 3193(about)X ! 7547: 3419(7000)X ! 7548: 3624(lines)X ! 7549: 3820(of)X ! 7550: 3922(C)X ! 7551: 4010(code)X ! 7552: 720 4530(\(about)N ! 7553: 980(half)X ! 7554: 1152(of)X ! 7555: 1260(which)X ! 7556: 1510(is)X ! 7557: 1604(comments\).)X ! 7558: 2075(When)X ! 7559: 2320(compiled)X ! 7560: 2683(for)X ! 7561: 2819(a)X ! 7562: 2892(Motorola)X ! 7563: 3254(68000,)X ! 7564: 3530(it)X ! 7565: 3614(generates)X ! 7566: 3980(about)X ! 7567: 720 4629(27000)N ! 7568: 962(bytes)X ! 7569: 1170(of)X ! 7570: 1265(object)X ! 7571: 1503(code.)X ! 7572: 3 f ! 7573: 720 4923(7.)N ! 7574: 830(Comparisons)X ! 7575: 1 f ! 7576: 920 5055(The)N ! 7577: 1091(Tcl)X ! 7578: 1242(language)X ! 7579: 1593(has)X ! 7580: 1743(quite)X ! 7581: 1953(a)X ! 7582: 2025(bit)X ! 7583: 2152(of)X ! 7584: 2258(surface)X ! 7585: 2544(similarity)X ! 7586: 2917(to)X ! 7587: 3019(Lisp,)X ! 7588: 3231(except)X ! 7589: 3494(that)X ! 7590: 3660(Tcl)X ! 7591: 3811(uses)X ! 7592: 3995(curly)X ! 7593: 720 5154(braces)N ! 7594: 970(or)X ! 7595: 1069(brackets)X ! 7596: 1388(instead)X ! 7597: 1664(of)X ! 7598: 1763(parentheses)X ! 7599: 2199(and)X ! 7600: 2352(no)X ! 7601: 2466(braces)X ! 7602: 2716(are)X ! 7603: 2849(needed)X ! 7604: 3124(around)X ! 7605: 3394(the)X ! 7606: 3528(outermost)X ! 7607: 3906(level)X ! 7608: 4103(of)X ! 7609: 720 5253(a)N ! 7610: 790(command.)X ! 7611: 1213(The)X ! 7612: 1381(greatest)X ! 7613: 1686(difference)X ! 7614: 2073(between)X ! 7615: 2397(Tcl)X ! 7616: 2546(and)X ! 7617: 2704(Lisp)X ! 7618: 2892(is)X ! 7619: 2982(that)X ! 7620: 3146(Lisp)X ! 7621: 3333(evaluates)X ! 7622: 3691(arguments)X ! 7623: 4088(by)X ! 7624: 720 5352(default,)N ! 7625: 1016(whereas)X ! 7626: 1332(in)X ! 7627: 1430(Tcl)X ! 7628: 1577(arguments)X ! 7629: 1972(are)X ! 7630: 2107(not)X ! 7631: 2248(evaluated)X ! 7632: 2614(unless)X ! 7633: 2862(surrounded)X ! 7634: 3285(by)X ! 7635: 3401(brackets.)X ! 7636: 3766(This)X ! 7637: 3951(means)X ! 7638: 720 5451(that)N ! 7639: 876(more)X ! 7640: 1080(typing)X ! 7641: 1329(effort)X ! 7642: 1547(is)X ! 7643: 1629(required)X ! 7644: 1945(in)X ! 7645: 2037(Tcl)X ! 7646: 2178(if)X ! 7647: 2255(an)X ! 7648: 2361(argument)X ! 7649: 2717(is)X ! 7650: 2799(to)X ! 7651: 2891(be)X ! 7652: 2997(evaluated,)X ! 7653: 3380(and)X ! 7654: 3530(more)X ! 7655: 3733(typing)X ! 7656: 3981(effort)X ! 7657: 720 5550(is)N ! 7658: 813(required)X ! 7659: 1140(in)X ! 7660: 1243(Lisp)X ! 7661: 1434(if)X ! 7662: 1522(an)X ! 7663: 1639(argument)X ! 7664: 2006(is)X ! 7665: 2099(to)X ! 7666: 2202(be)X ! 7667: 2319(quoted)X ! 7668: 2593(\(not)X ! 7669: 2769(evaluated\).)X ! 7670: 3213(It)X ! 7671: 3300(appeared)X ! 7672: 3650(to)X ! 7673: 3752(me)X ! 7674: 3893(that)X ! 7675: 4059(no-)X ! 7676: 720 5649(evaluation)N ! 7677: 1117(is)X ! 7678: 1205(usually)X ! 7679: 1488(the)X ! 7680: 1624(desired)X ! 7681: 1906(result)X ! 7682: 2130(in)X ! 7683: 2227(arguments)X ! 7684: 2622(to)X ! 7685: 2719(a)X ! 7686: 2786(command)X ! 7687: 3162(language,)X ! 7688: 3530(so)X ! 7689: 3636(I)X ! 7690: 3693(made)X ! 7691: 3912(this)X ! 7692: 4068(the)X ! 7693: 3 f ! 7694: 2353 6048(-)N ! 7695: 2404(11)X ! 7696: 2514(-)X ! 7697: ! 7698: 12 p ! 7699: %%Page: 12 13 ! 7700: 11 s 11 xH 0 xS 3 f ! 7701: 720 483(Tcl:)N ! 7702: 894(An)X ! 7703: 1028(Embeddable)X ! 7704: 1525(Command)X ! 7705: 1942(Language)X ! 7706: 3466(December)X ! 7707: 3868(22,)X ! 7708: 4000(1989)X ! 7709: 1 f ! 7710: 10 f ! 7711: 870 812(i)N ! 7712: 902(iiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiii)X ! 7713: 1 f ! 7714: 2827 911(Sun-3)N ! 7715: 3059(Time)X ! 7716: 3462(DS3100)X ! 7717: 3772(Time)X ! 7718: 1520 960(Tcl)N ! 7719: 1660(Command)X ! 7720: 2766 1010(\(microseconds\))N ! 7721: 3440(\(microseconds\))X ! 7722: 10 f ! 7723: 870 1021(i)N ! 7724: 902(iiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiii)X ! 7725: 7 f ! 7726: 9 s ! 7727: 914 1120(set)N ! 7728: 1086(a)X ! 7729: 1172(1)X ! 7730: 1 f ! 7731: 11 s ! 7732: 3015(225)X ! 7733: 3711(57)X ! 7734: 10 f ! 7735: 870 1131(i)N ! 7736: 902(iiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiii)X ! 7737: 7 f ! 7738: 9 s ! 7739: 914 1230(list)N ! 7740: 1129(abc)X ! 7741: 1301(def)X ! 7742: 1473(ghi)X ! 7743: 1645(jkl)X ! 7744: 1 f ! 7745: 11 s ! 7746: 3015(460)X ! 7747: 3667(138)X ! 7748: 10 f ! 7749: 870 1241(i)N ! 7750: 902(iiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiii)X ! 7751: 7 f ! 7752: 9 s ! 7753: 914 1340(if)N ! 7754: 1043({4)X ! 7755: 1172(>)X ! 7756: 1258(3})X ! 7757: 1387({set)X ! 7758: 1602(a)X ! 7759: 1688(1})X ! 7760: 1 f ! 7761: 11 s ! 7762: 3015(700)X ! 7763: 3667(220)X ! 7764: 10 f ! 7765: 870 1351(i)N ! 7766: 902(iiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiii)X ! 7767: 7 f ! 7768: 9 s ! 7769: 914 1450(proc)N ! 7770: 1129(fac)X ! 7771: 1301(x)X ! 7772: 1387({)X ! 7773: 1086 1549(if)N ! 7774: 1215({$x)X ! 7775: 1387(==)X ! 7776: 1516(1})X ! 7777: 1645({return)X ! 7778: 1989(1})X ! 7779: 1086 1648(return)N ! 7780: 1387([expr)X ! 7781: 1645({$x*[fac)X ! 7782: 2032([expr)X ! 7783: 2290($x-1]]}])X ! 7784: 914 1747(})N ! 7785: 1 f ! 7786: 11 s ! 7787: 2971 1598(1280)N ! 7788: 3667(380)X ! 7789: 10 f ! 7790: 870 1758(i)N ! 7791: 902(iiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiii)X ! 7792: 7 f ! 7793: 9 s ! 7794: 914 1857(fac)N ! 7795: 1086(5)X ! 7796: 1 f ! 7797: 11 s ! 7798: 2927(11250)X ! 7799: 3623(3630)X ! 7800: 10 f ! 7801: 870 1868(i)N ! 7802: 902(iiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiii)X ! 7803: 870(c)X ! 7804: 1780(c)Y ! 7805: 1692(c)Y ! 7806: 1604(c)Y ! 7807: 1516(c)Y ! 7808: 1428(c)Y ! 7809: 1340(c)Y ! 7810: 1252(c)Y ! 7811: 1164(c)Y ! 7812: 1076(c)Y ! 7813: 988(c)Y ! 7814: 900(c)Y ! 7815: 2700 1868(c)N ! 7816: 1780(c)Y ! 7817: 1692(c)Y ! 7818: 1604(c)Y ! 7819: 1516(c)Y ! 7820: 1428(c)Y ! 7821: 1340(c)Y ! 7822: 1252(c)Y ! 7823: 1164(c)Y ! 7824: 1076(c)Y ! 7825: 988(c)Y ! 7826: 900(c)Y ! 7827: 3374 1868(c)N ! 7828: 1780(c)Y ! 7829: 1692(c)Y ! 7830: 1604(c)Y ! 7831: 1516(c)Y ! 7832: 1428(c)Y ! 7833: 1340(c)Y ! 7834: 1252(c)Y ! 7835: 1164(c)Y ! 7836: 1076(c)Y ! 7837: 988(c)Y ! 7838: 900(c)Y ! 7839: 4026 1868(c)N ! 7840: 1780(c)Y ! 7841: 1692(c)Y ! 7842: 1604(c)Y ! 7843: 1516(c)Y ! 7844: 1428(c)Y ! 7845: 1340(c)Y ! 7846: 1252(c)Y ! 7847: 1164(c)Y ! 7848: 1076(c)Y ! 7849: 988(c)Y ! 7850: 900(c)Y ! 7851: 3 f ! 7852: 10 s ! 7853: 880 2024(Table)N ! 7854: 1108(II)X ! 7855: 1 f ! 7856: 1170(.)X ! 7857: 1242(The)X ! 7858: 1399(cost)X ! 7859: 1560(of)X ! 7860: 1659(various)X ! 7861: 1927(Tcl)X ! 7862: 2066(commands,)X ! 7863: 2465(measured)X ! 7864: 2805(on)X ! 7865: 2917(a)X ! 7866: 2985(Sun-3/75)X ! 7867: 3310(workstation)X ! 7868: 3720(and)X ! 7869: 3868(on)X ! 7870: 3980(a)X ! 7871: 880 2114(DECstation)N ! 7872: 1279(3100.)X ! 7873: 1505(The)X ! 7874: 1655(command)X ! 7875: 7 f ! 7876: 2024(fac)X ! 7877: 2221(5)X ! 7878: 1 f ! 7879: 2294(executes)X ! 7880: 2596(a)X ! 7881: 2657(total)X ! 7882: 2824(of)X ! 7883: 2916(23)X ! 7884: 3021(Tcl)X ! 7885: 3153(commands,)X ! 7886: 3545(for)X ! 7887: 3664(an)X ! 7888: 3765(average)X ! 7889: 880 2204(command)N ! 7890: 1228(time)X ! 7891: 1402(of)X ! 7892: 1501(about)X ! 7893: 1711(500)X ! 7894: 1863(microseconds)X ! 7895: 2336(on)X ! 7896: 2448(a)X ! 7897: 2516(Sun-3)X ! 7898: 2739(or)X ! 7899: 2838(160)X ! 7900: 2990(microseconds)X ! 7901: 3463(on)X ! 7902: 3575(a)X ! 7903: 3643(DECstation)X ! 7904: 880 2294(3100.)N ! 7905: 11 s ! 7906: 720 2522(default)N ! 7907: 996(in)X ! 7908: 1096(Tcl.)X ! 7909: 1289(Tcl)X ! 7910: 1438(also)X ! 7911: 1611(has)X ! 7912: 1759(fewer)X ! 7913: 1989(data)X ! 7914: 2167(types)X ! 7915: 2384(than)X ! 7916: 2567(Lisp;)X ! 7917: 2802(this)X ! 7918: 2961(was)X ! 7919: 3128(done)X ! 7920: 3330(in)X ! 7921: 3429(order)X ! 7922: 3644(to)X ! 7923: 3743(simplify)X ! 7924: 4068(the)X ! 7925: 720 2621(interface)N ! 7926: 1050(between)X ! 7927: 1365(the)X ! 7928: 1495(Tcl)X ! 7929: 1635(library)X ! 7930: 1892(and)X ! 7931: 2041(an)X ! 7932: 2146(enclosing)X ! 7933: 2506(C)X ! 7934: 2587(application.)X ! 7935: 920 2753(The)N ! 7936: 1084(Emacs)X ! 7937: 1346(editor)X ! 7938: 1579(is)X ! 7939: 1665(similar)X ! 7940: 1938(to)X ! 7941: 2034(Tcl)X ! 7942: 2179(in)X ! 7943: 2275(that)X ! 7944: 2435(it)X ! 7945: 2512(provides)X ! 7946: 2842(a)X ! 7947: 2908(framework)X ! 7948: 3320(that)X ! 7949: 3480(can)X ! 7950: 3629(be)X ! 7951: 3738(used)X ! 7952: 3925(to)X ! 7953: 4020(con-)X ! 7954: 720 2852(trol)N ! 7955: 872(many)X ! 7956: 1097(different)X ! 7957: 1429(application)X ! 7958: 1851(programs.)X ! 7959: 2256(For)X ! 7960: 2407(example,)X ! 7961: 2757(subprocesses)X ! 7962: 3244(can)X ! 7963: 3395(be)X ! 7964: 3507(run)X ! 7965: 3653(in)X ! 7966: 3751(Emacs)X ! 7967: 4015(win-)X ! 7968: 720 2951(dows)N ! 7969: 929(and)X ! 7970: 1080(users)X ! 7971: 1284(can)X ! 7972: 1430(write)X ! 7973: 1635(Emacs)X ! 7974: 1894(command)X ! 7975: 2266(scripts)X ! 7976: 2520(that)X ! 7977: 2677(\(a\))X ! 7978: 2798(generate)X ! 7979: 3119(command)X ! 7980: 3490(sequences)X ! 7981: 3869(for)X ! 7982: 3994(input)X ! 7983: 720 3050(to)N ! 7984: 820(the)X ! 7985: 959(applications)X ! 7986: 1417(and)X ! 7987: 1575(\(b\))X ! 7988: 1708(re-format)X ! 7989: 2071(the)X ! 7990: 2210(output)X ! 7991: 2467(of)X ! 7992: 2571(applications.)X ! 7993: 3073(This)X ! 7994: 3261(allows)X ! 7995: 3522(users)X ! 7996: 3733(to)X ! 7997: 3832(embellish)X ! 7998: 720 3149(the)N ! 7999: 860(basic)X ! 8000: 1073(facilities)X ! 8001: 1410(of)X ! 8002: 1515(applications,)X ! 8003: 1996(edit)X ! 8004: 2160(their)X ! 8005: 2353(output,)X ! 8006: 2632(and)X ! 8007: 2790(so)X ! 8008: 2899(on.)X ! 8009: 3062(The)X ! 8010: 3230(difference)X ! 8011: 3617(between)X ! 8012: 3941(Emacs)X ! 8013: 720 3248(and)N ! 8014: 870(Tcl)X ! 8015: 1011(is)X ! 8016: 1093(that)X ! 8017: 1249(the)X ! 8018: 1380(programmability)X ! 8019: 1997(is)X ! 8020: 2078(centralized)X ! 8021: 2487(in)X ! 8022: 2578(Emacs:)X ! 8023: 2860(applications)X ! 8024: 3309(cannot)X ! 8025: 3566(talk)X ! 8026: 3721(to)X ! 8027: 3812(each)X ! 8028: 3995(other)X ! 8029: 720 3347(unless)N ! 8030: 967(Emacs)X ! 8031: 1229(acts)X ! 8032: 1393(as)X ! 8033: 1492(intermediary)X ! 8034: 1969(\(e.g.)X ! 8035: 2151(to)X ! 8036: 2246(set)X ! 8037: 2370(up)X ! 8038: 2484(a)X ! 8039: 2549(new)X ! 8040: 2721(communication)X ! 8041: 3297(mechanism)X ! 8042: 3725(between)X ! 8043: 4044(two)X ! 8044: 720 3446(applications,)N ! 8045: 1207(code)X ! 8046: 1411(must)X ! 8047: 1621(be)X ! 8048: 1742(written)X ! 8049: 2030(in)X ! 8050: 2137(Emacs)X ! 8051: 2410(to)X ! 8052: 2517(pass)X ! 8053: 2706(information)X ! 8054: 3161(back)X ! 8055: 3365(and)X ! 8056: 3530(forth)X ! 8057: 3738(between)X ! 8058: 4068(the)X ! 8059: 720 3545(applications\).)N ! 8060: 1250(The)X ! 8061: 1417(Tcl)X ! 8062: 1565(approach)X ! 8063: 1917(is)X ! 8064: 2006(decentralized:)X ! 8065: 2553(each)X ! 8066: 2744(application)X ! 8067: 3167(has)X ! 8068: 3314(its)X ! 8069: 3428(own)X ! 8070: 3608(command)X ! 8071: 3985(inter-)X ! 8072: 720 3644(preter)N ! 8073: 947(and)X ! 8074: 1096(applications)X ! 8075: 1545(may)X ! 8076: 1719(communicate)X ! 8077: 2217(directly)X ! 8078: 2509(with)X ! 8079: 2688(each)X ! 8080: 2871(other.)X ! 8081: 920 3776(Lastly,)N ! 8082: 1190(it)X ! 8083: 1267(is)X ! 8084: 1353(interesting)X ! 8085: 1753(to)X ! 8086: 1849(compare)X ! 8087: 2179(Tcl)X ! 8088: 2324(to)X ! 8089: 2420(NeWS)X ! 8090: 2681([9],)X ! 8091: 2832(a)X ! 8092: 2898(window)X ! 8093: 3208(system)X ! 8094: 3480(that)X ! 8095: 3640(is)X ! 8096: 3726(based)X ! 8097: 3953(on)X ! 8098: 4068(the)X ! 8099: 720 3875(Postscript)N ! 8100: 1098(language.)X ! 8101: 1490(NeWS)X ! 8102: 1754(allows)X ! 8103: 2014(applications)X ! 8104: 2470(to)X ! 8105: 2568(down-load)X ! 8106: 2973(Postscript)X ! 8107: 3350(programs)X ! 8108: 3711(into)X ! 8109: 3878(the)X ! 8110: 4015(win-)X ! 8111: 720 3974(dow)N ! 8112: 904(server)X ! 8113: 1151(in)X ! 8114: 1253(order)X ! 8115: 1471(to)X ! 8116: 1573(change)X ! 8117: 1855(the)X ! 8118: 1996(user)X ! 8119: 2175(interface)X ! 8120: 2516(and)X ! 8121: 2676(modify)X ! 8122: 2964(other)X ! 8123: 3178(aspects)X ! 8124: 3465(of)X ! 8125: 3571(the)X ! 8126: 3711(system.)X ! 8127: 4032(In)X ! 8128: 4137(a)X ! 8129: 720 4073(sense,)N ! 8130: 955(this)X ! 8131: 1106(is)X ! 8132: 1188(similar)X ! 8133: 1457(to)X ! 8134: 1549(the)X ! 8135: 7 f ! 8136: 1711(send)X ! 8137: 1 f ! 8138: 1946(command)X ! 8139: 2317(in)X ! 8140: 2409(Tcl,)X ! 8141: 2571(in)X ! 8142: 2662(that)X ! 8143: 2817(applications)X ! 8144: 3266(may)X ! 8145: 3440(send)X ! 8146: 3623(programs)X ! 8147: 3977(to)X ! 8148: 4068(the)X ! 8149: 720 4172(server)N ! 8150: 964(for)X ! 8151: 1096(execution.)X ! 8152: 1513(However,)X ! 8153: 1886(the)X ! 8154: 2023(NeWS)X ! 8155: 2286(mechanism)X ! 8156: 2717(is)X ! 8157: 2805(less)X ! 8158: 2966(general)X ! 8159: 3254(than)X ! 8160: 3435(Tcl:)X ! 8161: 3629(NeWS)X ! 8162: 3892(applica-)X ! 8163: 720 4271(tions)N ! 8164: 915(generate)X ! 8165: 1235(Postscript)X ! 8166: 1605(programs)X ! 8167: 1959(as)X ! 8168: 2054(output)X ! 8169: 2302(but)X ! 8170: 2437(they)X ! 8171: 2611(do)X ! 8172: 2721(not)X ! 8173: 2856(necessarily)X ! 8174: 3269(respond)X ! 8175: 3569(to)X ! 8176: 3660(Postscript)X ! 8177: 4030(pro-)X ! 8178: 720 4370(grams)N ! 8179: 959(as)X ! 8180: 1056(input.)X ! 8181: 1306(In)X ! 8182: 1403(other)X ! 8183: 1608(words,)X ! 8184: 1868(NeWS)X ! 8185: 2126(applications)X ! 8186: 2577(can)X ! 8187: 2723(affect)X ! 8188: 2947(each)X ! 8189: 3132(others')X ! 8190: 3399(interfaces,)X ! 8191: 3786(by)X ! 8192: 3897(control-)X ! 8193: 720 4469(ling)N ! 8194: 894(the)X ! 8195: 1038(server,)X ! 8196: 1310(but)X ! 8197: 1459(they)X ! 8198: 1647(cannot)X ! 8199: 1918(directly)X ! 8200: 2224(invoke)X ! 8201: 2500(each)X ! 8202: 2696(others')X ! 8203: 2975(application-speci\256c)X ! 8204: 3701(operations)X ! 8205: 4103(as)X ! 8206: 720 4568(they)N ! 8207: 894(can)X ! 8208: 1038(with)X ! 8209: 1217(Tcl.)X ! 8210: 920 4700(To)N ! 8211: 1066(summarize,)X ! 8212: 1523(the)X ! 8213: 1679(Tcl)X ! 8214: 1845(approach)X ! 8215: 2215(is)X ! 8216: 2322(less)X ! 8217: 2502(centralized)X ! 8218: 2937(than)X ! 8219: 3137(either)X ! 8220: 3385(the)X ! 8221: 3540(Emacs)X ! 8222: 3822(or)X ! 8223: 3942(NeWS)X ! 8224: 720 4799(approaches.)N ! 8225: 1187(For)X ! 8226: 1337(a)X ! 8227: 1404(windowing)X ! 8228: 1828(environment)X ! 8229: 2302(with)X ! 8230: 2487(large)X ! 8231: 2691(numbers)X ! 8232: 3022(of)X ! 8233: 3123(independent)X ! 8234: 3582(tools,)X ! 8235: 3803(I)X ! 8236: 3859(think)X ! 8237: 4068(the)X ! 8238: 720 4898(decentralized)N ! 8239: 1215(approach)X ! 8240: 1562(makes)X ! 8241: 1812(sense.)X ! 8242: 2071(In)X ! 8243: 2169(fairness)X ! 8244: 2467(to)X ! 8245: 2561(Emacs,)X ! 8246: 2843(it's)X ! 8247: 2980(important)X ! 8248: 3348(to)X ! 8249: 3441(point)X ! 8250: 3647(out)X ! 8251: 3784(that)X ! 8252: 3941(Emacs)X ! 8253: 720 4997(wasn't)N ! 8254: 982(designed)X ! 8255: 1323(for)X ! 8256: 1453(this)X ! 8257: 1609(environment,)X ! 8258: 2105(and)X ! 8259: 2260(that)X ! 8260: 2420(Emacs)X ! 8261: 2682(works)X ! 8262: 2923(quite)X ! 8263: 3127(nicely)X ! 8264: 3370(in)X ! 8265: 3466(the)X ! 8266: 3601(environment)X ! 8267: 4074(for)X ! 8268: 720 5096(which)N ! 8269: 958(it)X ! 8270: 1031(was)X ! 8271: 1189(designed)X ! 8272: 1524(\(ASCII)X ! 8273: 1804(terminals)X ! 8274: 2155(with)X ! 8275: 2334(batch-style)X ! 8276: 2743(applications\).)X ! 8277: 3265(It's)X ! 8278: 3404(also)X ! 8279: 3568(worth)X ! 8280: 3795(noting)X ! 8281: 4043(that)X ! 8282: 720 5195(direct)N ! 8283: 943(communication)X ! 8284: 1515(between)X ! 8285: 1830(applications)X ! 8286: 2279(was)X ! 8287: 2437(not)X ! 8288: 2572(an)X ! 8289: 2677(explicit)X ! 8290: 2965(goal)X ! 8291: 3139(of)X ! 8292: 3234(the)X ! 8293: 3364(NeWS)X ! 8294: 3620(system)X ! 8295: 3887(design.)X ! 8296: 3 f ! 8297: 720 5489(8.)N ! 8298: 830(Conclusions)X ! 8299: 1 f ! 8300: 920 5621(I)N ! 8301: 982(think)X ! 8302: 1197(that)X ! 8303: 1363(Tcl)X ! 8304: 1514(could)X ! 8305: 1743(improve)X ! 8306: 2070(our)X ! 8307: 2219(interactive)X ! 8308: 2624(environments)X ! 8309: 3136(in)X ! 8310: 3237(three)X ! 8311: 3445(general)X ! 8312: 3736(ways.)X ! 8313: 3992(First,)X ! 8314: 720 5720(Tcl)N ! 8315: 868(can)X ! 8316: 1020(be)X ! 8317: 1133(used)X ! 8318: 1324(to)X ! 8319: 1423(improve)X ! 8320: 1747(individual)X ! 8321: 2135(tools)X ! 8322: 2336(by)X ! 8323: 2453(providing)X ! 8324: 2825(them)X ! 8325: 3031(with)X ! 8326: 3217(a)X ! 8327: 3285(programmable)X ! 8328: 3828(command)X ! 8329: 3 f ! 8330: 2353 6048(-)N ! 8331: 2404(12)X ! 8332: 2514(-)X ! 8333: ! 8334: 13 p ! 8335: %%Page: 13 14 ! 8336: 11 s 11 xH 0 xS 3 f ! 8337: 720 483(Tcl:)N ! 8338: 894(An)X ! 8339: 1028(Embeddable)X ! 8340: 1525(Command)X ! 8341: 1942(Language)X ! 8342: 3466(December)X ! 8343: 3868(22,)X ! 8344: 4000(1989)X ! 8345: 1 f ! 8346: 720 771(language;)N ! 8347: 1117(this)X ! 8348: 1277(allows)X ! 8349: 1539(users)X ! 8350: 1751(to)X ! 8351: 1852(customize)X ! 8352: 2242(tools)X ! 8353: 2446(and)X ! 8354: 2605(extend)X ! 8355: 2872(their)X ! 8356: 3066(functionality.)X ! 8357: 3593(Second,)X ! 8358: 3905(Tcl)X ! 8359: 4054(can)X ! 8360: 720 870(provide)N ! 8361: 1020(a)X ! 8362: 1090(uniform)X ! 8363: 1405(command)X ! 8364: 1784(language)X ! 8365: 2133(across)X ! 8366: 2383(a)X ! 8367: 2453(range)X ! 8368: 2679(of)X ! 8369: 2783(tools;)X ! 8370: 3033(this)X ! 8371: 3192(makes)X ! 8372: 3448(it)X ! 8373: 3529(easier)X ! 8374: 3765(for)X ! 8375: 3897(users)X ! 8376: 4107(to)X ! 8377: 720 969(program)N ! 8378: 1042(the)X ! 8379: 1174(tools)X ! 8380: 1370(and)X ! 8381: 1521(also)X ! 8382: 1687(allows)X ! 8383: 1941(tool-independent)X ! 8384: 2563(facilities)X ! 8385: 2892(to)X ! 8386: 2985(be)X ! 8387: 3092(built,)X ! 8388: 3301(such)X ! 8389: 3486(as)X ! 8390: 3583(interface)X ! 8391: 3914(editors.)X ! 8392: 720 1068(Third,)N ! 8393: 962(Tcl)X ! 8394: 1104(provides)X ! 8395: 1431(a)X ! 8396: 1494(mechanism)X ! 8397: 1920(for)X ! 8398: 2046(tools)X ! 8399: 2242(to)X ! 8400: 2335(control)X ! 8401: 2609(each)X ! 8402: 2794(other;)X ! 8403: 3046(this)X ! 8404: 3198(encourages)X ! 8405: 3616(a)X ! 8406: 3678(more)X ! 8407: 3882(modular)X ! 8408: 720 1167(approach)N ! 8409: 1065(to)X ! 8410: 1157(windowing)X ! 8411: 1576(applications)X ! 8412: 2025(and)X ! 8413: 2174(makes)X ! 8414: 2421(it)X ! 8415: 2493(possible)X ! 8416: 2804(to)X ! 8417: 2895(re-use)X ! 8418: 3131(old)X ! 8419: 3266(applications)X ! 8420: 3715(in)X ! 8421: 3806(new)X ! 8422: 3974(ways.)X ! 8423: 720 1266(In)N ! 8424: 815(my)X ! 8425: 950(opinion)X ! 8426: 1242(the)X ! 8427: 1372(third)X ! 8428: 1561(bene\256t)X ! 8429: 1823(is)X ! 8430: 1904(potentially)X ! 8431: 2305(the)X ! 8432: 2435(most)X ! 8433: 2629(important.)X ! 8434: 920 1398(My)N ! 8435: 1067(experiences)X ! 8436: 1507(with)X ! 8437: 1688(Tcl)X ! 8438: 1830(so)X ! 8439: 1932(far)X ! 8440: 2053(are)X ! 8441: 2184(positive)X ! 8442: 2488(but)X ! 8443: 2625(limited.)X ! 8444: 2945(Tcl)X ! 8445: 3087(needs)X ! 8446: 3311(a)X ! 8447: 3374(larger)X ! 8448: 3603(user)X ! 8449: 3773(community)X ! 8450: 720 1497(and)N ! 8451: 876(a)X ! 8452: 944(more)X ! 8453: 1154(complete)X ! 8454: 1507(integration)X ! 8455: 1919(into)X ! 8456: 2086(a)X ! 8457: 2154(windowing)X ! 8458: 2579(toolkit)X ! 8459: 2840(before)X ! 8460: 3093(it)X ! 8461: 3172(can)X ! 8462: 3323(be)X ! 8463: 3434(fully)X ! 8464: 3629(evaluated.)X ! 8465: 4039(The)X ! 8466: 720 1596(Tcl)N ! 8467: 865(library)X ! 8468: 1127(source)X ! 8469: 1383(code)X ! 8470: 1576(is)X ! 8471: 1662(currently)X ! 8472: 2007(available)X ! 8473: 2353(to)X ! 8474: 2449(the)X ! 8475: 2584(public)X ! 8476: 2831(in)X ! 8477: 2926(a)X ! 8478: 2991(free,)X ! 8479: 3175(unlicensed)X ! 8480: 3578(form,)X ! 8481: 3797(and)X ! 8482: 3950(I)X ! 8483: 4005(hope)X ! 8484: 720 1695(to)N ! 8485: 811(produce)X ! 8486: 1116(a)X ! 8487: 1177(Tcl-based)X ! 8488: 1546(toolkit)X ! 8489: 1800(in)X ! 8490: 1891(the)X ! 8491: 2021(near)X ! 8492: 2194(future.)X ! 8493: 3 f ! 8494: 720 1989(9.)N ! 8495: 830(Acknowledgments)X ! 8496: 1 f ! 8497: 920 2121(The)N ! 8498: 1082(members)X ! 8499: 1430(of)X ! 8500: 1528(the)X ! 8501: 1661(Sprite)X ! 8502: 1897(project)X ! 8503: 2167(acted)X ! 8504: 2377(as)X ! 8505: 2474(guinea)X ! 8506: 2733(pigs)X ! 8507: 2904(for)X ! 8508: 3030(the)X ! 8509: 3162(editor)X ! 8510: 3392(and)X ! 8511: 3543(terminal)X ! 8512: 3862(emulator)X ! 8513: 720 2220(based)N ! 8514: 948(on)X ! 8515: 1064(Tcl;)X ! 8516: 1257(without)X ! 8517: 1555(their)X ! 8518: 1745(help)X ! 8519: 1925(the)X ! 8520: 2061(language)X ! 8521: 2407(would)X ! 8522: 2655(not)X ! 8523: 2796(have)X ! 8524: 2990(evolved)X ! 8525: 3297(to)X ! 8526: 3394(its)X ! 8527: 3506(current)X ! 8528: 3782(state.)X ! 8529: 4015(Fred)X ! 8530: 720 2319(Douglis,)N ! 8531: 1045(John)X ! 8532: 1235(Hartman,)X ! 8533: 1589(Ken)X ! 8534: 1759(Shirriff,)X ! 8535: 2064(and)X ! 8536: 2215(Brent)X ! 8537: 2434(Welch)X ! 8538: 2687(provided)X ! 8539: 3023(helpful)X ! 8540: 3296(comments)X ! 8541: 3682(that)X ! 8542: 3838(improved)X ! 8543: 720 2418(the)N ! 8544: 850(presentation)X ! 8545: 1303(of)X ! 8546: 1398(this)X ! 8547: 1548(paper.)X ! 8548: 3 f ! 8549: 720 2712(10.)N ! 8550: 874(References)X ! 8551: 1 f ! 8552: 720 2844([1])N ! 8553: 920(Abelson,)X ! 8554: 1265(H.)X ! 8555: 1380(and)X ! 8556: 1536(Sussman,)X ! 8557: 1900(G.J.)X ! 8558: 2 f ! 8559: 2092(Structure)X ! 8560: 2449(and)X ! 8561: 2610(Interpretation)X ! 8562: 3134(of)X ! 8563: 3232(Computer)X ! 8564: 3613(Programs)X ! 8565: 1 f ! 8566: 3964(,)X ! 8567: 4015(MIT)X ! 8568: 920 2943(Press,)N ! 8569: 1149(Cambridge,)X ! 8570: 1585(MA,)X ! 8571: 1770(1985.)X ! 8572: 720 3075([2])N ! 8573: 920(Adobe)X ! 8574: 1178(Systems,)X ! 8575: 1518(Inc.)X ! 8576: 2 f ! 8577: 1698(Postscript)X ! 8578: 2080(Language)X ! 8579: 2456(Tutorial)X ! 8580: 2770(and)X ! 8581: 2926(Cookbook)X ! 8582: 1 f ! 8583: 3283(,)X ! 8584: 3329(Addison-Wesley,)X ! 8585: 3966(Read-)X ! 8586: 920 3174(ing,)N ! 8587: 1077(MA,)X ! 8588: 1262(1985.)X ! 8589: 720 3306([3])N ! 8590: 920(Birrell,)X ! 8591: 1206(A.)X ! 8592: 1324(and)X ! 8593: 1484(Nelson,)X ! 8594: 1788(B.)X ! 8595: 1923(``Implementing)X ! 8596: 2509(Remote)X ! 8597: 2816(Procedure)X ! 8598: 3204(Calls.'')X ! 8599: 2 f ! 8600: 3498(ACM)X ! 8601: 3716(Transactions)X ! 8602: 920 3405(on)N ! 8603: 1030(Computer)X ! 8604: 1404(Systems)X ! 8605: 1 f ! 8606: 1682(,)X ! 8607: 1726(Vol.)X ! 8608: 1902(2,)X ! 8609: 1990(No.)X ! 8610: 2141(1,)X ! 8611: 2229(February)X ! 8612: 2568(1986,)X ! 8613: 2788(pp.)X ! 8614: 2920(39-59.)X ! 8615: 720 3537([4])N ! 8616: 920(Brodie,)X ! 8617: 1206(L.)X ! 8618: 2 f ! 8619: 1328(Starting)X ! 8620: 1637(FORTH:)X ! 8621: 1995(An)X ! 8622: 2117(Introduction)X ! 8623: 2582(to)X ! 8624: 2675(the)X ! 8625: 2807(FORTH)X ! 8626: 3114(Language)X ! 8627: 3490(and)X ! 8628: 3645(Operating)X ! 8629: 4030(Sys-)X ! 8630: 920 3636(tem)N ! 8631: 1069(for)X ! 8632: 1194(Beginners)X ! 8633: 1573(and)X ! 8634: 1727(Professionals)X ! 8635: 1 f ! 8636: 2207(,)X ! 8637: 2251(Prentice)X ! 8638: 2562(Hall,)X ! 8639: 2758(Englewood)X ! 8640: 3181(Cliffs,)X ! 8641: 3448(NJ,)X ! 8642: 3589(1981.)X ! 8643: 720 3768([5])N ! 8644: 920(Kernighan,)X ! 8645: 1337(B.W.)X ! 8646: 1547(and)X ! 8647: 1698(Pike,)X ! 8648: 1901(R.)X ! 8649: 2 f ! 8650: 2028(The)X ! 8651: 2184(UNIX)X ! 8652: 2413(Programming)X ! 8653: 2930(Environment)X ! 8654: 1 f ! 8655: 3385(,)X ! 8656: 3431(Prentice)X ! 8657: 3744(Hall,)X ! 8658: 3941(Engle-)X ! 8659: 920 3867(wood)N ! 8660: 1137(Cliffs,)X ! 8661: 1382(NJ,)X ! 8662: 1523(1984.)X ! 8663: 720 3999([6])N ! 8664: 920(Kernighan,)X ! 8665: 1338(B.W.)X ! 8666: 1549(and)X ! 8667: 1701(Ritchie,)X ! 8668: 2004(D.M.)X ! 8669: 2 f ! 8670: 2236(The)X ! 8671: 2393(C)X ! 8672: 2477(Programming)X ! 8673: 2995(Language)X ! 8674: 1 f ! 8675: (,)S ! 8676: 3394(Second)X ! 8677: 3678(Edition,)X ! 8678: 3986(Pren-)X ! 8679: 920 4098(tice)N ! 8680: 1070(Hall,)X ! 8681: 1266(Englewood)X ! 8682: 1689(Cliffs,)X ! 8683: 1934(NJ,)X ! 8684: 2075(1988.)X ! 8685: 720 4230([7])N ! 8686: 920(Mackey,)X ! 8687: 1250(K.,)X ! 8688: 1382(Downs,)X ! 8689: 1677(M.,)X ! 8690: 1824(Duffy,)X ! 8691: 2080(J.,)X ! 8692: 2183(and)X ! 8693: 2335(Leege,)X ! 8694: 2597(J.)X ! 8695: 2699(``An)X ! 8696: 2888(Interactive)X ! 8697: 3289(Interface)X ! 8698: 3625(Builder)X ! 8699: 3914(for)X ! 8700: 4040(Use)X ! 8701: 920 4329(with)N ! 8702: 1099(Ada)X ! 8703: 1267(Programs,'')X ! 8704: 2 f ! 8705: 1706(Xhibition)X ! 8706: 2058(Conference)X ! 8707: 2486(Proceedings)X ! 8708: 1 f ! 8709: 2926(,)X ! 8710: 2970(1989.)X ! 8711: 720 4461([8])N ! 8712: 920(Stallman,)X ! 8713: 1279(R.)X ! 8714: 2 f ! 8715: 1404(GNU)X ! 8716: 1611(Emacs)X ! 8717: 1867(Manual)X ! 8718: 1 f ! 8719: 2141(,)X ! 8720: 2185(Fourth)X ! 8721: 2442(Edition,)X ! 8722: 2747(Version)X ! 8723: 3047(17,)X ! 8724: 3179(February)X ! 8725: 3518(1986.)X ! 8726: 720 4593([9])N ! 8727: 920(Sun)X ! 8728: 1083(Microsystems,)X ! 8729: 1625(Inc.)X ! 8730: 2 f ! 8731: 1807(NeWS)X ! 8732: 2048(Technical)X ! 8733: 2422(Overview)X ! 8734: 1 f ! 8735: 2759(,)X ! 8736: 2807(Sun)X ! 8737: 2970(Microsystems,)X ! 8738: 3512(Inc.)X ! 8739: 3672(PN)X ! 8740: 3810(800-1498-)X ! 8741: 920 4692(05,)N ! 8742: 1052(1987.)X ! 8743: 3 f ! 8744: 2353 6048(-)N ! 8745: 2404(13)X ! 8746: 2514(-)X ! 8747: ! 8748: 14 p ! 8749: %%Trailer ! 8750: xt ! 8751: ! 8752: xs
This archive runs on limited infrastructure. Preserving old code on modern bandwidth. Automated agents are requested to crawl responsibly.