On Mar 21, 2021, at 4:40 AM, Tom Ellis <tom-lists-haskell-cafe-2017@jaguarpaw.co.uk> wrote:

So what are the benefits of the "global package database" workflow
style?  Is it just that

 cabal -z repl --package QuickCheck --repl-options="whatever"

is more of a pain to type than

 ghci "whatever"

and that creating a .cabal file and running "cabal build" is more of a
pain than typing "ghc", or is there something fundamental that the
"global package database" supports that cabal v2-style does not?

Maybe it's superficial, but this is the big thing for me, yes. I also tend to have long-running ghci sessions, and so I don't always know what packages I'll want before launching.

Some of this is also, for me, philosophical: I don't want anything between me and GHC. That is, I want to know exactly what flags are being passed to GHC and to be able to control those flags myself. A tool that installs libraries should do that, and then get out of the way.

Richard