Computerworld

The A-Z of Programming Languages: C++

Bjarne Stroustrup of C++ fame dissects the history of his famed programming language
Tags | a-z of programming languages
Bjarne Stroustrup

Bjarne Stroustrup

Computerworld is undertaking a series of investigations into the most widely-used programming languages. Previously we have spoken to Alfred v. Aho of AWK fame, S. Tucker Taft on the Ada 1995 and 2005 revisions, Microsoft about its server-side script engine ASP, Chet Ramey about his experience maintaining Bash, and Charles H. Moore about the design and development of Forth.

In this interview, we chat to Bjarne Stroustrup of C++ fame about the design and development of C++, garbage collection and the role of facial hair in successful programming languages. Stroustrup is currently the College of Engineering Chair and Computer Science Professor at Texas A&M University, and is an AT&T labs fellow.

What prompted the development of C++?

I needed a tool for designing and implementing a distributed version of the Unix kernel. At the time, 1979, no such tool existed. I needed something that could express the structure of a program, deal directly with hardware, and be sufficiently efficient and sufficiently portable for serious systems programming.

You can find more detailed information about the design and evolution of C++ in my HOPL (History of Programming Languages) papers, which you can find on my home pages, and in my book "The Design and Evolution of C++".

Was there a particular problem you were trying to solve?

The two problems that stick in my mind were to simulate the inter-process communication infrastructure for a distributed or shared-memory system (to determine which OS services we could afford to run on separate processors), and [the need] to write the network drivers for such a system. Obviously - since Unix was written in C - I also wanted a high degree of C compatibility. Very early, 1980 onwards, it was used by other people (helped by me) for simulations of various network protocols and traffic management algorithms.

Where does the name C++ come from?

As "C with Classes" (my ancestor to C++) became popular within Bell Labs, some people found that name too much of a mouthful and started to call it C. This meant that they needed to qualify what they meant when they wanted to refer to Dennis Ritchie's language, so they used "Old C", "Straight C", and such. Somebody found that disrespectful to Dennis (neither Dennis nor I felt that) and one day I received a "request" though Bell Labs management channels to find a better name. As a result, we referred to C++ as C84 for a while. That didn't do much good, so I asked around for suggestions and picked C++ from the resulting list. Everybody agreed that semantically ++C would have been even better, but I thought that would create too many problems for non-geeks.

More about: AT&T, AT&T, Bell Labs, CERN, Critical Systems, Google, ISO, Microsoft, NASA, Provision, ProVision, Quality Systems
References show all

Comments

1

George

Mon 30/03/2009 - 00:43

My favorite

C++ is my favorite language, the language I would spend all day working with without complains. The problem is that today is becoming very hard to find jobs for c++. I have to suffer doing sugar code in Java just to make some money...

2

Sango

Sun 27/09/2009 - 23:19

C++ - A computer language that will will remain with the computer technology evolution.

<a href="http://dailymovielinks.org/">movie download links</a>

3

Anonymous

Sun 15/11/2009 - 07:15

i think it is C++ is most common. I definitely use it the most. I also have friends that use it all the time plus use it at work.

<a href="http://www.orlando-personalinjurylawyers.com">Orlando Personal Injury Lawyers</a>

4

web conferencing

Sat 05/12/2009 - 16:38

I must say, it's very true, gettig a job as a c++ programmer is very hard. Most of the companies jump on the .net or java band wagon.

Mike @ <a href="http://www.webtrain.com">web conferencing</a>

5

Anonymous

Sat 05/12/2009 - 19:05

It's nigh impossible to get a C++ role these days.

6

dg6473

Fri 25/12/2009 - 08:35

I am incredibly impressed with the utter complexities of what it takes to program and architect not the hardware just but kernels within the operating system. It seems like it is one of the most difficult types of programming to accomplish, And anyone who has that background in understanding as an Application Specilist the components of the kernel in relation to everthing that it truly effects in a system, and can understand how to correct errors involved and "Kernel Panic", virtualization and even simplisticly the area of memory is in my eyes a technology genius.
There is so many componets involved in designing the archtecture, layer after layer one relies on the other and other innovative techniques one must have to accomplish such a project. I never realize how entirely depending an operation systm let alone the whole network relies on the kernal because it is the bridge between the application and data stored within the system.
Currently, I am actually in need of an C++ Networking Specialist who can design, build, archiitect a kernal for a Unix system. This is a very high level job and although people have done pieces and elements with Kernel, this job focuses on someone that has and knows everything involved and all components relative to make sure the system operates effectively.
If there is that person out there, I would love to speak with them. My email address is dan@williamsandharris.com
Thanks and take care,

7

amit

Sat 03/04/2010 - 15:08

Hi Bjarne ,
You Got nice hair cut :)

Post new comment

The content of this field is kept private and will not be shown publicly.
Users posting comments agree to the Computerworld comments policy.
Login or register to link comments to your user profile, or you may also post a comment without being logged in.
Related Coverage
Related Whitepapers
Community Comments
Whitepapers
All whitepapers
 
Featured Whitepapers
Hidden Costs? Evaluating ‘Budget’ Email Security Solutions

For the IT Manager detailed to plan and implement an email security strategy, choosing a ‘budget’ option can ostensibly tick a lot of boxes. But how low-cost and easy to manage do these solutions actually prove to be? How does the headline cost compare with the experience they deliver? Read on to find out more.

Zones
SAS Resource Centre

This Resource Centre hosts a wealth of thought leadership articles, whitepapers, and success videos, to help you make the most out of your corporate information in order to swiftly make sound business decisions to survive and thrive in the current economic climate.

Oracle Resource Centre

News, Features and the latest whitepapers on SOA, Application Grid, Enterprise Management and Database

Computerworld newsletter
Join the most dedicated community for IT managers, leaders and professionals in Australia
Sponsored Links
 
Copyright 2010 IDG Communications. ABN 14 001 592 650. All rights reserved.
Reproduction in whole or in part in any form or medium without express written permission of IDG Communications is prohibited.