【发布时间】:2011-05-20 18:46:30
【问题描述】:
嘿,我正在处理一个关于将函数应用于列表中的每个元素的家庭作业问题,根据需要深入。
我在调用 (fun (car l)) 时遇到错误,
mcar: expects argument of type <mutable-pair>; given 5
然而,当我调用 (fun l) 时,我得到了错误 +:期望类型作为第一个参数,给定:(5);其他论点是:1
(define (map-gen fun l)
(if (null? fun) l
(if (null? l) '()
(if (list? (car l))
(append (map-gen fun (cdr l)) (map-gen fun (car l)))
(append (map-gen fun (cdr l)) (fun (car l)))))))
感谢您的任何帮助!
编辑:这是在这样调用函数时:
(map-gen (lambda (x) (+ x 1))'(1 (2 (3 4))(((5)))))
【问题讨论】: