April 1993 - ALGORITHMS AT WORK


FEATURES

ALGORITHMS FOR STEREOSCOPIC IMAGING by Victor J. Duvanenko and W. E. Robbins

Stereoscopic, or true 3-D, images take into account depth information that's lost when conventional 3-D images are projected onto a PC's 2-D screen. In addition to discussing hardware and software stereoscopic requirements, our authors present and implement algorithms for generating left- and right-eye views fundamental to stereoscopic viewing.

GENETIC ALGORITHMS AND DATABASE INDEXING by Joe Celko

Genetic algorithms mirror the natural selection process and just may be one solution to the thorny problem of finding near-optimal indexes for database applications. Joe describes how this works and speculates on how existing systems might use this genetic-algorithm technology.

TEXT EDITORS: ALGORITHMS AND ARCHITECTURES by Ray Valdes

From Stallman's GnuEmacs to Microsoft's Word, text editors are one of the most taken-for-granted, yet most often used, applications around. When done right, however, the choice of core algorithms and how they're implemented in the overall architecture can make the difference between a good editor and a great one.

DIFFERENTIAL COMPRESSION ALGORITHMS by James H. Sylvester

At first glance, differential image compression suggests some degree of graphics dependence. As James points out, however, a close look at source-code implementations reveals that data need not be graphics related at all.

EMBEDDED SYSTEMS

A WAVELET ANALYZER by Mac A. Cody

The wavelet analyzer is a variation of the spectrum analyzer, which uses fast wavelet transforms rather than FFTs to analyze signals. Mac implements the fast wavelet transform as a recursive routine on a DSP board, then displays the input signal and wavelet-transform coefficients as they're generated in real time.

NETWORKED SYSTEMS

ROUTING ALGORITHMS FOR INTERNETWORKING by William Stallings

When LANs and other networks are joined in an internet for distributed processing, proper routing of packets from source to destination can become a problem. Bill examines Dijkstra's algorithm and describes how routing protocols make use of it.

EXAMINING ROOM

MEASURING FRAGMENTATION by James Harrington

As a program dynamically allocates memory, available memory is subdivided and fragmented into blocks - often leading to program failure. James examines how some popular compilers and memory managers handle fragmentation, then presents a method for quantifying the degree of fragmentation.

PROGRAMMER'S WORKBENCH

PROGRAMMING FOR THE OS/2 2.0 WORKPLACE SHELL by Joel Barnum

Joel details what you'll need to do to convert OS/2 1.x programs to work with OS/2 2.0's Workplace Shell, the user-interface replacement for Presentation Manager. The datacentric Workplace Shell lets users manipulate data directly, rather than first launching an executable and opening a data file.

COLUMNS

PROGRAMMING PARADIGMS by Michael Swaine

Is virtual reality in its various forms -- sight, sound, and touch -- the psychedelic technology of the 90's? Is it useful? Is it addictive? Or is it just another white rabbit in a purple haze trying to sell more boxes? Michael dusts off his tie-dyed thinking cap to ponder these and other important questions.

C PROGRAMMING by Al Stevens

The D-Flat++ menu system is a hierarchical organization of related classes at the top of which is the Application window. After messing with MIDI, Al presents this hierarchy of objects along with a D-Flatt++ application that shows how an application program defines a menu.

STRUCTURED PROGRAMMING by Jeff Duntemann

As the shower curtain falls on Jeff's column, he reflects on the world of software development, how it has changed over the years, and where it all might be heading.

UNDOCUMENTED CORNER edited by Andrew Schulman

Andrew presents Mike Shiels's analysis of the underlying interface Microsoft uses to implement the resident LAN Manager API, named pipes, and mailslot interfaces, focusing on the "undocumented" interrupt 21h and interrupt 2Fh function calls.

PROGRAMMER'S BOOKSHELF by Ray Duncan

Ray continues his travels over, under, and through the Internet and books about it. This month he examines The Internet Companion, Exploring the Internet, and Internet: Mailing Lists.

FORUM

EDITORIAL by Jonathan Erickson

LETTERS by you

SWAINE'S FLAMES by Michael Swaine

PROGRAMMER'S SERVICES

OF INTEREST by Tami Zemel


Copyright © 1993, Dr. Dobb's Journal