Difference between revisions of "Cookbook/Compilers and interpreters"
From HaskellWiki
< Cookbook
(→GHCi) 
(→GHCi) 

Line 14:  Line 14:  
 :i 
 :i 

<haskell> 
<haskell> 

−  Prelude> :i 
+  Prelude> :i Monad 
−  +  class Monad m where 

−  +  (>>=) :: m a > (a > m b) > m b 

+  (>>) :: m a > m b > m b 

+  return :: a > m a 

+  fail :: String > m a 

+   Defined in GHC.Base 

instance Monad Maybe  Defined in Data.Maybe 
instance Monad Maybe  Defined in Data.Maybe 

−  instance 
+  instance Monad IO  Defined in GHC.IOBase 
−  instance ( 
+  instance Monad ((>) r)  Defined in Control.Monad.Instances 
−  instance 
+  instance Monad []  Defined in GHC.Base 
−  instance (Show a) => Show (Maybe a)  Defined in GHC.Show 

</haskell> 
</haskell> 

 
 
Revision as of 08:28, 31 August 2009
GHC
TODO
GHCi
Problem  Solution  Examples 

checking definitions  :i  Prelude> :i Monad
class Monad m where
(>>=) :: m a > (a > m b) > m b
(>>) :: m a > m b > m b
return :: a > m a
fail :: String > m a
 Defined in GHC.Base
instance Monad Maybe  Defined in Data.Maybe
instance Monad IO  Defined in GHC.IOBase
instance Monad ((>) r)  Defined in Control.Monad.Instances
instance Monad []  Defined in GHC.Base

checking types  :t  Prelude> :t "Hello"
"Hello" :: [Char]

Hugs
TODO