--
-- Adapted from the program "infer", believed to have been originally
-- authored by Philip Wadler, and used in the nofib benchmark suite
-- since at least the late 90s.
--

module MyList (minus) where

minus                 :: (Eq x) => [x] -> [x] -> [x]
xs `minus` ys         =  foldl rmv xs ys
rmv                   :: (Eq x) => [x] -> x -> [x]
[] `rmv` y            =  []
(x:xs) `rmv` y        =  if  x == y  then  xs  else  x : (xs `rmv` y)