Haskell に n 個の引数を取り、n 個のタプルを返す関数はありますか? 例えば:
make3tuple:: a -> a -> a -> (a,a,a)
make3tuple a b c = (a,b,c)
つまり、コンマと似ていますが、3 つ以上の引数が必要です。明らかに make3tuple がその仕事をしますが、これを行うための組み込みの方法が必要であると感じています.
FWIW、これはliftM3(またはそれ以上)を使用するときに発生します。例えば:
type RandomState a = State StdGen a
[...]
getTwoRandoms = liftM2 (,) getRandom getRandom
get3Randoms = liftM3 make3tuple getRandom getRandom getRandom
ありがとう!