Sujet : Re: [newbie] I need a function for read user input.
De : Nobody447095 (at) *nospam* here-nor-there.org (B. Pym)
Groupes : comp.lang.lisp comp.lang.schemeDate : 07. Jul 2025, 21:36:28
Autres entêtes
Organisation : A noiseless patient Spider
Message-ID : <104hb4b$33jpf$1@dont-email.me>
References : 1
User-Agent : XanaNews/1.18.1.6
B. Pym wrote:
Gareth McCaughan wrote:
(loop for word = (read input nil) while word collect word)
which even the strictest LOOP-hater would have to agree
is clearer.
It's shorter in Gauche Scheme:
(use gauche.generator)
(generator->list (cut read input))
Another way:
(use srfi-42) ; list-ec
(list-ec (:port word input) word)
Using the old-fashioned and primitive "do":
(do ((r () (cons x r))
(x 0 (read)))
((eof-object? x) (cdr (reverse r))))