English 中文(简体)
EBNF for ECMAScript?
原标题:

I m trying to find a good EBNF description of ECMAScript, but so far I ve not found anything complete.

Any ideas?

最佳回答

How about the ECMAScript standard? Complete by definition :-}

EDIT: If you want an existing grammar, try one of the grammar generator tools sites. For ANTLR, here s the ECMAScript grammar. I know nothing of its quality but the ANTLR can produce good parsers if the grammer is constructed with care. You ll probably find the grammar also interwoven with bunch of ANTLR stuff, so it may suffer from some of the same problem as the standard from your point of view. At least you can delete all that stuff out.

问题回答

Chapter 2 of Crockford s JavaScript: The Good Parts diagrams (you guessed it) the good parts.

Here are a couple stabs at BNF for JavaScript:

from this earlier SO question:

Repository of BNF Grammars?

I am working on -based parser for ECMAScript. Here s my grammar so far:

See also Tom Copeland s BNF for EcmaScript:

As well as "Yet Another JavaScript Interpreter":

As well as Dojo Toolkit s Grammar (probably based on YAJI):

From my point of view, YAJI or Dojo Toolkit s are the best and the most complete (to the best of my knowledge). I m basing my work on those but want to make it even more complete (5.1/6) and standard-conform yet practical.

ECMAScript grammar is very tricky. It has a few huge caveats:

  • Regular Expression Literals vs. Division (you can t distinguishing them on the lexer level)
  • Automatic Semicolon Insertion (ASI)

So please be aware of that. Implementing those is very tricky.

If your target platform Java and you don t mind JavaCC, I d be glad if you join my project. My grammar is actually ready (builds/compiles without warnings). I m now working on test suites to cover each and every feature and production. I anticipate some problems with regex literals and ASIs though.

ps. I ve just noticed that the question is from 09 so my invitation is probably too late. :)

try this link ecmascriptA3 it has the BNF of ecmascript





相关问题
selected text in iframe

How to get a selected text inside a iframe. I my page i m having a iframe which is editable true. So how can i get the selected text in that iframe.

How to fire event handlers on the link using javascript

I would like to click a link in my page using javascript. I would like to Fire event handlers on the link without navigating. How can this be done? This has to work both in firefox and Internet ...

How to Add script codes before the </body> tag ASP.NET

Heres the problem, In Masterpage, the google analytics code were pasted before the end of body tag. In ASPX page, I need to generate a script (google addItem tracker) using codebehind ClientScript ...

Clipboard access using Javascript - sans Flash?

Is there a reliable way to access the client machine s clipboard using Javascript? I continue to run into permissions issues when attempting to do this. How does Google Docs do this? Do they use ...

javascript debugging question

I have a large javascript which I didn t write but I need to use it and I m slowely going trough it trying to figure out what does it do and how, I m using alert to print out what it does but now I ...

Parsing date like twitter

I ve made a little forum and I want parse the date on newest posts like twitter, you know "posted 40 minutes ago ","posted 1 hour ago"... What s the best way ? Thanx.

热门标签