ES4 implementation process, teams, and meetings

Brendan Eich brendan at mozilla.org
Thu Feb 21 12:48:10 PST 2008


On Feb 21, 2008, at 12:07 PM, Michael O'Brien wrote:

> My recommendation would be:
>
> - Add comments and overview inside the RI code itself.
> - Create an addendum to Lar's document that drills down on key  
> topics to
> provide more exact operational semantics and details.

Lively exchange here, want to provide context again for newcomers.

We do not want a by-hand, mechanically uncheckable operational  
semantic spec in parallel with the RI. Our plan to excerpt (and  
possibly lower/pretty-print) pieces of the RI still seems best. It  
certainly beats the BASIC+ad-hoc-operational-semantics of ES1-3.

Before choosing to write a definitional interpreter in SML and ES4,  
we (Dave Herman, really) looked hard at other options, including term  
rewriting systems, mostly Stratego but initially Maud too. But we  
always sought a mechanically testable spec -- not more by-hand, error- 
prone, and frankly hard to read at anything but a low "pretend I'm a  
Commodore 64 and execute the next (we hope not misnumbered) step" level.

What I think would help implementors are, as you say, design notes or  
some such addenda to the overview doc that drill down by referencing  
pieces of the RI and illuminating them. Such addenda could answer the  
question "is this the only place I have to look at to understand  
(scope|namespace|...) rules?"

/be




More information about the Es4-discuss mailing list