Использование когда / только без сохранения результата монадического действия

Есть ли способ написать это без переменной x?

foo = do
  x <- checker bar
  when x dostuff

Я представляю себе нечто похожее на LambdaCase:

foo' = do
  checker bar >>= \case
    True -> dostuff
    _    -> return ()

, но без второго шаблона случая очевидно.

8
задан Joe Hillenbrand 7 July 2015 в 17:22
поделиться