What does the notation with underscores and vertical bars in Hoogle mean? For example, the following: >zip is right-lazy: zip [] _|_ = [] zip _|_ [] = _|_