It's been a long time since I last used #haskell, I'm putting together code for my talk.
I'm finding it interesting that it's the semantics I remember but the syntax and definitely the tools & libraries that I'm having to look up.
Conversation
Let me know if you'd like any help with cabal or libraries.
1
3
"cabal install -f" seems to be how things are done nowdays. So I think I'm on the right track, but thanks for the offer!
2
1
I'd recommend trying out the new way of installing things, ie. `cabal new-install` and `cabal new-freeze` - cabal's old way of doing it was prone to terrible non-deterministic builds that caused no-end of pain: haskell.org/cabal/users-gu
3
2
Stack was one okay way to get around some of the terribleness of non-deterministic builds, but it has other ways to confuse you, so I'm hoping that the `cabal new-*` commands solve some of this. Kind of spoiled atm with Cargo's loveliness 😅
1
1
You make it sound like new-install is experimental and not well tested. I'm not ready for the bleeding edge for this project / what I want out of my own Haskell skills.
2
They're fairly battle-tested by now. cabal 1.24 was the first release with new-build, and it shipped mid-2016. IIRC towards end of this year, "new-build" is intended to become "build".
I think you'll have a better time with it than sandboxes.
2
2
meh. My system ships cabal 1.22, and the online docs talk about 1.24 like it's current and refer to bugs in it and say "use HEAD" instead, hackage says the current version is 2.2.0.1. out of date docs do not inspire confidence. And I don't want to not use my distros packages.
2
1
Fair enough. Was trying it out this evening on the latest stable, and didn’t seem like everything had been landed yet 🙁
Ie. cabal new-freeze was not a recognised command on the version that’s distributed with brew.
1
Probably easier just to force install everything then. Kind of ridiculous to have to do that in 2018 though. 🤦♂️🤦♂️🤦♂️


