[commit: hoopl] master: SimpleUniqueMonad: define instance for Functor (e77a80b)

Norman Ramsey nr at eecs.harvard.edu
Tue Nov 6 18:07:27 CET 2012


Repository : ssh://darcs.haskell.org//srv/darcs/packages/hoopl

On branch  : master

http://hackage.haskell.org/trac/ghc/changeset/e77a80bc8fffd8b3ebc50acba8901a35c9613114

>---------------------------------------------------------------

commit e77a80bc8fffd8b3ebc50acba8901a35c9613114
Author: Bernhard Urban <lewurm at gmail.com>
Date:   Mon Oct 29 16:34:22 2012 +0100

    SimpleUniqueMonad: define instance for Functor
    
    .. for convient use of `<$>'

>---------------------------------------------------------------

 src/Compiler/Hoopl/Unique.hs |    5 +++++
 1 files changed, 5 insertions(+), 0 deletions(-)

diff --git a/src/Compiler/Hoopl/Unique.hs b/src/Compiler/Hoopl/Unique.hs
index 6b4a570..4d8bc06 100644
--- a/src/Compiler/Hoopl/Unique.hs
+++ b/src/Compiler/Hoopl/Unique.hs
@@ -21,6 +21,8 @@ import Compiler.Hoopl.Collections
 import qualified Data.IntMap as M
 import qualified Data.IntSet as S
 
+import Control.Monad (liftM)
+
 -----------------------------------------------------------------------------
 --		Unique
 -----------------------------------------------------------------------------
@@ -104,6 +106,9 @@ class Monad m => UniqueMonad m where
 
 newtype SimpleUniqueMonad a = SUM { unSUM :: [Unique] -> (a, [Unique]) }
 
+instance Functor SimpleUniqueMonad where
+  fmap = liftM
+
 instance Monad SimpleUniqueMonad where
   return a = SUM $ \us -> (a, us)
   m >>= k  = SUM $ \us -> let (a, us') = unSUM m us in





More information about the Cvs-libraries mailing list