December 1992 - NEW WORLDS OF DATA


FEATURES

SPATIAL DATA AND THE VORONOI TESSELLATION
by Hrvoje Lukatela and John Russell

Representing data in terms of spatial relationships is becoming increasingly common. Our authors use trigonometry, 3-D vector algebra, and Voronoi tessellation to build a complete geographical information system to explore spatial data types.

SOUND AS A DATA TYPE
by Aaron E. Walsh

Programming for sound has never been simple. QuickTime, Apple's system-wide architecture for handling dynamic data, is a first step towards audio ease-of-coding. Aaron presents a technique for converting traditional Macintosh sound resources to QuickTime sound data samples.

PERSISTENT OBJECTS IN C++
by Al Stevens

Al discusses persistence, then presents a method for adding persistent objects to C++ programs by deriving applications classes from a persistent base class.

PERSISTENCE IN A PROGRAMMING ENVIRONMENT
by Richard P. Gabriel

When Dick's group first started working on a programming environment for C and C++, there was no commercially available way to add persistence to objects. He describes what he was trying to do, why he needed persistence, his first attempts at adding persistence, and finally, his solution.

SPLAY TREES
by Dean Clark

Splay trees are self-adjusting data structures that rearrange themselves in response to changing program operations. They're easy to code and made maintain, have low overhead, and can improve performance.

A CURMUDGERY ON PROGRAMMING LANGUAGE TRENDS
by Scott Guthery

In the December 1989 DDJ, Scott presented his highly controversial "Are the Emperor's New Clothes Object Oriented?". Now, three years later, he takes a second look to see if anything has changed.

EMBEDDED SYSTEMS

SIMULATION AND TESTBOARD FOR EMBEDDED-SYSTEM DESIGN
by Michael Kutter

With software simulation and hardware testboards, you can debug and test code in parallel with hardware development. Michael explains how these techniques were applied to the software-development cycle of an embedded controller.

NETWORKED SYSTEMS

SIMULATING HYPERCUBES IN UNIX, PART I
by Jeffery W. Hamilton and Eileen M. Ormsby

In this two-part article, our authors describe how you can simulate the execution of a hypercube program on a standard UNIX system. This month, they focus on partitions, the basic building blocks of a hypercube system. Next month, they present the source code for the simulator and discuss how to use the system.

EXAMINING ROOM

INSIDE THE ISO-9660 FILESYSTEM FORMAT
by William Frederick Jolitz and Lynne Greer Jolitz

For delivering large amounts of data, CD-ROMs give you the biggest bang for the buck. Bill and Lynne untangle the ISO-9660 filesystem format and present utilities to decode a CD-ROM and view a file.

PROGRAMMER'S WORKBENCH

BLOBS AND OBJECT-ORIENTED DATABASE ENGINES
by Sam Felton

In today's database parlance, sound and image data are known as "binary large objects," or BLOBs for short. Sam examines one approach to constructing and storing BLOBs in an object-oriented DBMS system.

COLUMNS

PROGRAMMING PARADIGMS
by Michael Swaine

Michael recognizes a good thing when he sees it. In this month's column, he and Ronjon Nag, cofounder of a company developing cursive handwriting-recognition tools, talk about ink as a data type.

C PROGRAMMING
by Al Stevens

A D-Flat++ program starts with an application window on a desktop. Al presents the source files that contain the member functions for the desktop and its devices.

STRUCTURED PROGRAMMING
by Jeff Duntemann

Until now, Jeff never paid much attention to the notion of Turbo Vision resources--something akin to an ISAM manager for an ordinary Turbo Vision stream. He also uses Blaise's Turbo Vision Development Toolkit to explore resources.

GRAPHICS PROGRAMMING
by Michael Abrash

Michael implements a fast assembler version of his run-length slice line-drawing routine before returning to the subject of page flipping.

PROGRAMMER'S BOOKSHELF
by Andrew Schulman

One of the best discussions you'll find of demand-page virtual memory is in Harold Stone's High-Performance Computer Architecture, the book Andrew examines this month.

DEPARTMENTS

EDITORIAL
by Jonathan Erickson

LETTERS
by you

SWAINE'S FLAMES
by Michael Swaine

PROGRAMMER'S SERVICES

OF INTEREST
by Tami Zemel


Copyright © 1992, Dr. Dobb's Journal