1995 21.12 1997

Vol.21 n°12 (#254) december 1996

(ddj_1996_12.jpg)

p.6 EDITORIAL

[author : Jonathan Erickson] #Edito

TABLE OF CONTENTS

FEATURES

p.16 DCE PTHREADS VERSUS NT THREADS

[author : Michael Yam]

Michael ports PTF, a C++ class library for DCE pthreads, from HP-UX System 9 to Windows NT. In doing so, he examines the differences between pthreads and NT threads, and describes the porting experience.

p.22 INSIDE THE WINHELP() API FUNCTION

[author : Paul Kissel]

Paul shows what's involved in building a platform-independent implementation of the WinHelp() function. He then shares "seven deadly sins" you should avoid when writing portable software.

p.26 LUA: AN EXTENSIBLE EMBEDDED LANGUAGE

[author : Luiz Henrique de Figueiredo, Roberto Ierusalimschy, Waldemar Celes]

Lua is a freely-available, general-purpose embedded programming language designed to support procedural programming with data-description facilities. Its code compiles without change in most ANSI C compilers, including gcc (on AIX, IRIX, Linux, Solaris, SunOS, and ULTRIX), Turbo C (on DOS), Visual C++ (on Windows 3.1/95/NT), Think C (MacOS), and CodeWarrior (MacOS).

p.34 VIRTUAL AUDIO THROUGH RAY TRACING

[author : Tom Zudock]

By understanding how we hear and the cues we use to identify the relative location of sound, you can process sound that's perceived as "virtual audio." In this article, Tom focuses on how you determine the early reflections of a sound source that reach a listener in a simple room.

p.46 MULTITHREADING AND VISUAL BASIC

[author : Dino Esposito]

Although Visual Basic does not support native multithreading, it does support the Windows API. This means you can write VB applications composed of two or more threads. Dino shows you how to create multithreaded applications using both the SDK and Visual Basic.

EMBEDDED SYSTEMS

p.50 INSIDE MOTOROLA'S TPU

[author : Richard Soja]

Any number of embedded-control applications require high-resolution timing capabilities. Consequently, devices such as Motorola's Time Processor Unit (TPU) are becoming increasingly common for high-end control processors.

NETWORKED SYSTEMS

p.68 EXTENDING HTTP SERVERS WITH DGI AND TGI

[author : Andrew Montefusco]

To reduce CGI-related overhead, Andrew implements two alternative approaches in his HTTPD2 server-Task Gateway Interface (TGI) and Dynamic Gateway Interface (DGI). Both approaches avoid the overhead of starting a new process for each separate request.

PROGRAMMER'S TOOLCHEST

p.74 EXAMINING THE WINBATCH TOOLKIT

[author : Dot Schryver]

The WinBatch Toolkit, which provides traditional batch-language file-management capabilities, is based on a structured programming model. Dot tells how Bentley College is using WinBatch to support over 7000 networked users.

p.80 WEB PROGRAMMING WITH VISUAL FOXPRO

[author : George F. Goley IV]

Visual FoxPro is a cross-platform, visual tool for database development that includes a number of wizards. Here, George uses the WWW Search Page Wizard to run Visual FoxPro programs across the Internet.

COLUMNS

p.98 PROGRAMMING PARADIGMS

[author : Michael Swaine]

The personal computer revolution was more than a Silicon Valley phenomenon.

p.106 C PROGRAMMING

[author : Al Stevens]

Al reports on what the experts have to say about delete this;, then presents a generic Undo class library.

p.110 JAVA Q&A

[author : Cliff Berg]

Cliff presents a technique for building a drag-and-drop interface using standard AWT components. In doing so, he builds an application that lets end users perform a host-to-host file transfer.

p.118 ALGORITHM ALLEY

[author : Dann Corbit and Rafael Collantes-Bellido]

This month, we examine a pair of unrelated algorithms. Dann looks at ways to calculate factorials, while Rafael uses differential equations to produce natural-looking textures.

p.124 UNDOCUMENTED CORNER

[author : George Shepherd and Scot Wingo]

George and Scot examine the undocumented areas of CSplitterWnd, one of the most complicated and confusing of all MFC classes.

p.134 PROGRAMMER'S BOOKSHELF

[author : Doug Nickerson]

Doug examines a trio of Java books- David Flanagan's Java in a Nutshell, Peter van der Linden's Just Java, and Java Programming Language Handbook, by David H. Friedel, Jr. and Anthony Potts.

FORUM

p.8 LETTERS

[author : you]

p.12 NEWS & VIEWS

[author : the DDJ staff]

p.137 OF INTEREST

[author : Eugene Eric Kim]

p.144 SWAINE'S FLAMES