--- guile-core/srfi/srfi-1.scm Wed Sep 12 22:15:33 2001 +++ guile-core/srfi/srfi-1.scm.new Sun Jan 20 22:51:12 2002 @@ -603,10 +603,10 @@ ;; Internal helper procedure. Map `f' over the single list `ls'. ;; (define (map1 f ls) - (let lp ((l ls)) - (if (null? l) - '() - (cons (f (car l)) (lp (cdr l)))))) + (let lp ((result '()) (rest ls)) + (if (null? rest) + (reverse! result) + (lp (cons (f (car rest)) result) (cdr rest))))) ;; This `map' is extended from the standard `map'. It allows argument ;; lists of different length, so that the shortest list determines the