Guile Mailing List Archive

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: Faster reader (Re: Startup time in guile-1.3 (II))



Craig Brozefsky <craig@onshore.com> writes:

> Since I do not recall a "flush" procedure to be called on ports in
> R[45]RS, tho perhaps I just missed it, this would mean not
> implementing R[45]RS portably in Guile, and not maintaining basic
> scheme semantics.  Our users should not have to worry about that.

I don't think R5RS talks anything about reading and writing to the
same port.  R5RS doesn't open files for update.

My argument is like this: Opening files for update could be considered
a part of Guile's POSIX interface.  Then it isn't strange to put the
same requirements on users that POSIX does.  When opening a file for
reading or writing, neither R5RS nor POSIX nor Guile requires any
flushing.  When opening for update POSIX and Guile could be expected
to have similar behaviour.  R5RS doesn't apply in this case.

But I wasn't trying to say that this is a better behaviour than the
one the pre_read/write change implemented, just that it is acceptable.

> > I plead for dropping this change entirely.
> 
> I do too, but only by replacing it with a fix that maintains the
> present user interface, and performs better, ie, the re-implementation
> of STDIO buffering that Jim mentioned in his previous post.  In the
> meantime perhaps a check to see if your on a lame platform or not in
> the compilation of guile would reduce it's impact on everyone by
> sparing those with a real STDIO the agony.

I agree.

/mdj

Guile Home | Main Index | Thread Index