Hello,
could someone explain me simple how return-type polymorphism works
in the following case:
newEmptyMVar :: IO (MVar a) ?