(FILECREATED "16-Jul-86 01:24:44" {ERIS}<LISPCORE>EVAL>CMLSEQCOMMON.;1 1578         changes to:  (FUNCTIONS MAKE-SEQUENCE-LIKE)      previous date: " 2-Jul-86 18:01:08" {ERIS}<LISPCORE>LIBRARY>CMLSEQCOMMON.;2)(* Copyright (c) 1986 by Xerox Corporation. All rights reserved.)(PRETTYCOMPRINT CMLSEQCOMMONCOMS)(RPAQQ CMLSEQCOMMONCOMS ((FUNCTIONS MAKE-SEQUENCE-LIKE SEQ-DISPATCH TYPE-SPECIFIER)                         (PROP FILETYPE CMLSEQCOMMON)))(DEFMACRO MAKE-SEQUENCE-LIKE (SEQUENCE LENGTH)                               "Returns a sequence of the same type as SEQUENCE and the given LENGTH."   (BQUOTE (LET ((SEQ (\, SEQUENCE)))                (ETYPECASE SEQ (LIST (MAKE-LIST (\, LENGTH)))                       (STRING (MAKE-STRING (\, LENGTH)))                       (ARRAY (MAKE-ARRAY (\, LENGTH)                                     :ELEMENT-TYPE                                     (ARRAY-ELEMENT-TYPE SEQ)))))))(DEFMACRO SEQ-DISPATCH (SEQUENCE LIST-FORM VECTOR-FORM) (BQUOTE (ETYPECASE (\, SEQUENCE)                                                                       (LIST (\, LIST-FORM))                                                                       (VECTOR (\, VECTOR-FORM)))))(DEFMACRO TYPE-SPECIFIER (TYPE) "Returns the broad class of which TYPE is a specific subclass."   (BQUOTE (CL:IF (CL:ATOM (\, TYPE))                  (\, TYPE)                  (CAR (\, TYPE)))))(PUTPROPS CMLSEQCOMMON FILETYPE COMPILE-FILE)(PUTPROPS CMLSEQCOMMON COPYRIGHT ("Xerox Corporation" 1986))(DECLARE: DONTCOPY  (FILEMAP (NIL)))STOP