New draft (#3) of SRFI 155: Promises
Arthur A. Gleckler 28 Jul 2017 21:57 UTC
I've just published draft #3 of SRFI 155. It was submitted
by Marc Nieper-Wißkirchen, author of the SRFI.
<https://srfi.schemers.org/srfi-155/>
Here are Marc's comments on the draft:
The new draft incorporates a major improvement to the
semantics of the pair delay and force, making delay-force
unnecessary. It is shown through an efficient sample
implementation that a Scheme system can ensure that
iterative lazy algorithms run in bounded space without
needing the aid of the user (by writing delay-force).
Other changes:
- Use the new terminology of SRFI 154, which replaces dynamic environment by dynamic extent.
- Update included sample implementation of SRFI 154.
- Update sample R7RS implementation to the new semantics, requiring SRFI 157 for complete correctness.
- Provide a Racket module.
- Clarify semantics of (forcing-extent).
Commit Summary
- Update SRFI 154 implementation
- Change proposed library from (scheme lazy) to (scheme promise)
- Minor grammar fix
- Major feature update
File Changes
M Makefile (7)
M srfi-155.html (324)
A srfi/154.chibi.scm (38)
A srfi/154.closed-lambda.scm (29)
A srfi/154.rkt (61)
M srfi/154.scm (26)
M srfi/154.sld (21)
A srfi/155.rkt (36)
A srfi/155/implementation.157.scm (111)
R srfi/155/implementation.lazy.scm (35)
M srfi/155/implementation.sld (15)
M srfi/155/reflection.sld (2)
A srfi/155/test.rkt (31)
A srfi/155/test.scm (82)
M srfi/155/test.sld (56)
A tests.rkt (28)
Here's the diff:
<https://github.com/scheme-requests-for-implementation/srfi-155/compare/ee62ed19ba7123173088634a773e6cafab31c11d...4bab073539dfbdcc947f3be09971299dd25c2657>
Regards,
SRFI Editor