为什么在 lisp(我所知道的 Emacs Lisp 和 Scheme)中,像 (*)
这样的构造返回 1
?
我在这里乘什么?如何在没有参数的情况下调用此函数 *
?
最佳答案
这是一个数学约定:product of an empty sequence of numbers根据定义,是一个;请注意,one 是乘法的恒等元 (1×a = a×1 = a)。这很方便,因为您可以使用可变数量的参数调用 *
,而不必担心没有参数的情况。
类似地,空数列的和为零,即加法的恒等元。尝试在 Lisp 提示符下发出 (+)
。
关于emacs - emacs lisp中空列表的乘法,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8986039/