RIP: Dennis Ritchie, linguist and logician

RIP: Dennis Ritchie, linguist and logician

It must be getting to that point in computing’s history, as it appears that the pioneers are passing from the world. One of those was Dennis RitchieSometimes it’s all to easy to forget that computing didn’t really start until the early 60’s. Before this point, we had a lot of interesting hardware platforms (such as Babbage’s difference engine), but the science that supported them in terms of maths, logic and electronics were very much in their infancy.

During the 1960’s advancements in logic (the use of a sequence of Boolean circuits to convert input data to output information) were made, both at the theoretical level, and then through the practical level with transistorized logic gates becoming available. These lead to some specific dedicated function “computers”.

But the development of flexible platforms that could be “programmed” to provide specific tasks required not-only the machine-code interface to allow the system to operate at its most efficient, but also higher-level programming languages to allow the task to be broken down into meaning routines, and for these to be coded at a higher level that the machine code for programmer efficiency. This had to wait until the late 1960’s, when a lot of people were looking at the rapidly advancing underlying hardware, and programmers had challenges in making efficient use of the new capabilities of the hardware in a new and novel machine-code for each platform.

Dennis Ritchie was a key exponent of the use of higher level languages to achieve this, and he worked on many over his life time, in particular B and later in conjunction with Brian Kernighan, the C language, developed during 1969 and 1973 at the Bell Labs as part of the Unix platform (indeed, C is an integral part of the Unix operating system, with most of the system itself encoded in C after 1973, having initially been encoded in Ken Thompson’s B language). The most definitive form, the so-called K&R C (published in 1978 as part of the “The C Programming Language“), became the informal specification of the C language, and a definition of how to do it “right”, and have it work on almost any C compiler.

C is not really a high level language, such as Pascal, or COBOL, developed at about the same time. These languages had a high level of abstraction from the underlying hardware. C however, evolved to support the need to get the best from the underlying system platform, and so evolved elements to gain the most efficiency from the limited hardware resources available. (Witness C’s ability to manage bit-packed fields without significant overhead, which is great to manage device registers)

The flexibility of C and subsequently C++ and later C# has allowed it to become the standard for most systems languages, and many applications are still built on top of the C infrastructure. Indeed, this is just one of the reasons that he achieved acclaim outside of the world of computing, being granted in 1999, the National Medal of Technology (along with Ken Thompson) for the development of C and Unix, one of many given during his life for this work.

Dennis Ritchie followed the archetypal view of the early 70’s computer scientist, with beard, long hair, and an inventive and agile mind. It’s that last bit that is going to be missed in the future.

So long, Dennis Ritchie.

John Dixon

John Dixon is the Principal Consultant of thirteen-ten nanometre networks Ltd, based in Wiltshire, United Kingdom. He has a wide range of experience, (including, but not limited to) operating, designing and optimizing systems and networks for customers from global to domestic in scale. He has worked with many international brands to implement both data centres and wide-area networks across a range of industries. He is currently supporting a major SD-WAN vendor on the implementation of an environment supporting a major global fast-food chain.

Comments are closed.