waitForProcess :: Process -> IO RetVal
waitForProcess (FuncProc asyncid) = do
  e <- Async.waitCatch asyncid
  either throw return e
waitForProcess :: Process -> IO RetVal
waitForProcess (FuncProc asyncid) = do
  e <- Async.waitCatch asyncid
  either throw return e
waitForProcess (FuncProc asyncid) = do
  e <- Async.waitCatch asyncid
  either throw return e