GNU bug report logs -
#12216
peek-char incorrectly *CONSUMES* eof
Previous Next
Reported by: dwheeler <at> dwheeler.com
Date: Fri, 17 Aug 2012 02:03:01 UTC
Severity: normal
Done: Mark H Weaver <mhw <at> netris.org>
Bug is archived. No further changes may be made.
Full log
Message #41 received at 12216 <at> debbugs.gnu.org (full text, mbox):
Andy Wingo <wingo <at> pobox.com> writes:
> On Wed 13 Mar 2013 19:10, Mark H Weaver <mhw <at> netris.org> writes:
>
>> I don't know, it might not be that bad, now that we've agreed on a way
>> to extend the port structure in 2.0. Maybe we could just have a "last
>> peek-char returned EOF" flag that would be consulted by the other read
>> primitives.
>>
>> I agree that we should not allow EOF to be unread.
>>
>> What do you think?
>
> I really doubt our ability to get it right. Consider that we have code
> that accesses the buffer directly, binary and textual ports, etc
> etc... I don't think we're going to get this right.
I think you're being overly pessimistic, but for the sake of argument,
suppose you're right. Then we do the best we can and fix any remaining
problems as they're discovered later. It's better to aim for
correctness and fail in our first attempt than to give up without
trying.
IMO, this is a bug, pure and simple. I think we can do better than
"it's too hard, let's just punt on this". We are implementors of
Scheme, which has lots of details that are hard to get right, yet we
rise to the challenge, do we not?
> Fixing this would also have complexity and performance costs as well.
One extra check per read primitive is hardly enough of a cost to
consider abandoning correctness, IMO.
Mark
This bug report was last modified 12 years and 50 days ago.
Previous Next
GNU bug tracking system
Copyright (C) 1999 Darren O. Benham,
1997,2003 nCipher Corporation Ltd,
1994-97 Ian Jackson.