1 2 3 4 5 6
import Control.Concurrent main = do m <- newEmptyMVar forkIO $ putStrLn "Hello World!" >> putMVar m () takeMVar m