Xtreams is described at
http://www.cincomsmalltalk.com/publicRepository/XtreamsDevelopment(Bundle).html
Instead of using [stream isAtEnd] whileTrue: [stream next. ... ], Xtreams
are implemented without a notion of "end" and instead throw an exception
when an incomplete read or write is performed, which notes a sequence it
wrote to, its current cursor position within that, and the number of
elements (to be clarified by source examination).
The intent is that orienting the stream code according to this will allow
bulk-I/O methods to be performed by default, thus avoiding end-checks and
loop overhead, and making better use of VM and other primitives.
Benchmarks will be performed to verify the claims as coded. Of course there
will be a bootstrapping phase to transition to the new style, with an
intermediate mode of operation mixing the two modes.
Original issue reported on code.google.com by BrianTRice on 25 Nov 2009 at 7:07
Original issue reported on code.google.com by
BrianTRice
on 25 Nov 2009 at 7:07