wakeup' :: IO Bool
wakeup' = do
    m <- forkLambdabot
    case m of
        Nothing        -> return False
        Just (a,b,c,d) -> do writeIORef state (Just (ST a b c d))
                             return True

-- |
-- fork a lambdabot on start up
--
-- TODO, do this hmp3-style, with a separate thread and a channel
--
-- catch error and print better message
wakeup' :: IO Bool
wakeup' = do
    m <- forkLambdabot
    case m of
        Nothing        -> return False
        Just (a,b,c,d) -> do writeIORef state (Just (ST a b c d))
                             return True

-- |
-- fork a lambdabot on start up
--
-- TODO, do this hmp3-style, with a separate thread and a channel
--
-- catch error and print better message
wakeup' = do
    m <- forkLambdabot
    case m of
        Nothing        -> return False
        Just (a,b,c,d) -> do writeIORef state (Just (ST a b c d))
                             return True

-- |
-- fork a lambdabot on start up
--
-- TODO, do this hmp3-style, with a separate thread and a channel
--
-- catch error and print better message