Что означает синтаксис, двоеточие перед переменной в Common Lisp? Я видел программы с таким синтаксисом, и здесь я приведу несколько примеров кода из большого набора функций.
(defun expand (successorf node)
(mapcar (lambda (action-state-cost)
(let ((action (car action-state-cost))
(state (cadr action-state-cost))
(cost (caddr action-state-cost)))
(make-node :state state :parent node
:action action :path-cost (+ (node-path-cost node) cost)
:depth (1+ (node-depth node)))
))
(funcall successorf (node-state node))
))