TL;DR Use Hpack, and you don’t have to manually add/remove modules in the cabal file’s exposed-modules and other-modules section! A little bit of background Haskell has a very long history: Since 1987 which is long before the concept of “package managers.” When modern package management emerged, Haskellers had to invent something too. So they made “Cabal” which came to mean three things: A standar