Home liberachat/#haskell: Logs Calendar

Logs: liberachat/#haskell

←Prev  Next→ 1,798,540 events total
2026-02-20 13:59:56 <haskellbridge> <magic_rb> fuck, do i not have the right
2026-02-20 13:59:58 <tomsmeding> :t ((.) . (.)) . ((.) . (.))
2026-02-20 14:00:00 <lambdabot> (b -> c) -> (a1 -> a2 -> a3 -> a4 -> b) -> a1 -> a2 -> a3 -> a4 -> c
2026-02-20 14:00:16 <tomsmeding> magic_rb: your message has a `<magic_rb> ` prefix here
2026-02-20 14:00:39 <tomsmeding> :t fmap fmap fmap `fmap` fmap fmap fmap
2026-02-20 14:00:40 <lambdabot> (Functor f1, Functor f2, Functor f3, Functor f4) => (a -> b) -> f1 (f2 (f3 (f4 a))) -> f1 (f2 (f3 (f4 b)))
2026-02-20 14:00:54 <tomsmeding> :t (.) . (.) . (.) . (.)
2026-02-20 14:00:56 <lambdabot> (b -> c) -> (a1 -> a2 -> a3 -> a4 -> b) -> a1 -> a2 -> a3 -> a4 -> c
2026-02-20 14:01:18 <tomsmeding> (fmap on (->) is (.))
2026-02-20 14:01:30 <haskellbridge> <magic_rb> wait so (.) . (.) is equal to what
2026-02-20 14:01:36 chromoblob joins (~chromoblo@user/chromob1ot1c)
2026-02-20 14:01:36 <tomsmeding> fmap = (.)
2026-02-20 14:01:46 <haskellbridge> <magic_rb> really?
2026-02-20 14:01:49 <haskellbridge> <magic_rb> thats new
2026-02-20 14:01:51 <tomsmeding> :t fmap
2026-02-20 14:01:52 <lambdabot> Functor f => (a -> b) -> f a -> f b
2026-02-20 14:01:55 <tomsmeding> :t (.)
2026-02-20 14:01:56 <lambdabot> (b -> c) -> (a -> b) -> a -> c
2026-02-20 14:02:10 <tomsmeding> ok names are different but set `f ~ (u ->)`
2026-02-20 14:02:17 merijn joins (~merijn@host-cl.cgnat-g.v4.dfn.nl)
2026-02-20 14:02:37 <haskellbridge> <magic_rb> yeah i see it
2026-02-20 14:03:18 <tomsmeding> this makes sense:
2026-02-20 14:03:20 <tomsmeding> :t fmap . fmap
2026-02-20 14:03:21 <lambdabot> (Functor f1, Functor f2) => (a -> b) -> f1 (f2 a) -> f1 (f2 b)
2026-02-20 14:03:25 <tomsmeding> fmap under two functors
2026-02-20 14:03:31 <tomsmeding> but because fmap = (.) you can write
2026-02-20 14:03:33 <tomsmeding> :t fmap fmap fmap
2026-02-20 14:03:34 <lambdabot> (Functor f1, Functor f2) => (a -> b) -> f1 (f2 a) -> f1 (f2 b)
2026-02-20 14:04:27 housemate_ joins (~housemate@202.7.248.67)
2026-02-20 14:04:59 <Athas> Is there a way to get cabal to show the dependency tree for my package?
2026-02-20 14:05:12 <Athas> I'm quite surprised to see that I depend on Cabal and websockets.
2026-02-20 14:05:21 <Athas> Although I have a suspicion as to why.
2026-02-20 14:05:24 <tomsmeding> Athas: you can eyeball dist-newstyle/cache/plan.json
2026-02-20 14:05:36 <tomsmeding> not a neat tree, but the info is there
2026-02-20 14:05:40 <Athas> Eyeball a 155K JSON file? I see...
2026-02-20 14:05:48 <tomsmeding> well using search. :)
2026-02-20 14:05:53 bionade24 joins (~quassel@server2.oscloud.info)
2026-02-20 14:06:26 <tomsmeding> in any case, it's a graph, not a tree
2026-02-20 14:06:55 × housemate quits (~housemate@pa49-178-146-220.pa.nsw.optusnet.com.au) (Ping timeout: 264 seconds)
2026-02-20 14:06:58 <Athas> My suspicion was wrong; apparently the Cabal dependency is due to a Setup.hs from 'entropy'. It's probably been like that for a while and I never noticed.
2026-02-20 14:07:05 <tomsmeding> Athas: `cabal-plan tred` is perhaps closest to what you mean
2026-02-20 14:07:06 <Athas> And of course 'lsp' is why I depend on 'websockets'.
2026-02-20 14:07:13 <tomsmeding> using https://hackage.haskell.org/package/cabal-plan
2026-02-20 14:07:31 × merijn quits (~merijn@host-cl.cgnat-g.v4.dfn.nl) (Ping timeout: 264 seconds)
2026-02-20 14:08:02 <tomsmeding> but I find that plan.json is usable enough for the odd time that I need to look at the dependency graph
2026-02-20 14:08:17 Frostillicus joins (~Frostilli@pool-71-174-119-69.bstnma.fios.verizon.net)
2026-02-20 14:08:49 <tomsmeding> (... why does lsp depend on websockets?)
2026-02-20 14:09:38 <tomsmeding> TIL LSP works with websockets?
2026-02-20 14:10:41 <int-e> I don't know. I imagine it's because it was designed in a context of an Electron application, so websockets were already there, "for free".
2026-02-20 14:10:56 <int-e> At least in part.
2026-02-20 14:13:33 Square3 joins (~Square@user/square)
2026-02-20 14:13:52 jmcantrell_ joins (~weechat@user/jmcantrell)
2026-02-20 14:18:04 merijn joins (~merijn@host-cl.cgnat-g.v4.dfn.nl)
2026-02-20 14:20:07 <lortabac> Athas: maybe cabal-plan dot
2026-02-20 14:21:31 <tomsmeding> I find that is mostly a good way to generate a huge pdf, or a huge png that no image viewer will open, with no way of reading anything from the warren of arrows
2026-02-20 14:22:11 × Square3 quits (~Square@user/square) (Ping timeout: 272 seconds)
2026-02-20 14:22:39 <Athas> I think lsp depends on everything, just in case.
2026-02-20 14:22:52 <tomsmeding> lortabac: https://tomsmeding.com/vang/9fSZUM/graph.pdf
2026-02-20 14:23:27 × merijn quits (~merijn@host-cl.cgnat-g.v4.dfn.nl) (Ping timeout: 272 seconds)
2026-02-20 14:23:41 <lortabac> tomsmeding: there may be tools to fetch useful info from a dot file. I have no idea to be honest
2026-02-20 14:23:48 <tomsmeding> Athas: yes, the moment you mentioned lsp I thought "ah, there's all your dependencies"
2026-02-20 14:23:57 <tomsmeding> lortabac: fair point, perhaps there are
2026-02-20 14:24:20 <lortabac> or you can feed it to an AI and ask them to find a particular path
2026-02-20 14:24:20 <Athas> It's interesting how my dependency graph looks almost identical to tomsmeding's from a human perspective: https://sigkill.dk/junk/graph.pdf
2026-02-20 14:24:48 <Athas> Very similar souls.
2026-02-20 14:25:17 <tomsmeding> Athas: while clearly true, I'm not sure that's a very interesting observation -- the vertical lines is just dot(1) throwing its hands up with too many dependencies
2026-02-20 14:25:45 <tomsmeding> And actually I disagree they look identical. Mine is right-heavy, whereas yours is more left-heavy.
2026-02-20 14:27:24 × jmcantrell_ quits (~weechat@user/jmcantrell) (Ping timeout: 268 seconds)
2026-02-20 14:27:29 <haskellbridge> <ijouw> My pdf rendering seems to be done on cpu... Changing view takes up to two seconds.
2026-02-20 14:27:36 <tomsmeding> :D
2026-02-20 14:33:14 castan joins (~castan@86.121.192.170)
2026-02-20 14:33:29 housemate joins (~housemate@pa49-178-146-220.pa.nsw.optusnet.com.au)
2026-02-20 14:33:57 merijn joins (~merijn@62.45.136.136)
2026-02-20 14:34:44 × castan quits (~castan@86.121.192.170) (Client Quit)
2026-02-20 14:34:59 castan joins (~castan@86.121.192.170)
2026-02-20 14:35:30 × housemate quits (~housemate@pa49-178-146-220.pa.nsw.optusnet.com.au) (Remote host closed the connection)
2026-02-20 14:35:43 × housemate_ quits (~housemate@202.7.248.67) (Ping timeout: 264 seconds)
2026-02-20 14:35:43 × castan quits (~castan@86.121.192.170) (Client Quit)
2026-02-20 14:35:57 castan joins (~castan@86.121.192.170)
2026-02-20 14:38:44 × merijn quits (~merijn@62.45.136.136) (Ping timeout: 252 seconds)
2026-02-20 14:41:50 emaczen joins (~user@user/emaczen)
2026-02-20 14:45:37 × Frostillicus quits (~Frostilli@pool-71-174-119-69.bstnma.fios.verizon.net) (Ping timeout: 272 seconds)
2026-02-20 14:46:09 Frostillicus joins (~Frostilli@pool-71-174-119-69.bstnma.fios.verizon.net)
2026-02-20 14:49:38 merijn joins (~merijn@62.45.136.136)
2026-02-20 14:49:59 housemate joins (~housemate@pa49-178-146-220.pa.nsw.optusnet.com.au)
2026-02-20 14:51:56 × AlexZenon quits (~alzenon@85.174.181.228) (Ping timeout: 252 seconds)
2026-02-20 14:53:57 × Frostillicus quits (~Frostilli@pool-71-174-119-69.bstnma.fios.verizon.net) (Read error: Connection reset by peer)
2026-02-20 14:55:09 × merijn quits (~merijn@62.45.136.136) (Ping timeout: 268 seconds)
2026-02-20 15:01:22 AlexZenon joins (~alzenon@85.174.181.228)
2026-02-20 15:02:54 × thenightmail quits (~thenightm@user/thenightmail) (Ping timeout: 260 seconds)
2026-02-20 15:05:28 merijn joins (~merijn@host-cl.cgnat-g.v4.dfn.nl)
2026-02-20 15:06:55 × yin quits (~zero@user/zero) (Ping timeout: 264 seconds)
2026-02-20 15:08:14 yin joins (~zero@user/zero)
2026-02-20 15:08:24 Guest51 joins (~Guest51@2604:2dc0:200:1a84::)
2026-02-20 15:10:46 × merijn quits (~merijn@host-cl.cgnat-g.v4.dfn.nl) (Ping timeout: 276 seconds)
2026-02-20 15:12:16 housemate_ joins (~housemate@202.7.248.67)
2026-02-20 15:15:06 × housemate quits (~housemate@pa49-178-146-220.pa.nsw.optusnet.com.au) (Ping timeout: 265 seconds)
2026-02-20 15:17:56 arandombit joins (~arandombi@2a02:2455:8656:7100:b1b8:f383:7402:967e)
2026-02-20 15:17:56 × arandombit quits (~arandombi@2a02:2455:8656:7100:b1b8:f383:7402:967e) (Changing host)
2026-02-20 15:17:56 arandombit joins (~arandombi@user/arandombit)

All times are in UTC.