Informs the system of a name for a definition.
dspec
def dspec &body body => result
A dspec.
body
Lisp forms, evaluated as an implicit progn .
progn
result
The result of body .
The macro def informs the system that the dspec dspec is defined by the forms of body .
dspec can be non-canonical.
(defmacro define-wibble (x y)
`(dspec:def (define-wibble ,x)
(set-wibble-definition ',x ',y (dspec:location))))
(defun set-wibble-definition (x y loc)
(when (record-definition `(define-wibble ,x) loc)
;; defining code here
))
location