@sig(H/ (H/ "a" >> "b" >> "c") >> ("a", "b") >> "c")
def uncurry(fn, tup):
    return fn(fst(tup), snd(tup))
uncurry :: (a -> b -> c) -> (a, b) -> c
dataset/ETHPy150Open billpmurphy/hask/hask/Data/Tuple.py/uncurry