diff --git a/module/ice-9/futures.scm b/module/ice-9/futures.scm index f574410b1..45fc32db8 100644 --- a/module/ice-9/futures.scm +++ b/module/ice-9/futures.scm @@ -19,6 +19,7 @@ (define-module (ice-9 futures) #:use-module (srfi srfi-1) #:use-module (srfi srfi-9) + #:use-module (srfi srfi-9 gnu) #:use-module (ice-9 threads) #:use-module (ice-9 q) #:export (future make-future future? touch)) @@ -52,6 +53,14 @@ (mutex future-mutex) (completion future-completion)) ; completion cond. var. +(set-record-type-printer! + + (lambda (future port) + (simple-format port "#" + (number->string (object-address future) 16) + (future-state future) + (future-thunk future)))) + (define (make-future thunk) "Return a new future for THUNK. Execution may start at any point concurrently, or it can start at the time when the returned future is