Configurations proposal

Duncan Coutts duncan.coutts at
Thu Oct 26 10:49:42 EDT 2006

Einar and I talked about this last night, quick summary:

Yes, if we were to not allow changing the exposed modules then people
could achieve the same effect using CPP.

My argument was that we don't need to make it easy and convenient to do
these kinds of things that we disapprove of.

It should be obvious to a developer that if they're having to do lots of
CPP hackery to get this effect that it's not necessarily a good thing.
If it's easy to do in the .cabal file then it makes it look like it's an
acceptable thing to do.

So, in addition to social pressure to not make wierdy packages, you also
have to go to greater lengths technically. :-)


On Thu, 2006-10-26 at 03:06 +0300, Einar Karttunen wrote:
> On 25.10 19:08, Duncan Coutts wrote:
> > We are introducing a big new feature here, we can start out
> > conservatively and not allow some fields to be used in configuration
> > stanzas. If a real need arises we can review.
> >
> Would it really help? Packages are very much about social control
> (issues like namespace allocation), so I am not sure trying to
> protect users from packagers is a good argument to make things
> more complicated.
> An user is equally hurt if 1) an exposed module is missing, 2)
> it doesn't define the function, 3) it happens to lack critical
> instances etc. Having dummy modules with dummy function
> implementations is even worse - the error is only displayed
> at run-time.

More information about the cabal-devel mailing list