Tuple and function composition

后端 未结 2 957
庸人自扰
庸人自扰 2020-12-19 07:54

Is there a better way to express (\\(a, b) -> a < b) with function composition? I feel like I\'m missing something and experimenting with curry

2条回答
  •  再見小時候
    2020-12-19 08:52

    curry is the wrong thing to use here; it turns a function operating on tuples into a curried function. You want the opposite, which is uncurry:

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

    In this case, it's uncurry (<).

    (Another useful source for combinators useful in writing functions on tuples is Control.Arrow; since (->) is an instance of Arrow, you can read a b c as b -> c.)

提交回复
热议问题