gpt4 book ai didi

lisp - 剪辑 : variable has no value

转载 作者:太空宇宙 更新时间:2023-11-03 18:56:07 27 4
gpt4 key购买 nike

我想制作一个用户程序,它提取元素 a,其中元素 b(由参数给定)作为列表中的一对。

比如,如果我将 c 作为参数并列出 ((c a) (c b) (d f) (d g)),结果应该是 'a' 'b';

所以我定义了一个函数,如下所示,

(defun myr (b a) (if (= CAAR(a) b) CDAR(a) 'nope myr(b CDR(a))));

然后这样调用

myr(b ((b a) (b c) (a d) (a f)))

但结果就像变量 myr 没有值

我是第一次使用 Lisp,所以请告诉我应该搜索什么关键字对我有很大帮助。

感谢阅读。

最佳答案

真的需要从一本好的 lisp 书开始,例如 PCLACL .您将节省很多时间。

Lisp 语法不同于 C。在 C 语言中,您可以调用带有参数 хy 的函数 f,如下所示:f(x,y) .在 Lisp 中,您可以这样做:(f x y)

当你调用你的函数myr(...)时,你把符号myr放在变量的位置,而不是 function 位置,导致你报错。

您还需要使用 quote作为适当的。

关于lisp - 剪辑 : variable has no value,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/56208001/

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