diff options
Diffstat (limited to 'lib/utils.rkt')
| -rw-r--r-- | lib/utils.rkt | 17 |
1 files changed, 12 insertions, 5 deletions
diff --git a/lib/utils.rkt b/lib/utils.rkt index 2ce8a51..2371583 100644 --- a/lib/utils.rkt +++ b/lib/utils.rkt @@ -11,12 +11,19 @@ ret (loop (+ 1 i) (cons e ret))))) +(define (trim-lines lines) + (if (= 0 (string-length (car lines))) + (trim-lines (cdr lines)) + lines)) + (define (get-lines fp) - (let loop ((lines '())) - (define l (read-line fp)) - (if (eof-object? l) - (reverse lines) - (loop (cons l lines))))) + (define lines + (let loop ((lines '())) + (define l (read-line fp)) + (if (eof-object? l) + (reverse lines) + (loop (cons l lines))))) + (reverse (trim-lines (reverse (trim-lines lines))))) (define (enumerate lst) (let loop ((i 1) (ret '()) (remain lst)) |
