(DEFINE-FILE-INFO PACKAGE "INTERLISP" READTABLE "INTERLISP" BASE 10)

(FILECREATED " 9-Nov-2025 11:52:07" {DSK}<Users>larry>il>MEDLEY>LISPUSERS>BACKGROUND-YIELD.;2 1882   

      :EDIT-BY "lmm"

      :CHANGES-TO (FNS BACKGROUND-YIELD)

      :PREVIOUS-DATE "28-Jul-2023 09:49:24" {DSK}<Users>larry>il>MEDLEY>LISPUSERS>BACKGROUND-YIELD.;1
)


(PRETTYCOMPRINT BACKGROUND-YIELDCOMS)

(RPAQQ BACKGROUND-YIELDCOMS (
                             (* ;; " Add a call to BACKGROUNDFNS to yield when not otherwise busy")

                             (FNS BACKGROUND-YIELD INIT-YIELD)
                             (DECLARE%: DONTEVAL@LOAD DOCOPY (P (INIT-YIELD T)))
                             (VARS BACKGROUND-YIELD)))



(* ;; " Add a call to BACKGROUNDFNS to yield when not otherwise busy")

(DEFINEQ

(BACKGROUND-YIELD
  [LAMBDA NIL                                                (* ; "Edited  9-Nov-2025 11:50 by lmm")
                                                             (* ; "Edited 28-Jul-2023 09:11 by lmm")
                                                           (* ; "Edited 20-Sep-2021 11:37 by larry")
    (LET ((\BACKGROUND T))
         (DECLARE (SPECVARS \BACKGROUND)
                (GLOBALVARS BACKGROUND-YIELD))
         (IF (FIXP BACKGROUND-YIELD)
             THEN (SUBRCALL YIELD BACKGROUND-YIELD])

(INIT-YIELD
  [LAMBDA (ONP)                                        (* ; "Edited 19-Sep-2021 13:32 by larry")
    (SETQ BACKGROUNDFNS (REMOVE 'BACKGROUND-YIELD BACKGROUNDFNS))
    (if [AND ONP (CCODEP (GETD 'BACKGROUND-YIELD]
        then 

              (* ;; " add to end")

              (SETQ BACKGROUNDFNS (APPEND BACKGROUNDFNS '(BACKGROUND-YIELD])
)
(DECLARE%: DONTEVAL@LOAD DOCOPY 

(INIT-YIELD T)
)

(RPAQQ BACKGROUND-YIELD 833333)
(DECLARE%: DONTCOPY
  (FILEMAP (NIL (808 1767 (BACKGROUND-YIELD 818 . 1383) (INIT-YIELD 1385 . 1765)))))
STOP
