| [ << ] | [ < ] | [ Up ] | [ > ] | [ >> ] | [Top] | [Contents] | [Index] | [ ? ] |
7.5.27.1 SRFI-41 Stream Fundamentals
SRFI-41 Streams are based on two mutually-recursive abstract data types:
An object of the stream abstract data type is a promise that,
when forced, is either stream-null or is an object of type
stream-pair. An object of the stream-pair abstract data
type contains a stream-car and a stream-cdr, which must be
a stream. The essential feature of streams is the systematic
suspensions of the recursive promises between the two data types.
The object stored in the stream-car of a stream-pair is a
promise that is forced the first time the stream-car is accessed;
its value is cached in case it is needed again. The object may have any
type, and different stream elements may have different types. If the
stream-car is never accessed, the object stored there is never
evaluated. Likewise, the stream-cdr is a promise to return a
stream, and is only forced on demand.
This document was generated on April 20, 2013 using texi2html 5.0.
