![](/img/trans.png)
[英]Use contents of a list as positional arguments to a single multi-argument function
[英]Multi-argument monadic bind
對於兩個參數的函數是否有>>=
就像是
bind2 :: m a -> m b -> (a -> b -> m c) -> m c
我不知道你可以使用哪些聰明的組合器來構建標准庫,但是冒着明顯的風險,很容易實現自己:
bind2 :: Monad m => (a -> b -> m c) -> m a -> m b -> m c
bind2 f ma mb = do
a <- ma
b <- mb
f a b
> bind2 (\a b -> [a,b]) [1,2,3] [4,5,6]
[1,4,1,5,1,6,2,4,2,5,2,6,3,4,3,5,3,6]
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.