Provide promise/name?.

This commit is contained in:
Sam Tobin-Hochstadt 2015-07-22 13:33:52 -04:00
parent 594bdd6e61
commit 960fc831fc
2 changed files with 7 additions and 1 deletions

View File

@ -80,6 +80,12 @@ If a @racket[delay/name] promise forces itself, no exception is
raised, the promise is never considered ``running'' or ``forced'' in
the sense of @racket[promise-running?] and @racket[promise-forced?].}
@defproc[(promise/name? [promise any/c]) boolean?]{
Returns @racket[#t] if @racket[promise] is a promise created with @racket[delay/name].
@history[#:added "6.2.900.5"]
}
@defform[(delay/strict body ...+)]{
Creates a ``strict'' promise: it is evaluated immediately, and the

View File

@ -7,7 +7,7 @@
(define-struct (promise/name promise) ()
#:property prop:force (λ(p) ((pref p))))
(provide (rename-out [delay/name* delay/name]))
(provide (rename-out [delay/name* delay/name]) promise/name?)
(define delay/name make-promise/name)
(define-syntax (delay/name* stx) (make-delayer stx #'delay/name '()))