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

    The zip4 function takes four lists and returns a list of quadruples,
    analogous to zip.
    """
    return L[itertools.izip(a, b, c, d)]
dataset/ETHPy150Open billpmurphy/hask/hask/Data/List.py/zip4/original