%A L. P. Deutsch
%A B. W. Lampson
%T An online editor
%J Comm. Assoc. Comp. Mach.
%V 10
%N 12
%D December 1967
%P 793-799, 803
%K qed

.[
%r 17
%K cstr
%R Comp. Sci. Tech. Rep. No. 17
%I Bell Laboratories
%C Murray Hill, New Jersey
%A B. W. Kernighan
%A L. L. Cherry
%T A System for Typesetting Mathematics
%d May 1974, revised April 1977
%J Comm. Assoc. Comp. Mach.
%K acm cacm
%V 18
%P 151-157
%D March 1975
.]

%T U\s-2NIX\s0 Time-Sharing System: Document Preparation
%K unix bstj
%A B. W. Kernighan
%A M. E. Lesk
%A J. F. Ossanna
%J Bell Sys. Tech. J.
%V 57
%N 6
%P 2115-2135
%D 1978

%A T. A. Dolotta
%A J. R. Mashey
%T An Introduction to the Programmer's Workbench
%J Proc. 2nd Int. Conf. on Software Engineering
%D October 13-15, 1976
%P 164-168

%T U\s-2NIX\s0 Time-Sharing System: The Programmer's Workbench
%A T. A. Dolotta
%A R. C. Haight
%A J. R. Mashey
%J Bell Sys. Tech. J.
%V 57
%N 6
%P 2177-2200
%D 1978
%K unix bstj

%T U\s-2NIX\s0 Time-Sharing System: U\s-2NIX\s0 on a Microprocessor
%K unix bstj
%A H. Lycklama
%J Bell Sys. Tech. J.
%V 57
%N 6
%P 2087-2101
%D 1978

%T The C Programming Language
%A B. W. Kernighan
%A D. M. Ritchie
%I Prentice-Hall
%C Englewood Cliffs, New Jersey
%D 1978

%T Computer Recreations
%A Aleph-null
%J Software Practice and Experience
%V 1
%N 2
%D April-June 1971
%P 201-204

%T U\s-2NIX\s0 Time-Sharing System: The U\s-2NIX\s0 Shell
%A S. R. Bourne
%K unix bstj
%J Bell Sys. Tech. J.
%V 57
%N 6
%P 1971-1990
%D 1978

%A L. P. Deutsch
%A B. W. Lampson
%T \*sSDS\*n 930 time-sharing system preliminary reference manual
%R Doc. 30.10.10, Project \*sGENIE\*n
%C Univ. Cal. at Berkeley
%D April 1965

%A R. J. Feiertag
%A E. I. Organick
%T The Multics input-output system
%J Proc. Third Symposium on Operating Systems Principles
%D October 18-20, 1971
%P 35-41

%A D. G. Bobrow
%A J. D. Burchfiel
%A D. L. Murphy
%A R. S. Tomlinson
%T \*sTENEX\*n, a Paged Time Sharing System for the \*sPDP\*n-10
%J Comm. Assoc. Comp. Mach.
%V 15
%N 3
%D March 1972
%K tenex
%P 135-143

%A R. E. Griswold
%A D. R. Hanson
%T An Overview of SL5
%J SIGPLAN Notices
%V 12
%N 4
%D April 1977
%P 40-50

%A E. W. Dijkstra
%T Cooperating Sequential Processes
%B Programming Languages
%E F. Genuys
%I Academic Press
%C New York
%D 1968
%P 43-112

%A J. A. Hawley
%A W. B. Meyer
%T M\s-2UNIX\s0, A Multiprocessing Version of U\s-2NIX\s0
%K munix unix
%R M.S. Thesis
%I Naval Postgraduate School
%C Monterey, Cal.
%D 1975

%T The U\s-2NIX\s0 Time-Sharing System
%K unix bstj
%A D. M. Ritchie
%A K. Thompson
%J Bell Sys. Tech. J.
%V 57
%N 6
%P 1905-1929
%D 1978

%A E. I. Organick
%T The M\s-2ULTICS\s0 System
%K multics
%I M.I.T. Press
%C Cambridge, Mass.
%D 1972

%T UNIX for Beginners
%A B. W. Kernighan
%D 1978

%T U\s-2NIX\s0 Programmer's Man\&ual
%A K. Thompson
%A D. M. Ritchie
%K unix
%I Bell Laboratories
%O Seventh Edition.
%D 1978

