有人可以用flet操作员解释这部分吗? :
(defun read-3-numbers-&-format-sum ()
(flet ((prompt (string)
(format t "~&~a: " string)
(read nil 'eof nil)))
(let ((x (prompt "first number"))
(y (prompt "second number"))
(z (prompt "third number")))
(format t "~&the sum of ~a, ~a, & ~a is:~%~%~a~%"
x y z (+ x y z)))))
答案 0 :(得分:3)
Common Lisp文档的来源是Common Lisp Hyperspec,它可以在互联网上的不同位置找到。
在那里查找flet
:http://clhs.lisp.se/Body/s_flet_.htm#flet
它建立了一个本地函数定义。它的范围是它的主体(即在这种情况下let
形式)。函数定义的工作方式类似于使用defun定义的“普通”函数。