# Cookbook/Compilers and interpreters

### From HaskellWiki

## 1 GHC

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

compiling a file, without linking | -c | ghc -c Foo.hs --> Foo.hi, Foo.o |

## 2 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 |

## 3 Hugs

TODO