On 04/08/2012 08:33, Herbert Valerio Riedel wrote:
Simon Hengel <s...@typeful.net> writes:

[...]

I have the following in my .ghci:

     -- hoogle integration
     :def hoogle \q -> return $ ":! hoogle --color=true --count=15   \"" ++ q ++ 
"\""
     :def doc    \q -> return $ ":! hoogle --color=true --info       \"" ++ q ++ 
"\""

[...]

thanks, this already looks very promising; there's just a few minor issues
I'm a bit dissatisfied with the GHCi integration:

  1. it doesn't take into account the currently visible module namespaces that 
GHCi
     has currently loaded (as opposed to `:info` and `:type`):

,----
| Prelude> import Data.IntMap
|
| Prelude Data.IntMap> :info fromList
| fromList :: [(Key, a)] -> IntMap a         -- Defined in `Data.IntMap'
|
| Prelude Data.IntMap> :type  fromList
| fromList :: [(Key, a)] -> IntMap a
|
| Prelude Data.IntMap> :doc fromList
| Searching for: fromList
| Data.HashTable fromList :: Eq key => (key -> Int32) -> [(key, val)] -> IO 
(HashTable key val)
|
| Convert a list of key/value pairs into a hash table. Equality on keys
| is taken from the Eq instance for the key type.
|
| From package base
| fromList :: Eq key => (key -> Int32) -> [(key, val)] -> IO (HashTable key val)
|
| Prelude Data.IntMap>
`----

  2. tab-completion (as it works for `:type` and `:doc`) doesn't extend
     to `:doc`


I guess both items could be improved upon by extending GHCi to provide
an additional `:def` facility tailored to Haskell symbols allowing to
pass more meta-information (such as package and module information) into
the resulting command string... would something like that have any
chance of being accepted upstream?

I think it would make more sense to just add :doc to the GHCi front-end, relying on the user having already installed hoogle. We could give a sensible error message if you don't have Hoogle installed.

Cheers,
        Simon

_______________________________________________
Glasgow-haskell-users mailing list
Glasgow-haskell-users@haskell.org
http://www.haskell.org/mailman/listinfo/glasgow-haskell-users

Reply via email to