This is the mail archive of the guile@cygnus.com mailing list for the guile project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]

Re: Bug in (read-line)


forcer <forcer@mindless.com> writes:

> guile> (define p (pipe))
> guile> (write-line "foo" (cdr p))
> guile> (force-output (cdr p))
> guile> (read-line (car p))
> Aborted
> forcer@forcix:~$ guile
> guile> (define p (pipe))
> guile> (write-line "foo" (cdr p))
> guile> (force-output (cdr p))
> guile> (read (car p))
> foo

This seems to have more to do with os issues than guile
problems. There's a link on my webpage to the Scheme Hash site, which
also includes some code for communicating with interactive processes
with pipes, which might shed some light on some of the problems with
pipes (particularly the SunOS bugs that seem to crop up often). There
is also a problem with some glibc's that trigger similar problems).

> And the peek-char bug i posted lately is still present.
> 
> When is the new ports system going to be released?

You can pick up a patch from Gary Houston's website (there's a link at 
http://home.thezone.net/~gharvey/guile/auto-guile-projects.html);
thing (http://home.thezone.net/~gharvey/guile/guile.html#thing) also
contains the new ports code. peek-char doesn't have the same problem
(in that it always generates the same result) but it's still limited
by the use of chars (so #\377 will give you two <eof>'s). The result
of your tests with the new ports stuff:

guile> (test #\177)
(#\ . #\)
guile> (test #\200)
(#\-200 . #\-200)
guile> (test #\377)
(#<eof> . #<eof>)


-- 
Greg