import "Prelude" a :: [Either Integer Integer] a = [Left 1, Right 2, Left 3, Right 4] lefts :: [Either a b] -> [a] lefts l = [x | Left x <- l] main :: [Integer] main = lefts a -- [1, 3]