[Sorry - this should have gone to srfi-40 the first time around]:
By the way, since we are again discussing this srfi, I have to say I

think it was a mistake to make streams a separate type from other promises, for
the following reasons:

- It ascribes truth to false statements. For example,
(stream? (stream-delay 'not-a-stream)) ==> #t (this is wrong)
This shows that the result of stream-delay should be a promise,
not a stream.
- It prevents reuse of the implementation's primitive {delay, force, lazy}.
These have to be redone especially for streams, as the presence of
"stream-promise" in srfi-40:force shows.
Andre