2012-01-30 50 views
1

我打算创建一些能够自动翻译从Java到C#的东西(并在之后进行反向处理)。我需要的是可以用来将Java源代码转换为C#源代码的东西。ANTLR从Java到C#

我碰到了ANTLR,但我不确定如何将它用于我的任务。我知道ANTLR对Java和C#都有强大的支持,现在已经有两种语法,即lexing/parsing过程,然后是AST创建,最后是树walker。理论上来说,我明白了,但实际上把它运用起来的时候,我甩掉了硬核。

有人可以提供一个一步一步的“如何”,可以用于任何语言,因为我找不到任何像样的教程甚至如何使用ANTLR?

+2

*“找不到任何如何甚至使用ANTLR体面的教程?“*,我不相信你真的很难搜索。使用您最喜爱的搜索引擎(无论是Google,Bing还是Yahoo)和关键词“ANTLR教程”,您一定看过Scott Stanchfield的精彩教程。同时浏览已经在[这里的ANTLR标签]上给出的答案(http://stackoverflow.com/questions/tagged/antlr?sort=faq&pagesize=50):有很多包含复制粘贴为你准备好的答案尝试。 – 2012-01-30 20:06:06

+1

还有Terry Parr(ANTLR的发明人)一书:http://pragprog.com/book/tpdsl/language-implementation-patterns可能是ANTLR的“最终”教程。 – 2012-01-30 20:12:50

+2

你也应该访问我的回答关于建立这样的翻译:“如何翻译编程语言”http://stackoverflow.com/a/3460977/120163 – 2012-01-30 20:14:14

回答

0

一旦你做出自己熟悉ANTLR的,你会需要这些基础知识: openjdk.java.net/projects/compiler-grammar/antlrworks/Java.g + http://antlrcsharp.codeplex.com/