Re: [Chicken-users] read file into a list of lists

2016-07-12 Thread Jinsong Liang
Hi Arthur, I need a list of lists because each line has more than one number. You first solution works for me. All I need to do is to add an extra string-split call, which returns a list. Thanks a lot! Jinsong On Tue, Jul 12, 2016 at 11:52 PM, Arthur Maciel wrote: >

Re: [Chicken-users] read file into a list of lists

2016-07-12 Thread Arthur Maciel
Although I can't imagine why you'd need it, but in order to get list of lists you could do: (define (read-all-lines filename) (with-input-from-file filename (lambda () (map (lambda (x) (list (string->number x))) (read-lines) I'm

Re: [Chicken-users] read file into a list of lists

2016-07-12 Thread Jinsong Liang
Hi Arthur, This simplifies my code a lot! I will give it a try. Thank you! Jinsong On Tue, Jul 12, 2016 at 11:45 PM, Arthur Maciel wrote: > Jinsong, the closest solution I can think of is the read-lines procedure, > which returns a list of strings (each string a line

Re: [Chicken-users] read file into a list of lists

2016-07-12 Thread Arthur Maciel
Jinsong, the closest solution I can think of is the read-lines procedure, which returns a list of strings (each string a line read). http://api.call-cc.org/doc/extras/read-lines Supposing you have a number per line, you could use string->number to get the result. An example would be: (define

[Chicken-users] read file into a list of lists

2016-07-12 Thread Jinsong Liang
Hi, I need to read a file (lines of numbers) into a list of lists with each line a list. I wrote the following function to do it: (define (read-all-lines file-name) (let ([output '()]) (let ([p (open-input-file file-name)]) (let f ([x (read-line p)]) (if (eof-object? x)