2017-07-02 72 views
2

我正在研究JavaScript程序的合併工具,我需要爲JavaCC格式編寫JavaScript(> ES6)的語法。爲此,我想爲ES6使用公開可用的BNF語法,所以我會使用JavaCC格式編寫語法。是否有一個BNF語法公開可用於JavaScript ES6?

我只能找到那些(從Stack Overflow post):

然而,這些都是很老BNFs(和StackOverflow上的帖子也很從9年前開始)。這些語法僅對版本< ES5有效,並且以有限的方式工作。

你知道更新的公開語法(BNF,JavaCC文件等)嗎?

有ES6的解析器,如Esprima,但是,由於我必須使用JavaCC環境,因此需要使用語法。

+1

我不是語言專家,但我不認爲ES6可以純粹用BNF語法來表示。 – 2017-07-02 12:51:26

+0

它可能是一個EBNF –

+0

你可能有更好的運氣問esdiscuss。 – 2017-07-02 15:27:15

回答

1

完全批准的最新版本的ECMAScript(ES2017 = ES8)爲https://www.ecma-international.org/publications/standards/Ecma-262.htm

的下一個版本(ES2018)是https://github.com/tc39/ecma262(來源回購)和https://tc39.github.io/ecma262/最新的草案(渲染)。

所有這些都是公開可用的,並且包含該語言的語法。語法符號主要是BNF和一些擴展。

+0

很好的參考!該部分(https://www.ecma-international.org/ecma-262/8.0/index.html#sec-grammar-summary)總結了語法,基本上是一個EBNF,它可能適合我的需要!我會努力的。感謝你的回答! –