{-# LANGUAGE NoImplicitPrelude #-} {-# LANGUAGE CPP #-} #if __GLASGOW_HASKELL__>=700 {-# LANGUAGE RebindableSyntax #-} #endif module Test2 where import Control.RMonad.Prelude import Control.RMonad import Control.RMonad.Trans.Cont import Control.RMonad.Trans.Set import Control.RMonad.Trans.List import Control.RMonad.Trans.Reader import Control.RMonad.Fix import Data.Set (Set) import qualified Data.Set as Set test1 = mfix (\xs -> do n <- msum $ map return [1,2,3] ; return (take 10 (n:xs))) :: Set [Int]