3 ms·
Was there anything specific about Bell Labs or working for the Bell system that influenced the design of UNIX and the userland tools? Did the needs of the Bell
by a-dub 4y ago
Was there anything specific about Bell Labs or working for the Bell system that influenced the design of UNIX and the userland tools? Did the needs of the Bell system influence any of this work, or was it pure computer science research (and the needs of the computer science research community) that influenced these designs? If awk were "designed for someone" who was it designed for? Did anyone who worked on UNIX or the computing stuff at Bell labs care about building things for telephone network operations or was it pure research and technology development for the art of it?
--
Good question! Many books have been written about why Bell Labs was so successful in creating research innovations that changed the world.
Bell Labs was interested in building operating systems even before the 1950s for use in AT&T's operations support systems for the global telephone network. (You might look at the Wikipedia article on BESYS.) In 1964 Bell Labs joined with MIT and General Electric to create an advanced operating system called the Multics project. (The article Unix and Multics at
https://multicians.org/unix.html https://multicians.org/unix.html
provides a lot of useful background. Also see Dennis Ritchie's article, The Evolution of the Unix Time-sharing System, which is a must read on the early development of Unix.)
In the 1960s Ken Thompson at the Computing Sciences Research Center at Bell Labs, Murray Hill, NJ worked on the Multics project. When Bell Labs pulled out of the Multics project in 1969, Ken Thompson on his own decided to build a much simpler operating system which became known as Unix. Dennis Ritchie, also in the CSRC at Bell Labs, joined Ken in creating Unix. Dennis invented the C programming language for this effort. Subsequently, many people in the CSRC and elsewhere contributed to the development of Unix. Doug McIroy (Ken Thompson's boss and the inventor of coroutines and pipes) deserves a lot of credit for shepherding the development of Unix.
The reason Unix and C became so successful is that they were designed by individuals with very good technical taste and not by committees. The Bell Labs research culture also let individuals have great discretion in determining what direction their research should take and one of the important functions of management was to provide adequate resources to make research projects successful and ultimately beneficial to the development of the global telecommunications infrastructure. Another motivating force for Bell Labs research was to create a patent portfolio for the company that could be used to get access to patents of other companies by cross-licensing.
What I found immensely gratifying by being involved with Unix was what Don Knuth had once told me. He said, the best theory is motivated by practice and the best practice by theory.
As for the motivation behind awk, I recommend looking at
https://www2.computerworld.com.au/article/216844/a-z_programming_languages_awk/ https://www2.computerworld.com.au/article/216844/a-z_program...