a style question

leland.f.derbenwick lfd at cbnewsm.att.com
Sat Oct 13 08:55:01 AEST 1990


In article <MEISSNER.90Oct12120812 at osf.osf.org>, meissner at osf.org (Michael Meissner) writes:
> In article <EYC66N8 at xds13.ferranti.com> peter at ficc.ferranti.com (Peter da Silva) writes:
> 
> [ ... ]
> | In article <65263 at lanl.gov> jlg at lanl.gov (Jim Giles) writes:
> | > In the _very_ early days of C, it may have compared well to the PDP-8
> | > assembler - mostly because it way practically an upward compatible
> | > extension of that assembler.
> | 
> | Talking of contrary to observed fact: the PDP-8 had no part in the
> | development of the C programming language. Perhaps you're thinking
> | of the PDP-11.
> 
> Or if you know your UNIX pre-history, the PDP-7.

Bzzzt.  Thank you for playing.

To quote Ritchie, Johnson, Lesk, and Kernighan ("The C Programming
Language", _Bell System Technical Journal_ Vol. 57, No. 6, July-
August 1978, p. 1991):

   C was originally written for the PDP-11 under UNIX...

and to quote Ritchie ("The Evolution of the UNIX Time-sharing
System", _AT&T Bell Laboratories Technical Journal_ Vol. 63,
No. 8 Part 2, p. 1591-2):

   Every program for the original PDP-7 UNIX was written in
   assembly language...[description of Thompson creating B
   on the PDP-7 omitted]  When the PDP-11 arrived, B was
   moved to it almost immediately.  ...Thus, in 1971, work
   began on what was to become the C language...

(BTW, the PDP-11 purchase was justified for use as a word-processing
system for the legal department: for all that people complain about
how "obscure" and "difficult" the Unix system is, it was being used
routinely by a group of secretaries in 1971.)

One of the main heritages of the PDP-11 is that most people use
the constructs "*p++" and "*--p" more often than "*++p" and "*p--";
for char or int arguments, the first two could be compiled into a
single PDP-11 instruction, while the other two required an extra
instruction.  (Of course, if C were really intended only as a
structured assembler, the two forms that didn't conform to the
instruction set would never have been included.)

 -- Speaking strictly for myself,
 --   Lee Derbenwick, AT&T Bell Laboratories, Warren, NJ
 --   lfd at cbnewsm.ATT.COM  or  <wherever>!att!cbnewsm!lfd



More information about the Comp.lang.c mailing list