我今年早些时候刚刚开始学习 Haskell 语言,并且正在研究一个输入 java 类文件(即 FileName1.class)并剖析该文件以打印出以下内容的项目:
- 类文件定义的类名
- 类的方法数量、名称和类型
我做了一些研究,发现使用 JVM 可以做到这一点,但在这个过程中有点迷失,有人对如何解决这个问题有任何建议吗?
试试秒差距。
http://www.haskell.org/haskellwiki/Parsec
这是一个非常好的入门教程:http ://www.haskell.org/haskellwiki/Parsing_expressions_and_statements
也来自真实世界的 Haskell:http ://book.realworldhaskell.org/read/using-parsec.html
Parsec 甚至包含一个默认的 Java 语言定义。 http://hackage.haskell.org/packages/archive/parsec/3.0.0/doc/html/src/Text-Parsec-Language.html#javaStyle
此外,在检查您的 AST 时,您可能希望使用 Reader monad 来防止您的类型签名被过度污染。