Почему двоеточия предшествуют переменным в Common Lisp

Что означает синтаксис, двоеточие перед переменной в 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))
      ))
16
задан cyberfrenzy 19 December 2011 в 20:31
поделиться