News for hackers. Stuff that matters.
Re:Exotic Programming Ideas, Part 3: Effect Systems by skybrian on Sunday November 22, 2020 @09:09PM (#25182929)
Yes, there are easier and harder ways to deal with api migrations. But even in Haskell, isn't "Cabal hell" a thing? And the type of the standard prelude's head function is wrong but it can never be changed.

Dependency migration is the sort of thing that's easy enough in small examples and gets harder as you scale up.

Re:Exotic Programming Ideas, Part 3: Effect Systems by Quekid5 on Friday November 27, 2020 @03:11PM (#25232181)
> But even in Haskell, isn't "Cabal hell" a thing?

No. Just use stack + Stackage and you have a huge set of packages which are mutually compatible.

(You can also use cabal-install with a Stackage snapshot, I think. Not sure though. Cabal-install has also improved massively and doesn't really do "global" installation of dependencies, so it'll help a lot... but you may still run into difficulties making different versions of your project's dependencies work together.)

Re:Exotic Programming Ideas, Part 3: Effect Systems by Chris_Newton on Monday November 23, 2020 @02:01PM (#25190301)
But even in Haskell, isn't "Cabal hell" a thing?

Less so than it used to be. Cabal received a big update a few years ago, and the new-style commands now operate more like many other package managers in terms of isolation etc.

Re:Exotic Programming Ideas, Part 3: Effect Systems by lambda_obrien on Monday November 23, 2020 @02:31AM (#25184367)
You should use Haskell and see what it can do, you can change the prelude easily, for instance.

The standard head function is partial, yes, but that's not a big deal at all.