(define list-apply (lambda (f ls) (if (null? ls) '() (cons (f (car ls) (list-apply f (cdr ls)))))))