Thompson worked at Bell Labs for most of his career where he designed and implemented the original Unix operating system.
When asked how he learned to program, Thompson stated, "I was always fascinated with logic and even in grade school I'd work on arithmetic problems in binary, stuff like that.
[13] Eventually, the tools developed by Thompson became the Unix operating system: Working on a PDP-7, a team of Bell Labs researchers led by Thompson and Ritchie, and including Rudd Canaday, developed a hierarchical file system, the concepts of computer processes and device files, a command-line interpreter, pipes for easy inter-process communication, and some small utility programs.
Thompson had developed the CTSS version of the editor QED, which included regular expressions for searching text.
[19] In early 1976, Thompson wrote the initial version of Berkeley Pascal at the Computer Science Division, Department of Electrical Engineering and Computer Science, UC Berkeley (with extensive modifications and additions following later that year by William Joy, Charles B. Haley[20][21][22] and faculty advisor Susan Graham).
[23] Later, along with Joseph Condon, Thompson created the hardware-assisted program Belle, a world champion chess computer.
In a 2009 interview, Thompson expressed a negative view of C++, stating, "It does a lot of things half well and it's just a garbage heap of ideas that are mutually exclusive.
[30] In 1995, Thompson collaborated on music compression with Sean Dorward, based on original research work done by Jim Johnston, under the guidance of Joe Hall and Jont Allen.
In 2004, he assisted in the implementation of Turochamp, a chess program Alan Turing devised in 1948, before any computers existed that could execute it.
Referring to himself along with the other original authors of Go, he states:[18] When the three of us [Thompson, Rob Pike, and Robert Griesemer] got started, it was pure research.
[laughter] ... [Returning to Go,] we started off with the idea that all three of us had to be talked into every feature in the language, so there was no extraneous garbage put into the language for any reason.In 1980, Thompson was elected to the National Academy of Engineering for "designing UNIX, an operating system whose efficiency, breadth, power, and style have guided a generation's exploitation of minicomputers".
[36] In 1997, both Thompson and Ritchie were inducted as Fellows of the Computer History Museum for "the co-creation of the UNIX operating system, and for development of the C programming language".
[37] On April 27, 1999, Thompson and Ritchie jointly received the 1998 National Medal of Technology from President Bill Clinton for co-inventing the UNIX operating system and the C programming language which together have "led to enormous advances in computer hardware, software, and networking systems and stimulated growth of an entire industry, thereby enhancing American leadership in the Information Age".
[39] In 2011, Thompson, along with Dennis Ritchie, was awarded the Japan Prize for Information and Communications for the pioneering work in the development of the Unix operating system.