A little while back I asked:

> The one bit of that article I did not find clear was the bit about
> passing the interface around, in section 4.3: "Instead we write a handler
> object to reify this dialogue between a stream and a Person".  I've never
	[...]
> recent question, about treating strings as if they were streams.  Suppose
> I had some kind of interface object that didn't care whether there was a
> string or a stream on one side of it. Then I think this article is saying
> that I would use an instance of such an object, whose creation involved
> tying it to a string or to a stream, to do the I/O for me.
>
> Have I got that about right?  Has anyone a simple example of such 

Having dug about on the net for this, I think I did have this about right.  
The examples I can find seem to use the Command Pattern, so that instead
of invoking corresponding methods in the handler, one passes objects of
class Commmand to the Handler (or Command Manager). The Handler then
passes them on to the appropriate target, and it can do things like
logging, undoing, etc, independent of what class the target object is.

I hope this is useful to someone else.
	Hugh
	hgs / dmu.ac.uk