Crossreferenced GHC 8.0.2

Matthew Pickering matthewtpickering at
Fri Jun 30 09:57:09 UTC 2017

Hi Robin,

This looks really useful for developers.

1. Would it be possible to provide a script which allows developers to
build this index for themselves easily?
2. Is it possible to use this tool to detect dead code? Functions
which are not used anywhere in the compiler.
3. How are you pretty printing the output whilst retaining the source
formatting? I had a quick look at the source but I couldn't see where
the output was being produced.



On Fri, Jun 30, 2017 at 8:55 AM, Robin Palotai <palotai.robin at> wrote:
> Hello GHC devs,
> I ran haskell-indexer [1] on the GHC 8.0.2 tarball, partly because I find
> myself reading GHC source from time to time while working on the indexer,
> and partly since it's fun.
> First, here you can click around [2] and find where beloved functions are
> called from:
> (scroll down a bit, imports are not linked yet).
> Second, the way I indexed was pretty simple. I took the output of `make`,
> replaced the ghc used with the ghc_kythe_wrapper, and filtered the lines
> which included '-c', since I noticed that those duplicate previous large
> compile lines. This only indexes the stage1 compilation AFAIU.
> Feel free to suggest a better way to tap into the compilations to get
> everything properly indexed (and possibly only once).
> Any comments welcome!
> Robin
> [1]:
> [2]: TLDR UI quirks:
>   - Click the :: in top-left to navigate file tree
>   - Ctrl-Click (on linux) to go directly to definition (otherwise click
> stuff from bottom pane)
>   - Bottom pane often hides content, close it if stuck.
> _______________________________________________
> ghc-devs mailing list
> ghc-devs at

More information about the ghc-devs mailing list