alex相关内容

如何在 Happy 中使用 Alex monadic 词法分析器?

我正在尝试学习使用 Alex + Happy 来构建解析器,特别是我对学习使用 Alex 的 monad 包装器很感兴趣.我已经看过 Alex 和 Happy 但对我来说,它们都真的缺乏关于将它们一起使用的任何有用信息.我设法让它们与 basic 和 posn 包装器一起工作,但我对 monad 不知所措. 我已经看过关于亚历克斯、快乐和一元词法分析器的不同问题(包括:有没有关于使用 Ale ..
发布时间:2021-12-14 12:38:58 其他开发

[af]?lex正则表达式的区别

我不知道如何执行此操作,而且我没有在线上找到有关如何执行此操作的好资源[.]我正在尝试采用带注释的EBNF生产规则,该规则是两个正则表达式之间的区别并把它变成一个(na | f?)lex语法规范规则[.]问题是我看不到通常能做到这一点的方法[.] {3},有一种方法可以像克莱恩代数一样使用克莱恩代数来做到这一点.您可以在上下文无关的语法中使用带交替符的空匹配[?] 解决方案 EBNF生产规 ..
发布时间:2020-11-08 20:59:31 其他开发

什么原因导致快乐抛出一个解析错误?

我在Alex写了一个词法分析器,我试图把它和一个用Happy编写的解析器联系起来。我会尽我所能来总结我的问题,而不会粘贴大量的代码。 我从我的词法分析器的单元测试中知道字符串 “\x7”是lexed: [TokenNonPrint'\x7',TokenEOF] 我的令牌类型(由词法分析器吐出)是令牌。我已经按照 lexWrap 和 alexEOF 20315739 ..
发布时间:2018-06-05 10:51:04 其他开发

哈斯克尔亚历克斯 - 包装模板中的错误

我用“basic”和“posn”编写词法分析器“包装,但我不能在”monad“包装。我想我必须使用 monad 包装器,因为我需要在输入中收集字符串和标记位置。我也需要多个国家。现在我试图运行这个简单的例子: { module Main(main)where } %wrapper“monad” $ whitespace = [\\\t\\\ \f\v\r] $ digi ..
发布时间:2018-06-04 17:17:21 其他开发

使用亚历克斯/快乐与Cabal

我为正在编写的课程编写了一个编译器。该类不是特别的Haskell,但我使用Haskell编写我的编译器和解释器。我有一个cabal包安装程序,希望可以让我的教授轻松运行/编译。我有两个可执行文件在build-tools字段中都很开心,但是Cabal忽略了这一点,然后抱怨说找不到Happy和Alex应该生成的模块。如果我手动运行: alex LimpScanner.x 快乐LimpPars ..
发布时间:2018-06-04 17:11:39 其他开发

有没有关于使用Alex + Happy构建简单解释器的教程?

在查看文档I之后,我会在一个学校项目中创建一个使用简单语言的解释器。了解大部分内容,但希望看到使用这些工具的完整示例。 解决方案 不是建立解释器,而是在建立词法分析器和解析器时,是的。请参阅Alex的词法分析器示例,此处,合并在此处介绍Happy 。我发现在Alex和Happy的darcs仓库中分发的haskell.x和haskell.y文件很有用。你可以在这里找到 here。 ..
发布时间:2018-06-04 15:51:25 其他开发

如何在Happy中使用Alex monadic词法分析器?

我试图学习使用Alex + Happy来构建解析器,特别是我有兴趣学习使用Alex的 monad 包装器。我已经看过Alex的文档和 Happy 但是对于我来说,他们都是真的 缺乏关于一起使用它们的任何有用信息。我设法使它们与基本和 posn 包装协同工作,但是我在 monad 。 我已经看过关于Alex的不同问题,关于Alex,Happy和monadic lexers(包括:是否有任何教程 ..
发布时间:2018-06-04 14:43:59 其他开发

请求对简单的Alex解析器的意见

我一直在寻找Haskell Yi编辑器的贡献代码,我想添加Git提交和rebase模式。我从来没有做过任何与Alex之前,所以我决定写一个提交解析器独立的Yi之外,然后试图添加一个到编辑器。我不能找到许多关于亚历克斯的文档除了在亚历克斯页面上的文档是真正的 light关于monad包装器的信息,似乎是什么项目模拟。 任何人都可以给我发表关于这段代码的错误(希望是正确的)的意见。我对Haske ..
发布时间:2016-12-14 15:51:37 开发方法