Lexer/parser 从 BNF 语法生成 Scala 代码
我目前正在寻找一个词法分析器/解析器,它可以从 BNF 语法(具有优先级和关联性的 ocamlyacc 文件)生成 Scala 代码。我很困惑,因为我几乎没有发现如…
如何进一步改进基于 Scala 解析器组合器的解析器中的错误消息?
我已经编写了一个基于 Scala 解析器组合器的解析器: class SxmlParser extends RegexParsers with ImplicitConversions with PackratParsers { [...]…
Packrat 解析 HTTP
有人可以告诉我如何使用 scala 2.8 packrat-parsing 解析 HTTP 协议吗? 我需要将附加的示例 HTTP 响应解析为 ResponseStatusCode:Int Headers:List[(…
Scala 解析器组合器:如何解析“if(x)”如果 x 可以包含“)”
我正在尝试让它工作: def emptyCond: Parser[Cond] = ("if" ~ "(") ~> regularStr <~ ")" ^^ { case s => Cond("",Nil,Nil) } 其中 regularStr…
scala 中递归解析器的高级控制
val uninterestingthings = ".".r val parser = "(?ui)(regexvalue)".r | (uninterestingthings~>parser) 此递归解析器将尝试解析“(?ui)(regexvalu…
scala StdLexical 中的词法换行符?
我正在尝试 lex(然后解析)类似 C 的语言。在 C 中,有一些预处理器指令,其中换行符很重要,然后是实际代码,其中换行符只是空格。 实现此目的的一…
Scala:如何组合来自不同对象的解析器组合器
给定一系列实现解析器组合器的对象,我如何组合解析器?由于 Parsers.Parser 是一个内部类,在 Scala 中 内部类绑定到 < em>外部对象,故事变得稍…
出了什么问题:“值解析器不是 scala.util.parsing.combinator 包的成员”?
我收到了上述奇怪的错误消息,我不明白“值解析器不是包 scala.util.parsing.combinator 的成员”。 我正在尝试通过逐步编写 C 解析器来学习解析器组…
Scala 解析器组合器与 Haskell 的 Parsec 相比如何?
Closed. This question needs to be more focused. It is not currently accepting answers. 想要改进这个问题吗?通过编辑这篇文章来更新问题,使其…
解析器组合器没有终止 - 如何记录发生了什么?
我正在尝试解析器组合器,并且经常遇到看似无限递归的情况。这是我遇到的第一个问题: import util.parsing.combinator.Parsers import util.parsing.…
Scala 解析器标记分隔符问题
我正在尝试为下面的命令定义语法。 object ParserWorkshop { def main(args: Array[String]) = { ChoiceParser("todo link todo to database") Choice…
访问 Scala 解析器正则表达式匹配数据
我想知道是否可以从下面的语法中的匹配正则表达式生成MatchData。 object DateParser extends JavaTokenParsers { .... val dateLiteral = """(\d{4}[…
Scalas/Haskells 解析器组合器足够了吗?
我想知道 Scala/Haskells 解析器组合器是否足以解析编程语言。 更具体地说是MiniJava 语言。 我目前正在阅读编译器构造,jflex 和 java cup 工作起来…
EBNF 到 Scala 解析器组合器
我有以下要解析的 EBNF: PostfixExp -> PrimaryExp ( "[" Exp "]" | . id "(" ExpList ")" | . length )* 这就是我得到的: def postfixExp: Parse…