isn't semantics of 'peek' and 'char' a bit "strange"?
I would expect 'char' to block and return next character when
available and 'peek' return the next character if available otherwise
return "nothing" without blocking. I think that once I get something
from peek, I should be able to get it with char without hanging.
I guess it seems broken to me because of the two char lookahead in
'char', but is it necessary? Is it "only" to handle different line
UNSUBSCRIBE: mailto:[EMAIL PROTECTED]