Find centralized, trusted content and collaborate around the technologies you use most.
Teams
Q&A for work
Connect and share knowledge within a single location that is structured and easy to search.
我有一个 SML 中的 N 个元素的列表。
我想对该列表中的每个元素应用一个函数,所以我使用了 map。
但是我要应用的函数有多个这样的参数:
foo a b (c, d)
其中 a 是我从列表中使用的元素, bc 和 d 是预定义的变量,每次都相同。
我这样声明我的函数:
fun foo2 = map foo aList b (c,d)
但我得到一个运算符和操作数错误,这是意料之中的,但我可以想到任何其他方法来做到这一点。
fun foo2 list = map (fn x => foo x b (c, d)) list
如果更改 foo 的 args 的顺序会最方便;当然,您可以制作一个包装器:
fun foo_swapped_args b (c,d) a = foo a b (c, d)
然后你可以做
map (foo_swapped_args b (c,d)) aList