home *** CD-ROM | disk | FTP | other *** search
Text File | 1993-08-11 | 75.0 KB | 3,089 lines |
- Newsgroups: comp.sources.misc
- From: jeff@joyce.cs.su.oz.au (Jeff Kingston)
- Subject: v38i074: lout - Lout document formatting system, v2.05, Part06/35
- Message-ID: <1993Aug8.180714.11411@sparky.sterling.com>
- X-Md4-Signature: 61a1beeba50beea07dac3723ba1b5b41
- Sender: kent@sparky.sterling.com (Kent Landfield)
- Organization: Sterling Software
- Date: Sun, 8 Aug 1993 18:07:14 GMT
- Approved: kent@sparky.sterling.com
-
- Submitted-by: jeff@joyce.cs.su.oz.au (Jeff Kingston)
- Posting-number: Volume 38, Issue 74
- Archive-name: lout/part06
- Environment: UNIX
- Supersedes: lout: Volume 37, Issue 99-128
-
- #! /bin/sh
- # This is a shell archive. Remove anything before this line, then feed it
- # into a shell via "sh file" or similar. To overwrite existing files,
- # type "sh file -c".
- # Contents: doc/tr.eq/outfile.ps.C z22.c
- # Wrapped by kent@sparky on Sun Aug 8 12:29:22 1993
- PATH=/bin:/usr/bin:/usr/ucb:/usr/local/bin:/usr/lbin ; export PATH
- echo If this archive is complete, you will see the following message:
- echo ' "shar: End of archive 6 (of 35)."'
- if test -f 'doc/tr.eq/outfile.ps.C' -a "${1}" != "-c" ; then
- echo shar: Will not clobber existing file \"'doc/tr.eq/outfile.ps.C'\"
- else
- echo shar: Extracting \"'doc/tr.eq/outfile.ps.C'\" \(42604 characters\)
- sed "s/^X//" >'doc/tr.eq/outfile.ps.C' <<'END_OF_FILE'
- X
- Xgrestore
- X
- X240 fnt33
- X0 -78 moveto(\325)s
- Xgrestore
- X
- X220 fnt13
- X2914 1980 moveto(int)s gsave
- X3433 2037 translate
- X-180.0000 rotate
- Xgsave
- X0 -159 translate
- X180.0000 rotate
- X
- X311 fnt33
- X0 -284 moveto(\362)s
- X
- Xgrestore
- X
- Xgrestore
- X
- X311 fnt33
- X3433 1912 moveto(\362)s
- X220 fnt13
- X5660 1980 moveto(oint)s gsave
- X6301 2037 translate
- X-180.0000 rotate
- Xgsave
- X0 -52 translate
- X180.0000 rotate
- X
- X240 fnt33
- X0 -164 moveto(\260)s
- Xgrestore
- X
- Xgrestore
- X
- X240 fnt33
- X6301 1925 moveto(\260)s gsave
- X6304 2037 translate
- X-180.0000 rotate
- Xgsave
- X0 -159 translate
- X180.0000 rotate
- X
- X311 fnt33
- X0 -284 moveto(\362)s
- X
- Xgrestore
- X
- Xgrestore
- X
- X311 fnt33
- X6304 1912 moveto(\362)s
- X220 fnt13
- X8405 1980 moveto(bcap)s
- X311 fnt33
- X9169 1960 moveto(\307)s
- X220 fnt13
- X2669 1606 moveto(bcup)s
- X311 fnt33
- X3433 1586 moveto(\310)s
- X
- X220 fnt13
- X5537 1606 moveto(bvee)s
- X311 fnt33
- X6301 1586 moveto(\332)s
- X220 fnt13
- X8113 1606 moveto(bwedge)s
- X311 fnt33
- X9169 1586 moveto(\331)s
- Xpgsave restore
- Xshowpage
- X
- X%%Page: ? 11
- X%%BeginPageSetup
- X/pgsave save def
- X0.0500 dup scale 10 setlinewidth
- X%%EndPageSetup
- X
- X240 fnt34
- X5694 15261 moveto(-)s 5833 x(10)s 6133 x(-)s
- X220 fnt13
- X2596 14643 moveto(bodot)s gsave
- X3433 14607 translate
- X217 186 0 93 311 288 77 LoutGraphic
- Xgsave
- Xxsize ysize 2 div moveto
- Xxsize 2 div ysize 2 div xsize 2 div 0 360 arc
- X0.04 ft setlinewidth stroke
- Xgrestore
- X
- Xgrestore
- X
- X311 fnt33
- X3503 14623 moveto(\327)s
- X
- X220 fnt13
- X5245 14643 moveto(botimes)s
- X311 fnt33
- X6301 14623 moveto(\304)s
- X220 fnt13
- X8235 14643 moveto(boplus)s
- X311 fnt33
- X9169 14623 moveto(\305)s
- X220 fnt13
- X2499 14269 moveto(buplus)s
- X
- X217 fnt33
- X3492 14334 moveto(+)s
- X311 fnt33
- X3433 14249 moveto(\310)s
- X240 fnt34
- X1417 13771 moveto(The)s 1867 x(following)s 2875 x(symbols)s
- X3751 x(are)s 4120 x(de\207ned)s 4903 x(so)s 5194 x(that)s 5630 x(they)s
- X6120 x(will)s 6569 x(appear)s 7284 x(in)s 7548 x(Roman,)s 8378 x(as)s
- X8655 x(is)s 8892 x(con)s 9238 x(vent)s 9650 x(ional)s 10206 x(for)s
- X1417 13483 moveto(them)s 1955 x(in)s 2201 x(equations:)s
- X220 fnt13
- X2498 12977 moveto(arccos)s
- X240 fnt34
- X3433 12981 moveto(arccos)s
- X
- X220 fnt13
- X5428 12977 moveto(arcsin)s
- X240 fnt34
- X6301 12981 moveto(arcsin)s
- X220 fnt13
- X8271 12977 moveto(arctan)s
- X240 fnt34
- X9169 12981 moveto(arctan)s
- X220 fnt13
- X2828 12689 moveto(arg)s
- X
- X240 fnt34
- X3433 12693 moveto(arg)s
- X220 fnt13
- X5671 12689 moveto(cos)s
- X240 fnt34
- X6301 12693 moveto(cos)s
- X220 fnt13
- X8417 12689 moveto(cosh)s
- X240 fnt34
- X9169 12693 moveto(cosh)s
- X
- X220 fnt13
- X2852 12401 moveto(cot)s
- X240 fnt34
- X3433 12405 moveto(cot)s
- X220 fnt13
- X5598 12401 moveto(coth)s
- X240 fnt34
- X6301 12405 moveto(coth)s
- X220 fnt13
- X8551 12401 moveto(csc)s
- X
- X240 fnt34
- X9169 12405 moveto(csc)s
- X220 fnt13
- X2779 12113 moveto(deg)s
- X240 fnt34
- X3433 12117 moveto(deg)s
- X220 fnt13
- X5708 12113 moveto(det)s
- X240 fnt34
- X6301 12117 moveto(det)s
- X
- X220 fnt13
- X8528 12113 moveto(dim)s
- X240 fnt34
- X9169 12117 moveto(dim)s
- X220 fnt13
- X2791 11825 moveto(exp)s
- X240 fnt34
- X3433 11829 moveto(exp)s
- X220 fnt13
- X5659 11825 moveto(gcd)s
- X
- X240 fnt34
- X6301 11829 moveto(gcd)s
- X220 fnt13
- X8454 11825 moveto(hom)s
- X240 fnt34
- X9169 11829 moveto(hom)s
- X220 fnt13
- X2914 11537 moveto(inf)s
- X240 fnt34
- X3433 11541 moveto(inf)s
- X
- X220 fnt13
- X5708 11537 moveto(ker)s
- X240 fnt34
- X6301 11541 moveto(ker)s
- X220 fnt13
- X8711 11537 moveto(lg)s
- X240 fnt34
- X9169 11541 moveto(lg)s
- X220 fnt13
- X2866 11249 moveto(lim)s
- X
- X240 fnt34
- X3433 11253 moveto(lim)s
- X220 fnt13
- X5503 11249 moveto(liminf)s
- X240 fnt34
- X6301 11253 moveto(lim)s 6662 x(inf)s
- X220 fnt13
- X8248 11249 moveto(limsup)s
- X
- X240 fnt34
- X9169 11253 moveto(lim)s 9530 x(sup)s
- X220 fnt13
- X2975 10961 moveto(ln)s
- X240 fnt34
- X3433 10965 moveto(ln)s
- X220 fnt13
- X5721 10961 moveto(log)s
- X
- X240 fnt34
- X6301 10965 moveto(log)s
- X220 fnt13
- X8466 10961 moveto(max)s
- X240 fnt34
- X9169 10965 moveto(max)s
- X220 fnt13
- X2792 10673 moveto(min)s
- X240 fnt34
- X3433 10677 moveto(min)s
- X
- X220 fnt13
- X5794 10673 moveto(Pr)s
- X240 fnt34
- X6301 10677 moveto(Pr)s
- X220 fnt13
- X8539 10673 moveto(sec)s
- X240 fnt34
- X9169 10677 moveto(sec)s
- X220 fnt13
- X2865 10385 moveto(sin)s
- X
- X240 fnt34
- X3433 10389 moveto(sin)s
- X220 fnt13
- X5611 10385 moveto(sinh)s
- X240 fnt34
- X6301 10389 moveto(sinh)s
- X220 fnt13
- X8454 10385 moveto(supr)s
- X240 fnt34
- X9169 10389 moveto(sup)s
- X
- X220 fnt13
- X2840 10097 moveto(tan)s
- X240 fnt34
- X3433 10101 moveto(tan)s
- X220 fnt13
- X5586 10097 moveto(tanh)s
- X240 fnt34
- X6301 10101 moveto(tanh)s
- X220 fnt13
- X8454 10097 moveto(mod)s
- X
- X240 fnt34
- X9169 10101 moveto(mod)s 1417 9642 moveto(The)s 1849 x(following)s 2839 x(symbols)s 3697 x(are)s
- X4048 x(also)s 4493 x(de\207ned)s 5258 x(to)s 5504 x(ensure)s 6188 x(that)s
- X6606 x(they)s 7078 x(will)s 7509 x(appear)s 8206 x(in)s 8452 x(Roman:)s
- X
- X220 fnt13
- X3023 9141 moveto(0)s
- X240 fnt33
- X3433 9138 moveto(0)s
- X220 fnt13
- X5891 9141 moveto(1)s
- X240 fnt33
- X6301 9138 moveto(1)s
- X220 fnt13
- X8759 9141 moveto(2)s
- X
- X240 fnt33
- X9169 9138 moveto(2)s
- X220 fnt13
- X3023 8853 moveto(3)s
- X240 fnt33
- X3433 8850 moveto(3)s
- X220 fnt13
- X5891 8853 moveto(4)s
- X240 fnt33
- X6301 8850 moveto(4)s
- X
- X220 fnt13
- X8759 8853 moveto(5)s
- X240 fnt33
- X9169 8850 moveto(5)s
- X220 fnt13
- X3023 8565 moveto(6)s
- X240 fnt33
- X3433 8562 moveto(6)s
- X220 fnt13
- X5891 8565 moveto(7)s
- X
- X240 fnt33
- X6301 8562 moveto(7)s
- X220 fnt13
- X8759 8565 moveto(8)s
- X240 fnt33
- X9169 8562 moveto(8)s
- X220 fnt13
- X3023 8277 moveto(9)s
- X240 fnt33
- X3433 8274 moveto(9)s
- X
- X220 fnt13
- X5952 8277 moveto(!)s
- X240 fnt33
- X6301 8274 moveto(!)s
- X220 fnt13
- X8759 8277 moveto(?)s
- X240 fnt33
- X9169 8274 moveto(?)s
- X220 fnt13
- X2950 7989 moveto(%)s
- X
- X240 fnt33
- X3433 7986 moveto(%)s
- X220 fnt13
- X5940 7989 moveto(\()s
- X240 fnt33
- X6301 7986 moveto(\()s
- X220 fnt13
- X8808 7989 moveto(\))s
- X240 fnt33
- X9169 7986 moveto(\))s
- X
- X220 fnt13
- X3084 7701 moveto([)s
- X240 fnt33
- X3433 7698 moveto([)s
- X220 fnt13
- X5952 7701 moveto(])s
- X240 fnt33
- X6301 7698 moveto(])s
- X240 fnt34
- X1417 7204 moveto(The)s
- X1849 x(following)s 2839 x(symbols)s 3697 x(make)s 4275 x(good)s
- X220 fnt13
- X4815 7200 moveto(atleft)s
- X
- X240 fnt34
- X5350 7204 moveto(and)s
- X220 fnt13
- X5756 7200 moveto(atright)s
- X240 fnt34
- X6425 7204 moveto(parameters)s 7532 x(of)s 7791 x(the)s
- X
- X220 fnt13
- X8143 7200 moveto(matrix)s
- X240 fnt34
- X8800 7204 moveto(symbol:)s
- X220 fnt13
- X2780 6372 moveto(lpar)s
- X240 fnt33
- X3433 6369 moveto(\()s
- X220 fnt13
- X5526 6372 moveto(blpar)s
- X
- X240 fnt33
- X6301 6661 moveto(\346)s 6301 6369 moveto(\347)s 6301 6127 moveto(\350)s
- X220 fnt13
- X8491 6372 moveto(rpar)s
- X240 fnt33
- X9169 6369 moveto(\))s
- X
- X220 fnt13
- X2633 5546 moveto(brpar)s
- X240 fnt33
- X3433 5835 moveto(\366)s 3433 5543 moveto(\367)s 3433 5301 moveto(\370)s
- X220 fnt13
- X5428 5546 moveto(lbrack)s
- X
- X240 fnt33
- X6301 5543 moveto([)s
- X220 fnt13
- X8174 5546 moveto(blbrack)s
- X240 fnt33
- X9169 5784 moveto(\351)s 9169 5543 moveto(\352)s 9169 5303 moveto(\353)s
- X
- X220 fnt13
- X2535 4771 moveto(rbrack)s
- X240 fnt33
- X3433 4768 moveto(])s
- X220 fnt13
- X5281 4771 moveto(brbrack)s
- X240 fnt33
- X6301 5009 moveto(\371)s 6301 4768 moveto(\372)s
- X6301 4528 moveto(\373)s
- X220 fnt13
- X8284 4771 moveto(lbrace)s
- X240 fnt33
- X9169 4768 moveto({)s
- X220 fnt13
- X2426 4048 moveto(blbrace)s
- X240 fnt33
- X3433 4287 moveto(\354)s
- X3433 4045 moveto(\355)s 3433 3803 moveto(\356)s
- X220 fnt13
- X5391 4048 moveto(rbrace)s
- X240 fnt33
- X6301 4045 moveto(})s
- X220 fnt13
- X8137 4048 moveto(brbrace)s
- X
- X240 fnt33
- X9169 4287 moveto(\374)s 9169 4045 moveto(\375)s 9169 3803 moveto(\376)s
- X220 fnt13
- X2670 3328 moveto(l\210oor)s
- X240 fnt33
- X3433 3325 moveto(\353)s
- X
- X220 fnt13
- X5416 3328 moveto(bl\210oor)s
- X240 fnt33
- X6301 3565 moveto(\352)s 6301 3325 moveto(\352)s 6301 3085 moveto(\353)s
- X220 fnt13
- X8381 3328 moveto(r\210oor)s
- X
- X240 fnt33
- X9169 3325 moveto(\373)s
- X220 fnt13
- X2523 2606 moveto(br\210oor)s
- X240 fnt33
- X3433 2843 moveto(\372)s 3433 2603 moveto(\372)s 3433 2363 moveto(\373)s
- X
- X220 fnt13
- X5637 2606 moveto(lceil)s
- X240 fnt33
- X6301 2603 moveto(\351)s
- X220 fnt13
- X8383 2606 moveto(blceil)s
- X240 fnt33
- X9169 2844 moveto(\351)s 9169 2603 moveto(\352)s
- X9169 2363 moveto(\352)s
- X220 fnt13
- X2744 1884 moveto(rceil)s
- X240 fnt33
- X3433 1881 moveto(\371)s
- X220 fnt13
- X5490 1884 moveto(brceil)s
- X240 fnt33
- X6301 2122 moveto(\371)s
- X6301 1881 moveto(\372)s 6301 1641 moveto(\372)s
- X220 fnt13
- X8297 1884 moveto(langle)s
- X240 fnt33
- X9169 1881 moveto(\341)s
- Xpgsave restore
- Xshowpage
- X
- X%%Page: ? 12
- X%%BeginPageSetup
- X/pgsave save def
- X0.0500 dup scale 10 setlinewidth
- X%%EndPageSetup
- X
- X240 fnt34
- X5694 15261 moveto(-)s 5833 x(11)s 6133 x(-)s
- X220 fnt13
- X2439 14299 moveto(blangle)s gsave
- X3433 13876 translate
- X120 960 0 480 240 288 0 LoutGraphic
- Xgsave
- Xxsize 0 moveto
- X0 ysize 2 div lineto
- Xxsize ysize lineto
- X0.04 ft setlinewidth stroke
- Xgrestore
- X
- Xgrestore
- X
- X220 fnt13
- X5404 14299 moveto(rangle)s
- X
- X240 fnt33
- X6301 14296 moveto(\361)s
- X220 fnt13
- X8150 14299 moveto(brangle)s gsave
- X9169 13876 translate
- X120 960 0 480 240 288 0 LoutGraphic
- Xgsave
- X0 0 moveto
- Xxsize ysize 2 div lineto
- X0 ysize lineto
- X0.04 ft setlinewidth stroke
- Xgrestore
- X
- Xgrestore
- X
- X240 fnt34
- X1417 13449 moveto(Here)s 1941 x(are)s 2292 x(some)s
- X2857 x(miscellaneous)s 4271 x(symbols:)s
- X220 fnt13
- X2706 12890 moveto(hbar)s
- X240 fnt34
- X3457 12954 moveto(-)s
- X240 fnt35
- X3433 12894 moveto(h)s
- X
- X220 fnt13
- X5733 12890 moveto(Re)s
- X240 fnt33
- X6301 12887 moveto(\302)s
- X220 fnt13
- X8637 12890 moveto(Im)s
- X240 fnt33
- X9169 12887 moveto(\301)s
- X220 fnt13
- X2549 12602 moveto(partial)s
- X
- X240 fnt33
- X3433 12599 moveto(\266)s
- X220 fnt13
- X5611 12602 moveto(infty)s
- X240 fnt33
- X6301 12599 moveto(\245)s
- X220 fnt13
- X8333 12602 moveto(prime)s
- X240 fnt33
- X9169 12599 moveto(\242)s
- X
- X220 fnt13
- X2609 12314 moveto(nabla)s
- X240 fnt33
- X3433 12311 moveto(\321)s
- X220 fnt13
- X5586 12314 moveto(surd)s
- X240 fnt33
- X6301 12311 moveto(\326)s
- X220 fnt13
- X8576 12314 moveto(top)s
- Xgsave
- X9326 12371 translate
- X180.0000 rotate
- X
- X240 fnt33
- X0 -60 moveto(^)s
- Xgrestore
- X
- X220 fnt13
- X2840 12026 moveto(bot)s
- X240 fnt33
- X3433 12023 moveto(^)s
- X220 fnt13
- X5574 12026 moveto(dbar)s
- X240 fnt34
- X6301 12030 moveto(||)s
- X
- X220 fnt13
- X8163 12026 moveto(triangle)s gsave
- X9169 12011 translate
- X144 144 72 72 240 288 0 LoutGraphic
- Xgsave
- X0 0 moveto xsize 0 lineto
- Xxsize 2 div ysize lineto closepath
- X0.04 ft setlinewidth stroke
- Xgrestore
- X
- Xgrestore
- X
- X220 fnt13
- X2169 11738 moveto(backslash)s
- X240 fnt35
- X3433 11742 moveto(\\)s
- X220 fnt13
- X5539 11738 moveto(forall)s
- X240 fnt33
- X6301 11735 moveto(")s
- X
- X220 fnt13
- X8320 11738 moveto(exists)s
- X240 fnt33
- X9169 11735 moveto($)s
- X220 fnt13
- X2779 11450 moveto(neg)s
- X240 fnt33
- X3433 11447 moveto(\330)s
- X220 fnt13
- X5502 11450 moveto(circle)s
- Xgsave
- X6301 11435 translate
- X167 144 0 72 240 288 0 LoutGraphic
- Xgsave
- Xxsize ysize 2 div moveto
- Xxsize 2 div ysize 2 div xsize 2 div 0 360 arc
- X0.04 ft setlinewidth stroke
- Xgrestore
- X
- Xgrestore
- X
- X220 fnt13
- X8210 11450 moveto(square)s gsave
- X9169 11435 translate
- X144 144 0 72 240 288 0 LoutGraphic
- Xgsave
- X0 0 moveto xsize 0 lineto xsize ysize lineto
- X0 ysize lineto closepath
- X0.04 ft setlinewidth stroke
- Xgrestore
- X
- Xgrestore
- X
- X220 fnt13
- X2682 11162 moveto(ldots)s
- X240 fnt35
- X3433 11166 moveto(.)s 3565 x(.)s 3697 x(.)s
- X
- X220 fnt13
- X5488 11162 moveto(cdots)s
- X240 fnt33
- X6301 11159 moveto(\327)s 6433 x(\327)s 6565 x(\327)s
- X220 fnt13
- X8356 11162 moveto(vdots)s
- X
- X240 fnt33
- X9169 11254 moveto(\327)s 9169 11159 moveto(\327)s 9169 11064 moveto(\327)s
- X220 fnt13
- X2608 10874 moveto(ddots)s
- X240 fnt33
- X3433 10966 moveto(\327)s
- X3565 10871 moveto(\327)s 3697 10776 moveto(\327)s
- X220 fnt13
- X5721 10874 moveto(del)s
- X240 fnt33
- X6301 10871 moveto(\321)s
- X220 fnt13
- X8442 10874 moveto(grad)s
- X
- X240 fnt33
- X9169 10871 moveto(\321)s
- X220 fnt13
- X2962 10586 moveto(...)s
- X240 fnt33
- X3433 10583 moveto(\274)s
- X220 fnt13
- X5708 10586 moveto(,...,)s
- X240 fnt33
- X6301 10583 moveto(,)s
- X6404 x(\274)s 6644 x(,)s
- X220 fnt13
- X8528 10586 moveto(half)s
- X167 fnt33
- X9169 10673 moveto(1)s 9252 10602 moveto(\244)s
- X9279 10530 moveto(2)s
- X220 fnt13
- X2719 10298 moveto(third)s
- X167 fnt33
- X3433 10385 moveto(1)s 3516 10314 moveto(\244)s 3543 10242 moveto(3)s
- X
- X220 fnt13
- X5965 10298 moveto(')s
- X240 fnt33
- X6301 10295 moveto(\242)s
- X220 fnt13
- X8283 10298 moveto(empty)s
- X240 fnt33
- X9169 10295 moveto(\306)s
- X240 fnt34
- X1417 9789 moveto(Finally,)s
- X2214 x(here)s 2685 x(is)s 2904 x(the)s 3256 x(long)s 3742 x(list)s
- X4093 x(of)s 4352 x(full)s 4743 x(names)s 5414 x(from)s 5938 x(the)s
- X6290 x(Adobe)s 6989 x(Symbol)s 7794 x(font:)s
- X220 fnt13
- X2559 9283 moveto(space)s
- X240 fnt33
- X3433 9280 moveto( )s
- X
- X220 fnt13
- X5318 9283 moveto(exclam)s
- X240 fnt33
- X6301 9280 moveto(!)s
- X220 fnt13
- X8004 9283 moveto(universal)s
- X240 fnt33
- X9169 9280 moveto(")s
- X220 fnt13
- X1999 8995 moveto(numbersign)s
- X
- X240 fnt33
- X3433 8992 moveto(#)s
- X220 fnt13
- X5039 8995 moveto(existential)s
- X240 fnt33
- X6301 8992 moveto($)s
- X220 fnt13
- X8149 8995 moveto(percent)s
- X240 fnt33
- X9169 8992 moveto(%)s
- X
- X220 fnt13
- X2047 8707 moveto(ampersand)s
- X240 fnt33
- X3433 8704 moveto(&)s
- X220 fnt13
- X5183 8707 moveto(suchthat)s
- X240 fnt33
- X6301 8704 moveto(')s
- X220 fnt13
- X8028 8707 moveto(parenleft)s
- X
- X240 fnt33
- X9169 8704 moveto(\()s
- X220 fnt13
- X2158 8419 moveto(parenright)s
- X240 fnt33
- X3433 8416 moveto(\))s
- X220 fnt13
- X4769 8419 moveto(asteriskmath)s
- X240 fnt33
- X6301 8416 moveto(*)s
- X
- X220 fnt13
- X8479 8419 moveto(plus)s
- X240 fnt33
- X9169 8416 moveto(+)s
- X220 fnt13
- X2425 8131 moveto(comma)s
- X240 fnt33
- X3433 8128 moveto(,)s
- X220 fnt13
- X5428 8131 moveto(minus)s
- X
- X240 fnt33
- X6301 8128 moveto(-)s
- X220 fnt13
- X8272 8131 moveto(period)s
- X240 fnt33
- X9169 8128 moveto(.)s
- X220 fnt13
- X2633 7843 moveto(slash)s
- X240 fnt33
- X3433 7840 moveto(/)s
- X
- X220 fnt13
- X5586 7843 moveto(zero)s
- X240 fnt33
- X6301 7840 moveto(0)s
- X220 fnt13
- X8515 7843 moveto(one)s
- X240 fnt33
- X9169 7840 moveto(1)s
- X220 fnt13
- X2804 7555 moveto(two)s
- X
- X240 fnt33
- X3433 7552 moveto(2)s
- X220 fnt13
- X5513 7555 moveto(three)s
- X240 fnt33
- X6301 7552 moveto(3)s
- X220 fnt13
- X8503 7555 moveto(four)s
- X240 fnt33
- X9169 7552 moveto(4)s
- X
- X220 fnt13
- X2803 7267 moveto(\207ve)s
- X240 fnt33
- X3433 7264 moveto(5)s
- X220 fnt13
- X5745 7267 moveto(six)s
- X240 fnt33
- X6301 7264 moveto(6)s
- X220 fnt13
- X8295 7267 moveto(seven)s
- X
- X240 fnt33
- X9169 7264 moveto(7)s
- X220 fnt13
- X2670 6979 moveto(eight)s
- X240 fnt33
- X3433 6976 moveto(8)s
- X220 fnt13
- X5599 6979 moveto(nine)s
- X240 fnt33
- X6301 6976 moveto(9)s
- X
- X220 fnt13
- X8357 6979 moveto(colon)s
- X240 fnt33
- X9169 6976 moveto(:)s
- X220 fnt13
- X2158 6691 moveto(semicolon)s
- X240 fnt33
- X3433 6688 moveto(;)s
- X220 fnt13
- X5623 6691 moveto(less)s
- X
- X240 fnt33
- X6301 6688 moveto(<)s
- X220 fnt13
- X8345 6691 moveto(equal)s
- X240 fnt33
- X9169 6688 moveto(=)s
- X220 fnt13
- X2450 6403 moveto(greater)s
- X240 fnt33
- X3433 6400 moveto(>)s
- X
- X220 fnt13
- X5184 6403 moveto(question)s
- X240 fnt33
- X6301 6400 moveto(?)s
- X220 fnt13
- X7905 6403 moveto(congruent)s
- X240 fnt33
- X9169 6400 moveto(@)s
- X220 fnt13
- X2585 6115 moveto(Alpha)s
- X
- X240 fnt33
- X3433 6112 moveto(A)s
- X220 fnt13
- X5562 6115 moveto(Beta)s
- X240 fnt33
- X6301 6112 moveto(B)s
- X220 fnt13
- X8553 6115 moveto(Chi)s
- X240 fnt33
- X9169 6112 moveto(C)s
- X
- X220 fnt13
- X2634 5827 moveto(Delta)s
- X240 fnt33
- X3433 5824 moveto(D)s
- X220 fnt13
- X5295 5827 moveto(Epsilon)s
- X240 fnt33
- X6301 5824 moveto(E)s
- X220 fnt13
- X8565 5827 moveto(Phi)s
- X
- X240 fnt33
- X9169 5824 moveto(F)s
- X220 fnt13
- X2364 5539 moveto(Gamma)s
- X240 fnt33
- X3433 5536 moveto(G)s
- X220 fnt13
- X5684 5539 moveto(Eta)s
- X240 fnt33
- X6301 5536 moveto(H)s
- X
- X220 fnt13
- X8515 5539 moveto(Iota)s
- X240 fnt33
- X9169 5536 moveto(I)s
- X220 fnt13
- X2291 5251 moveto(thetaone)s
- X240 fnt33
- X3433 5248 moveto(J)s
- X220 fnt13
- X5379 5251 moveto(Kappa)s
- X
- X240 fnt33
- X6301 5248 moveto(K)s
- X220 fnt13
- X8088 5251 moveto(Lambda)s
- X240 fnt33
- X9169 5248 moveto(L)s
- X220 fnt13
- X2840 4963 moveto(Mu)s
- X240 fnt33
- X3433 4960 moveto(M)s
- X
- X220 fnt13
- X5733 4963 moveto(Nu)s
- X240 fnt33
- X6301 4960 moveto(N)s
- X220 fnt13
- X8052 4963 moveto(Omicron)s
- X240 fnt33
- X9169 4960 moveto(O)s
- X220 fnt13
- X2951 4675 moveto(Pi)s
- X
- X240 fnt33
- X3433 4672 moveto(P)s
- X220 fnt13
- X5452 4675 moveto(Theta)s
- X240 fnt33
- X6301 4672 moveto(Q)s
- X220 fnt13
- X8479 4675 moveto(Rho)s
- X240 fnt33
- X9169 4672 moveto(R)s
- X
- X220 fnt13
- X2524 4387 moveto(Sigma)s
- X240 fnt33
- X3433 4384 moveto(S)s
- X220 fnt13
- X5635 4387 moveto(Tau)s
- X240 fnt33
- X6301 4384 moveto(T)s
- X220 fnt13
- X8151 4387 moveto(Upsilon)s
- X
- X240 fnt33
- X9169 4384 moveto(U)s
- X220 fnt13
- X2194 4099 moveto(sigmaone)s
- X240 fnt33
- X3433 4096 moveto(V)s
- X220 fnt13
- X5293 4099 moveto(Omega)s
- X240 fnt33
- X6301 4096 moveto(W)s
- X
- X220 fnt13
- X8687 4099 moveto(Xi)s
- X240 fnt33
- X9169 4096 moveto(X)s
- X220 fnt13
- X2841 3811 moveto(Psi)s
- X240 fnt33
- X3433 3808 moveto(Y)s
- X220 fnt13
- X5574 3811 moveto(Zeta)s
- X
- X240 fnt33
- X6301 3808 moveto(Z)s
- X220 fnt13
- X7869 3811 moveto(bracketleft)s
- X240 fnt33
- X9169 3808 moveto([)s
- X220 fnt13
- X2267 3523 moveto(therefore)s
- X240 fnt33
- X3433 3520 moveto(\\)s
- X
- X220 fnt13
- X4867 3523 moveto(bracketright)s
- X240 fnt33
- X6301 3520 moveto(])s
- X220 fnt13
- X7553 3523 moveto(perpendicular)s
- X240 fnt33
- X9169 3520 moveto(^)s
- X220 fnt13
- X2047 3235 moveto(underscore)s
- X
- X240 fnt33
- X3433 3232 moveto(_)s
- X220 fnt13
- X5136 3235 moveto(radicalex)s
- X240 fnt33
- X6301 3232 moveto(`)s
- X220 fnt13
- X8345 3235 moveto(alpha)s
- X240 fnt33
- X9169 3232 moveto(a)s
- X
- X220 fnt13
- X2718 2947 moveto(beta)s
- X240 fnt33
- X3433 2944 moveto(b)s
- X220 fnt13
- X5733 2947 moveto(chi)s
- X240 fnt33
- X6301 2944 moveto(c)s
- X220 fnt13
- X8406 2947 moveto(delta)s
- X
- X240 fnt33
- X9169 2944 moveto(d)s
- X220 fnt13
- X2451 2659 moveto(epsilon)s
- X240 fnt33
- X3433 2656 moveto(e)s
- X220 fnt13
- X5721 2659 moveto(phi)s
- X240 fnt33
- X6301 2656 moveto(f)s
- X
- X220 fnt13
- X8149 2659 moveto(gamma)s
- X240 fnt33
- X9169 2656 moveto(g)s
- X220 fnt13
- X2840 2371 moveto(eta)s
- X240 fnt33
- X3433 2368 moveto(h)s
- X220 fnt13
- X5660 2371 moveto(iota)s
- X
- X240 fnt33
- X6301 2368 moveto(i)s
- X220 fnt13
- X8223 2371 moveto(phione)s
- X240 fnt33
- X9169 2368 moveto(j)s
- X220 fnt13
- X2547 2083 moveto(kappa)s
- X240 fnt33
- X3433 2080 moveto(k)s
- X
- X220 fnt13
- X5294 2083 moveto(lambda)s
- X240 fnt33
- X6301 2080 moveto(l)s
- X220 fnt13
- X8576 2083 moveto(mu)s
- X240 fnt33
- X9169 2080 moveto(m)s
- X220 fnt13
- X2901 1795 moveto(nu)s
- X
- X240 fnt33
- X3433 1792 moveto(n)s
- X220 fnt13
- X5233 1795 moveto(omicron)s
- X240 fnt33
- X6301 1792 moveto(o)s
- X220 fnt13
- X8711 1795 moveto(pi)s
- X240 fnt33
- X9169 1792 moveto(p)s
- X
- X220 fnt13
- X2657 1507 moveto(theta)s
- X240 fnt33
- X3433 1504 moveto(q)s
- X220 fnt13
- X5696 1507 moveto(rho)s
- X240 fnt33
- X6301 1504 moveto(r)s
- X220 fnt13
- X8296 1507 moveto(sigma)s
- X
- X240 fnt33
- X9169 1504 moveto(s)s
- Xpgsave restore
- Xshowpage
- X
- X%%Page: ? 13
- X%%BeginPageSetup
- X/pgsave save def
- X0.0500 dup scale 10 setlinewidth
- X%%EndPageSetup
- X
- X240 fnt34
- X5694 15261 moveto(-)s 5833 x(12)s 6133 x(-)s
- X220 fnt13
- X2840 14677 moveto(tau)s
- X240 fnt33
- X3433 14674 moveto(t)s
- X
- X220 fnt13
- X5319 14677 moveto(upsilon)s
- X240 fnt33
- X6301 14674 moveto(u)s
- X220 fnt13
- X7844 14677 moveto(omegaone)s
- X240 fnt33
- X9169 14674 moveto(v)s
- X220 fnt13
- X2474 14389 moveto(omega)s
- X
- X240 fnt33
- X3433 14386 moveto(w)s
- X220 fnt13
- X5855 14389 moveto(xi)s
- X240 fnt33
- X6301 14386 moveto(x)s
- X220 fnt13
- X8601 14389 moveto(psi)s
- X240 fnt33
- X9169 14386 moveto(y)s
- X
- X220 fnt13
- X2730 14101 moveto(zeta)s
- X240 fnt33
- X3433 14098 moveto(z)s
- X220 fnt13
- X5172 14101 moveto(braceleft)s
- X240 fnt33
- X6301 14098 moveto({)s
- X220 fnt13
- X8564 14101 moveto(bar)s
- X
- X240 fnt33
- X9169 14098 moveto(|)s
- X220 fnt13
- X2170 13813 moveto(braceright)s
- X240 fnt33
- X3433 13810 moveto(})s
- X220 fnt13
- X5381 13813 moveto(similar)s
- X240 fnt33
- X6301 13810 moveto(~)s
- X
- X220 fnt13
- X7785 13813 moveto(Upsilonone)s
- X240 fnt33
- X9169 13810 moveto(\241)s
- X220 fnt13
- X2487 13525 moveto(minute)s
- X240 fnt33
- X3433 13522 moveto(\242)s
- X220 fnt13
- X5087 13525 moveto(lessequal)s
- X
- X240 fnt33
- X6301 13522 moveto(\243)s
- X220 fnt13
- X8162 13525 moveto(fraction)s
- X240 fnt33
- X9169 13522 moveto(\244)s
- X220 fnt13
- X2524 13237 moveto(in\207nity)s
- X240 fnt33
- X3433 13234 moveto(\245)s
- X
- X220 fnt13
- X5538 13237 moveto(\210orin)s
- X240 fnt33
- X6301 13234 moveto(\246)s
- X220 fnt13
- X8479 13237 moveto(club)s
- X240 fnt33
- X9169 13234 moveto(\247)s
- X220 fnt13
- X2304 12949 moveto(diamond)s
- X
- X240 fnt33
- X3433 12946 moveto(\250)s
- X220 fnt13
- X5513 12949 moveto(heart)s
- X240 fnt33
- X6301 12946 moveto(\251)s
- X220 fnt13
- X8283 12949 moveto(spade)s
- X240 fnt33
- X9169 12946 moveto(\252)s
- X
- X220 fnt13
- X2170 12661 moveto(arrowboth)s
- X240 fnt33
- X3433 12658 moveto(\253)s
- X220 fnt13
- X5173 12661 moveto(arrowleft)s
- X240 fnt33
- X6301 12658 moveto(\254)s
- X220 fnt13
- X8089 12661 moveto(arrowup)s
- X
- X240 fnt33
- X9169 12658 moveto(\255)s
- X220 fnt13
- X2171 12373 moveto(arrowright)s
- X240 fnt33
- X3433 12370 moveto(\256)s
- X220 fnt13
- X4941 12373 moveto(arrowdown)s
- X240 fnt33
- X6301 12370 moveto(\257)s
- X
- X220 fnt13
- X8198 12373 moveto(degree)s
- X240 fnt33
- X9169 12370 moveto(\260)s
- X220 fnt13
- X2158 12085 moveto(plusminus)s
- X240 fnt33
- X3433 12082 moveto(\261)s
- X220 fnt13
- X5305 12085 moveto(second)s
- X
- X240 fnt33
- X6301 12082 moveto(\262)s
- X220 fnt13
- X7650 12085 moveto(greaterequal)s
- X240 fnt33
- X9169 12082 moveto(\263)s
- X220 fnt13
- X2403 11797 moveto(multiply)s
- X240 fnt33
- X3433 11794 moveto(\264)s
- X
- X220 fnt13
- X4856 11797 moveto(proportional)s
- X240 fnt33
- X6301 11794 moveto(\265)s
- X220 fnt13
- X7993 11797 moveto(partialdiff)s
- X240 fnt33
- X9169 11794 moveto(\266)s
- X220 fnt13
- X2622 11509 moveto(bullet)s
- X
- X240 fnt33
- X3433 11506 moveto(\267)s
- X220 fnt13
- X5441 11509 moveto(divide)s
- X240 fnt33
- X6301 11506 moveto(\270)s
- X220 fnt13
- X8040 11509 moveto(notequal)s
- X240 fnt33
- X9169 11506 moveto(\271)s
- X
- X220 fnt13
- X1975 11221 moveto(equivalence)s
- X240 fnt33
- X3433 11218 moveto(\272)s
- X220 fnt13
- X4806 11221 moveto(approxequal)s
- X240 fnt33
- X6301 11218 moveto(\273)s
- X220 fnt13
- X8225 11221 moveto(ellipsis)s
- X
- X240 fnt33
- X9169 11218 moveto(\274)s
- X220 fnt13
- X1999 10933 moveto(arrowvertex)s
- X240 fnt33
- X3433 10930 moveto(\275)s
- X220 fnt13
- X4758 10933 moveto(arrowhorizex)s
- X240 fnt33
- X6301 10930 moveto(\276)s
- X
- X220 fnt13
- X7516 10933 moveto(carriagereturn)s
- X240 fnt33
- X9169 10930 moveto(\277)s
- X220 fnt13
- X2609 10645 moveto(aleph)s
- X240 fnt33
- X3433 10642 moveto(\300)s
- X220 fnt13
- X5330 10645 moveto(Ifraktur)s
- X
- X240 fnt33
- X6301 10642 moveto(\301)s
- X220 fnt13
- X8101 10645 moveto(Rfraktur)s
- X240 fnt33
- X9169 10642 moveto(\302)s
- X220 fnt13
- X2036 10357 moveto(weierstrass)s
- X240 fnt33
- X3433 10354 moveto(\303)s
- X
- X220 fnt13
- X4760 10357 moveto(circlemultiply)s
- X240 fnt33
- X6301 10354 moveto(\304)s
- X220 fnt13
- X7968 10357 moveto(circleplus)s
- X240 fnt33
- X9169 10354 moveto(\305)s
- X220 fnt13
- X2254 10069 moveto(emptyset)s
- X
- X240 fnt33
- X3433 10066 moveto(\306)s
- X220 fnt13
- X4892 10069 moveto(intersection)s
- X240 fnt33
- X6301 10066 moveto(\307)s
- X220 fnt13
- X8345 10069 moveto(union)s
- X240 fnt33
- X9169 10066 moveto(\310)s
- X
- X220 fnt13
- X1669 9781 moveto(propersuperset)s
- X240 fnt33
- X3433 9778 moveto(\311)s
- X220 fnt13
- X4634 9781 moveto(re\210exsuperset)s
- X240 fnt33
- X6301 9778 moveto(\312)s
- X220 fnt13
- X7929 9781 moveto(notsubset)s
- X
- X240 fnt33
- X9169 9778 moveto(\313)s
- X220 fnt13
- X1864 9493 moveto(propersubset)s
- X240 fnt33
- X3433 9490 moveto(\314)s
- X220 fnt13
- X4829 9493 moveto(re\210exsubset)s
- X240 fnt33
- X6301 9490 moveto(\315)s
- X
- X220 fnt13
- X8101 9493 moveto(element)s
- X240 fnt33
- X9169 9490 moveto(\316)s
- X220 fnt13
- X2060 9205 moveto(notelement)s
- X240 fnt33
- X3433 9202 moveto(\317)s
- X220 fnt13
- X5477 9205 moveto(angle)s
- X
- X240 fnt33
- X6301 9202 moveto(\320)s
- X220 fnt13
- X8089 9205 moveto(gradient)s
- X240 fnt33
- X9169 9202 moveto(\321)s
- X220 fnt13
- X2000 8917 moveto(registerserif)s
- X240 fnt33
- X3433 8914 moveto(\322)s
- X
- X220 fnt13
- X4709 8917 moveto(copyrightserif)s
- X240 fnt33
- X6301 8914 moveto(\323)s
- X220 fnt13
- X7479 8917 moveto(trademarkserif)s
- X240 fnt33
- X9169 8914 moveto(\324)s
- X220 fnt13
- X2413 8629 moveto(product)s
- X
- X240 fnt33
- X3433 8626 moveto(\325)s
- X220 fnt13
- X5368 8629 moveto(radical)s
- X240 fnt33
- X6301 8626 moveto(\326)s
- X220 fnt13
- X8088 8629 moveto(dotmath)s
- X240 fnt33
- X9169 8626 moveto(\327)s
- X
- X220 fnt13
- X2220 8341 moveto(logicalnot)s
- X240 fnt33
- X3433 8338 moveto(\330)s
- X220 fnt13
- X5027 8341 moveto(logicaland)s
- X240 fnt33
- X6301 8338 moveto(\331)s
- X220 fnt13
- X8066 8341 moveto(logicalor)s
- X
- X240 fnt33
- X9169 8338 moveto(\332)s
- X220 fnt13
- X1878 8053 moveto(arrowdblboth)s
- X240 fnt33
- X3433 8050 moveto(\333)s
- X220 fnt13
- X4881 8053 moveto(arrowdblleft)s
- X240 fnt33
- X6301 8050 moveto(\334)s
- X
- X220 fnt13
- X7797 8053 moveto(arrowdblup)s
- X240 fnt33
- X9169 8050 moveto(\335)s
- X220 fnt13
- X1879 7765 moveto(arrowdblright)s
- X240 fnt33
- X3433 7762 moveto(\336)s
- X220 fnt13
- X4649 7765 moveto(arrowdbldown)s
- X
- X240 fnt33
- X6301 7762 moveto(\337)s
- X220 fnt13
- X8113 7765 moveto(lozenge)s
- X240 fnt33
- X9169 7762 moveto(\340)s
- X220 fnt13
- X2317 7477 moveto(angleleft)s
- X240 fnt33
- X3433 7474 moveto(\341)s
- X
- X220 fnt13
- X4818 7477 moveto(registersans)s
- X240 fnt33
- X6301 7474 moveto(\342)s
- X220 fnt13
- X7527 7477 moveto(copyrightsans)s
- X240 fnt33
- X9169 7474 moveto(\343)s
- X220 fnt13
- X1693 7189 moveto(trademarksans)s
- X
- X240 fnt33
- X3433 7186 moveto(\344)s
- X220 fnt13
- X4940 7189 moveto(summation)s
- X240 fnt33
- X6301 7186 moveto(\345)s
- X220 fnt13
- X7845 7189 moveto(parenlefttp)s
- X240 fnt33
- X9169 7186 moveto(\346)s
- X
- X220 fnt13
- X2060 6897 moveto(parenleftex)s
- X240 fnt33
- X3433 6894 moveto(\347)s
- X220 fnt13
- X4977 6897 moveto(parenleftbt)s
- X240 fnt33
- X6301 6894 moveto(\350)s
- X220 fnt13
- X7686 6897 moveto(bracketlefttp)s
- X
- X240 fnt33
- X9169 6894 moveto(\351)s
- X220 fnt13
- X1901 6605 moveto(bracketleftex)s
- X240 fnt33
- X3433 6602 moveto(\352)s
- X220 fnt13
- X4818 6605 moveto(bracketleftbt)s
- X240 fnt33
- X6301 6602 moveto(\353)s
- X
- X220 fnt13
- X7857 6605 moveto(bracelefttp)s
- X240 fnt33
- X9169 6602 moveto(\354)s
- X220 fnt13
- X1951 6317 moveto(braceleftmid)s
- X240 fnt33
- X3433 6314 moveto(\355)s
- X220 fnt13
- X4989 6317 moveto(braceleftbt)s
- X
- X240 fnt33
- X6301 6314 moveto(\356)s
- X220 fnt13
- X8100 6317 moveto(braceex)s
- X240 fnt33
- X9169 6314 moveto(\357)s
- X220 fnt13
- X2183 6029 moveto(angleright)s
- X240 fnt33
- X3433 6026 moveto(\361)s
- X
- X220 fnt13
- X5295 6029 moveto(integral)s
- X240 fnt33
- X6301 6026 moveto(\362)s
- X220 fnt13
- X7980 6029 moveto(integraltp)s
- X240 fnt33
- X9169 6026 moveto(\363)s
- X220 fnt13
- X2195 5741 moveto(integralex)s
- X
- X240 fnt33
- X3433 5738 moveto(\364)s
- X220 fnt13
- X5112 5741 moveto(integralbt)s
- X240 fnt33
- X6301 5738 moveto(\365)s
- X220 fnt13
- X7711 5741 moveto(parenrighttp)s
- X240 fnt33
- X9169 5738 moveto(\366)s
- X
- X220 fnt13
- X1926 5449 moveto(parenrightex)s
- X240 fnt33
- X3433 5446 moveto(\367)s
- X220 fnt13
- X4843 5449 moveto(parenrightbt)s
- X240 fnt33
- X6301 5446 moveto(\370)s
- X220 fnt13
- X7552 5449 moveto(bracketrighttp)s
- X
- X240 fnt33
- X9169 5446 moveto(\371)s
- X220 fnt13
- X1767 5157 moveto(bracketrightex)s
- X240 fnt33
- X3433 5154 moveto(\372)s
- X220 fnt13
- X4684 5157 moveto(bracketrightbt)s
- X240 fnt33
- X6301 5154 moveto(\373)s
- X
- X220 fnt13
- X7723 5157 moveto(bracerighttp)s
- X240 fnt33
- X9169 5154 moveto(\374)s
- X220 fnt13
- X1817 4869 moveto(bracerightmid)s
- X240 fnt33
- X3433 4866 moveto(\375)s
- X220 fnt13
- X4855 4869 moveto(bracerightbt)s
- X
- X240 fnt33
- X6301 4866 moveto(\376)s
- X240 fnt34
- X1417 4370 moveto(The)s 1835 x(names)s 2492 x(given)s 3070 x(are)s
- X3407 x(the)s 3745 x(same)s 4282 x(as)s 4527 x(Adobe's)s 5384 x(except)s
- X6054 x(in)s 6286 x(a)s 6438 x(few)s 6842 x(places)s 7485 x(where)s
- X8115 x(the)s 8453 x(Adobe)s 9138 x(name)s 9702 x(contains)s 1417 4082 moveto(a)s
- X1583 x(digit,)s 2141 x(which)s 2786 x(is)s 3005 x(not)s 3371 x(possible)s
- X4215 x(in)s 4461 x(Lout.)s
- Xpgsave restore
- Xshowpage
- X
- X%%Page: ? 14
- X%%BeginPageSetup
- X/pgsave save def
- X0.0500 dup scale 10 setlinewidth
- X%%EndPageSetup
- X
- X240 fnt34
- X5694 15261 moveto(-)s 5833 x(13)s 6133 x(-)s
- X240 fnt36
- X1417 14667 moveto(Appendix)s 2474 x(A.)s
- X2827 x(Pas)s 3246 x(\211)s 3426 x(a)s 3606 x(Lout)s 4158 x(Package)s
- X5069 x(for)s 5434 x(Printing)s 6343 x(Pascal)s 7054 x(Programs)s
- X240 fnt34
- X1897 14190 moveto(Pas)s
- X2330 x(is)s 2590 x(a)s 2797 x(package)s 3682 x(of)s 3982 x(de\207nitions)s
- X5093 x(for)s 5472 x(printing)s 6330 x(Pascal)s 7041 x(programs)s 8045 x([)s
- X8124 x(2)s 8244 x(])s 8424 x(neatly)s 9109 x(with)s 9635 x(the)s
- X10028 x(Lout)s 1417 13902 moveto(document)s 2450 x(formatter)s 3426 x([)s 3505 x(4)s
- X3625 x(].)s 3913 x(No)s 4295 x(attempt)s 5100 x(is)s 5348 x(made)s
- X5955 x(to)s 6230 x(follow)s 6943 x(any)s 7378 x(particular)s 8381 x(printing)s
- X9227 x(standard;)s 10192 x(the)s 1417 13614 moveto(design)s 2102 x(simply)s 2813 x(re\210ects)s
- X3562 x(the)s 3914 x(author's)s 4757 x(taste.)s 1897 13240 moveto(The)s 2375 x(package)s
- X3265 x(is)s 3530 x(so)s 3849 x(simple)s 4592 x(that)s 5056 x(there)s
- X5639 x(is)s 5904 x(very)s 6435 x(little)s 6977 x(to)s 7269 x(say)s
- X7694 x(about)s 8332 x(it.)s 8690 x(To)s 9062 x(use)s 9487 x(Pas,)s
- X9985 x(place)s
- X220 fnt13
- X1417 12948 moveto(@SysInclude { pas })s
- X240 fnt34
- X3463 12952 moveto(in)s 3716 x(the)s 4075 x(setup)s
- X4647 x(\207le,)s 5079 x(or)s 5345 x(type)s
- X220 fnt13
- X5824 12948 moveto(-ipas)s
- X240 fnt34
- X6366 12952 moveto(in)s
- X6619 x(the)s 6978 x(command)s 7989 x(line.)s 8534 x(A)s 8774 x(Pascal)s
- X9451 x(program)s 10328 x(is)s 1417 12664 moveto(entered)s 2182 x(like)s 2602 x(this,)s
- X3069 x(where)s 3715 x(the)s
- X220 fnt13
- X4069 12660 moveto(@ID)s
- X240 fnt34
- X4573 12664 moveto(symbol)s 5340 x(from)s
- X5866 x(the)s 6220 x(DocumentLayout)s 7957 x(package)s 8803 x([)s 8882 x(5)s
- X9002 x(])s 9143 x(has)s 9524 x(been)s 10038 x(used)s 1417 12376 moveto(to)s
- X1663 x(obtain)s 2321 x(an)s 2607 x(indented)s 3491 x(display:)s
- X220 fnt13
- X1897 11875 moveto(@ID @Pas {)s
- X1897 11587 moveto(procedure PriDelete\(x: PriEntry; var Q: PriorityQueue\);)s 1897 11299 moveto( var i: integer;)s 1897 11011 moveto(begin)s 1897 10723 moveto( with Q^ do begin)s 1897 10435 moveto( size := size - 1;)s
- X1897 10147 moveto( if x^.back <= size then)s 1897 9859 moveto( begin)s 1897 9571 moveto( i := x^.back;)s 1897 9283 moveto( A[i] := A[size + 1];)s 1897 8995 moveto( A[i]^.back := i;)s
- X1897 8707 moveto( PriAddRoot\(i, Q\);)s 1897 8419 moveto( PriAddLeaf\(i, Q\))s 1897 8131 moveto( end)s 1897 7843 moveto( end)s 1897 7555 moveto(end;)s
- X1897 7267 moveto(})s
- X240 fnt34
- X1417 6770 moveto(The)s 1849 x(result)s 2439 x(will)s 2870 x(come)s
- X3448 x(out)s 3814 x(like)s 4232 x(this:)s
- X240 fnt36
- X1897 6313 moveto(procedure)s
- X240 fnt35
- X3006 6315 moveto(PriDelete)s
- X
- X240 fnt34
- X3934 x(\()s
- X240 fnt35
- X4013 x(x)s
- X240 fnt34
- X4119 x(:)s
- X240 fnt35
- X4245 x(PriEntry)s
- X240 fnt34
- X5081 x(;)s
- X
- X240 fnt36
- X5207 6313 moveto(var)s
- X240 fnt35
- X5613 6315 moveto(Q)s
- X240 fnt34
- X5786 x(:)s
- X240 fnt35
- X5912 x(PriorityQueue)s
- X240 fnt34
- X7293 x(\);)s
- X
- X240 fnt36
- X2137 6025 moveto(var)s
- X240 fnt35
- X2543 6027 moveto(i)s
- X240 fnt34
- X2609 x(:)s
- X240 fnt35
- X2735 x(integer)s
- X240 fnt34
- X3412 x(;)s
- X
- X240 fnt36
- X1897 5737 moveto(begin)s 2137 5449 moveto(with)s
- X240 fnt35
- X2648 5451 moveto(Q)s
- X192 fnt33
- X2821 5456 moveto(\255)s
- X240 fnt36
- X2996 5449 moveto(do)s
- X3309 x(begin)s
- X240 fnt35
- X2377 5163 moveto(size)s
- X240 fnt34
- X2795 x(:)s
- X240 fnt33
- X2861 5149 moveto(=)s
- X240 fnt35
- X3052 5163 moveto(size)s
- X
- X240 fnt33
- X3470 5156 moveto(-)s
- X240 fnt34
- X3661 5163 moveto(1;)s
- X240 fnt36
- X2377 4873 moveto(if)s
- X240 fnt35
- X2582 4875 moveto(x)s
- X192 fnt33
- X2688 4880 moveto(\255)s
- X
- X240 fnt34
- X2803 4875 moveto(.)s
- X240 fnt35
- X2863 x(back)s
- X240 fnt33
- X3375 4868 moveto(\243)s
- X240 fnt35
- X3566 4875 moveto(size)s
- X240 fnt36
- X3984 4873 moveto(then)s
- X2377 4585 moveto(begin)s
- X240 fnt35
- X2617 4299 moveto(i)s
- X240 fnt34
- X2743 x(:)s
- X240 fnt33
- X2809 4285 moveto(=)s
- X240 fnt35
- X3000 4299 moveto(x)s
- X
- X192 fnt33
- X3106 4304 moveto(\255)s
- X240 fnt34
- X3221 4299 moveto(.)s
- X240 fnt35
- X3281 x(back)s
- X240 fnt34
- X3733 x(;)s
- X240 fnt35
- X2617 4011 moveto(A)s
- X
- X240 fnt34
- X2763 x([)s
- X240 fnt35
- X2842 x(i)s
- X240 fnt34
- X2908 x(])s 3047 x(:)s
- X240 fnt33
- X3113 3997 moveto(=)s
- X
- X240 fnt35
- X3304 4011 moveto(A)s
- X240 fnt34
- X3450 x([)s
- X240 fnt35
- X3529 x(size)s
- X240 fnt33
- X3947 4004 moveto(+)s
- X240 fnt34
- X4138 4011 moveto(1];)s
- X
- X240 fnt35
- X2617 3723 moveto(A)s
- X240 fnt34
- X2763 x([)s
- X240 fnt35
- X2842 x(i)s
- X240 fnt34
- X2908 x(])s
- X192 fnt33
- X2987 3728 moveto(\255)s
- X
- X240 fnt34
- X3102 3723 moveto(.)s
- X240 fnt35
- X3162 x(back)s
- X240 fnt34
- X3674 x(:)s
- X240 fnt33
- X3740 3709 moveto(=)s
- X240 fnt35
- X3931 3723 moveto(i)s
- X
- X240 fnt34
- X3997 x(;)s
- X240 fnt35
- X2617 3435 moveto(PriAddRoot)s
- X240 fnt34
- X3760 x(\()s
- X240 fnt35
- X3839 x(i)s
- X240 fnt34
- X3905 x(,)s
- X
- X240 fnt35
- X4025 x(Q)s
- X240 fnt34
- X4198 x(\);)s
- X240 fnt35
- X2617 3147 moveto(PriAddLeaf)s
- X240 fnt34
- X3733 x(\()s
- X240 fnt35
- X3812 x(i)s
- X
- X240 fnt34
- X3878 x(,)s
- X240 fnt35
- X3998 x(Q)s
- X240 fnt34
- X4171 x(\))s
- X240 fnt36
- X2377 2857 moveto(end)s 2137 2569 moveto(end)s
- X1897 2281 moveto(end)s
- X240 fnt34
- X2269 2283 moveto(;)s 1417 1798 moveto(Blank)s 2032 x(lines,)s 2586 x(line)s
- X2987 x(breaks,)s 3714 x(indents)s 4448 x(and)s 4837 x(spaces)s 5504 x(in)s
- X5733 x(the)s 6068 x(input)s 6603 x(are)s 6937 x(respected,)s 7942 x(with)s
- X8410 x(a)s 8559 x(tab)s 8894 x(being)s 9469 x(considered)s 1417 1510 moveto(equal)s
- X1999 x(to)s 2249 x(eight)s 2791 x(spaces.)s
- X220 fnt13
- X3599 1506 moveto(@Pas)s
- X240 fnt34
- X4264 1510 moveto(can)s
- X4660 x(also)s 5109 x(be)s 5399 x(used)s 5902 x(within)s 6577 x(a)s
- X6747 x(paragraph)s 7767 x(to)s 8017 x(produce)s 8852 x(Pascal)s 9526 x(fragments)s
- X
- Xpgsave restore
- Xshowpage
- X
- X%%Page: ? 15
- X%%BeginPageSetup
- X/pgsave save def
- X0.0500 dup scale 10 setlinewidth
- X%%EndPageSetup
- X
- X240 fnt34
- X5694 15261 moveto(-)s 5833 x(14)s 6133 x(-)s 1417 14674 moveto(like)s
- X240 fnt35
- X1835 x(A)s
- X
- X240 fnt34
- X1981 x([)s
- X240 fnt35
- X2060 x(i)s
- X240 fnt34
- X2126 x(..)s
- X240 fnt35
- X2246 x(j)s
- X240 fnt34
- X2312 x(])s
- X2391 x(.)s 2571 x(Use)s
- X220 fnt13
- X3003 14670 moveto(@OneCol @Pas { ... })s
- X240 fnt34
- X5203 14674 moveto(to)s 5449 x(prevent)s
- X6226 x(the)s 6578 x(result)s 7168 x(from)s 7692 x(breaking)s 8589 x(over)s
- X9074 x(two)s 9493 x(lines.)s
- X220 fnt13
- X1897 14296 moveto(@Pas)s
- X240 fnt34
- X2558 14300 moveto(does)s 3057 x(not)s
- X3423 x(attempt)s 4199 x(to)s 4445 x(rearrange)s 5406 x(the)s 5758 x(program)s
- X6628 x(in)s 6874 x(any)s 7280 x(way.)s 7859 x(Each)s 8397 x(item)s
- X8881 x(is)s 9100 x(simply)s 9811 x(printed)s 1417 14012 moveto(according)s 2420 x(to)s
- X2666 x(the)s 3018 x(following)s 4008 x(plan:)s
- X220 fnt13
- X1897 13507 moveto(and)s
- X240 fnt36
- X3314 13509 moveto(and)s
- X
- X220 fnt13
- X1897 13219 moveto(array)s
- X240 fnt36
- X3314 13221 moveto(array)s
- X220 fnt13
- X1897 12931 moveto(begin)s
- X240 fnt36
- X3314 12933 moveto(begin)s
- X220 fnt13
- X1897 12643 moveto(case)s
- X
- X240 fnt36
- X3314 12645 moveto(case)s
- X220 fnt13
- X1897 12355 moveto(const)s
- X240 fnt36
- X3314 12357 moveto(const)s
- X220 fnt13
- X1897 12067 moveto(div)s
- X240 fnt36
- X3314 12069 moveto(div)s
- X
- X220 fnt13
- X1897 11779 moveto(do)s
- X240 fnt36
- X3314 11781 moveto(do)s
- X220 fnt13
- X1897 11491 moveto(downto)s
- X240 fnt36
- X3314 11493 moveto(downto)s
- X220 fnt13
- X1897 11203 moveto(else)s
- X
- X240 fnt36
- X3314 11205 moveto(else)s
- X220 fnt13
- X1897 10915 moveto(end)s
- X240 fnt36
- X3314 10917 moveto(end)s
- X220 fnt13
- X1897 10627 moveto(\207le)s
- X240 fnt36
- X3314 10629 moveto(\207le)s
- X
- X220 fnt13
- X1897 10339 moveto(for)s
- X240 fnt36
- X3314 10341 moveto(for)s
- X220 fnt13
- X1897 10051 moveto(forward)s
- X240 fnt36
- X3314 10053 moveto(forward)s
- X220 fnt13
- X1897 9763 moveto(function)s
- X
- X240 fnt36
- X3314 9765 moveto(function)s
- X220 fnt13
- X1897 9475 moveto(goto)s
- X240 fnt36
- X3314 9477 moveto(goto)s
- X220 fnt13
- X1897 9187 moveto(if)s
- X240 fnt36
- X3314 9189 moveto(if)s
- X
- X220 fnt13
- X1897 8899 moveto(in)s
- X240 fnt36
- X3314 8901 moveto(in)s
- X220 fnt13
- X1897 8611 moveto(label)s
- X240 fnt36
- X3314 8613 moveto(label)s
- X220 fnt13
- X1897 8323 moveto(mod)s
- X
- X240 fnt36
- X3314 8325 moveto(mod)s
- X220 fnt13
- X1897 8035 moveto(nil)s
- X240 fnt36
- X3314 8037 moveto(nil)s
- X220 fnt13
- X1897 7747 moveto(not)s
- X240 fnt36
- X3314 7749 moveto(not)s
- X
- X220 fnt13
- X1897 7459 moveto(of)s
- X240 fnt36
- X3314 7461 moveto(of)s
- X220 fnt13
- X1897 7171 moveto(or)s
- X240 fnt36
- X3314 7173 moveto(or)s
- X220 fnt13
- X1897 6883 moveto(otherwise)s
- X
- X240 fnt36
- X3314 6885 moveto(otherwise)s
- X220 fnt13
- X1897 6595 moveto(packed)s
- X240 fnt36
- X3314 6597 moveto(packed)s
- X220 fnt13
- X1897 6307 moveto(procedure)s
- X240 fnt36
- X3314 6309 moveto(procedure)s
- X
- X220 fnt13
- X1897 6019 moveto(program)s
- X240 fnt36
- X3314 6021 moveto(program)s
- X220 fnt13
- X1897 5731 moveto(record)s
- X240 fnt36
- X3314 5733 moveto(record)s
- X220 fnt13
- X1897 5443 moveto(repeat)s
- X
- X240 fnt36
- X3314 5445 moveto(repeat)s
- X220 fnt13
- X1897 5155 moveto(set)s
- X240 fnt36
- X3314 5157 moveto(set)s
- X220 fnt13
- X1897 4867 moveto(then)s
- X240 fnt36
- X3314 4869 moveto(then)s
- X
- X220 fnt13
- X1897 4579 moveto(to)s
- X240 fnt36
- X3314 4581 moveto(to)s
- X220 fnt13
- X1897 4291 moveto(type)s
- X240 fnt36
- X3314 4293 moveto(type)s
- X220 fnt13
- X1897 4003 moveto(until)s
- X
- X240 fnt36
- X3314 4005 moveto(until)s
- X220 fnt13
- X1897 3715 moveto(var)s
- X240 fnt36
- X3314 3717 moveto(var)s
- X220 fnt13
- X1897 3427 moveto(while)s
- X240 fnt36
- X3314 3429 moveto(while)s
- X
- X220 fnt13
- X1897 3139 moveto(with)s
- X240 fnt36
- X3314 3141 moveto(with)s
- X220 fnt13
- X5866 13507 moveto(0)s
- X240 fnt34
- X7283 13511 moveto(0)s
- X220 fnt13
- X5866 13219 moveto(1)s
- X
- X240 fnt34
- X7283 13223 moveto(1)s
- X220 fnt13
- X5866 12931 moveto(2)s
- X240 fnt34
- X7283 12935 moveto(2)s
- X220 fnt13
- X5866 12643 moveto(3)s
- X240 fnt34
- X7283 12647 moveto(3)s
- X
- X220 fnt13
- X5866 12355 moveto(4)s
- X240 fnt34
- X7283 12359 moveto(4)s
- X220 fnt13
- X5866 12067 moveto(5)s
- X240 fnt34
- X7283 12071 moveto(5)s
- X220 fnt13
- X5866 11779 moveto(6)s
- X
- X240 fnt34
- X7283 11783 moveto(6)s
- X220 fnt13
- X5866 11491 moveto(7)s
- X240 fnt34
- X7283 11495 moveto(7)s
- X220 fnt13
- X5866 11203 moveto(8)s
- X240 fnt34
- X7283 11207 moveto(8)s
- X
- X220 fnt13
- X5866 10915 moveto(9)s
- X240 fnt34
- X7283 10919 moveto(9)s
- X220 fnt13
- X5866 10627 moveto(.)s
- X240 fnt34
- X7283 10631 moveto(.)s
- X220 fnt13
- X5866 10339 moveto(,)s
- X
- X240 fnt34
- X7283 10343 moveto(,)s
- X220 fnt13
- X5866 10051 moveto(:)s
- X240 fnt34
- X7283 10055 moveto(:)s
- X220 fnt13
- X5866 9763 moveto(;)s
- X240 fnt34
- X7283 9767 moveto(;)s
- X
- X220 fnt13
- X5866 9475 moveto(')s
- X240 fnt34
- X7283 9479 moveto(')s
- X220 fnt13
- X5866 9187 moveto(`)s
- X240 fnt34
- X7283 9191 moveto(`)s
- X220 fnt13
- X5866 8899 moveto(+)s
- X
- X240 fnt33
- X7283 8896 moveto(+)s
- X220 fnt13
- X5866 8611 moveto(-)s
- X240 fnt33
- X7283 8608 moveto(-)s
- X220 fnt13
- X5866 8323 moveto(*)s
- X240 fnt33
- X7283 8320 moveto(*)s
- X
- X220 fnt13
- X5866 8035 moveto(/)s
- X240 fnt34
- X7283 8039 moveto(\217)s
- X220 fnt13
- X5866 7747 moveto(\()s
- X240 fnt34
- X7283 7751 moveto(\()s
- X220 fnt13
- X5866 7459 moveto(\))s
- X
- X240 fnt34
- X7283 7463 moveto(\))s
- X220 fnt13
- X5866 7171 moveto([)s
- X240 fnt34
- X7283 7175 moveto([)s
- X220 fnt13
- X5866 6883 moveto(])s
- X240 fnt34
- X7283 6887 moveto(])s
- X
- X220 fnt13
- X5866 6595 moveto(^)s
- X192 fnt33
- X7283 6604 moveto(\255)s
- X220 fnt13
- X5866 6307 moveto(..)s
- X240 fnt34
- X7283 6311 moveto(..)s
- X220 fnt13
- X5866 6019 moveto(=)s
- X
- X240 fnt33
- X7283 6016 moveto(=)s
- X220 fnt13
- X5866 5731 moveto(<)s
- X240 fnt33
- X7283 5728 moveto(<)s
- X220 fnt13
- X5866 5443 moveto(>)s
- X240 fnt33
- X7283 5440 moveto(>)s
- X
- X220 fnt13
- X5866 5155 moveto(<>)s
- X240 fnt33
- X7283 5152 moveto(\271)s
- X220 fnt13
- X5866 4867 moveto(<=)s
- X240 fnt33
- X7283 4864 moveto(\243)s
- X220 fnt13
- X5866 4579 moveto(>=)s
- X
- X240 fnt33
- X7283 4576 moveto(\263)s
- X220 fnt13
- X5866 4291 moveto(:=)s
- X240 fnt34
- X7283 4295 moveto(:)s
- X240 fnt33
- X7349 4281 moveto(=)s
- X240 fnt34
- X1417 2684 moveto(Anything)s
- X2382 x(not)s 2748 x(mentioned)s 3818 x(here)s 4289 x(will)s 4720 x(appear)s
- X5417 x(in)s 5663 x(italic)s 6199 x(font.)s 1897 2310 moveto(Pascal)s 2592 x(character)s
- X3551 x(strings)s 4273 x(need)s 4810 x(a)s 5001 x(little)s 5522 x(attention)s
- X6443 x(before)s 7138 x(formatting)s 8231 x(by)s 8556 x(Pas.)s 9093 x(Their)s
- X9695 x(interiors)s 1417 2022 moveto(are)s 1775 x(best)s 2227 x(enclosed)s 3131 x(in)s
- X3384 x(double)s 4103 x(quotes)s 4795 x(to)s 5048 x(prevent)s 5832 x(the)s
- X6191 x(above)s 6830 x(transformations)s 8396 x(from)s 8927 x(occurring)s 9910 x(inside)s
- X1417 1734 moveto(them.)s 2076 x(Any)s
- X220 fnt13
- X2550 1730 moveto(\\)s
- X240 fnt34
- X2672 1734 moveto(or)s
- X220 fnt13
- X2932 1730 moveto(")s
- X
- X240 fnt34
- X3071 1734 moveto(characters)s 4099 x(inside)s 4731 x(strings)s 5429 x(will)s 5861 x(need)s
- X6374 x(to)s 6621 x(be)s 6908 x(replaced)s 7778 x(by)s
- X220 fnt13
- X8079 1730 moveto(\\\\)s
- X
- X240 fnt34
- X8262 1734 moveto(and)s
- X220 fnt13
- X8669 1730 moveto(\\")s
- X240 fnt34
- X8869 1734 moveto(respectively,)s 10144 x(and)s
- Xpgsave restore
- Xshowpage
- X
- X%%Page: ? 16
- X%%BeginPageSetup
- X/pgsave save def
- X0.0500 dup scale 10 setlinewidth
- X%%EndPageSetup
- X
- X240 fnt34
- X5694 15258 moveto(-)s 5833 x(15)s 6133 x(-)s 1417 14667 moveto(the)s 1769 x(opening)s
- X2601 x(quote)s 3193 x(should)s 3892 x(be)s 4178 x(replaced)s 5047 x(by)s
- X
- X220 fnt13
- X5347 14663 moveto(`)s
- X240 fnt34
- X5395 14667 moveto(.)s 1897 14293 moveto(Similar)s 2672 x(remarks)s 3514 x(apply)s
- X4119 x(to)s 4378 x(Pascal)s 5061 x(comments;)s 6183 x(don't)s 6761 x(forget)s
- X7404 x(that)s
- X220 fnt13
- X7835 14289 moveto({)s
- X240 fnt34
- X7981 14293 moveto(and)s
- X220 fnt13
- X8400 14289 moveto(})s
- X240 fnt34
- X8546 14293 moveto(must)s
- X9084 x(be)s 9383 x(enclosed)s 10293 x(in)s 1417 14005 moveto(double)s 2123 x(quotes.)s
- X2922 x(Alternatively,)s 4296 x(a)s
- X220 fnt13
- X4456 14001 moveto(@Com)s
- X240 fnt34
- X5196 14005 moveto(symbol)s 5955 x(can)s
- X6341 x(be)s 6621 x(placed)s 7299 x(in)s 7539 x(front)s 8057 x(of)s
- X8310 x(a)s 8470 x(comment)s 9414 x(enclosed)s 10305 x(in)s 1417 13717 moveto(braces.)s
- X2207 x(It)s 2412 x(will)s 2843 x(add)s 3249 x(literal)s 3864 x(braces:)s
- X
- X220 fnt13
- X1897 13263 moveto(@Com { A Pascal comment })s
- X240 fnt34
- X1417 12766 moveto(has)s 1796 x(result)s 1897 12312 moveto({)s
- X240 fnt35
- X2072 x(A)s
- X2278 x(Pascal)s 2989 x(comment)s
- X240 fnt34
- X3913 x(})s 1417 11822 moveto(It)s 1622 x(may)s
- X2094 x(still)s 2511 x(be)s 2797 x(necessary)s 3786 x(to)s 4032 x(enclose)s
- X4809 x(the)s 5161 x(interior)s 5923 x(in)s 6169 x(double)s 6881 x(quotes.)s
- X
- X240 fnt36
- X1417 11029 moveto(References)s
- X240 fnt34
- X1417 10574 moveto(1.)s 1897 x(Adobe)s 2716 x(Systems,)s 3753 x(Inc.)s
- X4118 x(,)s
- X240 fnt35
- X4418 x(PostScript)s 5594 x(Language)s 6733 x(Reference)s 7868 x(Manual,)s
- X8853 x(Second)s 9725 x(Edition)s
- X240 fnt34
- X10429 x(.)s 1897 10286 moveto(Addison-Wesley)s 3505 x(,)s
- X3625 x(1990)s 4105 x(.)s 1417 9782 moveto(2.)s 1897 x(Jensen,)s 2655 x(K.)s
- X2948 x(and)s 3354 x(Wirth,)s 4031 x(N.)s 4264 x(,)s
- X240 fnt35
- X4444 x(Pascal)s
- X5155 x(User)s 5680 x(Manual)s 6485 x(and)s 6905 x(Report)s
- X240 fnt34
- X7556 x(.)s
- X7736 x(Springer-Verlag)s 9288 x(,)s 9408 x(1975)s 9888 x(.)s 1417 9280 moveto(3.)s
- X1897 x(Kernighan,)s 3069 x(Brian)s 3702 x(W.)s 4090 x(and)s 4538 x(Cherry,)s
- X5364 x(Lorinda)s 6223 x(L.)s 6429 x(,)s 6651 x(A)s 6926 x(system)s
- X7692 x(for)s 8072 x(typesetting)s 9223 x(mathematics)s 10430 x(.)s
- X240 fnt35
- X1897 8992 moveto(Communications)s
- X3580 x(of)s 3826 x(the)s 4178 x(ACM)s
- X240 fnt36
- X4743 8990 moveto(18)s
- X240 fnt34
- X4983 8992 moveto(,)s
- X5103 x(182\211193)s 6003 x(\()s 6082 x(1975)s 6562 x(\).)s 1417 8491 moveto(4.)s
- X1897 x(Kingston,)s 2940 x(Jeffrey)s 3707 x(H.)s 3940 x(,)s
- X240 fnt35
- X4165 x(Document)s
- X5254 x(Formatting)s 6449 x(with)s 6966 x(Lout)s 7510 x(\(Second)s 8386 x(Edition\))s
- X
- X240 fnt34
- X9169 x(.)s 9394 x(Tech.)s 10037 x(Rep.)s 1897 8203 moveto(449)s 2345 x(\()s
- X2424 x(1992)s 2904 x(\),)s 3131 x(Basser)s 3856 x(Department)s 5072 x(of)s
- X5359 x(Computer)s 6404 x(Science)s 7235 x(F09,)s 7756 x(University)s 8853 x(of)s
- X9140 x(Sydney)s 9947 x(2006,)s 1897 7915 moveto(Australia)s 2772 x(.)s 1417 7459 moveto(5.)s
- X1897 x(Kingston,)s 2961 x(Jeffrey)s 3749 x(H.)s 3982 x(,)s
- X240 fnt35
- X4228 x(A)s
- X4500 x(beginners')s 5649 x(guide)s 6307 x(to)s 6619 x(Lout)s
- X240 fnt34
- X7058 x(.)s
- X7304 x(Tech.)s 7968 x(Rep.)s 8540 x(450)s 9026 x(\()s 9105 x(1992)s
- X9585 x(\),)s 9850 x(Basser)s 1897 7171 moveto(Department)s 3085 x(of)s 3344 x(Computer)s
- X4361 x(Science)s 5164 x(F09,)s 5657 x(University)s 6726 x(of)s 6985 x(Sydney)s
- X7764 x(2006,)s 8364 x(Australia)s 9239 x(.)s 1417 6668 moveto(6.)s 1897 x(Knuth,)s
- X2616 x(Donald)s 3381 x(E.)s 3587 x(,)s
- X240 fnt35
- X3767 x(The)s 4186 x(T)s
- X4319 6620 moveto(E)s 4465 6668 moveto(XBook)s
- X240 fnt34
- X5103 x(.)s 5283 x(Addison-Wesley)s 6891 x(,)s
- X7011 x(1984)s 7491 x(.)s
- Xpgsave restore
- Xshowpage
- X%%Trailer
- X%%DocumentNeededResources: font Helvetica
- X%%+ font Symbol
- X%%+ font Times-Roman
- X%%+ font Times-Italic
- X%%+ font Times-Bold
- X%%Pages: 16
- X%%EOF
- END_OF_FILE
- if test 42604 -ne `wc -c <'doc/tr.eq/outfile.ps.C'`; then
- echo shar: \"'doc/tr.eq/outfile.ps.C'\" unpacked with wrong size!
- elif test -f 'doc/tr.eq/outfile.ps.A' && test -f 'doc/tr.eq/outfile.ps.B'; then
- echo shar: Combining \"'doc/tr.eq/outfile.ps'\" \(148033 characters\)
- cat 'doc/tr.eq/outfile.ps.A' 'doc/tr.eq/outfile.ps.B' 'doc/tr.eq/outfile.ps.C' > 'doc/tr.eq/outfile.ps'
- if test 148033 -ne `wc -c <'doc/tr.eq/outfile.ps'`; then
- echo shar: \"'doc/tr.eq/outfile.ps'\" combined with wrong size!
- else
- rm doc/tr.eq/outfile.ps.A doc/tr.eq/outfile.ps.B doc/tr.eq/outfile.ps.C
- fi
- fi
- # end of 'doc/tr.eq/outfile.ps.C'
- fi
- if test -f 'z22.c' -a "${1}" != "-c" ; then
- echo shar: Will not clobber existing file \"'z22.c'\"
- else
- echo shar: Extracting \"'z22.c'\" \(28360 characters\)
- sed "s/^X//" >'z22.c' <<'END_OF_FILE'
- X/*@z22.c:Galley Service:Interpose()@******************************************/
- X/* */
- X/* LOUT: A HIGH-LEVEL LANGUAGE FOR DOCUMENT FORMATTING (VERSION 2.05) */
- X/* COPYRIGHT (C) 1993 Jeffrey H. Kingston */
- X/* */
- X/* Jeffrey H. Kingston (jeff@cs.su.oz.au) */
- X/* Basser Department of Computer Science */
- X/* The University of Sydney 2006 */
- X/* AUSTRALIA */
- X/* */
- X/* This program is free software; you can redistribute it and/or modify */
- X/* it under the terms of the GNU General Public License as published by */
- X/* the Free Software Foundation; either version 1, or (at your option) */
- X/* any later version. */
- X/* */
- X/* This program is distributed in the hope that it will be useful, */
- X/* but WITHOUT ANY WARRANTY; without even the implied warranty of */
- X/* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the */
- X/* GNU General Public License for more details. */
- X/* */
- X/* You should have received a copy of the GNU General Public License */
- X/* along with this program; if not, write to the Free Software */
- X/* Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. */
- X/* */
- X/* FILE: z22.c */
- X/* MODULE: Galley Service */
- X/* EXTERNS: Interpose(), FlushInners(), ExpandRecursives(), */
- X/* Promote(),K illGalley(), FreeGalley(), */
- X/* TargetSymbol(), CheckConstraint() */
- X/* */
- X/*****************************************************************************/
- X#include "externs"
- X#define LAST_ADJUST 1
- X#define ALL_ADJUST 2
- X
- X
- X/*****************************************************************************/
- X/* */
- X/* Interpose(z, typ, x, y) */
- X/* */
- X/* Insert a new typ object above z. Its sizes are to be taken from x */
- X/* (column) and y (row). */
- X/* */
- X/*****************************************************************************/
- X
- XInterpose(z, typ, x, y)
- XOBJECT z; int typ; OBJECT x, y;
- X{ OBJECT encl = New(typ);
- X FposCopy(fpos(encl), fpos(y));
- X ReplaceNode(encl, z); Link(encl, z);
- X back(encl, COL) = back(x, COL);
- X fwd(encl, COL) = fwd(x, COL);
- X back(encl, ROW) = back(y, ROW);
- X fwd(encl, ROW) = fwd(y, ROW);
- X} /* end Interpose */
- X
- X
- X/*@::FlushInners()@***********************************************************/
- X/* */
- X/* FlushInners(inners, hd) */
- X/* */
- X/* Flush each galley on the list inners. These have become flushable */
- X/* by being promoted off the top of galley hd; if hd is the root galley, */
- X/* identifiable by having PrintSym as target, do not flush inners at all. */
- X/* */
- X/*****************************************************************************/
- X
- XFlushInners(inners, hd)
- XOBJECT inners, hd;
- X{ OBJECT y, z, tmp, dest_index;
- X
- X /* check for root galley case */
- X if( hd != nil )
- X { assert( Up(hd) != hd, "FlushInners: Up(hd)!" );
- X Parent(dest_index, Up(hd));
- X if( actual(actual(dest_index)) == PrintSym )
- X { DisposeObject(inners);
- X return;
- X }
- X }
- X
- X while( Down(inners) != inners )
- X { Child(y, Down(inners));
- X DeleteLink(Down(inners));
- X switch( type(y) )
- X {
- X
- X case DEAD:
- X
- X break;
- X
- X
- X case RECEIVING:
- X case UNATTACHED:
- X
- X assert( Down(y) != y, "FlushInners: UNATTACHED!");
- X Child(z, Down(y));
- X debug0(DGF, D, " calling FlushGalley from FlushInners (a)");
- X FlushGalley(z);
- X break;
- X
- X
- X case PRECEDES:
- X
- X Child(tmp, Down(y));
- X if( Up(tmp) != LastUp(tmp) )
- X { Parent(tmp, LastUp(tmp));
- X assert(type(tmp)==FOLLOWS, "FlushInners: FOLLOWS!");
- X if( blocked(tmp) )
- X { blocked(tmp) = FALSE;
- X Parent(z, Up(tmp));
- X debug0(DGF, D, " calling FlushGalley from FlushInners (b)");
- X FlushGalley(z);
- X }
- X }
- X break;
- X
- X
- X default:
- X
- X Error(INTERN,&fpos(y),"FlushInners %s", Image(type(y)));
- X break;
- X }
- X }
- X Dispose(inners);
- X} /* end FlushInners */
- X
- X
- X/*@::ExpandRecursives()@******************************************************/
- X/* */
- X/* ExpandRecursives(recs) */
- X/* */
- X/* Expand each of the recursive definite objects in the list recs. */
- X/* */
- X/*****************************************************************************/
- X
- XExpandRecursives(recs)
- XOBJECT recs;
- X{ CONSTRAINT non_c, hc, vc;
- X OBJECT target_index, target, z, n1, inners, newrecs, hd, tmp, env;
- X debug0(DCR, D, "ExpandRecursives(recs)");
- X SetConstraint(non_c, MAX_LEN, MAX_LEN, MAX_LEN); n1 = nil;
- X assert(recs != nil, "ExpandRecursives: recs == nil!");
- X while( Down(recs) != recs )
- X { Child(target_index, Down(recs)); DeleteLink( Down(recs) );
- X assert( type(target_index) == RECURSIVE, "ExpandRecursives: index!" );
- X target = actual(target_index);
- X debug2(DCR, DD, " expanding %s %s", Image(type(target_index)),
- X EchoObject(target));
- X
- X /* expand body of target, convert to galley, and check size */
- X hd = New(HEAD); actual(hd) = actual(target); must_expand(hd) = TRUE;
- X whereto(hd) = ready_galls(hd) = nil; backward(hd) = sized(hd) = FALSE;
- X tmp = CopyObject(target, &fpos(target)); env = DetachEnv(tmp);
- X Link(hd, tmp); Link(target_index, hd);
- X SizeGalley(hd, env, external(target), threaded(target), FALSE, FALSE,
- X &save_style(target), &non_c, nil, &n1, &newrecs, &inners);
- X debug0(DCR, DDD, " as galley:");
- X ifdebug(DCR, DDD, DebugObject(hd));
- X Constrained(target, &hc, COL);
- X debug2(DSC, D, "Constrained( %s, COL ) = %s",
- X EchoObject(target), EchoConstraint(&hc));
- X debug3(DCR, DD, " horizontal size: (%s, %s); constraint: %s",
- X EchoLength(back(hd, COL)), EchoLength(fwd(hd, COL)), EchoConstraint(&hc));
- X if( !FitsConstraint(back(hd, COL), fwd(hd, COL), hc) )
- X { DisposeChild(Up(hd));
- X if( inners != nil ) DisposeObject(inners);
- X if( newrecs != nil ) DisposeObject(newrecs);
- X DeleteNode(target_index);
- X debug0(DCR, DD, " rejecting (too wide)");
- X continue;
- X }
- X if( !external(target) )
- X { Constrained(target, &vc, ROW);
- X debug2(DSC, D, "Constrained( %s, ROW ) = %s",
- X EchoObject(target), EchoConstraint(&vc));
- X Child(z, LastDown(hd));
- X debug3(DCR, DD, " vsize: (%s, %s); constraint: %s",
- X EchoLength(back(z, ROW)), EchoLength(fwd(z, ROW)), EchoConstraint(&vc));
- X if( !FitsConstraint(back(z, ROW), fwd(z, ROW), vc) )
- X { DisposeChild(Up(hd));
- X if( inners != nil ) DisposeObject(inners);
- X if( newrecs != nil ) DisposeObject(newrecs);
- X DeleteNode(target_index);
- X debug0(DCR, DD, " rejecting (too high)");
- X continue;
- X }
- X }
- X
- X /* object fits; adjust sizes and promote */
- X debug0(DSA, D, "calling AdjustSize from ExpandRecursives (a)");
- X AdjustSize(target, back(hd, COL), fwd(hd, COL), COL);
- X if( !external(target) )
- X { debug0(DSA, D, "calling AdjustSize from ExpandRecursives (b)");
- X AdjustSize(target, back(z, ROW), fwd(z, ROW), ROW);
- X Interpose(target, VCAT, z, z);
- X }
- X Promote(hd, hd, target_index); DeleteNode(hd);
- X DeleteNode(target_index);
- X if( inners != nil ) FlushInners(inners, nil);
- X if( newrecs != nil ) MergeNode(recs, newrecs);
- X } /* end while */
- X Dispose(recs);
- X debug0(DCR, D, "ExpandRecursives returning.");
- X} /* end ExpandRecursives */
- X
- X/*@::FindSplitInGalley()@*****************************************************/
- X/* */
- X/* static OBJECT FindSplitInGalley(hd) */
- X/* */
- X/* Search simply joined galley hd for a SPLIT object, which must be there. */
- X/* */
- X/*****************************************************************************/
- X
- Xstatic OBJECT FindSplitInGalley(hd)
- XOBJECT hd;
- X{ OBJECT link, y;
- X debug0(DGF, D, "FindSplitInGalley(hd)");
- X for( link = Down(hd); link != hd; link = NextDown(link) )
- X { Child(y, link);
- X if( is_definite(type(y)) ) break;
- X }
- X if( link == hd )
- X { debug0(DGF, D, "FindSplitInGalley failing, no definite component; hd =");
- X ifdebug(DGF, D, DebugObject(hd));
- X Error(INTERN, &fpos(hd), "missing galley component");
- X }
- X while( type(y) != SPLIT ) switch( type(y) )
- X {
- X case VCAT:
- X case ONE_ROW:
- X case WIDE:
- X case HIGH:
- X case VCONTRACT:
- X case VEXPAND:
- X case PADJUST:
- X case VADJUST:
- X
- X Child(y, Down(y));
- X break;
- X
- X
- X case CLOSURE:
- X case NULL_CLOS:
- X case HCAT:
- X case WORD:
- X case QWORD:
- X case ACAT:
- X case ROW_THR:
- X case COL_THR:
- X case ONE_COL:
- X case SCALE:
- X case HSCALE:
- X case VSCALE:
- X case HCONTRACT:
- X case HEXPAND:
- X case HADJUST:
- X case ROTATE:
- X case INCGRAPHIC:
- X case SINCGRAPHIC:
- X case GRAPHIC:
- X
- X debug0(DGF, D, "FindSplitInGalley(hd) failing, hd =");
- X ifdebug(DGF, D, DebugObject(hd));
- X Error(INTERN, &fpos(y), "FindSplitInGalley failed", Image(type(y)));
- X break;
- X
- X
- X default:
- X
- X Error(INTERN, &fpos(y), "FindSplitInGalley found %s", Image(type(y)));
- X break;
- X
- X }
- X debug0(DGF, D, "FindSplitInGalley returning.");
- X return y;
- X} /* end FindSplitInGalley */
- X
- X/*@::Promote()@***************************************************************/
- X/* */
- X/* Promote(x, stop_link, dest_index) */
- X/* */
- X/* Promote components of galley x into its destination (dest), up to but */
- X/* not including the one linked to x by link stop_link, which always */
- X/* follows a component. No size adjustments are made, except that when */
- X/* two col_thr nodes are merged, a COL adjustment is made to the result. */
- X/* */
- X/*****************************************************************************/
- X
- XPromote(x, stop_link, dest_index)
- XOBJECT x, stop_link, dest_index;
- X{
- X /* these four variables refer to the root galley only */
- X static BOOLEAN first = TRUE; /* TRUE when the first component not written */
- X static int prec_back; /* back value of preceding component */
- X static int prec_fwd; /* fwd value of preceding component */
- X static GAP prec_gap; /* preceding gap */
- X
- X OBJECT dest, link, y, z, tmp1, tmp2;
- X int dim;
- X debug1(DGS, D, "Promote(%s, stop_link)", SymName(actual(x)));
- X
- X assert( type(x) == HEAD, "Promote: x!" );
- X assert( type(stop_link) == LINK || stop_link == x, "Promote: stop_link!" );
- X assert( stop_link != Down(x), "Promote: stop_link == Down(x)!" );
- X type(dest_index) = RECEIVING;
- X dest = actual(dest_index);
- X
- X /* insert final gap if galley is ending */
- X if( stop_link != x )
- X { Child(y, stop_link);
- X assert( type(y) == GAP_OBJ, "Promote: missing GAP_OBJ!" );
- X stop_link = NextDown(stop_link);
- X }
- X else
- X { y = New(GAP_OBJ);
- X FposCopy(fpos(y), fpos(x));
- X hspace(y) = 0; vspace(y) = 1;
- X ClearGap(gap(y));
- X Link(stop_link, y);
- X }
- X
- X /* error if promoting a seen_nojoin galley into a threaded destination */
- X if( seen_nojoin(x) && threaded(dest) )
- X Error(FATAL, &fpos(x), "galley %s must have a single column mark",
- X SymName(actual(x)));
- X if( seen_nojoin(x) ) join(gap(y)) = FALSE; /* to make nojoin status clear */
- X
- X /* if promoting out of root galley, do special things */
- X if( actual(dest) == PrintSym )
- X { CONSTRAINT c;
- X link = x;
- X while( NextDown(link) != stop_link )
- X { Child(y, NextDown(link));
- X debug1(DGS, D, "root promote %s", EchoObject(y));
- X if( type(y) == SPLIT ) Child(y, DownDim(y, ROW));
- X switch( type(y) )
- X {
- X
- X case PRECEDES:
- X
- X DisposeChild(NextDown(link));
- X break;
- X
- X
- X case UNATTACHED:
- X
- X assert( Down(y) != y, "FlushRootGalley: UNATTACHED!" );
- X Child(z, Down(y));
- X assert( type(z) == HEAD, "FlushRootGalley: unattached HEAD!" );
- X if( sized(z) )
- X {
- X /* galley is part flushed, leave it here */
- X link = NextDown(link);
- X }
- X else if( backward(z) )
- X {
- X /* galley is preceding, send to CrossSequence */
- X OBJECT t;
- X type(y) = GALL_PREC;
- X Child(t, Down(z));
- X actual(y) = CrossMake(whereto(z), t, GALL_PREC);
- X DisposeChild(Down(y));
- X CrossSequence(actual(y));
- X DisposeChild(NextDown(link));
- X }
- X else
- X {
- X /* galley was never attached, print message and kill it */
- X Error(WARN, &fpos(z), "Galley %s deleted - never attached",
- X SymName(actual(z)));
- X KillGalley(z);
- X }
- X break;
- X
- X
- X case EXPAND_IND:
- X
- X /* expand @HExpand or @VExpand to occupy everything possible */
- X dim = type(actual(y)) == HEXPAND ? COL : ROW;
- X debug1(DGP, D, " flushing %s", EchoObject(y));
- X Constrained(actual(y), &c, dim);
- X if( constrained(c) )
- X { LENGTH b = back(actual(y), dim);
- X LENGTH f = fwd(actual(y), dim);
- X EnlargeToConstraint(&b, &f, &c);
- X debug2(DGP, D, "FlushRoot call AdjustSize(x, %s,%s, dim)",
- X EchoLength(b), EchoLength(f));
- X debug1(DSA, D, "Promote %s AdjustSize", Image(type(actual(y))));
- X AdjustSize(actual(y), b, f, dim);
- X }
- X DisposeChild(NextDown(link));
- X break;
- X
- X
- X case GALL_PREC:
- X case GALL_FOLL:
- X case GALL_TARG:
- X case CROSS_PREC:
- X case CROSS_FOLL:
- X case CROSS_TARG:
- X
- X CrossSequence(actual(y));
- X DisposeChild(NextDown(link));
- X break;
- X
- X
- X case WORD:
- X case QWORD:
- X case ONE_COL:
- X case ONE_ROW:
- X case WIDE:
- X case HIGH:
- X case HSCALE:
- X case VSCALE:
- X case HCONTRACT:
- X case VCONTRACT:
- X case HEXPAND:
- X case VEXPAND:
- X case PADJUST:
- X case HADJUST:
- X case VADJUST:
- X case ROTATE:
- X case SCALE:
- X case INCGRAPHIC:
- X case SINCGRAPHIC:
- X case GRAPHIC:
- X case ACAT:
- X case HCAT:
- X case ROW_THR:
- X
- X case CLOSURE:
- X case NULL_CLOS:
- X case CROSS:
- X
- X /* print this component */
- X debug0(DCR, D, "Promote --");
- X if( !is_indefinite(type(y)) && size(y, ROW) != 0 )
- X {
- X /* move down as specified by the gap */
- X if( first )
- X { PrintPrologue(size(x, COL), size(y, ROW));
- X first = FALSE;
- X }
- X else PrintOriginIncrement(prec_back - back(y, ROW)
- X + MinGap(prec_fwd, back(y, ROW), fwd(y, ROW), &prec_gap));
- X debug1(DGF,D, " Promote calling FixAndPrint %s", Image(type(y)));
- X FixAndPrintObject(y, back(x, COL), back(x, COL), fwd(x, COL),
- X COL, LAST_ADJUST, FALSE, LAST_ADJUST, 0, 0);
- X FixAndPrintObject(y, back(y,ROW), back(y, ROW), fwd(y, ROW),
- X ROW, LAST_ADJUST, FALSE, LAST_ADJUST, size(y,ROW), 0);
- X prec_back = back(y, ROW); prec_fwd = fwd(y, ROW);
- X }
- X DisposeChild(NextDown(link));
- X break;
- X
- X
- X case GAP_OBJ:
- X
- X GapCopy(prec_gap, gap(y));
- X DisposeChild(NextDown(link));
- X break;
- X
- X
- X default:
- X
- X Error(INTERN, &fpos(y), "Promote (root): %s", Image(type(y)));
- X break;
- X
- X }
- X }
- X debug0(DGS, D, "Promote returning (root galley).");
- X return;
- X }
- X
- X /* prepare the promotion */
- X if( external(dest) )
- X { if( threaded(dest) )
- X { Parent(tmp1, UpDim(dest, COL));
- X assert( type(tmp1) == COL_THR, "Promote: tmp1 not COL_THR!" );
- X y = FindSplitInGalley(x);
- X assert( type(y) == SPLIT, "Promote: FindSplitInGalley!" );
- X Child(tmp2, DownDim(y, COL));
- X assert( type(tmp2) == COL_THR, "Promote: tmp2 not COL_THR!" );
- X if( tmp1 != tmp2 )
- X { LENGTH b = max(back(tmp1, COL), back(tmp2, COL));
- X LENGTH f = max(fwd(tmp1, COL), fwd(tmp2, COL));
- X debug0(DSA, D, "calling AdjustSize(tmp1) from Promote (node merging)");
- X AdjustSize(tmp1, b, f, COL);
- X debug0(DSA, D, "calling AdjustSize(tmp2) from Promote (node merging)");
- X AdjustSize(tmp2, b, f, COL);
- X MergeNode(tmp1, tmp2);
- X }
- X }
- X link = Up(dest_index);
- X }
- X else
- X { for( link = x; NextDown(link) != stop_link; )
- X { Child(y, NextDown(link));
- X if( is_index(type(y)) ) MoveLink(NextDown(link), Up(dest_index), PARENT);
- X else link = NextDown(link);
- X }
- X assert( Down(x) != stop_link, "Promote: Down(x) == stop_link!" );
- X assert( UpDim(dest, ROW) == UpDim(dest, COL), "Promote: dims!" );
- X link = Up(dest);
- X }
- X
- X /* promote components */
- X TransferLinks(Down(x), stop_link, link);
- X
- X debug0(DGS, D, "Promote returning.");
- X} /* end Promote */
- X
- X
- X/*@::MakeDead(), KillGalley()@************************************************/
- X/* */
- X/* static MakeDead(y) */
- X/* */
- X/* Convert object y into a DEAD object and remove it to the dead store. */
- X/* */
- X/*****************************************************************************/
- X
- Xstatic MakeDead(y)
- XOBJECT y;
- X{ static int dead_count = 0; /* number of DEAD objects seen */
- X static OBJECT dead_store = nil; /* where DEAD objects are kept */
- X
- X debug1(DGS, DDD, "MakeDead( %s )", Image(type(y)));
- X if( dead_store == nil ) dead_store = New(ACAT);
- X type(y) = DEAD;
- X MoveLink(Up(y), dead_store, PARENT);
- X if( dead_count >= 100 ) DisposeChild(Down(dead_store));
- X else dead_count++;
- X debug1(DGS, DDD, "MakeDead returning (dead_count = %d).", dead_count);
- X} /* end MakeDead */
- X
- X
- X/*****************************************************************************/
- X/* */
- X/* KillGalley(hd) */
- X/* */
- X/* Kill galley hd, which may be sized or unsized. The index of hd must */
- X/* be UNATTACHED; it is moved out of its present location to a secret spot. */
- X/* */
- X/*****************************************************************************/
- X
- XKillGalley(hd)
- XOBJECT hd;
- X{ OBJECT prnt, link, y, z;
- X debug2(DGA, D, "[ KillGalley(Galley %s into %s)",
- X SymName(actual(hd)), SymName(whereto(hd)));
- X assert( type(hd) == HEAD && Up(hd) != hd, "KillGalley: precondition!" );
- X Parent(prnt, Up(hd));
- X assert( type(prnt) == UNATTACHED, "KillGalley: UNATTACHED precondition!" );
- X assert( Up(prnt) != prnt, "KillGalley: prnt!" );
- X
- X if( ready_galls(hd) != nil )
- X { DisposeObject(ready_galls(hd));
- X ready_galls(hd) = nil;
- X }
- X for( link = hd; NextDown(link) != hd; )
- X { Child(y, NextDown(link));
- X switch( type(y) )
- X {
- X case RECEIVING: while( Down(y) != y )
- X { Child(z, Down(y));
- X DetachGalley(z);
- X }
- X DeleteNode(y);
- X break;
- X
- X case RECEPTIVE: assert( Down(y) == y, "KillGalley: RECEPTIVE!" );
- X DeleteNode(y);
- X break;
- X
- X case UNATTACHED: assert( Down(y) != y, "KillGalley: UNATTACHED!" );
- X Child(z, Down(y)); KillGalley(z);
- X break;
- X
- X case HEAD: Error(INTERN, &fpos(y), "KillGalley: HEAD!");
- X break;
- X
- X default: DisposeChild(NextDown(link));
- X break;
- X }
- X }
- X
- X /* move index into dead_store */
- X MakeDead(prnt);
- X debug0(DGA, D, "] KillGalley returning.");
- X} /* end KillGalley */
- X
- X
- X/*@::FreeGalley()@************************************************************/
- X/* */
- X/* FreeGalley(hd, stop_link, inners, relocate_link, sym) */
- X/* */
- X/* Free galley hd up to but not including stop_link. *Inners is well- */
- X/* defined, either nil or an ACAT of galleys to be flushed. */
- X/* */
- X/* Relocate_link defines what to do any galley attached to one of the */
- X/* freed targets. If it is non-nil, galley hd is searched onwards from */
- X/* it to see if a target can be found there. If so, the galley is */
- X/* relocated to just before that point. If not, or if relocate_link is */
- X/* nil, the galley is freed and added to *inners for flushing. If the */
- X/* whereto() of such galley is sym, it is freed, not relocated, because the */
- X/* cause of this call to FreeGalley is also targeted to sym, and it will */
- X/* consume all possible targets of sym. */
- X/* */
- X/*****************************************************************************/
- X
- XFreeGalley(hd, stop_link, inners, relocate_link, sym)
- XOBJECT hd, stop_link, *inners, relocate_link, sym;
- X{ OBJECT link, y, z, zlink, srch, index;
- X assert( type(hd) == HEAD && sized(hd), "FreeGalley: pre!");
- X assert( Up(hd) != hd, "FreeGalley: Up(hd)!" );
- X assert( *inners == nil || type(*inners) == ACAT, "FreeGalley: ACAT!" );
- X debug3(DGA, D, "[ FreeGalley(Galley %s into %s); rl %s nil",
- X SymName(actual(hd)), SymName(whereto(hd)), relocate_link==nil ? "==":"!=");
- X
- X /* close targets and move or flush any inner galleys */
- X for( link = Down(hd); link != stop_link; link = NextDown(link) )
- X { Child(y, link);
- X if( type(y) == RECEIVING && actual(actual(y)) == InputSym )
- X Error(WARN, &fpos(actual(y)), "forcing galley past input point");
- X else if( type(y) == RECEIVING )
- X {
- X /* either relocate or free each galley */
- X for( zlink = Down(y); zlink != y; )
- X { Child(z, zlink);
- X zlink = NextDown(zlink);
- X assert( type(z) == HEAD, "FreeGalley/RECEIVING: type(z) != HEAD!" );
- X debug1(DGA, D, "FreeGalley examining galley %s", SymName(actual(z)));
- X if( relocate_link != nil && whereto(z) != sym &&
- X (srch = SearchGalley(relocate_link, whereto(z), TRUE,
- X FALSE, TRUE, FALSE)) != nil )
- X { DetachGalley(z);
- X Parent(index, Up(z));
- X MoveLink(Up(index), Up(srch), PARENT); /* just before new dest */
- X }
- X else
- X { debug0(DGA, D, " calling FreeGalley from FreeGalley");
- X FreeGalley(z, z, inners, nil, sym);
- X if( *inners == nil ) *inners = New(ACAT);
- X Link(*inners, y);
- X }
- X }
- X non_blocking(y) = TRUE;
- X }
- X else if( type(y) == RECEPTIVE ) non_blocking(y) = TRUE;
- X }
- X debug0(DGA, D, "] FreeGalley returning.");
- X} /* end FreeGalley */
- X
- X
- X/*@::TargetSymbol()@**********************************************************/
- X/* */
- X/* BOOLEAN TargetSymbol(x, sym) */
- X/* */
- X/* Examine the parameters of closure x, which is known to have a @Target. */
- X/* Return TRUE if the target is preceding, and set sym to the symbol value. */
- X/* */
- X/*****************************************************************************/
- X
- XBOOLEAN TargetSymbol(x, sym)
- XOBJECT x, *sym;
- X{ OBJECT y, link, cr, lpar, rpar;
- X debug1(DGS, D, "TargetSymbol( %s )", EchoObject(x));
- X assert( type(x) == CLOSURE, "TargetSymbol: type(x) != CLOSURE!" );
- X assert( has_target(actual(x)), "TargetSymbol: x has no target!" );
- X
- X /* search the free variable list of x for @Target */
- X cr = nil;
- X for( link = Down(x); link != x; link = NextDown(link) )
- X { Child(y, link);
- X if( type(y) == PAR && is_target(actual(y)) )
- X { assert( Down(y) != y, "TargetSymbol: Down(PAR)!" );
- X Child(cr, Down(y));
- X break;
- X }
- X }
- X
- X /* search the children list of actual(x) for a default value of @Target */
- X if( cr == nil )
- X for( link = Down(actual(x)); link != actual(x); link = NextDown(link) )
- X { Child(y, link);
- X if( is_target(y) )
- X { cr = sym_body(y);
- X break;
- X }
- X }
- X
- X if( cr != nil )
- X {
- X /* check that cr is indeed a cross-reference object */
- X debug1(DGS, DD, "TargetSymbol examining %s", EchoObject(cr));
- X debug1(DGS, DD, " type(cr) = %s", Image( (int) type(cr)) );
- X if( type(cr) != CROSS )
- X Error(FATAL, &fpos(cr), "target of %s is not a cross-reference",
- X SymName(actual(x)));
- X
- X /* extract *sym from the left parameter */
- X Child(lpar, Down(cr));
- X if( type(lpar) != CLOSURE )
- X Error(FATAL,&fpos(lpar),"left parameter of %s is not a symbol",KW_CROSS);
- X *sym = actual(lpar);
- X
- X /* extract direction from the right parameter */
- X Child(rpar, NextDown(Down(cr)));
- X if( !is_word(type(rpar)) || !StringEqual(string(rpar), KW_PRECEDING) &&
- X !StringEqual(string(rpar), KW_FOLLOWING) )
- X Error(WARN, &fpos(rpar), "replacing %s%s? by %s%s%s",
- X SymName(actual(lpar)), KW_CROSS, SymName(actual(lpar)),
- X KW_CROSS, KW_FOLLOWING);
- X return is_word(type(rpar)) && StringEqual(string(rpar), KW_PRECEDING);
- X }
- X else
- X { Error(INTERN, &fpos(x), "TargetSymbol: could not find @Target of x");
- X return FALSE;
- X }
- X} /* end TargetSymbol */
- X
- X
- X/*@::CheckConstraint()@*******************************************************/
- X/* */
- X/* int CheckConstraint(preceder, follower) */
- X/* */
- X/* Check the ordering relation between components preceder and follower, */
- X/* and return its current status: */
- X/* */
- X/* CLEAR follower definitely follows preceder, and always will; */
- X/* PROMOTE follower is not prevented from following preceder; */
- X/* CLOSE follower must move down its galley to follow preceder; */
- X/* BLOCK follower cannot be guaranteed to follow preceder. */
- X/* */
- X/*****************************************************************************/
- X
- Xint CheckConstraint(preceder, follower)
- XOBJECT preceder, follower;
- X{ OBJECT prec_galley, foll_galley, z; int res;
- X debug2(DGS, D, "CheckConstraint( %s, %s )",
- X EchoObject(preceder), EchoObject(follower));
- X Parent(prec_galley, Up(preceder));
- X Parent(foll_galley, Up(follower));
- X if( prec_galley == foll_galley )
- X { res = CLOSE;
- X for( z = Up(follower); z != foll_galley; z = pred(z, CHILD) )
- X if( z == Up(preceder) )
- X { res = CLEAR;
- X break;
- X }
- X }
- X else
- X { res = PROMOTE;
- X while( Up(prec_galley) != prec_galley )
- X { Parent(z, Up(prec_galley)); /* index of galley */
- X Parent(prec_galley, Up(z)); /* enclosing galley */
- X if( prec_galley == foll_galley )
- X { res = BLOCK;
- X break;
- X }
- X }
- X }
- X debug1(DGS, D, "CheckConstraint returning %s", Image(res));
- X return res;
- X} /* end CheckConstraint */
- END_OF_FILE
- if test 28360 -ne `wc -c <'z22.c'`; then
- echo shar: \"'z22.c'\" unpacked with wrong size!
- fi
- # end of 'z22.c'
- fi
- echo shar: End of archive 6 \(of 35\).
- cp /dev/null ark6isdone
- MISSING=""
- for I in 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 ; do
- if test ! -f ark${I}isdone ; then
- MISSING="${MISSING} ${I}"
- fi
- done
- if test "${MISSING}" = "" ; then
- echo You have unpacked all 35 archives.
- rm -f ark[1-9]isdone ark[1-9][0-9]isdone
- else
- echo You still must unpack the following archives:
- echo " " ${MISSING}
- fi
- exit 0
- exit 0 # Just in case...
-