uncurry :: (a -> b -> c) -> (a, b) -> c


이건 평소에 어디에 주로 쓰이나요..?

검색해보면 curried function을 pair에 적용하기 위해 존재한다는데

여전히 왜 써야하는지를 모르겠어요

이유가 거기까지만이라면 fst, snd 이용하면 충분할텐데..


uncurry (+) (a, b) = a + b

uncurry ($) (f, a) = f a


이런 식으로 쓰던데 제가 통찰력이 부족해서 뭔가 놓치고 있는게 아닌가 하는 생각이 듭니다