perm filename SAVE.1[NET,GUE] blob
sn#025544 filedate 1973-02-15 generic text, type T, neo UTF8
(CDEFUN WORLD←MODEL (INFO)
(PRINT INFO) (RETURN (READ)))
(CDEFUN MUST←BE←PRESENT (ITEM)
"AUX" (MSG)
(COND ((PRESENT ITEM) (RETURN T)))
(CSETQ MSG (CONS 'IS (CONS ITEM '(PRESENT))))
(COND ((NULL (WORLD←MODEL MSG)) (RETURN NIL)))
(ADD ITEM ) (RETURN T))
(CDEFUN MUST←FETCH (ITEMS)
"AUX" (MSG BUFFER BUFFY)
(CSETQ BUFFER (FETCH ITEMS))
(COND ((NOT (NULL (CDR BUFFER))) (RETURN BUFFER)))
(CSETQ MSG (CONS '(LIST ITEMS OF THE FOLLOWING FORM) ITEMS))
(CSETQ BUFFER (WORLD←MODEL MSG))
(COND ((NULL BUFFER) (RETURN NIL)))
(CSETQ BUFFY BUFFER)
:LOOP
(ADD (CAR BUFFER))
(CSETQ BUFFER (CDR BUFFER))
(COND ((NULL BUFFER) (RETURN BUFFY))
(T (GO 'LOOP))))