fork(6) download
  1. foo = do
  2. putStrLn "foo"
  3.  
  4. bar flag d = do
  5. putStrLn $ "flag = " ++ show flag
  6. x <- d
  7. if flag
  8. then putStrLn $ "data = " ++ show x
  9. else return ()
  10.  
  11. main = do
  12. bar True foo
  13. bar False foo
  14.  
Success #stdin #stdout 0s 4548KB
stdin
Standard input is empty
stdout
flag = True
foo
data = 5
flag = False
foo