gpt4 book ai didi

erlang - 如何在 erlang 中创建解析器

转载 作者:行者123 更新时间:2023-12-04 18:04:15 25 4
gpt4 key购买 nike

关闭。这个问题需要更多focused .它目前不接受答案。












想改善这个问题吗?更新问题,使其仅关注一个问题 editing this post .

5年前关闭。




Improve this question




如何在 erlang 中创建一个解析器,该解析器将采用正确形成的命题公式并将其转换为某种内部表示。

列出在 erlang 中创建解析器的可用工具以及使用它们的项目可能会有所帮助。

最佳答案

您可以使用 leex , yecc , spell1和其他一些。

  • leex :一个基于正则表达式的 Erlang 词法分析器生成器,类似于 lex 或 flex。词法分析器文件包含 Definition 的部分, Rules还有 Erlang 代码。
  • yecc :用于 Erlang 的 LALR-1 解析器生成器,类似于 yacc。解析器生成器文件包含 Non-terminals 的部分, Terminals , RulesRoot-symbols .
  • spell1 :用于 Erlang 和 LFE 的 LL(1) 解析器生成器它是基于 Erlang 的 Lisp 方言语言。
  • neotoma :用于解析表达式语法 (PEG) 的 Erlang 的 Packrat 解析器生成器。


  • 一些使用它们的开源项目:
  • Efene :Erlang 编程语言的替代语法,专注于简单性和易用性。它使用 leex 和 yecc 来解析 Efene 的语言语法。
  • ErlyDTL :用于 Erlang 的 Django 模板,它使用 leex 和 yecc 来解析基于 Django 的模板语言。
  • Tnesia :一个时间序列数据库,它具有类 SQL 语言 (TQL),使用 leex 和 yecc 实现。

  • Slide包括一些关于如何使用它们的有用示例。

    关于erlang - 如何在 erlang 中创建解析器,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34618531/

    25 4 0
    Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
    广告合作:1813099741@qq.com 6ren.com