use*_*239 1 haskell functional-programming list
我有一个类型的功能Csp -> Var -> Int -> Csp,我想将这个功能应用到一个列表中[Var],只是想知道是否有人可以帮助我,我完全被竹子!
从你的评论中,听起来你想要一个折叠,例如:
foo :: Csp -> Var -> Int -> Csp -- your function
bar :: Csp -> [Var] -> Int -> Csp
bar c0 vs x = foldl (\c v -> foo c v x) c0 vs
Run Code Online (Sandbox Code Playgroud)
尽管可能值得更改参数的顺序以使其更适合部分应用:
foo :: Int -> Csp -> Var -> Csp
bar :: Int -> Csp -> [Var] -> Csp
bar x = foldl (foo x)
Run Code Online (Sandbox Code Playgroud)