Posted on 10/13/2011 11:41:40 AM PDT by ShadowAce
Dennis M. Ritchie, co-creator of UNIX and father of the C programming language, died this past weekend after a long illness. It's no exaggeration to say that without Ritchie, modern computing would not be what it is today.
Often known as "dmr," Ritchie was born in Bronxville, NY in 1941. He studied at Harvard University, initially focusing on physics. Ritchie said that he entered computing because "my undergraduate experience convinced me that I was not smart enough to be a physicist, and that computers were quite neat."
Ritchie joined Bell Labs in 1967 and worked with a group of developers, including Ken Thompson, to create UNIX, the first version of which was released in 1969. Initially called UNICS (following a system called MULTICS) was written in a low-level assembly language by Thompson. According to Thompson, Ritchie's contribution to UNIX was "mostly on the language and the I/O system."
The language, of course, was C. So named because it followed the B (for Bell Labs) programming language, C is a higher-level language designed to allow cross-platform programming. To make it portable to different hardware, it was re-written in C, and released in 1971 as UNIX.
Brian Kerninghan said that with C "Dennis managed to find a perfect balance between expressiveness and efficiency. It was just right for creating systems programs like compilers, editors, and even operating systems. C made it possible for a programmer to get close to the machine for efficiency but remain far enough away to avoid being tied to a specific machine... As a result, C became in effect a universal assembler: close enough to the machine to be cost effective, but far enough away that a C program could be compiled for and run well on any machine."
The concept of a multi-platform language and operating system no doubt seem, well, unexceptional today. However, at the time, it was unheard of, as Herb Sutter notes.
"Before C, there was far more hardware diversity than we see in the industry today. Computers proudly sported not just deliciously different and offbeat instruction sets, but varied wildly in almost everything, right down to even things as fundamental as character bit widths... There was no such thing as a general-purpose program that was both portable across a variety of hardware and also efficient enough to compete with custom code written for just that hardware."
Tim Bray writes, "Unix combines more obvious-in-retrospect engineering design choices than anything else I've seen or am likely to see in my lifetime... It is impossible absolutely impossible to overstate the debt my profession owes to Dennis Ritchie. I've been living in a world he helped invent for over thirty years."
The combination of C and UNIX have been at the core of computing ever since, and are (in slightly altered form) still going strong today. UNIX, as a portable and multi-user operating system, became extremely popular. AT&T was prohibited from entering the computer market at the time UNIX was created, so it was freely spread far and wide to businesses, schools, and within the U.S. government.
UNIX ultimately spawned dozens of versions, including SunOS and Solaris, AIX, HP-UX, NeXTSTEP, BSD, A/UX, Mac OS X and many others. UNIX inspired the GNU Project and Linux, though they are not derived from the same codebase.
C is still widely used, as are its direct descendants; C++, Perl, Objective-C, Java, C#, PHP and many others.
The popularity of C has been helped by The C Programming Language, often referred to as K&R for its co-authors: Kerninghan and Ritchie.
The book was published in 1978, and is a comprehensive guide to C in less than 300 pages. Kerninghan said that he "twisted Dennis's arm into writing it" which was "probably the smartest thing I ever did." Kerninghan called Ritchie "an exceptionally clear and elegant writer."
K&R continues to be considered an important guide to C. It was revised in 1988 to accommodate the ANSI C standard, and has been translated into more than 20 languages. Kerninghan said that the book has been successful "in large part because of the success of C, though it probably helped that the book, like the language, is rather small and simple, and made it possible for people to do useful things quickly."
The book made popular the now-obligatory "Hello World!" example, which explains how to create a small program that prints "Hello World!" to the display.
Later in his career, Ritchie continued in computer research and contributed to the creation of Plan 9 and Inferno distributed operating systems.
While neither Plan 9 or Inferno have achieved widespread popularity, Inferno has been released as open source and is under continued development.
Ritchie retired as the head of Lucent Technologies System Software Research Department in 2007. He received numerous awards for his achievements, including the U.S. National Medal of Technology in 1999 in conjunction with Thompson.
Rob Pike, who worked with Ritchie at Bell Labs and on the Plan 9 and Inferno projects, reported Ritchie's passing yesterday, saying, "He was a quiet and mostly private man, but he was also my friend, colleague, and collaborator, and the world has lost a truly great mind."
free(DennisRitchie);
Doesn’t this require a malloc first???
Seriously, I learned C in around 1985 while working bringing up the first hardware I designed that was part of a Unix box. That went on to be what I did for another 10 years. Knowing C was a fundamental capability of being able to deal with debugging the hardware I designed by writing my own test code, and communicating with the OS programmers and understanding what they were trying to get working.
Then came Linux - also built on “C” and emulating the entire Unix ecosystem. In my mind - we owe much more to Dennis that we do to Steve Jobs!
sad_news
while [ true ]
do
echo "ditto"
done
That DEC computer (PDP 10, perhaps?) in this image probably had less memory than the number of pixels in the image itself. It certainly had, at most, one percent or so of the amount of memory in the typical cell phone today, which are much smaller than the paper tape reader on the left side of those ASR33 teletype terminals.
The DEC tape units to the right of Dennis Richie's head each held (if memory serves) about 330K characters, and cost several thousand dollars in mid-1970s money (when a gallon of gas cost 36 cents per gallon or so).
That DEC computer (PDP 10, perhaps?) in this image probably had less memory than the number of pixels in the image itself. It certainly had, at most, one percent or so of the amount of memory in the typical cell phone today, which are much smaller than the paper tape reader on the left side of those ASR33 teletype terminals.
The DEC tape units to the right of Dennis Richie's head each held (if memory serves) about 330K characters, and cost several thousand dollars in mid-1970s money (when a gallon of gas cost 36 cents per gallon or so).
“
And remember, Ritchie kept his opening curly brace to the right of the function declaration, not below it. If it was good enough for K&R, it’s good enough for us =).”
Yes - but if you knew Pascal first.... you put it below - because that is where you would put the “begin” I did, thus do ;-)
We lost another great one... prayers for the family and loved ones...
Thanks for posting this, I had not heard
Dennis Ritchie. The shoulders Steve Jobs stood on.
Dave Cutler. I’m sure Ritchie and UNIX had a great influence on WNT also. I work with VMS daily. I just wish it could get more of a foothold in the industry. Its a great OS.
Disclaimer: Opinions posted on Free Republic are those of the individual posters and do not necessarily represent the opinion of Free Republic or its management. All materials posted herein are protected by copyright law and the exemption for fair use of copyrighted works.