Note: This website is archived. For up-to-date information about D projects and development, please visit

Project Status

This project appears to have stalled in April 2008. See also:

Welcome to Walnut


Walnut was originally an extension for Walter Bright's DMDScript. It went inactive for a year, got a new maintainer, and became a complete branch of that engine. Then the new maintainer started work on a completely new from-scratch edition of the engine, released under the BSD.

Walnut is:

A javascript engine. Smaller, faster, stronger.

Walnut 1.x (the branch from DMDScript) is currently a stable and functional implementation of ECMAScript, pretty printed and commented. It is currently moderately difficult to extend and implement bindings for, as it was written using an Object Oriented methodology before D was fully matured. It compiles with D 1.0.

Walnut 2.x (the from-scratch BSD licensed) is currently past design stage and in development stage and not yet in alpha stage. It will be markedly simple to extend, translate, read, and write bindings for as it was carefully architected and written using the latest features of D and an Aspect Oriented methodology. As of now it compiles with D 2.000 - 2.005.

Walnut could be:

A complete drop-in replacement for existing ECMAScript Engines which are bigger and slower than Walnut; and easily translated into your spoken language.

As Walnut 2.x matures, I hope to write an IScriptable interface for it, and other similar bindings to allow it to be used as a drop-in replacement for JScript, KJS and Spidermonkey.