{logo}

January 2002
Volume 20 Number 1

MIXED-LANGUAGE PROGRAMMING

Code Generation Templates Using XML and XSL

Cristian Georgescu
XML is indisputably the long-awaited lingua franca for defining and transmitting structured data. With a little help from XSL, it can also generate C++ code for you.

Extending Pocket PC Apps Written in C with VB

Geoffrey Feldman
Using Visual Basic for handheld applications is not standard fare, but it's not that hard either.

A Stream Class for Calling Perl from C++

Robert Y. Seward
Mixing Perl and C++ just got a whole lot easier.

FEATURES

Encapsulating Virtual Memory in Windows

Joey Rogers
This class gives you convenient, direct control over memory-mapped files in Win32.

C/C++ CONTRIBUTING EDITORS

The New C: Variable Length Arrays, Part 3: Pointers and Parameters

Randy Meyers
Randy shows that pointers to VLAs are as convenient as pointers to normal arrays. The question is: how many programmers understand pointers to arrays in the first place? Look here to see if you're one of them.

Sutter’s Mill: Toward a Standard C++0x Library, Part 1

Herb Sutter
Have you hugged your C++ vendor lately? You'll agree that they certainly deserve it as Herb takes us through the sticky wicket of versioning Standard C++.

The Standard Librarian: And Now for Something Completely Different

Matt Austern
C++0x is imminent. Here's a glance at what's happening and a suggestion on how you can contribute.

Uncaught Exceptions: Retreat

Bobby Schmidt
Have you ever wondered why no one ever tells Language Lawyer jokes? It may be because we need them so badly. The mighty Barrister shows his stuff again this month.

DEPARTMENTS

Editor’s Forum

New Products

We Have Mail

C++ EXPERTS ON THE WEB

In this new, web-only component of CUJ, we continue publication of the columns that were popular in the former C++ Report magazine. The following articles are featured on the CUJ website this month:

“Conversations: New Bases, Part 1”

by Herb Sutter and Jim Hyslop
Converting a text-represented number from one base to another is pretty simple. But how extensible and reusable can the solution be to solve more than one problem, when there are also additional requirements?

“The (B)Leading Edge: XDR_Stream Class, Part IV”

by Jack W. Reeves
This month Jack finishes up his XDR_Stream class by cleaning up its error handling. With this installment, Jack now feels like he has something that is production quality.

“Object Interconnections: Real-time CORBA, Part 2: Applications and Priorities”

by Douglas C. Schmidt and Steve Vinoski
The Real-time CORBA specification enhances regular CORBA by adding capabilities that control process, communication, and memory resources. These capabilities enable standard COTS middleware to improve the determinism of DRE applications by bounding their priority inversions and managing their system resources more predictably end-to-end. This column shows how to program the Real-time CORBA features that provide portable priority mapping and end-to-end priority preservation.