%A K. Thompson
%T The U\s-2NIX\s0 Command Language
%B Structured Programming\(emInfotech State of the Art Report
%I Infotech International Ltd.
%C Nicholson House, Maidenhead, Berkshire, England
%D March 1975
%P 375-384
%K unix
%X pwb
Brief description of shell syntax and semantics, without much
detail on implementation.
Much on pipes and convenience of hooking programs together.
Includes SERMONETTE:
"Many familiar computing `concepts' are missing from UNIX.
Files have no records. There are no access methods.
There are no file types.  These concepts fill a much-needed gap.
I sincerely hope that when future systems are designed by
manufacturers the value of some of these ingrained notions is re-examined.
Like the politician and his `common man', manufacturers have
their `average user'.

%A J. R. Mashey
%T PWB/UNIX Shell Tutorial
%D September 30, 1977

%A D. F. Hartley (Ed.)
%T The Cambridge Multiple Access System \- Users Reference Manual
%I University Mathematical Laboratory
%C Cambridge, England
%D 1968

%A P. A. Crisman (Ed.)
%T The Compatible Time-Sharing System
%I M.I.T. Press
%K whole ctss book
%C Cambridge, Mass.
%D 1965

%T LR Parsing
%A A. V. Aho
%A S. C. Johnson
%J Comp. Surveys
%V 6
%N 2
%P 99-124
%D June 1974

%T Deterministic Parsing of Ambiguous Grammars
%A A. V. Aho
%A S. C. Johnson
%A J. D. Ullman
%J Comm. Assoc. Comp. Mach.
%K acm cacm
%V 18
%N 8
%P 441-452
%D August 1975

%A A. V. Aho
%A J. D. Ullman
%T Principles of Compiler Design
%I Addison-Wesley
%C Reading, Mass.
%D 1977

.[
%r 65
%R Comp. Sci. Tech. Rep. No. 65
%K CSTR
%A S. C. Johnson
%T Lint, a C Program Checker
%D December 1977
%O updated version TM 78-1273-3
%D 1978
.]

%T A Portable Compiler: Theory and Practice
%A S. C. Johnson
%J Proc. 5th ACM Symp. on Principles of Programming Languages
%P 97-104
%D January 1978

.[
%r 39
%K CSTR
%R Comp. Sci. Tech. Rep. No. 39
%I Bell Laboratories
%C Murray Hill, New Jersey
%A M. E. Lesk
%T Lex \(em A Lexical Analyzer Generator
%D October 1975
.]

.[
%r 32
%K CSTR
%R Comp. Sci. Tech. Rep. No. 32
%I Bell Laboratories
%C Murray Hill, New Jersey
%A S. C. Johnson
%T Yacc \(em  Yet Another Compiler-Compiler
%D July 1975
.]

%T U\s-2NIX\s0 Time-Sharing System: Portability of C Programs and the U\s-2NIX\s0 System
%K unix bstj
%A S. C. Johnson
%A D. M. Ritchie
%J Bell Sys. Tech. J.
%V 57
%N 6
%P 2021-2048
%D 1978

%T Typing Documents on UNIX and GCOS:  The -ms Macros for Troff
%A M. E. Lesk
%D 1977

%A K. Thompson
%A D. M. Ritchie
%T U\s-2NIX\s0 Programmer's Manual
%K unix
%I Bell Laboratories
%O Sixth Edition
%D May 1975

%T The Network U\s-2NIX\s0 System
%K unix
%A G. L. Chesson
%J Operating Systems Review
%V 9
%N 5
%P 60-66
%D 1975
%O Also in \f2Proc. 5th Symp. on Operating Systems Principles.\f1

%T Spider \(em An Experimental Data Communications System
%Z ctr127
%A A. G. Fraser
%J Proc. IEEE Conf. on Communications
%P 21F
%O IEEE Cat. No. 74CH0859-9-CSCB.
%D June 1974

%T A Virtual Channel Network
%A A. G. Fraser
%J Datamation
%P 51-56
%D February 1975

.[
%r 41
%K CSTR
%R Comp. Sci. Tech. Rep. No. 41
%I Bell Laboratories
%C Murray Hill, New Jersey
%A J. W. Hunt
%A M. D. McIlroy
%T An Algorithm for Differential File Comparison
%D June 1976
.]

%A F. P. Brooks, Jr.
%T The Mythical Man-Month
%I Addison-Wesley
%C Reading, Mass.
%D 1975
%X pwb
Readable, classic reference on software engineering and
problems of large projects, from someone with experience in them.
Required reading for any software engineer, even if conclusions may not
always be agreed with.
%br
"The second is the most dangerous system a man every designs." p.55.
%br
"Hence plan to throw one away; you will, anyhow." p.116.
%br
"Cosgrove has perceptively pointed out that the programmer delivers
satisfaction of a user need rather than any tangible product.
And both the actual need and the user's perception of that need
will change as programs are built, tested, and used." p.117.
%br
"The total cost of maintaining a widely used program is typically 40 percent
or more of the cost of developing it." p.121.
%br
"As shown above, amalgamating prose and program reduces the total
number of characters to be stored." p.175.

%T A Portable Compiler for the Language C
%A A. Snyder
%I Master's Thesis, M.I.T.
%C Cambridge, Mass.
%D 1974

%T The C Language Calling Sequence
%A M. E. Lesk
%A S. C. Johnson
%A D. M. Ritchie
%D 1977

%T Optimal Code Generation for Expression Trees
%A A. V. Aho
%A S. C. Johnson
%D 1975
%J J. Assoc. Comp. Mach.
%K acm jacm
%V 23
%N 3
%P 488-501
%O Also in \f2Proc. ACM Symp. on Theory of Computing,\f1 pp. 207-217, 1975.

%A R. Sethi
%A J. D. Ullman
%T The Generation of Optimal Code for Arithmetic Expressions
%J J. Assoc. Comp. Mach.
%K acm jacm
%V 17
%N 4
%D October 1970
%P 715-728
%O Reprinted as pp. 229-247 in \fICompiler Techniques\fR, ed. B. W. Pollack, Auerbach, Princeton NJ (1972).
%X pwb
Optimal approach for straight-line, fixed
number of regs.

%T Code Generation for Machines with Multiregister
Operations
%A A. V. Aho
%A S. C. Johnson
%A J. D. Ullman
%J Proc. 4th ACM Symp. on Principles of Programming Languages
%P 21-28
%D January 1977

