Throwing exceptions on stream exhaustion


The io.streams.throwing vocabulary implements combinators for changing the behavior of a stream to throw an exception upon exhaustion instead of returning f.

A general combinator to wrap any stream:
stream-throw-on-eof ( ..a stream quot: ( ..a stream' -- ..b ) -- ..b )


A combinator for the input-stream variable:
throw-on-eof ( ..a quot: ( ..a -- ..b ) -- ..b )


The exception itself:
stream-exhausted ( n stream word -- * )