1 2 3 4 5 6 7 8 9 10 11
{-# OPTIONS_GHC -XRecursiveDo #-} module Foo where import Control.Monad.Fix z :: Maybe [Int] z = mdo x <- return (1:x) return (take 4 x)