diff options
-rw-r--r-- | module/srfi/srfi-41.scm | 12 |
1 files changed, 5 insertions, 7 deletions
diff --git a/module/srfi/srfi-41.scm b/module/srfi/srfi-41.scm index 6a5af7749..edf95d7d9 100644 --- a/module/srfi/srfi-41.scm +++ b/module/srfi/srfi-41.scm @@ -87,7 +87,7 @@ ;; properly: <http://bugs.gnu.org/13995>. So for now, we duplicate the ;; code. -;; Copyright (C) 2010, 2011, 2013 Free Software Foundation, Inc. +;; Copyright (C) 2010, 2011 Free Software Foundation, Inc. ;; Copyright (C) 2003 André van Tonder. All Rights Reserved. ;; Permission is hereby granted, free of charge, to any person @@ -120,18 +120,16 @@ (define-syntax-rule (stream-lazy exp) (make-stream-promise (make-stream-value 'lazy (lambda () exp)))) -(define (stream-eager . xs) - (make-stream-promise (make-stream-value 'eager xs))) +(define (stream-eager x) + (make-stream-promise (make-stream-value 'eager x))) (define-syntax-rule (stream-delay exp) - (stream-lazy (call-with-values - (lambda () exp) - stream-eager))) + (stream-lazy (stream-eager exp))) (define (stream-force promise) (let ((content (stream-promise-val promise))) (case (stream-value-tag content) - ((eager) (apply values (stream-value-proc content))) + ((eager) (stream-value-proc content)) ((lazy) (let* ((promise* ((stream-value-proc content))) (content (stream-promise-val promise))) (if (not (eqv? (stream-value-tag content) 'eager)) |