(macrolet ((def (name element-type)
`(defun ,name (&rest sequences)
(declare (dynamic-extent sequences)
(macrolet ((def (name element-type)
`(defun ,name (&rest sequences)
(declare (dynamic-extent sequences)
(let* ((lengths (mapcar #'length sequences))
(result (make-array (the integer (apply #'+ lengths))
:element-type ',element-type))
(let* ((lengths (mapcar #'length sequences))
(result (make-array (the integer (apply #'+ lengths))
:element-type ',element-type))