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