Computing Reviews
Today's Issue Hot Topics Search Browse Recommended My Account Log In
Review Help
Search
Software development for infrastructure
Stroustrup B. Computer45 (1):47-58,2012.Type:Article
Date Reviewed: Jun 6 2012

Bjarne Stroustrup’s C++ manuals have always been near my desk. They go beyond the usual language reference manual to demonstrate powerful features and knotty points. This short article and video (http://ieeexplore.ieee.org/xpl/multimedia.jsp?&arnumber=6081841&isnumber=6127981) is similar. It is an advertisement for some of the nonobject-oriented features in the new standard C++11. Stroustrup gives short examples of compact, correct, and fast code. He argues that these features are best for certain kinds of software that he calls “infrastructure,” which need higher reliability and better performance than nonessential software.

For example, type systems understand units and so can recognize and correct common errors at compile time with no runtime cost. The new C++11 operator”” makes the expression “1ft +3inches” compilable. The video shows that complex numbers could be coded like this “1+2i” and still compile correctly. Similarly, a careful choice of library templates, rather than just using big O rules of thumb, generates faster software that is highly reliable. Stroustrup argues for compile time polymorphism rather than virtual functions. This implies a different training for system programmers. He is not alone. Others argue that teaching object-oriented languages leads to a shortage of good coders for embedded and safety-critical software [1,2].

Language mavens and C++ users will enjoy this article and start looking forward to updated compilers. However, I doubt it will convert the Pythonistas and Java-heads of this world.

Reviewer:  Richard Botting Review #: CR140234 (1301-0048)
1) Leopold, G. Struggle continues to plug embedded programming gap. EE Times, (May 2012). http://www.eetimes.com/electronics-news/4372250/Struggle-continues-to-plug-embedded-programming-gap (accessed May 29, 2012).
2) Stack Overflow. Which languages are used for safety-critical software? http://stackoverflow.com/questions/243387/which-languages-are-used-for-safety-critical-software (accessed May 29, 2012).
Bookmark and Share
  Featured Reviewer  
 
Software Development (K.6.3 ... )
 
 
C++ (D.3.2 ... )
 
 
Computer And Information Science Education (K.3.2 )
 
Would you recommend this review?
yes
no
Other reviews under "Software Development": Date
Strategies for software engineering
Ould M., John Wiley & Sons, Inc., New York, NY, 1990. Type: Book (9780471926283)
Oct 1 1991
Applications strategies for risk analysis
Charette R., Intertext Pubs./McGraw-Hill Book Co., New York, NY, 1990. Type: Book (9780070108882)
Aug 1 1992
A survey of exploratory software development
Trenouth J. The Computer Journal 34(2): 153-163, 1991. Type: Article
Nov 1 1991
more...

E-Mail This Printer-Friendly
Send Your Comments
Contact Us
Reproduction in whole or in part without permission is prohibited.   Copyright 1999-2024 ThinkLoud®
Terms of Use
| Privacy Policy