@sig(H/ (H/ "a" >> "a" >> bool) >> ["a"] >> ["a"])
def nubBy(f, xs):
    """
    nubBy :: (a -> a -> Bool) -> [a] -> [a]

    The nubBy function behaves just like nub, except it uses a user-supplied
    equality predicate instead of the overloaded == function.
    """
    raise NotImplementedError()
dataset/ETHPy150Open billpmurphy/hask/hask/Data/List.py/nubBy/original