[Haskell-cafe] Standard package file format

Joachim Durchholz jo at durchholz.org
Sun Sep 18 18:39:48 UTC 2016


Am 18.09.2016 um 14:03 schrieb Tom Murphy:
> Even just looking at the set of features which is 1:1 betw. YAML and JSON,
> we're essentially just talking about key-value pairs with a couple of
> common types for the values.

This is just as correct as saying that Haskell is about functions - i.e. 
superficially correct but mostly beside the point.

For JSON, it's string-to-whatever maps, arrays, and primitive types.

For YAML, it's string-to-whatever maps, arrays, primitive types, 
references (so you can have shared and circular data structures), and 
arbitrary types (it will use constructors to deserialize).

 > This isn't all .cabal files contain (e.g. see
> hvr's points about conditionals), but if it were true, is it really worth
> changing how Cabal works for a diffferent color bikeshed?

It's bikeshedding if and only if interoperability is irrelevant.
However, in today's world, rejecting interoperability is insanity.
So: no bikeshedding, there are real issues.

It's still quite possible that it's simply not worth it; the cons 
associated with changing the buildfile format are pretty weighty after 
all, and if the Cabal people say they can fix the known problems with 
that format, it's probably a better idea to see what comes of that 
before pursuing alternate formats.


More information about the Haskell-Cafe mailing list