> Would cabal-install need to link in all these maintained libraries statically? Or would there be some plug-in mechanism to load them on demand?
well the libraries would need to be official and some with the packager.
the formats would be perfectly interchangeable i.e.
cabal -> standard_type -> yaml -> standard_type -> json -> standard_type -> cabal
would produce the same cabal file
only 1 config file per package to avoid confusion
however if the user prefers working with format F, they can always convert the format which came with the package, to F
the file can always be validated by virtue of parsing and reproducing the original file without errors.
it comes at a price of duplicated efforts however it would give every choice one can wish for. If one must use yaml, they use yaml etc.