Advance notice that I'd like to make Cabal depend on parsec

Jason Dagit dagitj at
Thu Mar 14 19:15:19 CET 2013

On Thu, Mar 14, 2013 at 11:01 AM, Bardur Arantsson <spam at>wrote:

> On 03/14/2013 03:53 PM, Duncan Coutts wrote:
> > Hi folks,
> >
> > Why did I choose parsec? Practicality dictates that I can only use
> > things in the core libraries, and the nearest thing we have to that is
> > the parser lib that is in the HP. I tried to use happy but I could not
> > construct a grammar/lexer combo to handle the layout (also, happy is not
> > exactly known for its great error messages).
> >
> Just thinking out loud here, but what about ditching the current format
> for something that's simpler to parse/generate? Like, say, JSON?

I thought I heard someone say that most existing cabal files can be
converted to valid yaml by adding one token at the start? If the change was
that simple it might be doable. I think the trick is that we'd need to
expose this by only treating the file as yaml if the minimum cabal version
is >= 1.17 (or so).

In general these sorts of format changes are painful for users and I sense
that now might be a bad time to change it (user morale is already a bit low
with complaints of "cabal hell", let's not exacerbate that by breaking
existing .cabal files).

-------------- next part --------------
An HTML attachment was scrubbed...
URL: <>

More information about the cabal-devel mailing list