【发布时间】:2012-10-04 21:27:38
【问题描述】:
我想做一个自定义的map函数,和sml中预定义的map函数做同样的事情,我写了如下代码:
fun mymap f = fn L => foldr f [] L;
这基本上是一个函数 f,它可以获取一个列表并将函数 f 应用于列表,因为 map 函数接受一个列表和函数并返回另一个列表,现在我得到的是:
val mymap = fn : ('a * 'b list -> 'b list) -> 'a list -> 'b list
但预定义的地图函数有以下输出:
val it = fn : ('a -> 'b) -> 'a list -> 'b list
我在这里遇到了什么问题? 谢谢
注意:我必须使用 foldr 或 foldl 函数并使用柯里化
【问题讨论】: