12

我正在做一个学校项目,我必须在 Haskell 中使用 Alex + Happy 构建一个简单语言的解释器。

浏览完文档后,我了解了大部分内容,但希望看到有关使用这些工具的完整示例。

4

4 回答 4

11

不是构建解释器,而是构建词法分析器和解析器,是的。请参阅此处的 Alex 中的词法分析器示例,以及此处的Happy介绍。我发现在 darcs 存储库中为 Alex 和 Happy 分发的 haskell.x 和 haskell.y 文件很有用。你可以在这里这里找到那些。

于 2010-06-24T23:14:56.287 回答
7

我在bjbell.wordpress.com上写了一系列关于使用 Alex+Happy+LLVM 为类似 Java 的简单语言编写编译器的文章。

源代码在 GitHub 上,网址为https://github.com/bjwbell/NewL-Compiler(我已经有几年没碰过它了)。

于 2012-12-28T00:48:00.847 回答
4

Haddock 有一个用于文档的 Alex/Happy 解析器,源代码在 Lex.x 和 Parse.y 文件中

于 2010-06-25T19:54:54.667 回答
0

我写了一篇关于解决您描述的问题的帖子: http: //eax.me/simple-interpreter/(俄语)。源代码在这里:https ://bitbucket.org/afiskon/hs-interpreter/

于 2012-12-28T04:31:39.603 回答