1
Fork 0
mirror of https://git.savannah.gnu.org/git/guile.git synced 2025-05-29 00:10:21 +02:00

* syncase.scm (values, call-with-values): Moved to boot-9.scm.

This commit is contained in:
Mikael Djurfeldt 1998-11-10 14:41:40 +00:00
parent 1729d8ff31
commit f086d19d77

View file

@ -114,29 +114,6 @@
(define generated-symbols (make-weak-key-hash-table 1019))
;;; Compatibility
(define values:*values-rtd*
(make-record-type "values"
'(values)))
(define values
(let ((make-values (record-constructor values:*values-rtd*)))
(lambda x
(if (and (not (null? x))
(null? (cdr x)))
(car x)
(make-values x)))))
(define call-with-values
(let ((access-values (record-accessor values:*values-rtd* 'values))
(values-predicate? (record-predicate values:*values-rtd*)))
(lambda (producer consumer)
(let ((result (producer)))
(if (values-predicate? result)
(apply consumer (access-values result))
(consumer result))))))
;;; Utilities
(define (psyncomp)