[ Features Index | Silicon Valley | Metroactive Home | Archives ]
GREP, AWK, PS
By Annalee Newitz
I'M LEARNING UNIX, the oldest computer network operating system. It was invented by a bunch of hackers at Bell Labs in the late 1960s, mostly because they wanted to play "Space War" on a DEC PDP-7. Quickly, however, UNIX creators Ken Thompson and Dennis Ritchie saw that their tough little OS could serve other purposes, and they installed it on some of the newer Bell Labs computers. By 1971, Thompson and Ritchie had penned the first UNIX manual, and Ritchie was well on his way to inventing the programming language C.
The rest is history: UNIX became the progenitor of great operating systems like BSD, Solaris and Linux. There are even some ideas from UNIX in Windows, and the latest Apple OS is built on top of UNIX offshoot BSD. UNIX is the infrastructure that makes the Internet run, and chances are it's probably lurking somewhere under the hood of your local computer network too. The vocabulary and syntax of UNIX could be called the organizing principle of nearly every subsequent network operating system. New operating systems are compared to UNIX. It's the model, the foundation.
You can think of UNIX as being like Latin or Greek, languages whose words and ideas have formed the basis for dozens of others--chunks of these classical languages show up in French, Italian, Spanish, English, German and Russian. More importantly, Latin and Greek linguistic tools are still in use today. Although the Greeks and Romans didn't necessarily invent the philosophical treatise, the poem, the legal document, the sentence or the epistle, Westerners often look back to the Latin and Greek versions of these forms as the first fully realized versions of certain basic things we do with language.
Charles likes to say, "I think that I shall never see a poem written in C." It's true that we don't use computer operating systems and languages in the same way we do a language like English. But in UNIX, I have a basic tool kit that does things with data, often in sentences. You may address your shell program in UNIX thus: "GREP annalee work | WC > cool_crap." This sentence says, "Find every line in the file work that has the set of letters 'annalee' in it, send that information to a program that will count how many words there are in those lines and store that program's results in a file called 'cool_crap.'" Instead of manipulating language into a poem, you've converted it into abstract data. Either way, you're working in the realm of symbolism. And the kinds of tools and symbols that Kernigan and Ritchie poured into UNIX are still in use today, even in the most sophisticated computer networks.
When I was learning basic UNIX vocabulary like "rm" for "delete file" and "ls" for "list all files in this directory," my teacher kept asking the class, "And why pick these letters to stand for these functions? Same reason why you get a different pizza every Friday." Then he would pause and cackle gleefully, "It's totally random! The pizza is different because it's a different Friday!" Obviously "rm" comes from the word "remove," but as to why Ritchie chose "rm" instead of "rv"--well, it's just like the difference between pepperoni and linguica.
Ritchie explains on his website (www.bell-labs.com/history/unix/) that he wrote the basic components of UNIX while his wife was on a one-month vacation. "I allocated a week each to the operating system, the shell, the editor and the assembler to reproduce itself," he recalls. It's so weird to think that this language, which has helped create an entire communication system, was dreamed up so randomly--a little hobby to keep somebody occupied while his spouse was away.
There's a certain amount of randomness involved in UNIX, just as there is in English. Who knows why that pretty yellow flower got named "daisy"? Or why people have been naming their sons "Michael" for five millennia? The sounds are random, but their effects are not. Who knows what kind of culture we'll create with our new language at the dawn of its influence? What strange, sophisticated statements will come out of a linguistic toolbox containing PS, which allows you to look at all the processes the computer is running? Or AWK, which breaks sentences into their constituent parts and reorganizes them, often--admittedly--to the puzzlement of everyone involved?
No Greek of the fifth century B.C.E., hanging out in the gymnasium, could have predicted the sprawling, random mess that is contemporary English and its culture. And yet I couldn't wish a better sort of future on UNIX and the networks it spawns.
[ Silicon Valley | Metroactive Home | Archives ]
Copyright © Metro Publishing Inc. Metroactive is affiliated with the Boulevards Network.
For more information about the San Jose/Silicon Valley area, visit sanjose.com.
|
|