1994 20.04 1996

Vol.20 n°4 (#229) april 1995

text on archive.org (DVD)

(couverture_manquante.jpg)

EDITORIAL

[author : Jonathan Erickson] #Edito

TABLE OF CONTENTS

FEATURES

IMAGE AUTHENTICATION FOR A SLIPPERY NEW AGE

[author : Steve Walton]

Is seeing really believing anymore? Can we trust images as evidence of true events? The answer is generally "no," although image-authentication algorithms do make it possible to tell whether or not an image has been modified. Steve describes and implements a class of algorithms that makes it possible to authenticate digital images.

THE DETRIMENTAL WIRE-EXCLUSION HEURISTIC

[author : Paul J. Martino]

Combinatorial optimization involves finding the optimal solution to problems such as computer wiring and the now-familiar traveling-salesman problem. Paul presents a heuristic that's efficient and portable.

THE BMP FILE FORMAT, PART 2

[author : David Charlap]

In last month's installment of this two-part article, David examined how the "standard" BMP file format has been implemented differently on different platforms. This month, he explains how to use the structures to read and interpret bits.

DIRECTED ACYCLIC GRAPH UNIFICATION

[author : David Perelman-Hall]

David describes and implements an object-oriented method of enacting a constraint system, which has been adapted from directed acyclic graph unification. Although he implements this approach for a natural-language parsing system, it can be used in applications as well.

EMBEDDED SYSTEMS

ABOVE-REAL-TIME TRAINING AND THE HYPER-TIME ALGORITHM

[author : Dutch Guckenberger, Liz Guckenberger, Frank Luongo, Kay Stanney and Jose Sepulveda.]

The hyper-time algorithm lets you alter the flow of "simulated time" to benefit users—slower than real time can be used for novice users, while faster than real time can be used for experts or persons "time surfing" over uninteresting portions of information. Applying the algorithm to "Above-Real-Time Training" also improves human performance, increases retention and training-device effectiveness, and decreases stress.

NETWORKED SYSTEMS

A POP3 MAIL CLIENT USING WINSOCK

[author : Robert A. Duffy]

Robert presents a C++ foundation for Internet client applications running on Windows. In doing so, he implements a mail client that understands the Post Office Protocol (POP), a powerful Internet protocol for processing e-mail.

EXAMINING ROOM

BORLAND C++ 4.5 AND OLE 2.0 PROGRAMMING

[author : Ted Faison]

In examining the recently released Borland C++ 4.5, Ted focuses on its OLE 2.0 support, using it to create an OLE server that he then embeds into a Word for Windows 6.0 document.

PROGRAMMER'S WORKBENCH

SERIALIZATION AND MFC

[author : Chane Cullens]

Serialization is the process of writing or reading one or more objects to or from a persistent-storage medium, such as a disk file. Chane examines MFC's serialization mechanism and what it offers cross-platform developers.

COLUMNS

PROGRAMMING PARADIGMS

[author : Michael Swaine]

Michael takes a look-see at what's new with visual programming.

C PROGRAMMING

[author : Al Stevens]

Al analyzes the C++ Standard Template Library (STL), then wraps up his text-search project by discussing the C source-code module of the interface between the Visual Basic front end and the Windows DLL that implements the search engine.

ALGORITHM ALLEY

[author : Bruce Schneier]

In this month's "Algorithm Alley," Kim Larsen presents a simple yet clever approach for computing the correct day of the week.

UNDOCUMENTED CORNER

[author : Andrew Schulman]

Tim unravels the floating-point-division algorithm that Intel didn't quite implement correctly with its Pentium processor.

PROGRAMMER'S BOOKSHELF

[author : Al Stevens]

In last month's "Programmer's Bookshelf," Al examined Adrian King's Inside Windows 95. This month, he dives further into Windows 95 when he looks at Andrew Schulman's Unauthorized Windows 95.

FORUM

LETTERS

[author : you]

SWAINE'S FLAMES

[author : Michael Swaine]

PROGRAMMER'S SERVICES

OF INTEREST

[author : Monica E. Berg]