SharedStreams introduces SharedBufferStream and SharedBidirectionalStream.
SharedBufferStream is like a SharedQueue (FIFO) but for a stream of bytes/characters instead of separate objects. It can be used as a "socket" between Squeak processes in order for them to communicate with a stream protocol.
A SharedBidirectionalStream is like a "socket" between two (or more) Squeak processes. Internally it uses two SharedBufferStreams, one for input and one for output. It handles multiple Processes at both ends.
In order for the protocol to be the same no matter what side you are of the stream you can access the "other end" by calling #otherEnd. A SharedBidirectionalStream then creates a single mirror twin brother which it shares the two internal SharedBufferStream with - but with the inStream and outStream twisted.