7
A
回答
10
这是一个数学公约:根据定义,product of an empty sequence of numbers是一个数学公约。注意一个是用于乘法的恒等元件(1×a = a×1 = a)。这很方便,因为您可以使用可变数量的参数调用*
,而不必担心没有参数的情况。
类似地,数字的空序列的和为零,用于加法的标识元素。尝试在你的Lisp提示下发行(+)
。
4
它是从数学继承的属性。这就像此外,你可以加在一起的任何数字的数字,特殊情况下,不添加数字在一起给你零和。
同样的乘法,如果你乘以任意数量的数字,你会得到产品。为了让它适用于没有数字的情况,使用1作为基础值(在数学中有一些奇特的名字,这在很多年前我已经忘记了)。
那么,你在编程语言中有没有实际的用处呢?是的,因为你可以用任意数量的参数调用+
和*
等函数,我会说是。例如:
(apply '+ '(2 3 4)) => 9
(apply '+ '(2 3)) => 5
(apply '+ '(2)) => 2
(apply '+ '()) => 0
(apply '* '(2 3 4)) => 24
(apply '* '(2 3)) => 6
(apply '* '(2)) => 2
(apply '* '()) => 1
+1
注意:在Scheme中,您必须删除运算符前的'''(即'quote')才能运行的示例。例如,'(apply +'())',而不是'(apply'+'())''。 –
相关问题
- 1. 在Emacs Lisp中字符串的列表
- 2. 参数中的空格字符(emacs lisp)
- 3. Emacs Lisp中的PPRINT?
- 4. Emacs Lisp中的strpos
- 5. Emacs Lisp的形式语法
- 6. Emacs lisp:评估字符串列表
- 7. 迭代Emacs Lisp哈希表
- 8. 在(emacs)lisp中提取/切片/重新排列列表?
- 9. 列表乘法
- 10. 让和FLET中的Emacs Lisp
- 11. emacs中的Lisp位置
- 12. Emacs lisp highlighting
- 13. Emacs lisp char-table
- 14. strtotime for Emacs Lisp
- 15. strstr()in emacs lisp?
- 16. common lisp和emacs
- 17. 的Emacs Lisp问题
- 18. 如何将列表转换为Emacs Lisp中的字符串
- 19. Python字符乘法或列表乘法
- 20. 在Emacs Lisp中解析
- 21. 的Emacs Lisp逃脱正则表达式
- 22. emacs lisp库的输入表单?
- 23. 行列乘法表
- 24. emacs lisp:如何追加到列表中“LaTeX-clean-intermediate-suffixes”?
- 25. Emacs Lisp(void-variable fPath)
- 26. 有没有Python的[n:m]列表片断的简洁emacs lisp?
- 27. Emacs Lisp缓冲区位置列?
- 28. 的Emacs Lisp:转换列表以字符串
- 29. 如何检查Emacs Lisp中的字符串是否为空?
- 30. Lisp中的列表生成
'(*(+)*(*)(*)(*)(*)(*)(*)(*) (*(+(*)(*)(*)(*))(+(*)(*)(*))(+(*)(*)(*)))))' –
@EliBarzilay:is野兽的sexpr? –
larsmans,谢谢你的明确答案。 – karasiov