Haskell Source Navigation

July 27, 2015

In this video I demonstrate the use of command-line tools to interactively explore Haskell source code. The tools provide a fluid development experience but can be tricky to configure. This talk covers their use, configuration, and integration with an editor.

Haskell Source Navigation


  • Types provide more than just safety
  • Haskell has enough structure to support sophisticated tools
    • Jump to symbol definitions
    • Find all uses of functions
    • Get (good) linting suggestions
    • Interactive error checking
    • Finding docs by type or name
    • Autocompletion from dependencies
    • Code formatting
  • Getting into the tools themselves, below the editor layer
    • hasktags
    • codex
    • hscope
    • hoogle
    • hoobuddy
    • Alfred shortcuts
    • ghc-mod
    • hlint
    • stylish-haskell
    • hindent
  • Putting them together into a vim config