Patterns++ -- the Next Generation

Douglas C. Schmidt
Editor, Patterns++
C++ Report
April 1997

Welcome to the new Patterns++ section in the C++ Report. As you may have noticed, I'm no longer the editor-in-chief of the C++ Report. Over the past year, my research group at Washington University has grown dramatically from 3 grad students to 6 graduate students, 4 full-time staff, and 2 undergraduates. Although my enthusiasm for C++ remains undiminished, there simply aren't enough hours in the day to manage 5 research projects, teach classes, develop our OO communication frameworks, present tutorials, answer email, and edit an entire magazine.

Fortunately, the C++ Report is in good hands now that the ubiquitous Robert Martin has become editor-in-chief. I have deep respect for Robert and have enjoy reading his lively and insightful postings on USENET for many years. I'm looking forward to our collaboration in the C++ Report, where I'll now be editing the Patterns++ section. An increasing amount of my work is related to patterns (particularly patterns for concurrent, parallel, and distributed systems). Therefore, I'm excited the SIGS is providing a venue for publishing high quality technical material on patterns and pattern languages for C++.

Patterns++ will focus on design and programming patterns that are useful to C++ developers. We'll cover a broad range of topics, including C++ idioms for memory management, reference counting, and exception handling; design patterns for concurrent and distributed C++ applications, and architecture patterns that focus on techniques for building flexible and efficient OO frameworks.

Reguarly columnists in Patterns++ will include Jim Coplien, Paul Jakubik, Robert Martin, and John Vlissides. Robert and Jim both have columns in this month's issue (Paul and John will appear in alternate issues). Robert presents a family of design patterns that help to manage the complexity of producing dual inheritance hierarchies in C++. Cope's describes the structure and dynamics of writer's workshops, which are an important element of the patterns culture.

We'll also include a feature article on patterns in each issue. This month's feature by Julia Sime describes a concurrency control pattern for using smart pointers safely in multi-threaded systems. I've used variants of this pattern throughout the OO communication frameworks I've developed. In addition, we'll include special features from time-to-time. For instance, this month's Patterns++ has a short contribution from Jiri Soukup that discusses several issues that arise when implementing patterns.

If you have suggestions for Patterns++, or would like to contribute an article for publication, please send me email at

Back to C++ Report Editorials home page.

Last modified 11:34:38 CDT 28 September 2006