Cabal spelunking considered tricky

Duncan Coutts duncan.coutts at
Sun Apr 20 17:41:00 EDT 2008

On Sun, 2008-04-20 at 13:59 -0700, Bryan O'Sullivan wrote:
> As I've been maintaining cabal-rpm to try to keep up with developments
> in Cabal, I've found myself wondering why it's not using many of the
> usual tricks to hide the plumbing, such as a custom monad transformer stack.

> Some parameters, such as flags, compiler info, and package descriptions,
> pop up simply all over the place, and they're passed around explicitly.
>  This seems a smidge peculiar.  A couple of days with a crowbar and
> ReaderT StateT IO would do wonders for readability, if anyone feels so
> inclined :-)

Yeah, it's part of the plan for the new development series. The reason
we could not do it in the last is api compatibility with existing
Setup.hs scripts. The UserHooks types severely restrict that kind of
refactoring but I hope we can redesign UserHooks this dev series. It'll
break all custom Setup.hs scripts again though.


More information about the cabal-devel mailing list