Introducing C++11: Next iteration of programming language passes review

Apr 11, 2011

(PhysOrg.com) -- This past week in Madrid, Spain, the next iteration of the C++ programming language, C++11, passed review by the technical standards committee.

Barring unforeseen delays the official standard will be approved in the fall.

Texas A&M Distinguished Professor and College of Engineering Endowed Chair in Computer Science Bjarne Stroustrup designed and implemented the C++ , which celebrated its 25th anniversary in October 2010. C++ is one of the most widely used programming languages; it simplified the interaction between man and machine and helped object-oriented programming become the leading method of software programming and development. Chances are if that you have an appliance in your house that uses a computer, it is running C++.

For a programming language, a standard represents a long-term commitment to the people who work with it. An ISO (International Organization of Standardization) standard will ensure that decades from now, today's standard conforming C++ programs will run with minimal modifications, just as an older C++ programs do today. The ISO standard will allow programmers to use C++ on essentially all computers and from every implementation provider. Traditionally the standardization of a programming language occurs about every 10 years, with most of the work done by volunteers. Stroustrup was heavily involved in the process for C++.

"The new standard provides language features that make it easier to write correct and well-performing code in C++ together with more standard libraries. For example, C++11 provides facilities for writing concurrent code (e.g. for multicore machines) in a type safe-manner. The improved language facilities are focused on allowing better specification and use of abstractions (classes and templates). Examples are a more efficient way of getting results out of functions (move semantic), better facilities for object initialization, and a simpler for loop. Examples of new library components are hash tables, threads, and regular expression matching."

Up next for Stroustrup is a ton of writing: "Next for me is to write the next edition of The C++ Programming Language, the definitive book on C++. Also, we now have the updated language features, but we don't yet have a doctrine of use; we don't have a coherent explanation of the language as a whole. People don't use individual language features; they need an explanation of how to use the features effectively in combination to solve real-world problems," Stroustrup said.

"The purpose of standardization is not language features; the purpose is to make C++ code faster, more reliable, easier to write, easier to maintain, and easier to modify. Now that we know what the standard looks like, we can start programming with it. Compilers are already implementing many of the new features today."

For more details, please see the C++0x FAQ at www.research.att.com/~bs/C++0xFAQ.html .

Stroustrup is a member of the National Academy of Engineering, an IEEE Fellow, an AT&T Fellow and an ACM Fellow. In 1993 he received the ACM Grace Murray Hopper award "for his early work laying the foundations for the C++ programming language. Based on those foundations and Dr. Stroustrup's continuing efforts, C++ has become one of the most influential programming languages in the history of computing." In 2008, Stroustrup received the Dr. Dobb's Excellence in Programming award for "advancing the craft of computer programming."

Explore further: Coping with floods—of water and data

Provided by Texas A&M University

4.4 /5 (11 votes)

Related Stories

C++ celebrates its 25th anniversary

Oct 15, 2010

(PhysOrg.com) -- Oct. 14 marked the 25th anniversary of the commercial release of the programming language C++, which was designed and implemented by Dr. Bjarne Stroustrup, Distinguished Professor and College ...

Google Go gets going (w/ Video)

Nov 11, 2009

(PhysOrg.com) -- Google has introduced its new experimental programming language Go, which aims to combine speedy application development through simplified coding with high-speed program execution.

Instant messaging -- a new language?

May 01, 2008

For many adults over the age of 30, the former groupings of letters would seem incoherent, but for a newer generation of technologically-savvy young adults it can say a lot.

Recommended for you

Coping with floods—of water and data

Dec 19, 2014

Halloween 2013 brought real terror to an Austin, Texas, neighborhood, when a flash flood killed four residents and damaged roughly 1,200 homes. Following torrential rains, Onion Creek swept over its banks and inundated the ...

Cloud computing helps make sense of cloud forests

Dec 17, 2014

The forests that surround Campos do Jordao are among the foggiest places on Earth. With a canopy shrouded in mist much of time, these are the renowned cloud forests of the Brazilian state of São Paulo. It is here that researchers ...

User comments : 6

Adjust slider to filter visible comments by rank

Display comments: newest first

gunslingor1
not rated yet Apr 11, 2011
ISO (International Organization of Standardization)

-They need to stop changing that dam acronym. First it was internation standard org, than oranization of standardization, then standardization of international organizations, then InterOrg tionalization standardization. Lol, the old name was better.

Also, C++11 is s silly pun of a name, but this stopped being original and funny in the 80's. Wouldn't be surprised at all if C++ loses some ground for its name alone.
CHollman82
1 / 5 (1) Apr 11, 2011
So is this the same thing as C++0x?

Why not name it C+++?
Jaeherys
not rated yet Apr 11, 2011
Like the name has anything to do with how many people use it...
The major thing will probably be the upgrade process. If it is a smooth as from VB6 to VB.NET then I can't see why I wouldn't be making the jump. But if I had to reprogram thousands and thousands of lines of code, lol... Luckily this really just sounds like a touch up to C++ to make it more usable and to include more modern programming needs; not so much the VB jump.
But handling threads is a pain in the butt and if they really can make it easier (and hopefully faster) then that's a step in the right direction.
Jaeherys
not rated yet Apr 11, 2011
I looked at c++0x; pretty nifty. I also have the same question as you as to whether it is the same thing. I guess we'll have to wait until fall :(.
Vendicar_Decarian
not rated yet Apr 12, 2011
Oh, lookie. The next generation of absolute crap.
GaryMac
not rated yet Apr 12, 2011
"Chances are if that you have an appliance in your house that uses a computer, it is running C++."

Actually the chances are that it's running good old fashioned C. C++ is too complex (space hungry and too distant from the hardware) for most small cheap microprocessors to be able to run.

Please sign in to add a comment. Registration is free, and takes less than a minute. Read more

Click here to reset your password.
Sign in to get notified via email when new comments are made.