10 lines
366 B
Scheme
10 lines
366 B
Scheme
; returns a list of numbers parsed from the first line of the file,
|
|
; separated by commas
|
|
(define (read-comma-separated-numbers file)
|
|
(let loop [(draws '()) (n 0)]
|
|
(let [(c (get-char file))]
|
|
(cond
|
|
[(char=? c #\,) (loop (cons n draws) 0)]
|
|
[(char-whitespace? c) (reverse (cons n draws))]
|
|
[else (loop draws (+ (* n 10) (string->number (string c))))]))))
|