Commit | Line | Data |
---|---|---|
243df2f9 BJ |
1 | .so tmac.p |
2 | .RP | |
3 | .TL | |
4 | Berkeley Pascal User's Manual | |
5 | .br | |
6 | Version 1.1 \- April, 1979 | |
7 | .AU | |
8 | William N. Joy* | |
9 | .AU | |
10 | Susan L. Graham* | |
11 | .AU | |
12 | Charles B. Haley** | |
13 | .AI | |
14 | Computer Science Division | |
15 | .if n Department of Electrical Engineering | |
16 | .if n and Computer Science | |
17 | .if t Department of Electrical Engineering and Computer Science | |
18 | University of California, Berkeley | |
19 | Berkeley, California 94720 | |
20 | ...AI | |
21 | ...MH | |
22 | .AB | |
23 | .FS | |
24 | \s-2(C)\s0 1977, 1979 William N. Joy, Susan L. Graham, Charles B. Haley | |
25 | .FE | |
26 | .FS | |
27 | * Author's current address: S & B Associates, 1110 Centennial Ave., Piscataway, NJ 08854 | |
28 | .FE | |
29 | .PP | |
30 | Berkeley | |
31 | Pascal | |
32 | is designed for interactive instructional use | |
33 | and runs on the \s-2PDP\s0/11 and \s-2VAX\s0/11 computers. | |
34 | It produces interpretive code, | |
35 | providing fast translation at the expense of slower execution speed. | |
36 | An execution profiler and | |
37 | Wirth's cross reference program are also | |
38 | available with the system. | |
39 | ..An interpretive implementation for the \s-2VAX\s0 11/780 is nearly complete, | |
40 | ..and a compiled version of the system, utilizing the code generator of | |
41 | ..the portable C compiler, is under construction, and should be completed by | |
42 | ..September, 1979. | |
43 | .PP | |
44 | The system supports full Pascal, with the exception of | |
45 | .B procedure | |
46 | and | |
47 | .B function | |
48 | names as parameters. | |
49 | The language accepted is very close to | |
50 | `standard' Pascal, | |
51 | with only a small number of extensions. | |
52 | .PP | |
53 | The | |
54 | .UM | |
55 | gives a list of sources relating to the | |
56 | .UX | |
57 | system, the Pascal language, and the | |
58 | .UP | |
59 | system. | |
60 | Basic usage examples are provided for the Pascal | |
61 | interpreter components | |
62 | .PI , | |
63 | .X , | |
64 | .IX , | |
65 | and | |
66 | .XP . | |
67 | Errors commonly encountered in these programs are discussed. | |
68 | Details are given of special considerations due to the | |
69 | interactive implementation. | |
70 | A number of examples are provided including many dealing with | |
71 | input/output. An appendix supplements Wirth's | |
72 | .I "Pascal Report" | |
73 | to form the full definition of the Berkeley implementation of the language. | |
74 | .AE | |
75 | .ND | |
76 | .SH | |
77 | 'if n 'ND | |
78 | Introduction | |
79 | .PP | |
80 | .FS | |
81 | * The financial support of the first and second authors' work by | |
82 | the National Science Foundation under grants | |
83 | MCS74-07644-A03 and MCS78-07291, | |
84 | and the first author's work by an | |
85 | .SM IBM | |
86 | Graduate Fellowship | |
87 | are gratefully acknowledged. | |
88 | .FE | |
89 | .FS | |
90 | ** Author's present address: Bell Laboratories, Murray Hill, NJ 07974. | |
91 | .FE | |
92 | The | |
93 | .UP | |
94 | .UM | |
95 | consists of five major sections and an appendix. | |
96 | In section 1 we give sources of information about | |
97 | .UX , | |
98 | about the programming | |
99 | language Pascal, and about the | |
100 | Berkeley | |
101 | implementation of the language. | |
102 | Section 2 introduces the | |
103 | Berkeley | |
104 | implementation and provides a number of basic examples. | |
105 | Section 3 discusses the error diagnostics produced by the translator | |
106 | .PI | |
107 | and the runtime interpreter | |
108 | .X . | |
109 | Section 4 describes input/output with special attention given to features | |
110 | of the interactive implementation and to features unique to | |
111 | .UX . | |
112 | Section 5 gives details on the components of the system | |
113 | and explanation of all relevant options. | |
114 | The | |
115 | .UM | |
116 | concludes with an appendix to Wirth's | |
117 | .I "Pascal Report" | |
118 | with which it forms a precise definition of the implementation. | |
119 | .SH | |
120 | History of the implementation | |
121 | .PP | |
122 | The first | |
123 | Berkeley | |
124 | system was written by Ken Thompson in early 1976. | |
125 | The main features of the present system result from the work | |
126 | of Charles Haley and William Joy during the latter half of 1976. | |
127 | Earlier versions of this system have been in use since January, 1977. | |
128 | .PP | |
129 | The system was moved to the \s-2VAX\s0-11 by Peter Kessler and | |
130 | Kirk McKusick in the spring of 1979. |