instance Monad ( Parser c ) where return x = Parser $ \ s -> [ ( x, s ) ] Parser f >>= g = Parser $ \ s -> do ( a, t ) <- f s let Parser h = g a h t
beachte: das do gehört zur List-Monade