{logo}

January 2004
Volume 22 Number 1

FEATURES

Mixed-Language Development & SWIG

Phil Tomson
Phil uses SWIG to wrap C++ classes so that they are available from Ruby. In the process, he uncovers several benefits of doing mixed-language development with C++ and Ruby.

Wrapping C with C++ in .NET

George Levy
A common software requirement is for code written in one computer language to be used by software developed in a different computer language. George shows how existing C software can be wrapped in C++, thus making it more accessible from .NET languages such as C# and VB.NET.

C++, Fortran, & Shared Libraries

Dong Weiguo
Here's an approach to mixing C++ and Fortran for Linux and Windows by compiling Fortran functions separately into shared libraries, then explicitly calling them in C++.

A C++ Producer-Consumer Concurrency Template Library

Ted Yuan
Producer-consumer is a well-known C++ concurrency pattern that's been applied to applications ranging from scientific simulations to distributed parallel computing environments.

Concurrent Access Control & C++

Haifeng Li and Keshu Zhang
Our authors implement a monitor facility efficiently in only 50 simple lines—and without any extensions to Standard C++.

Policy-Driven Design & the Intel IPP Library

Shehrzad Qureshi
Shehrzad turns to generic programming techniques when using Intel's Integrated Performance Primitives Library to build a C++-based signal-processing application.

STL Member Function Adaptors

Claudio Taglienti
Have you ever wished that STL member function adaptors like mem_fun or mem_fun_ref would like you invoke a method of a class of your choice?

COLUMNS

Positive Integration

Matthew Wilson
Matthew ushers in the first three mappings—C++ wrapper classes, C++ STL, and C#—to recls, his platform-independent library that provides recursive filesystem searching.

Conversations

Herb Sutter and Jim Hyslop
The Guru tackles std::string, magic numbers, and constness in references.

Programmer's Book Reviews

Jack J. Woehr and Gregory V. Wilson
This month we examine a bevy of books, including Linux and the UNIX Philosophy, Automating UNIX and Linux Administration, Code Generation in Action, and assorted bloopers and hacks.

DEPARTMENTS

Editor's Forum

New Products