@sig(H/ [("a", "b", "c")] >> (["a"], ["b"], ["c"]))
def unzip3(xs):
    """
    unzip3 :: [(a, b, c)] -> ([a], [b], [c])

    The unzip3 function takes a list of triples and returns three lists,
    analogous to unzip.
    """
    a = L[(i[0] for i in xs)]
    b = L[(i[1] for i in xs)]
    c = L[(i[2] for i in xs)]
    return a, b, c
dataset/ETHPy150Open billpmurphy/hask/hask/Data/List.py/unzip3/original