blob: 9c3ff1412ba777301b7c0f8c6f3ac8c3781ff8d2 (
plain)
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
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
|
@x
% Here is TeX material that gets inserted after \input webmac
@y
% Here is TeX material that gets inserted after \input webmac
\input webmac-gpc
\let\maybe=\iffalse % print changed modules only.
\def\name{\tt POOLtype}
\N0\*. About \namegpc.\fi
This is an adaption of Donald~E. Knuth's \.{POOLtype}, version 3
from September 1989, to Unix. It is based on GNU~Pascal, version 2.1.
This program expects the input file (\.{.pool}) file,
which is a pool file, on the command line. To support shell
scripting, \namegpc\ sets the exit code to one when something was
wrong with the input file.
\hint
Comments and questions are welcome!
\bigskip
\address
@z
@x
\centerline{(Version 3, September 1989)}
@y
\centerline{(GPC-Version, October 2009)}
@z
[2]
@x
@p program POOLtype(@!pool_file,@!output);
@y
@p program POOLtype(@!output);
@z
[18]
@x
@!pool_file:packed file of text_char;
{the string-pool file output by \.{TANGLE}}
@y
@z
[19]
@x
reset(pool_file); xsum:=false;
@y
xsum:=false;
@z
[20]
@x
write_ln('"'); incr(s);
end
@y
write_ln('"'); incr(s);
if not eoln(pool_file) then
abort('! That POOL line was too long');
end
@z
[21]
@x
itself will get a new section number.
@^system dependencies@>
@y
itself will get a new section number.
@^system dependencies@>
@<Glob...@>=
@!pool_file: text;
@ @<Set init...@>=
if param_count <> 1 then
begin abort('Usage: pooltype pool_file')
end;
reset(pool_file, param_str(1));
@z
|