Difference between revisions of "Cookbook/Compilers and interpreters"
< Cookbook
Jump to navigation
Jump to search
(→GHCi) |
(→GHCi) |
||
Line 14: | Line 14: | ||
| :i |
| :i |
||
|<haskell> |
|<haskell> |
||
− | Prelude> :i |
+ | Prelude> :i Monad |
+ | class Monad m where |
||
− | data Maybe a = Nothing | Just a -- Defined in Data.Maybe |
||
− | + | (>>=) :: m a -> (a -> m b) -> m b |
|
+ | (>>) :: m a -> m b -> m b |
||
+ | return :: a -> m a |
||
+ | fail :: String -> m a |
||
⚫ | |||
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 |
⚫ | |||
</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