我是Lisp的新手。我遇到了两个术语“列表”和“S表达式”。我只是无法区分它们。它们在Lisp中只是同义词吗? 我是Lisp的新手。我遇到了两个术语"列表"和"S表达式"。我不知道如何区分它们。它们在Lisp中是同义词吗?
为什么大多数的Lisp和Scheme语言都是动态类型的?静态类型与它们的一些常见特性不兼容吗?
我尝试解析类似Lisp/Scheme的简单代码E.g. (func a (b c d) ) 并从中构建一棵树, 我可以在C中完成解析,而不使用(即仅使用flex返回记号,并使用递归构建树)。 但是,对于bison的语法,我不确定在哪里添加代码来构建列表(即与累积终端符号相关联的规则以及将构建的...
我一直在研究自然语言解析树并以各种方式对其进行操作。我一直在使用斯坦福的Tregex和Tsurgeon工具,但代码混乱且不适合我的大部分Python环境(这些工具使用Java,不太适合调整)。我想要一套工具集,可以轻松地进行hack以获得更多功能。是否有其他工具非常适合在树上进行模式匹配,然后...
为什么Lisp流行的s表达式不被视为相对于JSON和XML的选项?它们是否存在某些缺陷,使得Lisp的s表达式从未流行起来?
有没有Lisp支持在其头部嵌套s表达式?例如: ((f 2) 3 4) (f 2) 可能会被计算为一个在 3 4 上应用的函数/宏。 是否有可能有一种支持这种功能的lisp语言?或者有没有技术上的限制使其不可行?
我通过.Call("foo", <args>)调用C代码,其中foo调用其他C函数,计算结果并返回。结果是一个长度为3的列表,我想给这个列表命名。为此,foo执行以下操作: /* Construct result list from variables containing th...
Nokogiri非常棒。我可以做像#css('.bla')这样的事情,它将返回第一个匹配的元素。 现在我们需要对Ruby源代码进行一些解析,找到类中的所有方法等。我们正在使用ruby_parser gem,但它只是遍历您的源代码并输出S表达式。是否有像Nokogiri这样的针对这些S表达式的...