!RbXGJhHMsnQcNIDFWN:nixos.org

Haskell in Nixpkgs/NixOS

697 Members
For discussions and questions about Haskell with Nix, cabal2nix and haskellPackages in nixpkgs | Current Docs: https://haskell4nix.readthedocs.io/141 Servers

Load older messages


SenderMessageTime
15 Sep 2025
@emilazy:matrix.orgemilyeither Lennart bends, Cabal/GHC maintainers do, or it's a fork situation13:00:32
@mangoiv.:matrix.orgMangoIV I think the one that Lennart won’t support is TH and that can’t be used in GHC either 13:08:07
@mangoiv.:matrix.orgMangoIVOh well… I guess if it’s used in boot libraries might still be an issue huh13:09:17
@teoc:matrix.orgTeo (he/him)TH proper isn't used in boot libraries only TemplateHaskellQuotes, which means you don't have to worry about the tricky thing which is running splices13:11:13
@teoc:matrix.orgTeo (he/him)In the long term, idk if GHC will continue to not use TH. GHC currently uses Generics to derive some of its typeclass instances and it leads to horribly slow compilation. TH would be one way to handle that in a better way. We can't currently use it, but that should be unblocked soon. I think the alternatives would be making Generics not slow, or a new way to derive instances13:12:58
@emilazy:matrix.orgemilyIIRC he said no plans for implicit params or magic hash, which sound like things GHC would plausibly use13:13:01
@emilazy:matrix.orgemilythough of course magic hash stuff may be dodgy for portability in general13:13:11
@emilazy:matrix.orgemily GHC using TH sounds like it'd make @sternenseemann:systemli.org's day :P 13:13:37
@emilazy:matrix.orgemily(I guess it'd be fine as long as cross starts working properly again)13:13:57
@teoc:matrix.orgTeo (he/him)Yeah GHC using TH is blocked on all the glaring issues with TH cross being solved13:14:24
@emilazy:matrix.orgemilygenerics being slow enough for TH to seem better depresses me. in the tail end of my Haskell activity I was praying all this new stuff would kill off TH13:14:51
@emilazy:matrix.orgemilyI dislike TH very much :)13:15:13
@mangoiv.:matrix.orgMangoIV What does magichash have to do with portability 13:16:04
@mangoiv.:matrix.orgMangoIVmagichash is a purely syntactic extension 13:16:21
@maralorn:maralorn.demaralornIdk. I think the idea of macros/front loading as much as logic as possible to the compile step seems very intriguing to me.13:16:46
@mangoiv.:matrix.orgMangoIVimplicitparams sounds like it is mostly relevant for HasCallStack. you can special case that if you want. 13:17:01
@teoc:matrix.orgTeo (he/him) It's always hard to kill off old code. I basically want to implement something (very vaguely) like Rust's facet for Haskell, and I think that could do it. I've been thinking about this for a while and it hasn't happened yet so we will see if it ever happens 13:17:26
@emilazy:matrix.orgemily well half the time you turn it on to import some GHC.Evil is my point 13:17:39
@mangoiv.:matrix.orgMangoIVi mean it's only relevant for projects the size of GHC - I don't understand how this seems to be low hanging fruit though. GHC is a mess... 13:18:02
@teoc:matrix.orgTeo (he/him) Yeah definitely. As a TH fan, one thing that quite annoys me is that TH isn't proper macros. It's a bunch of disparate features tacked together, and I really want to untangle the mess 13:18:37
@emilazy:matrix.orgemilyconceptually, yes. in practice language features that cordycept the compiler introduce a huge swathe of complexity and compromises unless you design everything around them from the start. because suddenly you have a bunch of exposed and very load-bearing phase distinctions13:18:45
@emilazy:matrix.orgemilylike how TH makes order of declarations stuff weird as a trivial but gross example13:19:09
@mangoiv.:matrix.orgMangoIV how many GHC.Evil things does GHC use? 13:19:52
@teoc:matrix.orgTeo (he/him) idk Generics have been a headache on both of the industrial Haskell codebases I've worked on. Once you have records with more than say 16 fields, it gets pretty bad 13:19:55
@emilazy:matrix.orgemilyalso, Haskell is already two full-blown languages at the value and type level (and you can argue there's two or three more in the latter), another layer is just painful :P13:20:06
@emilazy:matrix.orgemilyno idea. but I wouldn't be surprised13:20:23
@mangoiv.:matrix.orgMangoIVbecause of compilation speed, right? 13:20:28
@teoc:matrix.orgTeo (he/him) yeah compilation speed 13:20:39
@mangoiv.:matrix.orgMangoIValso my comment was about GHC itself compiling slowly 13:20:44
@emilazy:matrix.orgemilyespecially since you often really want to for perf13:20:48

Show newer messages


Back to Room ListRoom Version: 6