Announcement: ECMScript 4 to ECMAScript 3 translator released

Jeff Dyer jodyer at
Mon Jun 9 11:02:29 PDT 2008

On 6/9/08 10:21 AM, Olav Kjær wrote:

> Hi everyone,
> I have released Mascara version 0.1, an ECMAScript 4 to ECMAScript 3
> compiler. <>

Congratulations! It looks interesting.

> The code is still alpha-quality, but since it to a certain extend could be
> regarded as an independent ES4 implementation, I thought it would be
> relevant to announce on this mailing list.

It is. Thanks for doing so.

> There is an online interface <> where you can try it
> out without installing anything.
> Since comments on the implementation probably aren't appropriate for this
> list, you are welcome to mail me directly, or to comment on the blog <
>> which I have set up for tracking the project.

I wonder if an es4-impl list would be useful for ES4 implementors to discuss
their experiences creating ES4 engines. Or is there an existing list that
could serve this purpose.

> While the implementation will probably never be a complete to-the-letter
> implementation of the ES4 spec (e.g. the type checking is static - with
> erasure - rather than runtime, and some features like metaprogramming and
> generators are impractical to implement without support in the target
> engine), I do believe it could be useful for raising awareness of ECMAScript
> 4 among web developers and to show that the language works in "the real
> world".

I suspect you are right. Mascara is a good way to put ES4 within easy reach
of those who want to kick its tires, so to speak. It will be important that
it represents the spec reasonably well. No pressure ;-)

> I suspect many developers are wary of investing in a technology which might
> not be supported by IE without 3-party plug-in. And even if IE decide to
> support ES4 natively, it would take years to reach ubiquitous support, which
> is required for mainstream acceptance. The translator-approach shows a
> viable migration path, where developers can start using ES4-constructs
> today, without abandoning browser compatibility.
> (Note: I actually started the project several years ago, based on the now
> obsolete Netscape draft. However the current version is updated to support
> the current spec as far as I can follow it on the wiki.)

The current draft (May-16th) pins down values, types and name resolution in
great detail. I'd be interested to hear of the issues that arise as you try
to make Mascara conform to the language core described there.


More information about the Es4-discuss mailing list