by Matthew H. Austern
C++ programmers were introduced to generic programming in 1994, when Hewlett-Packard released the Standard Template Library (STL), which was subsequently adopted as part of the C++ Standard Library. Late last year, Silicon Graphics released a new version of the STL. Matt, along with Alexander Stepanov and Hans Boehm, was one of its coauthors.
by Nathan Myers
The STL is flexible, but does it use too much memory? Nathan shows how the STL-and you-can use empty subobjects without bloating your data requirements.
by Larry E. Baker, Jr.
C++ programmers must sometimes use legacy C support libraries, even though C and C++ styles don't always mix. Larry presents a C++ template wrapper that takes a C
hash-table library into the world of C++.
by William Grosso
Language choice can affect the design patterns you use and how your applications are structured. William examines patterns sometimes used with Objective-C, but not commonly used (or used differently) with C++.
by Andrew Wilson
The JDK 1.1 implements a native calling convention-the Java Native Method Interface (JNI)-that makes it possible to do more than just convert types between Java and C++.
by Robert R. Collins
Two days before Intel's biggest processor announcement in years, a math bug in the Pentium Pro and Pentium II came to light. Robert takes you inside the Dan-0411 "flag erratum," and tells how the story unfolded.
by Andy Yuen
Andy extends Concurrent Small C (presented last year at this time) by building a version called "Retargetable CSC" (RCSC) that is retargetable, with this port targeting the 8051 microcontroller.
by Al Williams
The traditional approach to creating active web pages is to write CGI programs that accept input (from a form or URL) and send output to web browsers. If you use Microsoft's Internet Information Server (IIS), you can use an ISAPI DLL. Al mixes C++ and Visual Basic to create an ISAPI module that lets you write ActiveX ISAPI extensions.
by Blake McBride
Dynace, the development tool Blake presents here, adds to C or C++ object-oriented capabilities previously available only in languages such as Smalltalk and CLOS-but without the overhead normally associated with those environments.
by Harold R. Kasperink and John C. Dekker
Mapping design problems to programming problems leads to software solutions that are easy to extend and reuse. Our authors explain how they resolved multithreaded porting problems using design patterns. The database they use is Oracle and the database transactions are implemented using Oracle ProC as an embedded database command language.
by Michael Swaine
Irony is music to Michael's ears in this month's column.
by Al Stevens
Al reports on his sojourn to Jim McCarthy's TeamworX BootCamp, a one-week workshop about "how to deliver great software on time every time."
by Clif Berg
Signed Java applets provide a means of verifying the authenticity of a program. Cliff describes how to create them using JAR Files.
by Jonathan Pincus and Jerry Schwarz
Sometimes, traditional sorting is overkill-you only need to rearrange things to satisfy a few conditions. Our authors show how topological sorting does only as much as you need.
by George Shepherd and Scot Wingo
George and Scot continue their examination of Microsoft's Active Template Library, this month looking at the heart of ATL, including its support for multithreading and its various implementations of IUnknown.
by Michael E. Fitzpatrick and Laurence Vanhelsuwe'
Michael Fitzpatrick examines Dynamics of Software Development, by Jim McCarthy, while Laurence Vanhelsuwe' looks at The Unicode Standard, Version 2.0.
by Jonathan Erickson
by you
by the DDJ staff
by Eugene Eric Kim
by Michael Swaine