2009-12-20 77 views
5

是否有可能爲Erlang編寫Antlr代碼生成目標?Erlang和Antlr

+2

,你可以寫與ANTLR任何編譯器,但你需要語法此語言 – SjB 2009-12-20 09:59:22

+0

如果你的意思是你想生成Erlang的代碼中使用ANTLR的則是有可能解析的東西,你可以寫的東西產生的任何代碼你想。 – 2009-12-20 18:33:19

回答

5

這取決於你的意思。如果你的意思是你想要在Erlang中生成解析器&詞法分析器源文件,那麼不,這是不可能的(至少,不是開箱即用的*)。查看當前ANTLR目標列表:http://www.antlr.org/wiki/display/ANTLR3/Code+Generation+Targets

*當然,您可能是一個實施它的人。但這不是一件小事!當然

1

Erlang自帶parse tools。他們使用自己的語法,所以你不能從antlr獲取語法文件。

0

當然,ANTLR是通用的。如果你真的想這樣做,你應該看看Core Erlang language specification。被警告說它已經很老了,但對於初學者應該沒問題。

+1

由於它是一個更簡單的小語言,因此生成Core erlang比正常的erlang要好得多。我爲LFE做。主要的問題是它不像erlang那樣穩定,因爲它們傾向於將它視爲內部編譯器通行證。我試圖讓他們改變這一點,但。 – rvirding 2009-12-22 00:18:38