[308] in Humor
CREATORS ADMIT UNIX, C HOAX!
daemon@ATHENA.MIT.EDU (Jered Floyd)
Fri Jun 3 19:56:46 1994
Date: Fri, 3 Jun 1994 19:50:23 -0400
From: Jered Floyd <jjfloyd@vela.acs.oakland.edu>
To: humor@MIT.EDU
Hehe...just found this, it's GREAT!
Sorry if this has been submitted before...
CREATORS ADMIT UNIX, C HOAX!
In an announcement that has stunned the computer industry, Ken Thompson,
Dennis Ritchie, and Brian Kernighan admitted that the Unix operating system
and C programming language created by them is an elaborate prank kept alive
for over 20 years. Speaking at the recent UnixWorld Software Developement
Forum, Thompson revealed the following:
"In 1969, AT&T had just terminated their work with the GE/Honeywell/AT&T
Multics project. Brian and I had started work with an early release of
Pascal from Professor Nichlaus Wirth's ETH labs in Switzerland and we were
impressed with the elegant simplicity and power. Dennis had just finished
reading "Bored of the Rings", a National Lampoon parody of Tolkein's "Lord
of the Rings" trilogy. As a lark, we decided to do parodies of the
Multics environment and Pascal. Dennis and I were responsible for the
operating environment. We looked at Multics and designed the new OS to be as
cryptic and complex as possible to maximize the casual users frustration
levels, calling it Unix as a parody of Multics, as well as other more risque
allusions. We sold the terse command language to noviates by telling them
that it saved them typing.
Then Dennis and Brian worked on a warped version of Pascal, calling it 'A'.
'A' looked a lot like Pascal, but elevated the notion of direct
memory address (which Wirth had banished) to the central concept of
the language. This was Dennis's contribution, and he in fact coined
the term "pointer" as an innocuous sounding name for a truly
malevolent construct. Brian must be credited with the concept of having
absolutely no absolute I/O specification: this ensured that at least
50% of the typical commercial program would have to be re-coded when
changing hardware platforms. Brian was also directly responsible for
pitching this lack of I/O as a feature: it allowed us to describe the
language as "truly portable".
When we found others were actually creating real programs with 'A', we
removed compulsory type-checking on function arguments. Later, we added a
notion called 'casting': this allowed the programmer
to treat an integer as though it were a 50kb user-defined structure. When we
found that some programmers were simply not using pointers, we eliminated
the ability to pass structures to functions, forcing their use in even the
simplest applications. We sold this, and many other features, as
enhancements to the efficiency of the language. In this way, our prank
evolved into B, BCPL, and finally C.
We stopped when we got a clean compile on the following syntax:
for(;P("\n"),R-;P("|"))for(e=C;e-;P("_"+(*u++/8)%2))P("|"+(*u/4)
At one time, we joked about selling this to the Soviets to set their
computer science progress back 20 or more years.
Unfortunately, AT&T and other US corporations actually began using Unix
and C. We decided we'd better keep mum, assuming it was just a passing
phase.
In fact, it's taken US companies over 20 years to develop enough expertise
to generate useful applications using this 1960's technology parody. We are
impressed with the tenacity of the general Unix and C programmer. In fact,
Brian, Dennis, and I have never ourselves attempted to write a commercial
application in this environment.
We feel really guilty about the chaos, confusion, and truly awesome
programming that have resulted from our silly prank so long ago".
Dennis Ritchie said: "What really tore it (just when ADA was catching on),
was that Bjarne Stroustrup caught on to our joke. He extended it to further
parody Smalltalk. Like us, he was caught by surprise when nobody laughed.
So, he added multiple inheritance, virtual base classes, and
later...templates. All to no avail. So, now we have compilers that can
compile 100,000 lines per second, but need to process header files
for 25 minutes before they get to the meat of "Hello, world"."
Major Unix and C vendors and customers, including AT&T, Microsoft,
Hewlett-Packard, GTE, NCR, and DEC have refused comment at this time.
Borland, a leading vendor of object-oriented tools, including the popular
Turbo Pascal and Borland C++, stated that they had suspected this for a
couple of years. In fact, the notoriously late Quattro Pro
for Windows was originally written in C++. Phillipe Kahn said: "After two
and a half years programming, and massive programmer burn-outs, we re-coded
the whole thing in Turbo Pascal in three months. I think its fair to say
that Turbo Pascal saved our bacon." Another Borland spokesman said that they
would continue to enhance their Pascal products and halt further efforts to
develop C/C++.
Professor Wirth of the ETH institute and the father of Pascal,
Modula 2, and Oberon structured languages, cryptically said "P.T.
Barnum was right." He had no further comment.