Forgotten language enables nonstop gadgets

Smalltalk, in a very small machine

Swiss embedded software company Esmertec has acquired the start-up founded by VM pioneer and former technical lead of Sun's HotSpot project, Lars Bak. OOVM was founded in Denmark in 2002 and privately-held Esmertec acquired the company for an undisclosed sum.

OOVM produces a virtual machine that allows programmers to hook in remotely and modify code on the fly without needing to reboot the environment: which is very useful indeed. It makes software updates transparent to the user.

"If you have say, a small router or a dishwasher you can upgrade the code while it's running, no reboot is required," Bak told us today. "If you have a device, and you have more than one component it doesn't make sense to shut down the system."

Consumer electronics manufacturers have experimented with the technology, attracted not only by the serviceability but by its small size: as low as 128kb, which includes a TCP/IP stack. For example as a research project, Bang and Olufsen built the VM into digital speakers, which could then be modified over FireWire.

How does it achieve this magic? OOVM's technology comes in two parts, a VM and a development environment, and it uses Smalltalk, rather than modern-day kludges such as Java, which resembles a modern object-orientated environment in the way that a pub ashtray resembles a cigar store. (It's also a "highly addictive drug", warn advocates.) Unlike a full scale Smalltalk system, 'reflection' is limited to the developer environment, so changes to classes are made in the IDE (Eclipse is supported) then pushed down the wire.

Before leading the HotSpot project, Bak worked on Sun's pioneering Self Project - which began life at Xerox and then continued at Stanford, and Beta, a successor to Simula. He has 18 years experience developing virtual machines. Any useful bit of advice stand out, we wondered?

"You have to make them simpler," he told us. "Which was not the case with Self; it was a fairly big system."

On the day that Steve Jobs hailed the ability to transfer your music to a portable device as, err, a major breakthrough, it's nice to be reminded what amazing things computer scientists really can do. Would this be enough to persuade visiting Martians, seeing our 30-stage CPU pipelines, Windows registries and nine incompatible versions of the arse-feed, to put away their death lasers? Perhaps. ®

Related links

Esmertec
OOVM
Project Self bibliography

Related stories

Java or Cocoa? Mac developers choose their brews
Borland's Dead C Scrolls
Anders Heljsberg on what's next for C#

Sponsored: Designing and building an open ITOA architecture