A minor glitch in read/string-partial:
(read-string/partial nbytes [fd/port]) ---> string or #f (procedure)
Welcome to scsh 0.6.4 (Olin Shivers)
Type ,? for help.
> (read-string 0 (current-input-port))
> (read-string/partial 0 (current-input-port))
read/string-partial should probably be returning a "" instead of a 0.
The manual says that read-string/partial is an atomic
best-effort/forward-progress call, which means that the call will
block until there is something to read. But read-string/partial (with
nbytes > 0) on an (TCP) socket inport returns immediately with ""
(empty string, which I interpret as that no data was read). It should
have blocked AFAICT.