Elisp lambda 表达式
(lambda (arguments-list) "documentation string" body)
调用 lambda 方法如下:
(funcall (lambda (name) (message "Hello, %s!" name)) "Emacser")
你也可以把 lambda 表达式赋值给一个变量,然后用 funcall
调用:
(setq foo (lambda (name) (message "Hello, %s!" name))) (funcall foo "Emacser") ; => "Hello, Emacser!"
lambda 表达式最常用的是作为参数传递给其它函数,比如 mapc
。