(FILECREATED "25-Sep-86 10:48:00" {ERIS}<LISPCORE>PAVCOMPILER>ASSIST-OPTIMIZERS.;1 2972   

      changes to:  (VARS ASSIST-OPTIMIZERSCOMS)

      previous date: "23-Sep-86 20:00:10" {ERIS}<LISPCORE>SOURCES>ASSIST-OPTIMIZERS.;1)


(* Copyright (c) 1986 by Xerox Corporation. All rights reserved.)

(PRETTYCOMPRINT ASSIST-OPTIMIZERSCOMS)

(RPAQQ ASSIST-OPTIMIZERSCOMS ((OPTIMIZERS COROUTINE GENERATOR POSSIBILITIES TRYNEXT)))
(DEFOPTIMIZER COROUTINE (P1 P2 F1 F2) (BQUOTE (PROGN (OR (STACKP (\, P1))
                                                         (SETQ (\, P1)
                                                          (STKNTH 0 T)))
                                                     (OR (STACKP (\, P2))
                                                         (SETQ (\, P2)
                                                          (STKNTH 0 T)))
                                                     ((LAMBDA (..MACROX.)
                                                        (COND
                                                           ((EQ ..MACROX. (\, P2))
                                                            (\, P2))
                                                           (T (RESUME (\, P2)
                                                                     ..MACROX.
                                                                     (\, P2))
                                                              (\, F1)
                                                              (RETTO (\, P1)
                                                                     (\, F2)
                                                                     T))))
                                                      (STKNTH -1)))))

(DEFOPTIMIZER GENERATOR (FORM COMVAR) (BQUOTE (GENERATEFN (FUNCTION (LAMBDA NIL
                                                                      (\, FORM)))
                                                     (\, COMVAR))))

(DEFOPTIMIZER POSSIBILITIES (FORM) (BQUOTE (POSSIBILITYFN (FUNCTION (LAMBDA NIL
                                                                      (\, FORM))))))

(DEFOPTIMIZER TRYNEXT (PLST NOMORE MSG) (BQUOTE (COND
                                                   ((SETQ (\, PLST)
                                                     (TRYNEXT1 (\, PLST)
                                                            (\, MSG)))
                                                    (PROG1 (CAR (\, PLST))
                                                           (SETQ (\, PLST)
                                                            (CDR (\, PLST)))))
                                                   (T (SETQ (\, PLST)
                                                       (CDR (\, PLST)))
                                                      (\, NOMORE)))))

(PUTPROPS ASSIST-OPTIMIZERS COPYRIGHT ("Xerox Corporation" 1986))
(DECLARE: DONTCOPY
  (FILEMAP (NIL)))
STOP