[Info-vax] Dennis Ritchie has passed on.

George Cornelius cornelius at eisner.decus.org
Thu Oct 13 18:02:01 EDT 2011


In article <3a796f54-4698-42a5-b802-434a1b1a5f03 at f39g2000prn.googlegroups.com>, Jojimbo <jjgessling at gmail.com> writes:
> On Oct 13, 9:58=A0am, Rich Jordan <jor... at ccs4vms.com> wrote:
>> Dennis Ritchie has passed away. =A0He was (one of?) the creator(s) of
>> the C programming language and also a primary developer of Unix.
>>
>> I'm not a huge fan of Unix (though it beats the MS alternatives all to
>> heck) but I've enjoyed 'C' since I took that first class using it in
>> 1984 or so (on an 11/750 running BSD), and my two K&R 'C' books are
>> still some of the best references I've ever used. =A0R.I.P. =A0Mr Ritchie=
> .
> 
> Very sad indeed.  I can barely remember that back in the day you used
> to get a K&R book with your shiny new Ultrix system.  Sort of like
> getting a physics book with your new car, at least I always thought
> so.  I personally always struggled with C although I wrote plenty of
> code with it.  My main strategy was add "&" and if that didn't work
> add another, or remove them altogether until the access violation went
> away.  Remember the "register" declaration?  Now that was close to the
> iron.

I don't think there's much doubt as to Richie's contributions.  C and
Unix - quite a resume.  RIP, Dennis.

The most interesting thing about C - and part of its genius - was the
use of compound declarations (pointer to pointer to function returning
double), and doing this in an inverted way by specifying a variable
in the context in which it would be used instead of the traditional
kind of verbiage such as in the parenthetical expression in this
sentence.  Seemed counterintuitive, but, oh, how powerful it was and
is!

As far as the use of the 'address of' operator, it was mostly
straightforward in the sense that it was the opposite of the
* (indirection) operator and the post operators [] and -> as
well.  More confusing was that if aaa was an array name, both
aaa and &aaa tended to mean pointer to array - inappropriately
for the latter as far as I am concerned. And precedence of
*,[].(), and -> relative to one another always seemed
problematical.

C was like a more powerful assembler.  With assembler you could
easily shoot yourself in the foot.  With C you could lose both
legs and an arm just by reaching in your pocket for your keys.

George



More information about the Info-vax mailing list