;;; something not EQ to anything we might legitimately READ
(defparameter *eof-object* (make-symbol "EOF-OBJECT"))
;;; something not EQ to anything we might legitimately READ
(defparameter *eof-object* (make-symbol "EOF-OBJECT"))
;;; a type used for indexing into arrays, and for related quantities
;;; like lengths of lists
;;;
;;; a type used for indexing into arrays, and for related quantities
;;; like lengths of lists
;;;
(unless (proper-list-of-length-p spec 2)
(error "malformed ONCE-ONLY binding spec: ~S" spec))
(let* ((name (first spec))
(unless (proper-list-of-length-p spec 2)
(error "malformed ONCE-ONLY binding spec: ~S" spec))
(let* ((name (first spec))
`(let ((,,name ,,exp-temp))
,,(frob (rest specs) body))))))))
\f
`(let ((,,name ,,exp-temp))
,,(frob (rest specs) body))))))))
\f