Dr. Dobb's Journal, January 2009

EDITOR'S NOTE

OS: Does That Mean Operating Systems, Open Source, or Both?
Jonathan Erickson


ALIA VOX

Speeding Up Software Development Using Embedded Scripting
Harry H. Cheng


DEVELOPER DIARIES

Mashups and Match Ups
Michael Swaine


CONVERSATIONS

What's Open About OpenSolaris?
Jonathan Erickson


SWAINE'S FLAMES


Virtual Is Its Own Reward
Michael Swaine


FEATURES


It's Time To Get Good At Functional Programming
Michael Swaine
If you've been wondering what functional programming is all about, don't wait any longer. Michael examines functional languages like Scala, F#, Erlang, and Haskell, and Mike Riley adds a note about functional programming with Mathematica.

.NET Development on Linux
Eric Bergman-Terrell
Eric finds out that a VM and Mono comes in handy when creating C# .NET programs. In addition to Linux, Mono lets you develop and run .NET client and server applications on Solaris, Mac OS X, Windows, and UNIX.

The DOORS OS
Walter O. Krawec
Even though the DOORS OS is an operating system designed to run on the HC11, there's nothing stopping you from porting the code to your processor of choice.

Lock Options
Bartosz Milewski
The two major problems in concurrent programs are data races and deadlocks. The solution that Bartosz presents here is based on a deadlock-avoidance protocol.

The iPhone Application Builder
Bob Cusick
Why bother writing apps for Apple?s iPhone when you can write an app to write the apps.


COLUMNS

Effective Concurrency
Herb Sutter
When it comes to scalability and concurrency, more is always better.

Disciplined Agility
Scott W. Ambler
Scott examines the myths surrounding agile software development.