(FILECREATED "24-Jan-86 15:50:14" {ERIS}<LISPCORE>LIBRARY>CMLMVS.;4 3246 changes to: (MACROS MULTIPLE-VALUE-SETQ) previous date: "23-Jan-86 22:56:41" {ERIS}<LISPCORE>LIBRARY>CMLMVS.;3) (* Copyright (c) 1985, 1986 by Xerox Corporation. All rights reserved.) (PRETTYCOMPRINT CMLMVSCOMS) (RPAQQ CMLMVSCOMS [(MACROS MULTIPLE-VALUE-BIND MULTIPLE-VALUE-LIST MULTIPLE-VALUE-SETQ) (VARS CLMV::MV-ACCEPTOR MULTIPLE-VALUES-LIMIT) (FNS MULTIPLE-VALUE-CALL MULTIPLE-VALUE-PROG1 VALUES VALUES-LIST) (DECLARE: DONTEVAL@LOAD DOEVAL@COMPILE DONTCOPY COMPILERVARS (ADDVARS (NLAMA MULTIPLE-VALUE-PROG1 MULTIPLE-VALUE-CALL) (NLAML) (LAMA VALUES]) (DECLARE: EVAL@COMPILE [DEFMACRO MULTIPLE-VALUE-BIND (VARS VALUES-FORM &REST FORMS) (BQUOTE (APPLY [FUNCTION (LAMBDA (\, VARS) (\., FORMS] (MULTIPLE-VALUE-LIST (\, VALUES-FORM] [DEFMACRO MULTIPLE-VALUE-LIST (FORM) (BQUOTE (LET ((CLMV::MV-ACCEPTOR T) CLMV::RESULT) (DECLARE (SPECVARS CLMV::MV-ACCEPTOR)) (SETQ CLMV::RESULT (\, FORM)) (CL:IF (CONSP CLMV::MV-ACCEPTOR) CLMV::MV-ACCEPTOR (CONS CLMV::RESULT NIL] [DEFMACRO MULTIPLE-VALUE-SETQ (VARIABLES FORM) (LET ((VALUES-VAR (GENSYM))) (BQUOTE (LET ((, VALUES-VAR (MULTIPLE-VALUE-LIST , FORM))) ,@ (FOR X IN VARIABLES AS I FROM 1 COLLECT (BQUOTE (SETQ , X (CAR (NTH , VALUES-VAR , I] ) (RPAQQ CLMV::MV-ACCEPTOR NIL) (RPAQQ MULTIPLE-VALUES-LIMIT 65535) (DEFINEQ (MULTIPLE-VALUE-CALL [NLAMBDA A (* raf "18-Nov-85 15:45") (CL:DO* [(FUNCTION (EVAL (CAR A))) (FORMS (CDR A) (CDR FORMS)) (RESULTS (MULTIPLE-VALUE-LIST (EVAL (CAR FORMS))) (APPEND RESULTS (MULTIPLE-VALUE-LIST (EVAL (CAR FORMS] ((NULL (CDR FORMS)) (CL:APPLY FUNCTION RESULTS]) (MULTIPLE-VALUE-PROG1 [NLAMBDA A (* raf "18-Nov-85 15:47") (CL:DO ([RESULTS (MULTIPLE-VALUE-LIST (EVAL (CAR A] (FORMS (CDR A) (CDR FORMS))) ((NULL (CDR FORMS)) (VALUES-LIST RESULTS)) (EVAL (CAR FORMS]) (VALUES (CL:LAMBDA (&REST VALUES) (* raf "18-Nov-85 11:56") (CL:IF (EQ T CLMV::MV-ACCEPTOR) (SETQ CLMV::MV-ACCEPTOR VALUES) (CAR VALUES)))) (VALUES-LIST (CL:LAMBDA (VALUES) (* raf "18-Nov-85 15:17") (CL:IF (EQ T CLMV::MV-ACCEPTOR) (SETQ CLMV::MV-ACCEPTOR VALUES) (CAR VALUES)))) ) (DECLARE: DONTEVAL@LOAD DOEVAL@COMPILE DONTCOPY COMPILERVARS (ADDTOVAR NLAMA MULTIPLE-VALUE-PROG1 MULTIPLE-VALUE-CALL) (ADDTOVAR NLAML ) (ADDTOVAR LAMA VALUES) ) (PUTPROPS CMLMVS COPYRIGHT ("Xerox Corporation" 1985 1986)) (DECLARE: DONTCOPY (FILEMAP (NIL (1811 2998 (MULTIPLE-VALUE-CALL 1821 . 2245) (MULTIPLE-VALUE-PROG1 2247 . 2573) (VALUES 2575 . 2781) (VALUES-LIST 2783 . 2996))))) STOP