As discussed on IRC, ‘get-bytevector-some’ returns only 1 byte from
unbuffered ports:
--8<---------------cut here---------------start------------->8---
scheme@(guile-user)> (call-with-input-string "foo"
(lambda (port)
(setvbuf port _IONBF)
(get-bytevector-some port)))
$11 = #vu8(102)
scheme@(guile-user)> (version)
$12 = "2.2.3"
--8<---------------cut here---------------end--------------->8---
Strictly speaking it’s valid, but in practice it’s not very useful.
AFAICS, we lack a way to do the equivalent of:
read (fd, buf, sizeof buf);
‘get-bytevector-n!’ is different because it blocks until it has read
COUNT bytes or EOF is reached. So ‘get-bytevector-some’ could play this
role, but it doesn’t.
Thoughts?
Ludo’.