[lug] Stroustrup interview?

B O'Fallon bof at americanisp.net
Mon Aug 28 15:33:49 MDT 2000


Sean Reifschneider wrote:

> I've seen it in various forms, including with his name properly spelled. Of
> course, it's telling that most of the URLs you'll find that interview on
> include the word "hoax" in them.

BOF writes:

There is also a comparable (although I personally think funnier) hoax on C:

Creators Admit Unix and C Language Hoax

     In an announcement that stunned the computer industry, Ken
Thompson, Dennis Ritchie and Brian Kernighan admitted the Unix operating
system and C programming language created by them is an elaborate prank,
kept alive over 20 years. Speaking at the recent UnixWorld Software
Development 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 Niklaus Wirth's ETH labs in Switzerland and we
were impressed with its elegant simplicity and power. Dennis had just
finished reading 'Bored of the Rings', a National Lampoon parody of the
Tolkien'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 complex and cryptic
as possible to maximize casual users' frustration levels, calling it
Unix as a parody of Multics, as well as other more isque allusions. We
sold the terse command language to novitiates by telling them
that it saved them typing."

Then Dennis and Brian worked on a warped version of Pascal, called 'A'.
'A' looked a lot like Pascal, but elevated the notion of the 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 idea of having absolutely no standard
I/O specification: this ensured that at least 50% of the typical
commercial program would have to be recoded when changing hardware
platforms. Brian was also 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 we called "casting": this allowed the programmer to treat an
integer as though it were a 50k user-defined structure. When we found
that some programmers were simply not   using pointers, we eliminated
the ability to pass structures to functions, enforcing 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=3DC;e-;P("_"+(*u++/8)%2))P("|"+(*u/4)%2);

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 technological 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 projects that have
resulted from our silly prank so long ago."

Dennis Ritchie said: "What really tore it (just when AIDA was catching
on), was that Bjarne Stroustrup caught onto 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 we now 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 to comment on the
announcement. Officials of Borland International, a leading vendor of
object-oriented tools, including Turbo Pascal and Borland C++, stated
they suspected this for a couple of years.

In fact, the notoriously late Quattro Pro for Windows was originally
written in C++. Borland CEO Del Yocam said: "I'm told that, after two
and a half years of programming, and massive programmer burn-out, we
recoded the whole thing in Turbo Pascal in three months. It's fair to
say that Turbo Pascal saved our bacon back then". 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 father of the Pascal, Modula 2
and Oberon structured languages, cryptically said "P.T. Barnum was
right." He had no further comments.





More information about the LUG mailing list