prog1 prog2 progn
CL-USER> (prog1
(+ 1 2)
(+ 2 3)
(+ 3 4))
3
CL-USER> (prog2
(+ 1 2)
(+ 2 3)
(+ 3 4))
5
CL-USER> (progn
(+ 1 2)
(+ 2 3)
(+ 3 4))
7
CL-USER>
区别(摘自http://www.emacswiki.org/emacs/EmacsLispManual_Chinese_Notes#toc400):
progn forms...
这个特殊的表格执行所有表格 FORMS, 按自然顺序. 并返回最后表格的结果.prog1 form1 forms...
这个特殊的表格执行所有表格, 按自软顺序. 返回 FORM1 的结果.prog2 form1 form2 forms...
这个特殊的函数和 `prog1' 类似, 但是返回 FORM2 的结果.