module Data.List.Extra (list) where list :: b -> ([a] -> b) -> [a] -> b list y _ [] = y list _ f xs = f xs