X-Git-Url: https://git.distorted.org.uk/~mdw/sod/blobdiff_plain/21d6792d1c504fc73add4749a295bf2eb2cf1c3a..db960992be5d9f269f140ac594de77301c54d7c6:/src/utilities.lisp diff --git a/src/utilities.lisp b/src/utilities.lisp index 25733e8..82a387b 100644 --- a/src/utilities.lisp +++ b/src/utilities.lisp @@ -210,8 +210,10 @@ ;;;-------------------------------------------------------------------------- ;;; Locatives. -(export '(loc locp)) -(defstruct (loc (:predicate locp) (:constructor make-loc (reader writer))) +(export '(locative locativep)) +(defstruct (locative (:predicate locativep) + (:constructor make-locative (reader writer)) + (:conc-name loc-)) "Locative data type. See `locf' and `ref'." (reader nil :type function) (writer nil :type function)) @@ -228,8 +230,8 @@ (valtmps valforms newtmps setform getform) (get-setf-expansion place env) `(let* (,@(mapcar #'list valtmps valforms)) - (make-loc (lambda () ,getform) - (lambda (,@newtmps) ,setform))))) + (make-locative (lambda () ,getform) + (lambda (,@newtmps) ,setform))))) (export 'ref) (declaim (inline ref (setf ref)))