调用函数列表并应用于一个参数方案

时间:2015-02-04 21:58:08

标签: scheme

如果我想在这一个参数上运行多个测试,是否有一种简单的方法可以实现呢?比如'(add1 list?number?square)3)和get(4 #f #t 9)?

(define(construct(functList argv))

1 个答案:

答案 0 :(得分:0)

在功能列表上使用map,将每个值应用于值:

(define (f-map fns v)
  (map (lambda (f) (f v)) fns))

> (f-map (list add1 list? number?) 3)
'(4 #f #t)