
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.