# Difference between revisions of "Cookbook/Compilers and interpreters"

From HaskellWiki

< Cookbook

(→GHCi) |
|||

Line 20: | Line 20: | ||

! Examples |
! Examples |
||

|- |
|- |
||

− | | checking |
+ | | checking a definition |

| :i |
| :i |
||

|<haskell> |
|<haskell> |
||

Line 36: | Line 36: | ||

</haskell> |
</haskell> |
||

|- |
|- |
||

− | | checking |
+ | | checking a type |

| :t |
| :t |
||

|<haskell> |
|<haskell> |

## Revision as of 08:35, 31 August 2009

## GHC

Problem | Solution | Examples |
---|---|---|

compile a file, but don't link | -c | ghc -c Foo.hs |

## GHCi

Problem | Solution | Examples |
---|---|---|

checking a definition | :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 a type | :t | ```
Prelude> :t "Hello"
"Hello" :: [Char]
Prelude> :t length
length :: [a] -> Int
``` |

## Hugs

TODO