Earley:在Haskell中使用Earley算法解析所有无上下文语法

时间:2024-05-03 10:55:14
【文件属性】:

文件名称:Earley:在Haskell中使用Earley算法解析所有无上下文语法

文件大小:47KB

文件格式:ZIP

更新时间:2024-05-03 10:55:14

Haskell

厄利 这个( )是一个由几个主要部分组成的库: 一种嵌入式的无上下文语法(CFG)领域专用语言(DSL),具有应用风格的语义动作规范。 下面是一个典型的表达式语法的示例,该语法在标记为字符串的输入上工作: expr :: Grammar r ( Prod r String String Expr ) expr = mdo x1 <- rule $ Add <$> x1 <* namedToken " + " <*> x2 <|> x2 <?> " sum " x2 <- rule $ Mul <$> x2 <* namedToken " * " <*> x3 <|> x3 <?> " product " x3 <- rul


【文件预览】:
Earley-master
----Setup.hs(46B)
----experiments(459B)
----bench()
--------BenchAll.hs(4KB)
----examples()
--------RomanNumerals.hs(1KB)
--------English.hs(2KB)
--------VeryAmbiguous.hs(342B)
--------Words.hs(609B)
--------Expr.hs(723B)
--------Expr2.hs(997B)
--------Mixfix.hs(2KB)
--------Infinite.hs(586B)
----.travis.yml(4KB)
----LICENSE(1KB)
----Text()
--------Earley.hs(562B)
--------Earley()
----README.md(7KB)
----docs()
--------implementation.md(21KB)
----tests()
--------Main.hs(647B)
--------Arbitrary.hs(328B)
--------InlineAlts.hs(901B)
--------VeryAmbiguous.hs(1KB)
--------Expr.hs(5KB)
--------UnbalancedPars.hs(2KB)
--------Generator.hs(556B)
--------Issue11.hs(2KB)
--------Mixfix.hs(2KB)
--------Issue14.hs(2KB)
--------Lambda.hs(3KB)
--------ReversedWords.hs(948B)
--------Empty.hs(1KB)
--------Optional.hs(3KB)
----.gitignore(69B)
----Earley.cabal(5KB)
----CHANGELOG.md(2KB)

网友评论