2003 29.03 2005

Vol.29 n°3 (#358) march 2004

text on archive.org (DVD)

(ddj_2004_03.jpg)

Editorial

[author : Jonathan Erickson] #Edito

TABLE OF CONTENTS

FEATURES

Fostering Little Languages

[author : John Clements, Matthias Felleisen, Robert Bruce Findler, Matthew Flatt, & Shriram Krishnamurthi]

Our authors present a programming environment that adapts itself to little languages.

The Bistro Programming Language

[author : Nik Boyd]

Bistro provides a method syntax resembling Smalltalk, but generates Java class files.

Prototyping Interpreters using Python Lex-Yacc

[author : Shannon Behrens]

To test the Python and PLY environment, Shannon wrote a language called "Squeamish" that consists of only 850 lines of code.

Collection Enumeration: Loops, Iterators, & Nested Functions

[author : Walter Bright and Matthew Wilson]

The D language implements its collection enumeration via a foreach statement.

Building a Custom Rule Engine with Prolog

[author : Dennis Merritt]

There are pluses and minuses to switching from a procedural- to logic-base approach for encoding rules.

Security & PseudoRandom Number Generators

[author : Ben Laurie]

When it comes to security, weak randomness is sometimes better than strong randomness.

Instant Messaging: A Programmer's Tool?

[author : William Wright and Dana Moore]

Our authors examine Jabber's client-side protocol, putting Python, Perl, and Ruby to work.

Faster Image Processing with OpenMP

[author : Henry A. Gabb and Bill Magro]

OpenMP-based tools and multithreading can improve performance on multiprocessor systems.

A Struts Tool for Previewing Forms & Generating Beans

[author : Andy W. K. Yuen]

Struts is becoming a de facto standard framework for building Java web applications.

The Business Case for Software Security

[author : Herbert H. Thompson and James A. Whittaker]

Is it possible to make a business case for software security?

Adding .NET Control Properties

[author : Phil Wright]

Here's an idiom for dealing with control properties that ensures a consistent feel for users.

Tech Tips

[author : edited by George Frazier]

This month's tips clean up component categories and develop an even better RegDeleteKey.

Transaction Processing

[author : Charles Curley]

Transaction processing ensures data integrity in the face of catastrophic failure.

EMBEDDED SYSTEMS

Porting Small-C

[author : Pete Gray]

Pete presents his port of Small-C to Motorola's DSP56800 digital signal processor.

COLUMNS

Programming Paradigms

[author : Michael Swaine]

The convergence of ideas—even dumb ones—sometimes makes sense.

Embedded Space

[author : Ed Nisley]

So what makes Ed think that five years from now PC performance will increase by another factor of 10?

Chaos Manor

[author : Jerry Pournelle]

You can build high-performance machines to the state of the art or at the best price/performance point.

Programmer's Bookshelf

[author : Douglas Reilly]

Doug reviews Microsoft SQL Server 2000 Performance Optimization and Tuning Handbook and The Guru's Guide to SQL Server Architecture and Internals.

FORUM

Letters

[author : you]

The New Adventures of Verity Stob

[author : Verity Stob]

News & Views

[author : Shannon Cochran]

Of Interest

[author : Shannon Cochran]

Swaine's Flames

[author : Michael Swaine]