JStify progress update (2)
December 2, 2007 § Leave a comment
Work on JStify proceeds a bit slower than expected, due to difficulties with the specificationss & Reference Implementation of ECMAScript 4.
- Features: 95% implemented. The only missing thing is that JStify currently restricts identifiers to C-style identifiers rather than accepting most Unicode characters. Still tweaking error reports.
- Tests: 100% success.
- Usability: works.
- Syntactic analysis
- Features: about 70% implemented. The basic structure is there, with the exception of parsing XML embedded inside ECMAScript. A number of rules, however, need to be reworked to add explicit lookaheads and avoid ambiguities. Although tweaking error reports.
- Suite1: 50 pass / 13 fail.
- Suite2: 67 pass / 76 fail.
- Suite3: 118 pass / 1766 fail.
- Building the syntax tree
- Features: about 5% implemented.
Initially, I expected to finish the parser by the end of November. Obviously, that’ll have to wait a few more months. The main issue is that I’m one of the first to attempt implementing the official grammar of ECMAScript 4 and, well, half of my time is spent tracking bugs or inconsistencies between the official grammar and the official implementation. Life as an explorer…
After discussing the matter with several of the authors of ECMAScript 4, it turns out that a number of the tests I’ve been using, although provided with their reference implementation, are invalid/obsolete. In particular, this brings us to the following updated statistics :
- New suite 1 (small samples): 58 pass / 0 fail.
- New suite 2 (standard library): 4 pass / 40 fail.
- New suite 3 (regression tests): 60 pass / 1022 fail (ouch !)
My work for the ongoing weeks is therefore going to focus on getting the standard library to parse.