Previous Table of Contents Next


6.7.1. Conferences

In 1987, USENIX, the UNIX users’ association, took the initiative to hold the first conference specifically devoted to C++. Thirty papers were presented to 214 people in Santa Fe, New Mexico, in November 1987.

The Santa Fe conference set a good example for future conferences with a mix of papers on applications, programming and teaching techniques, ideas for improvements to the language, libraries, and implementation techniques. Notably for a USENIX conference, there were papers on C++ on the Apple Macintosh, OS/2, the Connection machine, and for implementing non-UNIX operating systems (for example, CLAM [Call, 1987] and Choices [Campbell, 1987]). The NIH library (Gorlen, Orlow, & Plexico, 1987) and the Interviews library (Linton & Calder, 1987) also made their public debut in Santa Fe. An early version of what became Cfront 2.0 was demonstrated, and I gave the first public presentation of its features. The USENIX conferences continue as a technically and academically oriented forum for C++ and programming in general. The proceedings from USENIX C++ conferences are among the best reading about C++ and its use. In addition, many commercial and semi-commercial conferences cover C++.

6.7.2. Journals and Books

By 1991, there were more than 60 books on C++ available in English, along with both translations and locally written books available in languages such as Chinese, Danish, French, German, and Japanese. By 1996, several hundred books on C++ had appeared. Naturally, the quality varied enormously.

The first journal devoted to C++, The C++ Report from SIGS publications, began in January 1989 with Rob Murray as its editor. A larger and glossier quarterly, The C++ Journal, appeared in spring 1991. In addition, there are several newsletters controlled by C++ tools suppliers, and many journals such as Computer Language, The Journal of Object-Oriented Programming, Dr. Dobbs’ Journal, The C Users’ Journal, and .EXE run regular columns or features on C++. Andrew Koenig’s column in The Journal of Object-Oriented Programming was particularly consistent in its quality and lack of hype.

Newsgroups and bulletin boards such as comp.lang.c++ on Usenet and c.plus.plus on BIX also produced hundreds of thousands of messages over the years to the delight and despair of their readers. Keeping up with what was written about C++ was more than a full-time job.

6.7.3. Compilers

The Santa Fe conference marked the announcement of the second wave of C++ implementations. Steve Dewhurst described the architecture of a compiler he and others were building in AT&T’s Summit facility, Mike Ball presented some ideas for what became the TauMetric C++ compiler (more often known as the Oregon Software C++ compiler), and Mike Tiemann gave an animated and interesting presentation of how the GNU G++ he was building would do just about everything and put all other C++ compiler writers out of business. The new AT&T C++ compiler never materialized; GNU C++ Version 1.13 was first released in December 1987; and TauMetric C++ first shipped in January 1988.

Until June 1988, all C++ compilers on PCs were Cfront ports. Then Zortech started shipping its compiler. The appearance of Walter Bright’s compiler made C++ “real” for many PC-oriented people for the first time. More conservative people reserved their judgment until the Borland C++ compiler in May 1990 or even Microsoft’s C++ compiler in March 1992. DEC released its first independently developed C++ compiler in February 1992, and IBM released its first independently developed C++ compiler in May 1992. By the mid-1990s, more than a dozen C++ compilers had been independently developed.

In addition to these compilers, Cfront ports were everywhere. In particular, Sun, HP, Centerline, ParcPlace, Glockenspiel, and Comeau Computing shipped Cfront-based products on just about any platform. In the late 1990s, a compiler front end from the Edison Design Group seemed to occupy the ecological niche for a highly portable C++ analyzer carved out by Cfront.


Previous Table of Contents Next