小编Dir*_*rts的帖子

Common-Lisp:绑定形式参数,究竟是什么传递?

假设我们有一个符号,带有符号值,函数值和属性列表,让我们调用它q.假设我们还有一个f带有形式参数的函数v,例如(f (v) ... )调用函数就好了(f q).

我的问题是:究竟传递给了v什么?是

  1. 的价值q;
  2. 的功能价值q;
  3. 物业清单q,

传递给形式参数v

如果他们都传递到v,然后我的事实,我们真正需要的功能感到困惑funcallapply.如果v真的同时具有值​​和函数值,那么它肯定会自己决定在我们编写时(v 3),它必须使用函数值v而不是(funcall v 3).当我们使用时,(setq v 3)它必须使用的值v.

究竟传递给什么v,为什么v不是一个符号,而只是一个"参数"或"变量",对我来说是一个谜.但我相信它在Lisp 1.5中真的是一个象征.但是在共同的Lisp中,似乎存在一些混淆的空间.

symbols common-lisp

4
推荐指数
1
解决办法
213
查看次数

标签 统计

common-lisp ×1

symbols ×1