11得票1回答
使用flex/bison构建类似于Lisp/Scheme的解析树

我尝试解析类似Lisp/Scheme的简单代码E.g. (func a (b c d) ) 并从中构建一棵树, 我可以在C中完成解析,而不使用(即仅使用flex返回记号,并使用递归构建树)。 但是,对于bison的语法,我不确定在哪里添加代码来构建列表(即与累积终端符号相关联的规则以及将构建的...

11得票2回答
有没有一个C#工具可以匹配(句法解析)树中的模式?

我正在开发一个自然语言处理(NLP)项目,在其中使用句法分析器将给定句子创建成一个句法分析树。 示例输入:我遇到了Joe和Jill,然后我们去购物了 示例输出: [TOP [S [S [NP [PRP I]] [VP [VBD ran] [PP [IN into] [NP [NNP Joe]...

7得票3回答
有没有任何Lisp方言的头部是s表达式,例如((f 2) 3 4)? 如果没有,为什么?

有没有Lisp支持在其头部嵌套s表达式?例如: ((f 2) 3 4) (f 2) 可能会被计算为一个在 3 4 上应用的函数/宏。 是否有可能有一种支持这种功能的lisp语言?或者有没有技术上的限制使其不可行?

7得票2回答
有没有类似于XPATH对XML的s表达式的工具?

我希望你能提供一个通用的Lisp实现,如果可能的话。 (同时,我不想将S表达式转换为XML,并在结果上使用XPath。)

7得票3回答
Common Lisp:有没有更简单的方法输入数学表达式?

我喜欢使用Common Lisp,但有时输入简单的数学表达式真的很痛苦,比如: a(8b^2+1)+4bc(4b^2+1) (当然可以转换这个,但是有点慢,我先写 (+ () ()),然后在每个括号内放 (* () ())...) 我想知道这里是否有人知道更好的输入方法。 我正在考虑编...

9得票4回答
有没有类似 Nokogiri 的工具可以解析 Ruby 代码?

Nokogiri非常棒。我可以做像#css('.bla')这样的事情,它将返回第一个匹配的元素。 现在我们需要对Ruby源代码进行一些解析,找到类中的所有方法等。我们正在使用ruby_parser gem,但它只是遍历您的源代码并输出S表达式。是否有像Nokogiri这样的针对这些S表达式的...

15得票3回答
如何操作解析树?

我一直在研究自然语言解析树并以各种方式对其进行操作。我一直在使用斯坦福的Tregex和Tsurgeon工具,但代码混乱且不适合我的大部分Python环境(这些工具使用Java,不太适合调整)。我想要一套工具集,可以轻松地进行hack以获得更多功能。是否有其他工具非常适合在树上进行模式匹配,然后...

25得票3回答
为什么大多数S表达式语言是动态类型的?

为什么大多数的Lisp和Scheme语言都是动态类型的?静态类型与它们的一些常见特性不兼容吗?

34得票5回答
Lisp: 列表 vs S-表达式

我是Lisp的新手。我遇到了两个术语“列表”和“S表达式”。我只是无法区分它们。它们在Lisp中只是同义词吗? 我是Lisp的新手。我遇到了两个术语"列表"和"S表达式"。我不知道如何区分它们。它们在Lisp中是同义词吗?

8得票3回答
如何安全地阅读不可信的Clojure代码(而不仅仅是一些序列化数据)?

(def evil-code (str "(" (slurp "/mnt/src/git/clj/clojure/src/clj/clojure/core.clj") ")" )) (def r (read-string evil-code )) 可以运行,但不安全 (def r (cl...