2000 26.10 2002

Vol.26 n°10 (#329) october 2001

(ddj_2001_10.jpg)

p.8 EDITORIAL

[author : Jonathan Erickson] #Edito

TABLE OF CONTENTS

FEATURES

p.21 REGULAR EXPRESSIONS IN C++

[author : John Maddock]

Regex++ is a regular expression engine that makes C++ as versatile for text processing as script-based languages like Awk and Perl.

p.28 EXTRACTION AND EXAMINATION OF RELATIONS IN C++

[author : Keith Paton]

Design flaws can be automatically detected, as long as you can extract and manipulate sets of key relationships among the entities in C++ systems.

p.36 PRECOMPILED HEADERS & NORMAL C++ SEMANTICS

[author : Jeffrey Taylor]

If arranged correctly, precompiled headers, like those in Visual C++, can double the build speed. However, it is possible also to arrange precompiled header files in a manner that is inconsistent with normal C++ semantics.

p.40 C++ SET-THEORETIC OPERATIONS ON VIRTUAL CONTAINERS

[author : Gregory Begelman, Lev Finkelstein, and Evgeniy Gabrilovich]

The C++ Standard Template Library (STL) provides the set-theoretic operations union, intersection, difference, and symmetric difference, accessible through the header file <algorithm>.

p.50 C# & PERL

[author : Talbott Crowell]

Although C# is an evolution of C/C++ much like Java, it also borrows from other languages — and has facilities familiar to Perl. Talbott presents common Perl scripts that you can implement in C#.

p.56 SCRIPTING WITH JAVA & PYTHON

[author : Boudewijn Rempt]

Boudewijn shows how you can embed a standard language such as Python into a Java application.

p.62 SHORT MESSAGE SERVICES

[author : Ron Hume]

Short Message Services (SMS) let you send short text-based messages between wireless devices, such as cell phones and pagers.

EMBEDDED SYSTEMS

p.73 AN EMBEDDABLE HTTP SERVER

[author : M. Tim Jones]

Most HTTP servers for embedded devices place requirements on the design of embedded systems that adversely effect cost. The embeddable HTTP server Tim presents here is small, but still powerful enough to get the job done.

INTERNET PROGRAMMING

p.81 HIGH-PERFORMANCE WEB SITES: ADO VERSUS MSXML

[author : Tim Chester]

ADO and MSXML are tools that can be used to create high-performance web sites. MSXML provides flexibility, but ADO offers performance.

PROGRAMMER'S TOOLCHEST

p.91 VOICEXML AND THE VOICE/WEB ENVIRONMENT

[author : Lee Anne Phillips]

While the Internet is making inroads into the public switched-telephone network, XML protocols such as VoiceXML are providing access to a set of tools that address the entire range of web applications.

COLUMNS

p.99 PROGRAMMING PARADIGMS

[author : Michael Swaine]

Michael proves once again that he is a man of the (other) world.

p.105 C PROGRAMMING

[author : Al Stevens]

Al continues his search for the perfect C++ class library for Linux.

p.111 EMBEDDED SPACE

[author : Ed Nisley]

"Real time" sometimes doesn't have anything to do with "RTOS." Ed examines the problems you face when you have to decide which clock is giving you the real time.

p.117 JAVA Q&A

[author : Art Jolin]

Can J2EE manage cache and pool memory? Yes, and Art shows you how.

p.123 ALGORITHM ALLEY

[author : Tom Cargill]

Data that compresses well under a run-length encoding mechanism can be encoded in a way that is compatible with LZW's output, but independent of its patented algorithm.

p.126 DR. ECCO'S OMNIHEURIST CORNER

[author : Dennis E. Shasha]

Dr. Ecco and Liane divide their attention to add up the pluses and minuses in an effort to multiply the fun factor of Astrid Svensen's math class.

p.130 PROGRAMMER'S BOOKSHELF

[author : Barbara Lach-Smith]

GPRS and 3G Wireless Applications: Professional Developer's Guide, by Christoffer Andersson, arrives just as the mobile Internet seems ready to take off.

FORUM

p.10 LETTERS

[author : you]

p.18 NEWS & VIEWS

[author : Shannon Cochran]

p.134 OF INTEREST

[author : Della Song]

p.136 SWAINE'S FLAMES

[author : Michael Swaine]