[Haskell-cafe] [HF-discuss] Do something about Cabal?

Michael Orlitzky michael at orlitzky.com
Fri Dec 11 20:10:07 UTC 2020


On 12/11/20 2:48 PM, Henning Thielemann wrote:
> 
> On Fri, 11 Dec 2020, Michael Orlitzky wrote:
> 
>> To fix dependency hell, you need only not cause it in the first place.
>> You have to standardize the language and a useful bit of code that you
>> dub the "standard library." Then anyone writing serious software in your
>> language has to be careful not to break API compatibility, and to use
>> semantic/libtool versioning when doing so is unavoidable. That's an O(n
>> = number of packages) algorithm for detecting breakage because instead
>> of detecting it in every consumer, you're _indicating_ it once.
> 
> Isn't this, what we are doing currently? When developing a library we try
> to stay within a major version range as long as possible, but if we need a
> breaking change, we increase the major version and have to adapt depending
> packages.
> 

Some Haskell packages are pretty good in that regard, but my list was in 
order of importance. There is no such thing as "Haskell" nowadays, only 
"what GHC is doing this week," and the same goes for the simulacrum of a 
standard library that we call "base". The fact that, say, Cryptonite, is 
maintained intelligently is not as helpful when you consider that the 
words the author has written can change their meanings at any time.


More information about the Haskell-Cafe mailing list