2025/05/28

2025-05-28 00:04:50 +0200sabathan2(~sabathan@amarseille-159-1-12-107.w86-203.abo.wanadoo.fr) (Remote host closed the connection)
2025-05-28 00:05:12 +0200sabathan2(~sabathan@amarseille-159-1-12-107.w86-203.abo.wanadoo.fr)
2025-05-28 00:10:46 +0200sabathan2(~sabathan@amarseille-159-1-12-107.w86-203.abo.wanadoo.fr) (Remote host closed the connection)
2025-05-28 00:11:07 +0200sabathan2(~sabathan@amarseille-159-1-12-107.w86-203.abo.wanadoo.fr)
2025-05-28 00:14:57 +0200JuanDaugherty(~juan@user/JuanDaugherty) (Quit: praxis.meansofproduction.biz (juan@acm.org))
2025-05-28 00:16:45 +0200sabathan2(~sabathan@amarseille-159-1-12-107.w86-203.abo.wanadoo.fr) (Remote host closed the connection)
2025-05-28 00:17:06 +0200sabathan2(~sabathan@amarseille-159-1-12-107.w86-203.abo.wanadoo.fr)
2025-05-28 00:22:17 +0200sabathan2(~sabathan@amarseille-159-1-12-107.w86-203.abo.wanadoo.fr) (Remote host closed the connection)
2025-05-28 00:22:37 +0200sabathan2(~sabathan@amarseille-159-1-12-107.w86-203.abo.wanadoo.fr)
2025-05-28 00:24:49 +0200tromp(~textual@2001:1c00:3487:1b00:6079:2a03:d656:1a2e) (Quit: My iMac has gone to sleep. ZZZzzz…)
2025-05-28 00:28:42 +0200target_i(~target_i@user/target-i/x-6023099) (Quit: leaving)
2025-05-28 00:29:56 +0200sabathan2(~sabathan@amarseille-159-1-12-107.w86-203.abo.wanadoo.fr) (Remote host closed the connection)
2025-05-28 00:30:17 +0200sabathan2(~sabathan@amarseille-159-1-12-107.w86-203.abo.wanadoo.fr)
2025-05-28 00:40:57 +0200sabathan2(~sabathan@amarseille-159-1-12-107.w86-203.abo.wanadoo.fr) (Remote host closed the connection)
2025-05-28 00:41:17 +0200sabathan2(~sabathan@amarseille-159-1-12-107.w86-203.abo.wanadoo.fr)
2025-05-28 00:42:44 +0200biberu(~biberu@user/biberu) (Ping timeout: 272 seconds)
2025-05-28 00:47:01 +0200sabathan2(~sabathan@amarseille-159-1-12-107.w86-203.abo.wanadoo.fr) (Remote host closed the connection)
2025-05-28 00:47:23 +0200sabathan2(~sabathan@amarseille-159-1-12-107.w86-203.abo.wanadoo.fr)
2025-05-28 00:48:39 +0200 <EvanR> the link to existential anti-pattern doesn't work :(
2025-05-28 00:48:57 +0200 <EvanR> though I've seen it on wayback machine recently
2025-05-28 00:51:36 +0200biberu(~biberu@user/biberu) biberu
2025-05-28 00:53:21 +0200sabathan2(~sabathan@amarseille-159-1-12-107.w86-203.abo.wanadoo.fr) (Remote host closed the connection)
2025-05-28 00:53:42 +0200sabathan2(~sabathan@amarseille-159-1-12-107.w86-203.abo.wanadoo.fr)
2025-05-28 00:54:24 +0200Frostillicus(~Frostilli@pool-71-174-119-69.bstnma.fios.verizon.net)
2025-05-28 00:58:22 +0200 <EvanR> or maybe it's gone for a reason
2025-05-28 00:58:38 +0200 <EvanR> like turns out existentials are cool after all xD
2025-05-28 01:00:23 +0200 <monochrom> \∩/
2025-05-28 01:01:18 +0200 <monochrom> The anti-pattern anti-pattern. The code-smell opinion smell.
2025-05-28 01:02:06 +0200sabathan2(~sabathan@amarseille-159-1-12-107.w86-203.abo.wanadoo.fr) (Remote host closed the connection)
2025-05-28 01:02:27 +0200sabathan2(~sabathan@amarseille-159-1-12-107.w86-203.abo.wanadoo.fr)
2025-05-28 01:03:33 +0200Square2(~Square@user/square) Square
2025-05-28 01:05:28 +0200sprotte24(~sprotte24@p200300d16f362e006c438e53ebe4b26d.dip0.t-ipconnect.de) (Read error: Connection reset by peer)
2025-05-28 01:06:35 +0200 <sm> @where existential-antipattern
2025-05-28 01:06:35 +0200 <lambdabot> "Haskell Antipattern: Existential Typeclass" by Luke Palmer at <https://web.archive.org/web/20220121105027/https://lukepalmer.wordpress.com/2010/01/24/haskell-ant…>
2025-05-28 01:07:19 +0200 <sm> working for me!
2025-05-28 01:07:51 +0200 <sm> I see a bad one, drop that I guess
2025-05-28 01:07:53 +0200 <sm> @where+ antipattern
2025-05-28 01:07:53 +0200 <lambdabot> It is forgotten.
2025-05-28 01:11:54 +0200todi(~todi@p57803331.dip0.t-ipconnect.de) (Ping timeout: 260 seconds)
2025-05-28 01:12:05 +0200sabathan2(~sabathan@amarseille-159-1-12-107.w86-203.abo.wanadoo.fr) (Remote host closed the connection)
2025-05-28 01:12:25 +0200sabathan2(~sabathan@amarseille-159-1-12-107.w86-203.abo.wanadoo.fr)
2025-05-28 01:18:57 +0200 <EvanR> @where parse-don't-validate
2025-05-28 01:18:57 +0200 <lambdabot> "Parse, don't validate" by lexi-lambda in 2019-11-05 at <https://lexi-lambda.github.io/blog/2019/11/05/parse-don-t-validate/>
2025-05-28 01:19:37 +0200Frostillicus(~Frostilli@pool-71-174-119-69.bstnma.fios.verizon.net) (Ping timeout: 252 seconds)
2025-05-28 01:19:39 +0200sabathan2(~sabathan@amarseille-159-1-12-107.w86-203.abo.wanadoo.fr) (Remote host closed the connection)
2025-05-28 01:20:00 +0200sabathan2(~sabathan@amarseille-159-1-12-107.w86-203.abo.wanadoo.fr)
2025-05-28 01:21:24 +0200peterbecich(~Thunderbi@syn-047-229-123-186.res.spectrum.com) peterbecich
2025-05-28 01:23:31 +0200Vq(~vq@81-226-38-201-no600.tbcn.telia.com) (Ping timeout: 252 seconds)
2025-05-28 01:26:08 +0200sabathan2(~sabathan@amarseille-159-1-12-107.w86-203.abo.wanadoo.fr) (Remote host closed the connection)
2025-05-28 01:26:29 +0200sabathan2(~sabathan@amarseille-159-1-12-107.w86-203.abo.wanadoo.fr)
2025-05-28 01:30:12 +0200mange(~user@user/mange) mange
2025-05-28 01:30:22 +0200Vq(~vq@81-226-38-201-no600.tbcn.telia.com) Vq
2025-05-28 01:31:08 +0200 <EvanR> @where lambdacats
2025-05-28 01:31:08 +0200 <lambdabot> http://lambdacats.org
2025-05-28 01:32:10 +0200sabathan2(~sabathan@amarseille-159-1-12-107.w86-203.abo.wanadoo.fr) (Remote host closed the connection)
2025-05-28 01:32:31 +0200sabathan2(~sabathan@amarseille-159-1-12-107.w86-203.abo.wanadoo.fr)
2025-05-28 01:32:40 +0200emmanuelux(~emmanuelu@user/emmanuelux) emmanuelux
2025-05-28 01:38:27 +0200machinedgod(~machinedg@d108-173-18-100.abhsia.telus.net) machinedgod
2025-05-28 01:39:38 +0200Sgeo(~Sgeo@user/sgeo) Sgeo
2025-05-28 01:40:07 +0200 <EvanR> @where escaping-hell
2025-05-28 01:40:07 +0200 <lambdabot> (non-tutorial teaser) "Escaping Hell with Monads" by Philip Nillson in 2017-05-08 at <https://philipnilsson.github.io/Badness10k/escaping-hell-with-monads/>
2025-05-28 01:40:28 +0200sabathan2(~sabathan@amarseille-159-1-12-107.w86-203.abo.wanadoo.fr) (Remote host closed the connection)
2025-05-28 01:40:45 +0200 <int-e> . o O ( but now you'r stuck in a monad? )
2025-05-28 01:40:49 +0200sabathan2(~sabathan@amarseille-159-1-12-107.w86-203.abo.wanadoo.fr)
2025-05-28 01:44:20 +0200 <EvanR> stuck in a burrito like one of those cat pictures
2025-05-28 01:48:30 +0200biberu\(~biberu@user/biberu) biberu
2025-05-28 01:49:55 +0200peterbecich(~Thunderbi@syn-047-229-123-186.res.spectrum.com) (Ping timeout: 252 seconds)
2025-05-28 01:49:56 +0200sabathan2(~sabathan@amarseille-159-1-12-107.w86-203.abo.wanadoo.fr) (Remote host closed the connection)
2025-05-28 01:50:16 +0200sabathan2(~sabathan@amarseille-159-1-12-107.w86-203.abo.wanadoo.fr)
2025-05-28 01:51:31 +0200biberu(~biberu@user/biberu) (Ping timeout: 252 seconds)
2025-05-28 01:51:35 +0200biberu\biberu
2025-05-28 01:55:22 +0200Tuplanolla(~Tuplanoll@91-159-69-59.elisa-laajakaista.fi) (Quit: Leaving.)
2025-05-28 02:01:05 +0200acidjnk(~acidjnk@p200300d6e71c4f71d1d5de29932680ec.dip0.t-ipconnect.de) (Ping timeout: 260 seconds)
2025-05-28 02:01:11 +0200Goodbye_Vincent1(cyvahl@freakshells.net)
2025-05-28 02:02:26 +0200sabathan2(~sabathan@amarseille-159-1-12-107.w86-203.abo.wanadoo.fr) (Remote host closed the connection)
2025-05-28 02:02:45 +0200sabathan2(~sabathan@amarseille-159-1-12-107.w86-203.abo.wanadoo.fr)
2025-05-28 02:04:33 +0200ljdarj(~Thunderbi@user/ljdarj) (Ping timeout: 248 seconds)
2025-05-28 02:08:19 +0200sabathan2(~sabathan@amarseille-159-1-12-107.w86-203.abo.wanadoo.fr) (Remote host closed the connection)
2025-05-28 02:08:41 +0200sabathan2(~sabathan@amarseille-159-1-12-107.w86-203.abo.wanadoo.fr)
2025-05-28 02:15:39 +0200j1n37(~j1n37@user/j1n37) (Read error: Connection reset by peer)
2025-05-28 02:18:45 +0200sabathan2(~sabathan@amarseille-159-1-12-107.w86-203.abo.wanadoo.fr) (Remote host closed the connection)
2025-05-28 02:19:07 +0200sabathan2(~sabathan@amarseille-159-1-12-107.w86-203.abo.wanadoo.fr)
2025-05-28 02:21:48 +0200segfaultfizzbuzz(~segfaultf@23-93-74-222.fiber.dynamic.sonic.net) (Remote host closed the connection)
2025-05-28 02:22:31 +0200segfaultfizzbuzz(~segfaultf@23-93-74-222.fiber.dynamic.sonic.net) segfaultfizzbuzz
2025-05-28 02:23:40 +0200pandeyan(~pandeyan@23-93-125-220.fiber.dynamic.sonic.net)
2025-05-28 02:23:45 +0200YuutaW(~YuutaW@2404:f4c0:f9c3:502::100:17b7) YuutaW
2025-05-28 02:24:54 +0200sabathan2(~sabathan@amarseille-159-1-12-107.w86-203.abo.wanadoo.fr) (Remote host closed the connection)
2025-05-28 02:25:15 +0200sabathan2(~sabathan@amarseille-159-1-12-107.w86-203.abo.wanadoo.fr)
2025-05-28 02:25:31 +0200anpad(~pandeyan@user/anpad) (Read error: Connection reset by peer)
2025-05-28 02:33:29 +0200j1n37(~j1n37@user/j1n37) j1n37
2025-05-28 02:38:00 +0200peterbecich(~Thunderbi@syn-047-229-123-186.res.spectrum.com) peterbecich
2025-05-28 02:38:54 +0200sabathan2(~sabathan@amarseille-159-1-12-107.w86-203.abo.wanadoo.fr) (Remote host closed the connection)
2025-05-28 02:39:15 +0200sabathan2(~sabathan@amarseille-159-1-12-107.w86-203.abo.wanadoo.fr)
2025-05-28 02:49:56 +0200sabathan2(~sabathan@amarseille-159-1-12-107.w86-203.abo.wanadoo.fr) (Remote host closed the connection)
2025-05-28 02:50:20 +0200sabathan2(~sabathan@amarseille-159-1-12-107.w86-203.abo.wanadoo.fr)
2025-05-28 02:54:15 +0200peterbecich(~Thunderbi@syn-047-229-123-186.res.spectrum.com) (Ping timeout: 276 seconds)
2025-05-28 03:00:01 +0200sabathan2(~sabathan@amarseille-159-1-12-107.w86-203.abo.wanadoo.fr) (Remote host closed the connection)
2025-05-28 03:00:20 +0200sabathan2(~sabathan@amarseille-159-1-12-107.w86-203.abo.wanadoo.fr)
2025-05-28 03:04:36 +0200xff0x(~xff0x@2405:6580:b080:900:421a:f7d5:c8c3:af24) (Ping timeout: 272 seconds)
2025-05-28 03:10:55 +0200sabathan2(~sabathan@amarseille-159-1-12-107.w86-203.abo.wanadoo.fr) (Remote host closed the connection)
2025-05-28 03:11:16 +0200sabathan2(~sabathan@amarseille-159-1-12-107.w86-203.abo.wanadoo.fr)
2025-05-28 03:16:52 +0200sabathan2(~sabathan@amarseille-159-1-12-107.w86-203.abo.wanadoo.fr) (Remote host closed the connection)
2025-05-28 03:17:16 +0200sabathan2(~sabathan@amarseille-159-1-12-107.w86-203.abo.wanadoo.fr)
2025-05-28 03:17:18 +0200peterbecich(~Thunderbi@syn-047-229-123-186.res.spectrum.com) peterbecich
2025-05-28 03:24:21 +0200sabathan2(~sabathan@amarseille-159-1-12-107.w86-203.abo.wanadoo.fr) (Remote host closed the connection)
2025-05-28 03:24:42 +0200sabathan2(~sabathan@amarseille-159-1-12-107.w86-203.abo.wanadoo.fr)
2025-05-28 03:30:41 +0200sabathan2(~sabathan@amarseille-159-1-12-107.w86-203.abo.wanadoo.fr) (Remote host closed the connection)
2025-05-28 03:31:02 +0200sabathan2(~sabathan@amarseille-159-1-12-107.w86-203.abo.wanadoo.fr)
2025-05-28 03:38:51 +0200sabathan2(~sabathan@amarseille-159-1-12-107.w86-203.abo.wanadoo.fr) (Remote host closed the connection)
2025-05-28 03:39:12 +0200sabathan2(~sabathan@amarseille-159-1-12-107.w86-203.abo.wanadoo.fr)
2025-05-28 03:40:49 +0200peterbecich(~Thunderbi@syn-047-229-123-186.res.spectrum.com) (Ping timeout: 245 seconds)
2025-05-28 03:42:41 +0200 <sm> I think it's ok to freely prune dead links from @where, since they could be found again in the automatic git history if needed. Let me know if you feel otherwise. Feel free to do a little gardening every day, it's therapeutic.
2025-05-28 03:45:20 +0200 <haskellbridge> <sm> I tend to do it in a private chat to keep the noise down, but interesting or controversial updates are good to do in here perhaps
2025-05-28 03:46:16 +0200 <haskellbridge> <sm> @where planet-haskell
2025-05-28 03:46:27 +0200 <EvanR> @where planet-haskell
2025-05-28 03:46:27 +0200 <lambdabot> http://antti-juhani.kaijanaho.fi/planet-haskell/
2025-05-28 03:46:39 +0200 <haskellbridge> <sm> ..
2025-05-28 03:46:39 +0200 <haskellbridge> @where+ planet-haskell
2025-05-28 03:46:39 +0200 <lambdabot> It is forgotten.
2025-05-28 03:46:50 +0200 <haskellbridge> <sm> ..
2025-05-28 03:46:50 +0200 <haskellbridge> @where planethaskell
2025-05-28 03:46:51 +0200 <lambdabot> http://antti-juhani.kaijanaho.fi/planet-haskell/
2025-05-28 03:46:56 +0200sabathan2(~sabathan@amarseille-159-1-12-107.w86-203.abo.wanadoo.fr) (Remote host closed the connection)
2025-05-28 03:46:58 +0200 <EvanR> .oO(where+ subtracts...)
2025-05-28 03:47:05 +0200 <haskellbridge> <sm> ..
2025-05-28 03:47:05 +0200 <haskellbridge> @where+ planethaskell
2025-05-28 03:47:05 +0200 <lambdabot> It is forgotten.
2025-05-28 03:47:18 +0200sabathan2(~sabathan@amarseille-159-1-12-107.w86-203.abo.wanadoo.fr)
2025-05-28 03:47:20 +0200 <haskellbridge> <sm> yeah, that took me a while to figure out 😂
2025-05-28 03:47:48 +0200 <haskellbridge> <sm> ideally it would show the thing one last time when you delete
2025-05-28 03:49:03 +0200 <haskellbridge> <sm> after something is deleted here, there's a 5-10m window when you can check what it was at https://haskell-links.org
2025-05-28 03:49:16 +0200 <haskellbridge> <sm> ..
2025-05-28 03:49:16 +0200 <haskellbridge> @where+ ibid
2025-05-28 03:49:16 +0200 <lambdabot> It is forgotten.
2025-05-28 03:52:49 +0200sabathan2(~sabathan@amarseille-159-1-12-107.w86-203.abo.wanadoo.fr) (Remote host closed the connection)
2025-05-28 03:53:11 +0200sabathan2(~sabathan@amarseille-159-1-12-107.w86-203.abo.wanadoo.fr)
2025-05-28 03:57:28 +0200pabs3(~pabs3@user/pabs3) (Read error: Connection reset by peer)
2025-05-28 03:58:21 +0200pabs3(~pabs3@user/pabs3) pabs3
2025-05-28 04:05:05 +0200sabathan2(~sabathan@amarseille-159-1-12-107.w86-203.abo.wanadoo.fr) (Remote host closed the connection)
2025-05-28 04:05:28 +0200sabathan2(~sabathan@amarseille-159-1-12-107.w86-203.abo.wanadoo.fr)
2025-05-28 04:05:49 +0200td_(~td@i53870903.versanet.de) (Ping timeout: 245 seconds)
2025-05-28 04:06:53 +0200xff0x(~xff0x@fsb6a9491c.tkyc517.ap.nuro.jp)
2025-05-28 04:07:40 +0200td_(~td@i53870920.versanet.de) td_
2025-05-28 04:12:05 +0200sabathan2(~sabathan@amarseille-159-1-12-107.w86-203.abo.wanadoo.fr) (Remote host closed the connection)
2025-05-28 04:12:29 +0200sabathan2(~sabathan@amarseille-159-1-12-107.w86-203.abo.wanadoo.fr)
2025-05-28 04:20:54 +0200sabathan2(~sabathan@amarseille-159-1-12-107.w86-203.abo.wanadoo.fr) (Remote host closed the connection)
2025-05-28 04:21:16 +0200sabathan2(~sabathan@amarseille-159-1-12-107.w86-203.abo.wanadoo.fr)
2025-05-28 04:27:01 +0200sabathan2(~sabathan@amarseille-159-1-12-107.w86-203.abo.wanadoo.fr) (Remote host closed the connection)
2025-05-28 04:27:21 +0200sabathan2(~sabathan@amarseille-159-1-12-107.w86-203.abo.wanadoo.fr)
2025-05-28 04:35:14 +0200sabathan2(~sabathan@amarseille-159-1-12-107.w86-203.abo.wanadoo.fr) (Remote host closed the connection)
2025-05-28 04:35:37 +0200sabathan2(~sabathan@amarseille-159-1-12-107.w86-203.abo.wanadoo.fr)
2025-05-28 04:45:02 +0200sabathan2(~sabathan@amarseille-159-1-12-107.w86-203.abo.wanadoo.fr) (Remote host closed the connection)
2025-05-28 04:45:24 +0200sabathan2(~sabathan@amarseille-159-1-12-107.w86-203.abo.wanadoo.fr)
2025-05-28 04:56:42 +0200sabathan2(~sabathan@amarseille-159-1-12-107.w86-203.abo.wanadoo.fr) (Remote host closed the connection)
2025-05-28 04:57:05 +0200sabathan2(~sabathan@amarseille-159-1-12-107.w86-203.abo.wanadoo.fr)
2025-05-28 05:02:48 +0200td_(~td@i53870920.versanet.de) (Ping timeout: 244 seconds)
2025-05-28 05:04:43 +0200td_(~td@i5387090E.versanet.de) td_
2025-05-28 05:04:56 +0200sabathan2(~sabathan@amarseille-159-1-12-107.w86-203.abo.wanadoo.fr) (Remote host closed the connection)
2025-05-28 05:05:19 +0200sabathan2(~sabathan@amarseille-159-1-12-107.w86-203.abo.wanadoo.fr)
2025-05-28 05:07:33 +0200zzz(~z@user/zero) (Ping timeout: 248 seconds)
2025-05-28 05:08:50 +0200yin(~z@user/zero) zero
2025-05-28 05:12:14 +0200foul_owl(~kerry@94.156.149.92) (Ping timeout: 260 seconds)
2025-05-28 05:22:20 +0200DrachenMaus(~dragonmau@user/dragonmaus) (Quit: https://quassel-irc.org - Chat comfortably. Anywhere.)
2025-05-28 05:22:27 +0200machinedgod(~machinedg@d108-173-18-100.abhsia.telus.net) (Ping timeout: 276 seconds)
2025-05-28 05:23:10 +0200DragonMaus(~dragonmau@user/dragonmaus) DragonMaus
2025-05-28 05:25:44 +0200foul_owl(~kerry@94.156.149.92) foul_owl
2025-05-28 05:25:51 +0200sabathan2(~sabathan@amarseille-159-1-12-107.w86-203.abo.wanadoo.fr) (Remote host closed the connection)
2025-05-28 05:26:14 +0200sabathan2(~sabathan@amarseille-159-1-12-107.w86-203.abo.wanadoo.fr)
2025-05-28 05:32:07 +0200sabathan2(~sabathan@amarseille-159-1-12-107.w86-203.abo.wanadoo.fr) (Remote host closed the connection)
2025-05-28 05:32:28 +0200sabathan2(~sabathan@amarseille-159-1-12-107.w86-203.abo.wanadoo.fr)
2025-05-28 05:37:29 +0200jmcantrell(~weechat@user/jmcantrell) (Ping timeout: 265 seconds)
2025-05-28 05:39:17 +0200sabathan2(~sabathan@amarseille-159-1-12-107.w86-203.abo.wanadoo.fr) (Remote host closed the connection)
2025-05-28 05:39:38 +0200sabathan2(~sabathan@amarseille-159-1-12-107.w86-203.abo.wanadoo.fr)
2025-05-28 05:47:36 +0200sabathan2(~sabathan@amarseille-159-1-12-107.w86-203.abo.wanadoo.fr) (Remote host closed the connection)
2025-05-28 05:47:56 +0200sabathan2(~sabathan@amarseille-159-1-12-107.w86-203.abo.wanadoo.fr)
2025-05-28 05:48:24 +0200peterbecich(~Thunderbi@syn-047-229-123-186.res.spectrum.com) peterbecich
2025-05-28 05:57:24 +0200sabathan2(~sabathan@amarseille-159-1-12-107.w86-203.abo.wanadoo.fr) (Remote host closed the connection)
2025-05-28 05:57:47 +0200sabathan2(~sabathan@amarseille-159-1-12-107.w86-203.abo.wanadoo.fr)
2025-05-28 05:59:01 +0200amadaluzia(~amadaluzi@user/amadaluzia) (Ping timeout: 252 seconds)
2025-05-28 05:59:22 +0200amadaluzia(~amadaluzi@user/amadaluzia) amadaluzia
2025-05-28 06:11:27 +0200sabathan2(~sabathan@amarseille-159-1-12-107.w86-203.abo.wanadoo.fr) (Remote host closed the connection)
2025-05-28 06:11:53 +0200sabathan2(~sabathan@amarseille-159-1-12-107.w86-203.abo.wanadoo.fr)
2025-05-28 06:13:04 +0200peterbecich(~Thunderbi@syn-047-229-123-186.res.spectrum.com) (Ping timeout: 276 seconds)
2025-05-28 06:17:00 +0200sabathan2(~sabathan@amarseille-159-1-12-107.w86-203.abo.wanadoo.fr) (Remote host closed the connection)
2025-05-28 06:17:23 +0200sabathan2(~sabathan@amarseille-159-1-12-107.w86-203.abo.wanadoo.fr)
2025-05-28 06:17:45 +0200amadaluzia(~amadaluzi@user/amadaluzia) (Ping timeout: 260 seconds)
2025-05-28 06:27:05 +0200sabathan2(~sabathan@amarseille-159-1-12-107.w86-203.abo.wanadoo.fr) (Remote host closed the connection)
2025-05-28 06:27:28 +0200sabathan2(~sabathan@amarseille-159-1-12-107.w86-203.abo.wanadoo.fr)
2025-05-28 06:33:35 +0200sabathan2(~sabathan@amarseille-159-1-12-107.w86-203.abo.wanadoo.fr) (Remote host closed the connection)
2025-05-28 06:33:56 +0200sabathan2(~sabathan@amarseille-159-1-12-107.w86-203.abo.wanadoo.fr)
2025-05-28 06:43:41 +0200sabathan2(~sabathan@amarseille-159-1-12-107.w86-203.abo.wanadoo.fr) (Remote host closed the connection)
2025-05-28 06:44:02 +0200sabathan2(~sabathan@amarseille-159-1-12-107.w86-203.abo.wanadoo.fr)
2025-05-28 06:49:43 +0200sabathan2(~sabathan@amarseille-159-1-12-107.w86-203.abo.wanadoo.fr) (Remote host closed the connection)
2025-05-28 06:50:03 +0200sabathan2(~sabathan@amarseille-159-1-12-107.w86-203.abo.wanadoo.fr)
2025-05-28 06:51:00 +0200takuan(~takuan@d8D86B601.access.telenet.be)
2025-05-28 06:55:46 +0200sabathan2(~sabathan@amarseille-159-1-12-107.w86-203.abo.wanadoo.fr) (Remote host closed the connection)
2025-05-28 06:56:06 +0200sabathan2(~sabathan@amarseille-159-1-12-107.w86-203.abo.wanadoo.fr)
2025-05-28 06:57:08 +0200Lord_of_Life_(~Lord@user/lord-of-life/x-2819915) Lord_of_Life
2025-05-28 06:58:00 +0200Lord_of_Life(~Lord@user/lord-of-life/x-2819915) (Ping timeout: 260 seconds)
2025-05-28 06:58:31 +0200Lord_of_Life_Lord_of_Life
2025-05-28 07:00:56 +0200Square2(~Square@user/square) (Remote host closed the connection)
2025-05-28 07:01:47 +0200sabathan2(~sabathan@amarseille-159-1-12-107.w86-203.abo.wanadoo.fr) (Remote host closed the connection)
2025-05-28 07:02:08 +0200sabathan2(~sabathan@amarseille-159-1-12-107.w86-203.abo.wanadoo.fr)
2025-05-28 07:07:44 +0200sabathan2(~sabathan@amarseille-159-1-12-107.w86-203.abo.wanadoo.fr) (Remote host closed the connection)
2025-05-28 07:08:06 +0200sabathan2(~sabathan@amarseille-159-1-12-107.w86-203.abo.wanadoo.fr)
2025-05-28 07:09:20 +0200amadaluzia(~amadaluzi@user/amadaluzia) amadaluzia
2025-05-28 07:13:45 +0200sabathan2(~sabathan@amarseille-159-1-12-107.w86-203.abo.wanadoo.fr) (Remote host closed the connection)
2025-05-28 07:14:07 +0200sabathan2(~sabathan@amarseille-159-1-12-107.w86-203.abo.wanadoo.fr)
2025-05-28 07:23:58 +0200peterbecich(~Thunderbi@syn-047-229-123-186.res.spectrum.com) peterbecich
2025-05-28 07:25:55 +0200sabathan2(~sabathan@amarseille-159-1-12-107.w86-203.abo.wanadoo.fr) (Remote host closed the connection)
2025-05-28 07:26:16 +0200sabathan2(~sabathan@amarseille-159-1-12-107.w86-203.abo.wanadoo.fr)
2025-05-28 07:30:03 +0200peterbecich(~Thunderbi@syn-047-229-123-186.res.spectrum.com) (Ping timeout: 244 seconds)
2025-05-28 07:33:58 +0200sabathan2(~sabathan@amarseille-159-1-12-107.w86-203.abo.wanadoo.fr) (Remote host closed the connection)
2025-05-28 07:34:17 +0200sabathan2(~sabathan@amarseille-159-1-12-107.w86-203.abo.wanadoo.fr)
2025-05-28 07:39:21 +0200bitdex(~bitdex@gateway/tor-sasl/bitdex) (Quit: = "")
2025-05-28 07:39:52 +0200sabathan2(~sabathan@amarseille-159-1-12-107.w86-203.abo.wanadoo.fr) (Remote host closed the connection)
2025-05-28 07:40:13 +0200sabathan2(~sabathan@amarseille-159-1-12-107.w86-203.abo.wanadoo.fr)
2025-05-28 07:45:54 +0200sabathan2(~sabathan@amarseille-159-1-12-107.w86-203.abo.wanadoo.fr) (Remote host closed the connection)
2025-05-28 07:46:16 +0200sabathan2(~sabathan@amarseille-159-1-12-107.w86-203.abo.wanadoo.fr)
2025-05-28 07:50:50 +0200amadaluzia(~amadaluzi@user/amadaluzia) (Remote host closed the connection)
2025-05-28 07:50:57 +0200Axma82850(~Axman6@user/axman6) Axman6
2025-05-28 07:51:37 +0200sabathan2(~sabathan@amarseille-159-1-12-107.w86-203.abo.wanadoo.fr) (Remote host closed the connection)
2025-05-28 07:51:58 +0200sabathan2(~sabathan@amarseille-159-1-12-107.w86-203.abo.wanadoo.fr)
2025-05-28 07:52:43 +0200Axman6(~Axman6@user/axman6) (Ping timeout: 248 seconds)
2025-05-28 07:56:29 +0200Frostillicus(~Frostilli@pool-71-174-119-69.bstnma.fios.verizon.net)
2025-05-28 07:59:13 +0200Axma82850Axman6
2025-05-28 08:01:36 +0200Axma58382(~Axman6@user/axman6) Axman6
2025-05-28 08:03:51 +0200Axman6(~Axman6@user/axman6) (Ping timeout: 250 seconds)
2025-05-28 08:03:52 +0200Frostillicus(~Frostilli@pool-71-174-119-69.bstnma.fios.verizon.net) (Ping timeout: 252 seconds)
2025-05-28 08:03:52 +0200sabathan2(~sabathan@amarseille-159-1-12-107.w86-203.abo.wanadoo.fr) (Remote host closed the connection)
2025-05-28 08:04:12 +0200sabathan2(~sabathan@amarseille-159-1-12-107.w86-203.abo.wanadoo.fr)
2025-05-28 08:04:58 +0200peterbecich(~Thunderbi@syn-047-229-123-186.res.spectrum.com) peterbecich
2025-05-28 08:09:01 +0200Frostillicus(~Frostilli@pool-71-174-119-69.bstnma.fios.verizon.net)
2025-05-28 08:09:55 +0200sabathan2(~sabathan@amarseille-159-1-12-107.w86-203.abo.wanadoo.fr) (Remote host closed the connection)
2025-05-28 08:10:18 +0200sabathan2(~sabathan@amarseille-159-1-12-107.w86-203.abo.wanadoo.fr)
2025-05-28 08:12:22 +0200haritz(~hrtz@user/haritz) (Quit: ZNC 1.8.2+deb3.1+deb12u1 - https://znc.in)
2025-05-28 08:16:01 +0200sabathan2(~sabathan@amarseille-159-1-12-107.w86-203.abo.wanadoo.fr) (Remote host closed the connection)
2025-05-28 08:16:22 +0200sabathan2(~sabathan@amarseille-159-1-12-107.w86-203.abo.wanadoo.fr)
2025-05-28 08:18:42 +0200Frostillicus(~Frostilli@pool-71-174-119-69.bstnma.fios.verizon.net) (Ping timeout: 252 seconds)
2025-05-28 08:26:12 +0200sabathan2(~sabathan@amarseille-159-1-12-107.w86-203.abo.wanadoo.fr) (Remote host closed the connection)
2025-05-28 08:26:34 +0200sabathan2(~sabathan@amarseille-159-1-12-107.w86-203.abo.wanadoo.fr)
2025-05-28 08:26:46 +0200fp(~Thunderbi@2001:708:20:1406::10c5) fp
2025-05-28 08:38:07 +0200sabathan2(~sabathan@amarseille-159-1-12-107.w86-203.abo.wanadoo.fr) (Remote host closed the connection)
2025-05-28 08:38:29 +0200sabathan2(~sabathan@amarseille-159-1-12-107.w86-203.abo.wanadoo.fr)
2025-05-28 08:42:58 +0200Frostillicus(~Frostilli@pool-71-174-119-69.bstnma.fios.verizon.net)
2025-05-28 08:47:33 +0200fantom(~fantom@33be818f.skybroadband.com) (Ping timeout: 244 seconds)
2025-05-28 08:50:18 +0200emmanuelux(~emmanuelu@user/emmanuelux) (Quit: au revoir)
2025-05-28 08:58:30 +0200tromp(~textual@2001:1c00:3487:1b00:6079:2a03:d656:1a2e)
2025-05-28 09:00:01 +0200caconym7(~caconym@user/caconym) (Quit: bye)
2025-05-28 09:00:41 +0200caconym7(~caconym@user/caconym) caconym
2025-05-28 09:02:51 +0200sabathan2(~sabathan@amarseille-159-1-12-107.w86-203.abo.wanadoo.fr) (Remote host closed the connection)
2025-05-28 09:03:16 +0200sabathan2(~sabathan@amarseille-159-1-12-107.w86-203.abo.wanadoo.fr)
2025-05-28 09:05:57 +0200FANTOM(~fantom@33be818f.skybroadband.com)
2025-05-28 09:07:29 +0200lortabac(~lortabac@2a01:e0a:541:b8f0:55ab:e185:7f81:54a4) lortabac
2025-05-28 09:10:12 +0200sabathan2(~sabathan@amarseille-159-1-12-107.w86-203.abo.wanadoo.fr) (Remote host closed the connection)
2025-05-28 09:10:35 +0200sabathan2(~sabathan@amarseille-159-1-12-107.w86-203.abo.wanadoo.fr)
2025-05-28 09:16:05 +0200peterbecich(~Thunderbi@syn-047-229-123-186.res.spectrum.com) (Ping timeout: 248 seconds)
2025-05-28 09:17:10 +0200sabathan2(~sabathan@amarseille-159-1-12-107.w86-203.abo.wanadoo.fr) (Remote host closed the connection)
2025-05-28 09:17:32 +0200sabathan2(~sabathan@amarseille-159-1-12-107.w86-203.abo.wanadoo.fr)
2025-05-28 09:25:51 +0200sord937(~sord937@gateway/tor-sasl/sord937) sord937
2025-05-28 09:25:57 +0200sabathan2(~sabathan@amarseille-159-1-12-107.w86-203.abo.wanadoo.fr) (Remote host closed the connection)
2025-05-28 09:26:17 +0200sabathan2(~sabathan@amarseille-159-1-12-107.w86-203.abo.wanadoo.fr)
2025-05-28 09:29:27 +0200Frostillicus(~Frostilli@pool-71-174-119-69.bstnma.fios.verizon.net) (Ping timeout: 276 seconds)
2025-05-28 09:32:08 +0200sabathan2(~sabathan@amarseille-159-1-12-107.w86-203.abo.wanadoo.fr) (Remote host closed the connection)
2025-05-28 09:32:30 +0200sabathan2(~sabathan@amarseille-159-1-12-107.w86-203.abo.wanadoo.fr)
2025-05-28 09:38:25 +0200sabathan2(~sabathan@amarseille-159-1-12-107.w86-203.abo.wanadoo.fr) (Remote host closed the connection)
2025-05-28 09:38:47 +0200sabathan2(~sabathan@amarseille-159-1-12-107.w86-203.abo.wanadoo.fr)
2025-05-28 09:41:53 +0200sord937(~sord937@gateway/tor-sasl/sord937) (Remote host closed the connection)
2025-05-28 09:42:15 +0200sord937(~sord937@gateway/tor-sasl/sord937) sord937
2025-05-28 09:42:39 +0200chele(~chele@user/chele) chele
2025-05-28 09:44:30 +0200Frostillicus(~Frostilli@pool-71-174-119-69.bstnma.fios.verizon.net)
2025-05-28 09:44:42 +0200Sgeo(~Sgeo@user/sgeo) (Read error: Connection reset by peer)
2025-05-28 09:47:00 +0200ft(~ft@p3e9bc106.dip0.t-ipconnect.de) (Quit: leaving)
2025-05-28 09:48:02 +0200acidjnk(~acidjnk@p200300d6e71c4f128d29b950d20b1255.dip0.t-ipconnect.de) acidjnk
2025-05-28 09:54:11 +0200CiaoSen(~Jura@2a02:8071:64e1:da0:5a47:caff:fe78:33db) CiaoSen
2025-05-28 09:54:36 +0200lxsameer(~lxsameer@Serene/lxsameer) lxsameer
2025-05-28 09:56:58 +0200sabathan2(~sabathan@amarseille-159-1-12-107.w86-203.abo.wanadoo.fr) (Remote host closed the connection)
2025-05-28 09:57:19 +0200sabathan2(~sabathan@amarseille-159-1-12-107.w86-203.abo.wanadoo.fr)
2025-05-28 09:58:20 +0200sord937(~sord937@gateway/tor-sasl/sord937) (Remote host closed the connection)
2025-05-28 09:58:32 +0200machinedgod(~machinedg@d108-173-18-100.abhsia.telus.net) machinedgod
2025-05-28 09:58:39 +0200sord937(~sord937@gateway/tor-sasl/sord937) sord937
2025-05-28 10:02:16 +0200Everything(~Everythin@77.120.244.38) Everything
2025-05-28 10:06:34 +0200sabathan2(~sabathan@amarseille-159-1-12-107.w86-203.abo.wanadoo.fr) (Remote host closed the connection)
2025-05-28 10:06:55 +0200sabathan2(~sabathan@amarseille-159-1-12-107.w86-203.abo.wanadoo.fr)
2025-05-28 10:10:45 +0200 <tomsmeding> EvanR: more than cat burritos, have owl burritos https://owlsintowels.org/
2025-05-28 10:15:06 +0200sabathan2(~sabathan@amarseille-159-1-12-107.w86-203.abo.wanadoo.fr) (Remote host closed the connection)
2025-05-28 10:15:24 +0200Frostillicus(~Frostilli@pool-71-174-119-69.bstnma.fios.verizon.net) (Ping timeout: 245 seconds)
2025-05-28 10:15:27 +0200sabathan2(~sabathan@amarseille-159-1-12-107.w86-203.abo.wanadoo.fr)
2025-05-28 10:15:49 +0200Frostillicus(~Frostilli@pool-71-174-119-69.bstnma.fios.verizon.net)
2025-05-28 10:16:02 +0200__monty__(~toonn@user/toonn) toonn
2025-05-28 10:18:43 +0200Frostillicus(~Frostilli@pool-71-174-119-69.bstnma.fios.verizon.net) (Read error: Connection reset by peer)
2025-05-28 10:20:02 +0200oskarw(~user@194.29.137.22)
2025-05-28 10:20:19 +0200xff0x(~xff0x@fsb6a9491c.tkyc517.ap.nuro.jp) (Ping timeout: 252 seconds)
2025-05-28 10:20:23 +0200oskarw`(~user@194.29.137.22)
2025-05-28 10:20:49 +0200oskarw`(~user@194.29.137.22) (Remote host closed the connection)
2025-05-28 10:20:50 +0200oskarw(~user@194.29.137.22) (Remote host closed the connection)
2025-05-28 10:21:12 +0200oskarw(~user@user/oskarw) oskarw
2025-05-28 10:22:24 +0200xff0x(~xff0x@fsb6a9491c.tkyc517.ap.nuro.jp)
2025-05-28 10:24:50 +0200sabathan2(~sabathan@amarseille-159-1-12-107.w86-203.abo.wanadoo.fr) (Remote host closed the connection)
2025-05-28 10:25:12 +0200sabathan2(~sabathan@amarseille-159-1-12-107.w86-203.abo.wanadoo.fr)
2025-05-28 10:25:21 +0200oskarw(~user@user/oskarw) (Remote host closed the connection)
2025-05-28 10:28:11 +0200merijn(~merijn@77.242.116.146) merijn
2025-05-28 10:28:20 +0200oskarw(~user@user/oskarw) oskarw
2025-05-28 10:35:44 +0200sabathan2(~sabathan@amarseille-159-1-12-107.w86-203.abo.wanadoo.fr) (Remote host closed the connection)
2025-05-28 10:36:05 +0200sabathan2(~sabathan@amarseille-159-1-12-107.w86-203.abo.wanadoo.fr)
2025-05-28 10:38:01 +0200tromp(~textual@2001:1c00:3487:1b00:6079:2a03:d656:1a2e) (Quit: My iMac has gone to sleep. ZZZzzz…)
2025-05-28 10:40:18 +0200merijn(~merijn@77.242.116.146) (Ping timeout: 268 seconds)
2025-05-28 10:43:09 +0200sabathan2(~sabathan@amarseille-159-1-12-107.w86-203.abo.wanadoo.fr) (Remote host closed the connection)
2025-05-28 10:43:31 +0200sabathan2(~sabathan@amarseille-159-1-12-107.w86-203.abo.wanadoo.fr)
2025-05-28 10:50:24 +0200sabathan2(~sabathan@amarseille-159-1-12-107.w86-203.abo.wanadoo.fr) (Remote host closed the connection)
2025-05-28 10:50:46 +0200sabathan2(~sabathan@amarseille-159-1-12-107.w86-203.abo.wanadoo.fr)
2025-05-28 10:52:52 +0200merijn(~merijn@77.242.116.146) merijn
2025-05-28 10:55:23 +0200ubert(~Thunderbi@2a02:8109:abb3:7000:b3bd:bf5a:1fc5:21e8) ubert
2025-05-28 11:00:28 +0200sabathan2(~sabathan@amarseille-159-1-12-107.w86-203.abo.wanadoo.fr) (Remote host closed the connection)
2025-05-28 11:00:51 +0200sabathan2(~sabathan@amarseille-159-1-12-107.w86-203.abo.wanadoo.fr)
2025-05-28 11:05:31 +0200pavonia(~user@user/siracusa) (Quit: Bye!)
2025-05-28 11:15:55 +0200 <oskarw> Hi, is there situation where I should use ghci over cabal-repl? I just found out that ghci can't use -threaded option, because its interpreter, and cabal-repl can, because it compiles code.
2025-05-28 11:17:03 +0200sabathan2(~sabathan@amarseille-159-1-12-107.w86-203.abo.wanadoo.fr) (Remote host closed the connection)
2025-05-28 11:17:26 +0200sabathan2(~sabathan@amarseille-159-1-12-107.w86-203.abo.wanadoo.fr)
2025-05-28 11:20:53 +0200 <oskarw> I don't know how, but haskell-mode in emacs didn't found my .cabal file in my project and was opening ghci like it should be https://haskell.github.io/haskell-mode/manual/latest/REPL.html
2025-05-28 11:21:08 +0200 <oskarw> Was opening ghci instead of cabal-repl
2025-05-28 11:22:50 +0200tzh(~tzh@c-76-115-131-146.hsd1.or.comcast.net) (Quit: zzz)
2025-05-28 11:24:59 +0200sabathan2(~sabathan@amarseille-159-1-12-107.w86-203.abo.wanadoo.fr) (Remote host closed the connection)
2025-05-28 11:25:20 +0200 <oskarw> Does anybody here uses haskell-ts-mode and want to say how much they like it?
2025-05-28 11:25:23 +0200sabathan2(~sabathan@amarseille-159-1-12-107.w86-203.abo.wanadoo.fr)
2025-05-28 11:37:06 +0200 <tomsmeding> whenever you're in a cabal package/project, you should use `cabal repl` because ghci doesn't pick up on the project configuration
2025-05-28 11:38:03 +0200merijn(~merijn@77.242.116.146) (Ping timeout: 265 seconds)
2025-05-28 11:40:04 +0200merijn(~merijn@77.242.116.146) merijn
2025-05-28 11:41:23 +0200 <oskarw> tomsmeding: ok, I will keep that in mind
2025-05-28 11:42:06 +0200sabathan2(~sabathan@amarseille-159-1-12-107.w86-203.abo.wanadoo.fr) (Remote host closed the connection)
2025-05-28 11:42:27 +0200sabathan2(~sabathan@amarseille-159-1-12-107.w86-203.abo.wanadoo.fr)
2025-05-28 11:43:50 +0200fp(~Thunderbi@2001:708:20:1406::10c5) (Ping timeout: 268 seconds)
2025-05-28 11:44:49 +0200fp(~Thunderbi@wireless-86-50-140-9.open.aalto.fi) fp
2025-05-28 11:46:00 +0200tromp(~textual@2001:1c00:3487:1b00:6079:2a03:d656:1a2e)
2025-05-28 11:51:15 +0200sabathan2(~sabathan@amarseille-159-1-12-107.w86-203.abo.wanadoo.fr) (Remote host closed the connection)
2025-05-28 11:51:35 +0200sabathan2(~sabathan@amarseille-159-1-12-107.w86-203.abo.wanadoo.fr)
2025-05-28 11:56:21 +0200spk(~spk@2405:201:e02d:902f:47b2:524d:9d9e:d2f4)
2025-05-28 11:56:56 +0200lortabac(~lortabac@2a01:e0a:541:b8f0:55ab:e185:7f81:54a4) (Quit: WeeChat 4.5.2)
2025-05-28 11:57:09 +0200spk(~spk@2405:201:e02d:902f:47b2:524d:9d9e:d2f4) (Client Quit)
2025-05-28 11:57:43 +0200spk-Guest24(~spk-Guest@2405:201:e02d:902f:47b2:524d:9d9e:d2f4)
2025-05-28 11:58:28 +0200sabathan2(~sabathan@amarseille-159-1-12-107.w86-203.abo.wanadoo.fr) (Remote host closed the connection)
2025-05-28 11:58:47 +0200sabathan2(~sabathan@amarseille-159-1-12-107.w86-203.abo.wanadoo.fr)
2025-05-28 12:06:37 +0200 <spk-Guest24> hello all, I have a question about creating a law-abiding lens. Basically, I want the `over` function to accept an `(Int, String)` but update only the `String` part (the `Int` is just extra, read-only context). So, I thought I could set up a lens of the type `Lens (Int, String) (Int, String) (Int, String) String`.
2025-05-28 12:06:54 +0200 <spk-Guest24> However, I don't know how to check the lens laws for this, since get-put and put-get seem to expect `a ~ b` whereas `a` and `b` are different here. Is my lens a valid lens in the first place? If so, any ideas on how to check its laws? If not, is there some other way I can solve this kind of problem within the lenses paradigm? Thanks
2025-05-28 12:09:16 +0200sabathan2(~sabathan@amarseille-159-1-12-107.w86-203.abo.wanadoo.fr) (Read error: Connection reset by peer)
2025-05-28 12:09:36 +0200sabathan2(~sabathan@amarseille-159-1-12-107.w86-203.abo.wanadoo.fr)
2025-05-28 12:13:00 +0200xff0x(~xff0x@fsb6a9491c.tkyc517.ap.nuro.jp) (Ping timeout: 260 seconds)
2025-05-28 12:15:14 +0200sabathan2(~sabathan@amarseille-159-1-12-107.w86-203.abo.wanadoo.fr) (Remote host closed the connection)
2025-05-28 12:15:17 +0200fp(~Thunderbi@wireless-86-50-140-9.open.aalto.fi) (Ping timeout: 268 seconds)
2025-05-28 12:15:36 +0200sabathan2(~sabathan@amarseille-159-1-12-107.w86-203.abo.wanadoo.fr)
2025-05-28 12:18:21 +0200merijn(~merijn@77.242.116.146) (Ping timeout: 244 seconds)
2025-05-28 12:21:34 +0200dhil(~dhil@5.151.29.137) dhil
2025-05-28 12:23:20 +0200sabathan2(~sabathan@amarseille-159-1-12-107.w86-203.abo.wanadoo.fr) (Remote host closed the connection)
2025-05-28 12:23:43 +0200sabathan2(~sabathan@amarseille-159-1-12-107.w86-203.abo.wanadoo.fr)
2025-05-28 12:31:04 +0200chele(~chele@user/chele) (Remote host closed the connection)
2025-05-28 12:31:09 +0200merijn(~merijn@77.242.116.146) merijn
2025-05-28 12:31:21 +0200sabathan2(~sabathan@amarseille-159-1-12-107.w86-203.abo.wanadoo.fr) (Remote host closed the connection)
2025-05-28 12:31:42 +0200sabathan2(~sabathan@amarseille-159-1-12-107.w86-203.abo.wanadoo.fr)
2025-05-28 12:35:38 +0200merijn(~merijn@77.242.116.146) (Ping timeout: 252 seconds)
2025-05-28 12:35:48 +0200flukiluke(~m-7humut@2603:c023:c000:6c7e:8945:ad24:9113:a962) (Remote host closed the connection)
2025-05-28 12:36:11 +0200flukiluke(~m-7humut@2603:c023:c000:6c7e:8945:ad24:9113:a962) flukiluke
2025-05-28 12:37:20 +0200sabathan2(~sabathan@amarseille-159-1-12-107.w86-203.abo.wanadoo.fr) (Remote host closed the connection)
2025-05-28 12:37:21 +0200LainIwakura(~LainIwaku@user/LainIwakura) LainIwakura
2025-05-28 12:37:42 +0200sabathan2(~sabathan@amarseille-159-1-12-107.w86-203.abo.wanadoo.fr)
2025-05-28 12:42:45 +0200merijn(~merijn@77.242.116.146) merijn
2025-05-28 12:43:25 +0200sabathan2(~sabathan@amarseille-159-1-12-107.w86-203.abo.wanadoo.fr) (Remote host closed the connection)
2025-05-28 12:43:47 +0200sabathan2(~sabathan@amarseille-159-1-12-107.w86-203.abo.wanadoo.fr)
2025-05-28 12:43:49 +0200econo_(uid147250@id-147250.tinside.irccloud.com) (Quit: Connection closed for inactivity)
2025-05-28 12:48:52 +0200amadaluzia(~amadaluzi@user/amadaluzia) amadaluzia
2025-05-28 12:51:26 +0200sabathan2(~sabathan@amarseille-159-1-12-107.w86-203.abo.wanadoo.fr) (Read error: Connection reset by peer)
2025-05-28 12:51:47 +0200sabathan2(~sabathan@amarseille-159-1-12-107.w86-203.abo.wanadoo.fr)
2025-05-28 12:56:35 +0200merijn(~merijn@77.242.116.146) (Ping timeout: 244 seconds)
2025-05-28 12:57:24 +0200lortabac(~lortabac@2a01:e0a:541:b8f0:55ab:e185:7f81:54a4) lortabac
2025-05-28 12:57:25 +0200sabathan2(~sabathan@amarseille-159-1-12-107.w86-203.abo.wanadoo.fr) (Remote host closed the connection)
2025-05-28 12:57:47 +0200sabathan2(~sabathan@amarseille-159-1-12-107.w86-203.abo.wanadoo.fr)
2025-05-28 12:59:17 +0200merijn(~merijn@77.242.116.146) merijn
2025-05-28 13:00:28 +0200olliep(~ollie@2a0a:ef40:19e:b02:5af:d167:b1b4:7a80)
2025-05-28 13:05:28 +0200sabathan2(~sabathan@amarseille-159-1-12-107.w86-203.abo.wanadoo.fr) (Remote host closed the connection)
2025-05-28 13:05:50 +0200sabathan2(~sabathan@amarseille-159-1-12-107.w86-203.abo.wanadoo.fr)
2025-05-28 13:06:08 +0200Guest4(~Guest4@193.110.182.11)
2025-05-28 13:07:41 +0200fp(~Thunderbi@wireless-86-50-140-9.open.aalto.fi) fp
2025-05-28 13:11:29 +0200sabathan2(~sabathan@amarseille-159-1-12-107.w86-203.abo.wanadoo.fr) (Remote host closed the connection)
2025-05-28 13:11:50 +0200sabathan2(~sabathan@amarseille-159-1-12-107.w86-203.abo.wanadoo.fr)
2025-05-28 13:12:07 +0200tromp(~textual@2001:1c00:3487:1b00:6079:2a03:d656:1a2e) (Quit: My iMac has gone to sleep. ZZZzzz…)
2025-05-28 13:15:43 +0200merijn(~merijn@77.242.116.146) (Ping timeout: 268 seconds)
2025-05-28 13:16:01 +0200xff0x(~xff0x@2405:6580:b080:900:b805:2b56:e562:b1fd)
2025-05-28 13:16:03 +0200tromp(~textual@2001:1c00:3487:1b00:6079:2a03:d656:1a2e)
2025-05-28 13:16:09 +0200Frostillicus(~Frostilli@pool-71-174-119-69.bstnma.fios.verizon.net)
2025-05-28 13:17:31 +0200sabathan2(~sabathan@amarseille-159-1-12-107.w86-203.abo.wanadoo.fr) (Remote host closed the connection)
2025-05-28 13:17:56 +0200sabathan2(~sabathan@amarseille-159-1-12-107.w86-203.abo.wanadoo.fr)
2025-05-28 13:19:49 +0200Guest4(~Guest4@193.110.182.11) (Quit: Client closed)
2025-05-28 13:22:18 +0200merijn(~merijn@77.242.116.146) merijn
2025-05-28 13:23:49 +0200sabathan2(~sabathan@amarseille-159-1-12-107.w86-203.abo.wanadoo.fr) (Remote host closed the connection)
2025-05-28 13:24:13 +0200sabathan2(~sabathan@amarseille-159-1-12-107.w86-203.abo.wanadoo.fr)
2025-05-28 13:29:45 +0200fp(~Thunderbi@wireless-86-50-140-9.open.aalto.fi) (Quit: fp)
2025-05-28 13:29:54 +0200fp1(~Thunderbi@wireless-86-50-140-9.open.aalto.fi) fp
2025-05-28 13:30:45 +0200sabathan2(~sabathan@amarseille-159-1-12-107.w86-203.abo.wanadoo.fr) (Remote host closed the connection)
2025-05-28 13:31:05 +0200sabathan2(~sabathan@amarseille-159-1-12-107.w86-203.abo.wanadoo.fr)
2025-05-28 13:31:47 +0200shaeto(~Shaeto@94.25.234.207)
2025-05-28 13:32:06 +0200tomboy64(~tomboy64@user/tomboy64) (Ping timeout: 252 seconds)
2025-05-28 13:32:16 +0200fp1fp
2025-05-28 13:32:33 +0200merijn(~merijn@77.242.116.146) (Ping timeout: 276 seconds)
2025-05-28 13:34:36 +0200merijn(~merijn@77.242.116.146) merijn
2025-05-28 13:40:34 +0200sabathan2(~sabathan@amarseille-159-1-12-107.w86-203.abo.wanadoo.fr) (Remote host closed the connection)
2025-05-28 13:40:55 +0200sabathan2(~sabathan@amarseille-159-1-12-107.w86-203.abo.wanadoo.fr)
2025-05-28 13:44:52 +0200tomboy64(~tomboy64@user/tomboy64) tomboy64
2025-05-28 13:46:13 +0200fp(~Thunderbi@wireless-86-50-140-9.open.aalto.fi) (Quit: fp)
2025-05-28 13:46:29 +0200fp(~Thunderbi@2001:708:20:1406::1370) fp
2025-05-28 13:47:06 +0200chele(~chele@user/chele) chele
2025-05-28 13:48:40 +0200JuanDaugherty(~juan@user/JuanDaugherty) JuanDaugherty
2025-05-28 13:49:27 +0200spk-Guest24(~spk-Guest@2405:201:e02d:902f:47b2:524d:9d9e:d2f4) (Quit: Client closed)
2025-05-28 13:49:28 +0200sabathan2(~sabathan@amarseille-159-1-12-107.w86-203.abo.wanadoo.fr) (Remote host closed the connection)
2025-05-28 13:49:39 +0200dhil(~dhil@5.151.29.137) (Ping timeout: 260 seconds)
2025-05-28 13:49:50 +0200sabathan2(~sabathan@amarseille-159-1-12-107.w86-203.abo.wanadoo.fr)
2025-05-28 13:51:58 +0200shaeto(~Shaeto@94.25.234.207) (Ping timeout: 276 seconds)
2025-05-28 13:53:56 +0200shaeto(~Shaeto@94.25.234.139)
2025-05-28 13:56:37 +0200spk-Guest24(~spk-Guest@2405:201:e02d:902f:47b2:524d:9d9e:d2f4)
2025-05-28 13:58:48 +0200sabathan2(~sabathan@amarseille-159-1-12-107.w86-203.abo.wanadoo.fr) (Remote host closed the connection)
2025-05-28 13:59:08 +0200sabathan2(~sabathan@amarseille-159-1-12-107.w86-203.abo.wanadoo.fr)
2025-05-28 14:03:39 +0200 <kaol> Lens seem to compose the wrong way to me. Writing the outermost thing first always trips me. In every other context the first function is associated with the return value.
2025-05-28 14:09:03 +0200poscat0x04(~poscat@user/poscat) poscat
2025-05-28 14:09:48 +0200sabathan2(~sabathan@amarseille-159-1-12-107.w86-203.abo.wanadoo.fr) (Remote host closed the connection)
2025-05-28 14:10:11 +0200sabathan2(~sabathan@amarseille-159-1-12-107.w86-203.abo.wanadoo.fr)
2025-05-28 14:12:14 +0200poscat(~poscat@user/poscat) (Ping timeout: 265 seconds)
2025-05-28 14:14:26 +0200ljdarj(~Thunderbi@user/ljdarj) ljdarj
2025-05-28 14:16:03 +0200ljdarj1(~Thunderbi@user/ljdarj) ljdarj
2025-05-28 14:17:33 +0200Frostillicus(~Frostilli@pool-71-174-119-69.bstnma.fios.verizon.net) (Ping timeout: 265 seconds)
2025-05-28 14:18:29 +0200ljdarj(~Thunderbi@user/ljdarj) (Ping timeout: 248 seconds)
2025-05-28 14:18:29 +0200ljdarj1ljdarj
2025-05-28 14:19:52 +0200sabathan2(~sabathan@amarseille-159-1-12-107.w86-203.abo.wanadoo.fr) (Read error: Connection reset by peer)
2025-05-28 14:20:00 +0200LainIwakura(~LainIwaku@user/LainIwakura) (Quit: Client closed)
2025-05-28 14:20:15 +0200sabathan2(~sabathan@amarseille-159-1-12-107.w86-203.abo.wanadoo.fr)
2025-05-28 14:21:50 +0200ljdarj1(~Thunderbi@user/ljdarj) ljdarj
2025-05-28 14:24:59 +0200ljdarj(~Thunderbi@user/ljdarj) (Ping timeout: 245 seconds)
2025-05-28 14:24:59 +0200ljdarj1ljdarj
2025-05-28 14:25:58 +0200sabathan2(~sabathan@amarseille-159-1-12-107.w86-203.abo.wanadoo.fr) (Remote host closed the connection)
2025-05-28 14:26:19 +0200sabathan2(~sabathan@amarseille-159-1-12-107.w86-203.abo.wanadoo.fr)
2025-05-28 14:27:42 +0200CiaoSen(~Jura@2a02:8071:64e1:da0:5a47:caff:fe78:33db) (Ping timeout: 265 seconds)
2025-05-28 14:29:43 +0200haritz(~hrtz@152.37.64.162)
2025-05-28 14:29:43 +0200haritz(~hrtz@152.37.64.162) (Changing host)
2025-05-28 14:29:43 +0200haritz(~hrtz@user/haritz) haritz
2025-05-28 14:31:07 +0200JuanDaugherty(~juan@user/JuanDaugherty) (Quit: praxis.meansofproduction.biz (juan@acm.org))
2025-05-28 14:32:04 +0200sabathan2(~sabathan@amarseille-159-1-12-107.w86-203.abo.wanadoo.fr) (Remote host closed the connection)
2025-05-28 14:32:26 +0200sabathan2(~sabathan@amarseille-159-1-12-107.w86-203.abo.wanadoo.fr)
2025-05-28 14:32:35 +0200Frostillicus(~Frostilli@pool-71-174-119-69.bstnma.fios.verizon.net)
2025-05-28 14:36:13 +0200jespada(~jespada@179.26.252.87) jespada
2025-05-28 14:38:01 +0200sabathan2(~sabathan@amarseille-159-1-12-107.w86-203.abo.wanadoo.fr) (Remote host closed the connection)
2025-05-28 14:38:24 +0200sabathan2(~sabathan@amarseille-159-1-12-107.w86-203.abo.wanadoo.fr)
2025-05-28 14:39:54 +0200spk-Guest24(~spk-Guest@2405:201:e02d:902f:47b2:524d:9d9e:d2f4) (Quit: Client closed)
2025-05-28 14:44:52 +0200sabathan2(~sabathan@amarseille-159-1-12-107.w86-203.abo.wanadoo.fr) (Remote host closed the connection)
2025-05-28 14:45:12 +0200sabathan2(~sabathan@amarseille-159-1-12-107.w86-203.abo.wanadoo.fr)
2025-05-28 14:52:02 +0200sabathan2(~sabathan@amarseille-159-1-12-107.w86-203.abo.wanadoo.fr) (Remote host closed the connection)
2025-05-28 14:52:23 +0200sabathan2(~sabathan@amarseille-159-1-12-107.w86-203.abo.wanadoo.fr)
2025-05-28 14:57:02 +0200kuribas(~user@ip-188-118-57-242.reverse.destiny.be) kuribas
2025-05-28 14:59:57 +0200ljdarj1(~Thunderbi@user/ljdarj) ljdarj
2025-05-28 15:01:10 +0200ljdarj(~Thunderbi@user/ljdarj) (Ping timeout: 268 seconds)
2025-05-28 15:01:10 +0200ljdarj1ljdarj
2025-05-28 15:02:16 +0200sabathan2(~sabathan@amarseille-159-1-12-107.w86-203.abo.wanadoo.fr) (Remote host closed the connection)
2025-05-28 15:02:41 +0200sabathan2(~sabathan@amarseille-159-1-12-107.w86-203.abo.wanadoo.fr)
2025-05-28 15:12:08 +0200sabathan2(~sabathan@amarseille-159-1-12-107.w86-203.abo.wanadoo.fr) (Remote host closed the connection)
2025-05-28 15:12:30 +0200sabathan2(~sabathan@amarseille-159-1-12-107.w86-203.abo.wanadoo.fr)
2025-05-28 15:13:08 +0200ljdarj(~Thunderbi@user/ljdarj) (Ping timeout: 265 seconds)
2025-05-28 15:17:54 +0200ljdarj(~Thunderbi@user/ljdarj) ljdarj
2025-05-28 15:19:31 +0200lortabac(~lortabac@2a01:e0a:541:b8f0:55ab:e185:7f81:54a4) (Ping timeout: 252 seconds)
2025-05-28 15:20:21 +0200sabathan2(~sabathan@amarseille-159-1-12-107.w86-203.abo.wanadoo.fr) (Remote host closed the connection)
2025-05-28 15:20:44 +0200sabathan2(~sabathan@amarseille-159-1-12-107.w86-203.abo.wanadoo.fr)
2025-05-28 15:28:13 +0200sabathan2(~sabathan@amarseille-159-1-12-107.w86-203.abo.wanadoo.fr) (Remote host closed the connection)
2025-05-28 15:28:35 +0200sabathan2(~sabathan@amarseille-159-1-12-107.w86-203.abo.wanadoo.fr)
2025-05-28 15:34:52 +0200lortabac(~lortabac@2a0d:e487:123f:100e:3741:2f3f:e8f9:e593) lortabac
2025-05-28 15:35:46 +0200sabathan2(~sabathan@amarseille-159-1-12-107.w86-203.abo.wanadoo.fr) (Remote host closed the connection)
2025-05-28 15:36:08 +0200sabathan2(~sabathan@amarseille-159-1-12-107.w86-203.abo.wanadoo.fr)
2025-05-28 15:42:49 +0200sabathan2(~sabathan@amarseille-159-1-12-107.w86-203.abo.wanadoo.fr) (Remote host closed the connection)
2025-05-28 15:43:10 +0200sabathan2(~sabathan@amarseille-159-1-12-107.w86-203.abo.wanadoo.fr)
2025-05-28 15:49:47 +0200sabathan2(~sabathan@amarseille-159-1-12-107.w86-203.abo.wanadoo.fr) (Remote host closed the connection)
2025-05-28 15:50:07 +0200sabathan2(~sabathan@amarseille-159-1-12-107.w86-203.abo.wanadoo.fr)
2025-05-28 15:56:29 +0200gorignak(~gorignak@user/gorignak) (Quit: quit)
2025-05-28 16:05:49 +0200jespada(~jespada@179.26.252.87) (Ping timeout: 245 seconds)
2025-05-28 16:06:25 +0200sabathan2(~sabathan@amarseille-159-1-12-107.w86-203.abo.wanadoo.fr) (Remote host closed the connection)
2025-05-28 16:06:36 +0200CiaoSen(~Jura@2a02:8071:64e1:da0:5a47:caff:fe78:33db) CiaoSen
2025-05-28 16:06:46 +0200sabathan2(~sabathan@amarseille-159-1-12-107.w86-203.abo.wanadoo.fr)
2025-05-28 16:07:52 +0200ubert(~Thunderbi@2a02:8109:abb3:7000:b3bd:bf5a:1fc5:21e8) (Remote host closed the connection)
2025-05-28 16:08:25 +0200jespada(~jespada@179.26.252.87) jespada
2025-05-28 16:11:19 +0200gorignak(~gorignak@user/gorignak) gorignak
2025-05-28 16:14:27 +0200sabathan2(~sabathan@amarseille-159-1-12-107.w86-203.abo.wanadoo.fr) (Remote host closed the connection)
2025-05-28 16:14:48 +0200sabathan2(~sabathan@amarseille-159-1-12-107.w86-203.abo.wanadoo.fr)
2025-05-28 16:16:36 +0200mange(~user@user/mange) (Quit: Zzz...)
2025-05-28 16:20:32 +0200craunts7(~craunts@136.158.8.87)
2025-05-28 16:22:27 +0200dhil(~dhil@5.151.29.138) dhil
2025-05-28 16:22:59 +0200sabathan2(~sabathan@amarseille-159-1-12-107.w86-203.abo.wanadoo.fr) (Remote host closed the connection)
2025-05-28 16:23:11 +0200tromp(~textual@2001:1c00:3487:1b00:6079:2a03:d656:1a2e) (Quit: My iMac has gone to sleep. ZZZzzz…)
2025-05-28 16:23:19 +0200sabathan2(~sabathan@amarseille-159-1-12-107.w86-203.abo.wanadoo.fr)
2025-05-28 16:25:27 +0200Frostillicus(~Frostilli@pool-71-174-119-69.bstnma.fios.verizon.net) (Ping timeout: 276 seconds)
2025-05-28 16:30:33 +0200Frostillicus(~Frostilli@pool-71-174-119-69.bstnma.fios.verizon.net)
2025-05-28 16:37:56 +0200sabathan2(~sabathan@amarseille-159-1-12-107.w86-203.abo.wanadoo.fr) (Remote host closed the connection)
2025-05-28 16:37:56 +0200lortabac(~lortabac@2a0d:e487:123f:100e:3741:2f3f:e8f9:e593) (Ping timeout: 244 seconds)
2025-05-28 16:38:16 +0200sabathan2(~sabathan@amarseille-159-1-12-107.w86-203.abo.wanadoo.fr)
2025-05-28 16:42:38 +0200 <EvanR> ok I'll bite. What exactly is "a singleton"
2025-05-28 16:43:25 +0200 <EvanR> is data T a where A :: T Int; B :: T Float a singleton
2025-05-28 16:43:41 +0200 <EvanR> is data Z (no constructors) a singleton
2025-05-28 16:44:35 +0200 <nitrix> You need a single instance and it needs to break referential transparency, so unsafePerformIO + IORef.
2025-05-28 16:46:16 +0200 <nitrix> I don't think the classical Singleton is reproducible in Haskell. StateT perhaps, but it's not as "globally" accessible as a singleton normally is.
2025-05-28 16:46:26 +0200 <EvanR> no that's C++ singleton
2025-05-28 16:47:02 +0200 <nitrix> Or Java's singleton, or PHP's singleton, or ...
2025-05-28 16:47:06 +0200 <EvanR> https://hackage.haskell.org/package/singletons
2025-05-28 16:47:07 +0200 <Leary> EvanR: A type with a single non-bottom value, or that value, the two being loosely identified.
2025-05-28 16:47:17 +0200tromp(~textual@2001:1c00:3487:1b00:5da2:ba0:a157:afb4)
2025-05-28 16:47:28 +0200 <nitrix> Dependently typed, ah. Well that's an unfortunate name.
2025-05-28 16:48:05 +0200 <EvanR> Z above has no values so it's not a singleton? T Int has "one value" so it's a singleton?
2025-05-28 16:48:12 +0200 <Leary> Yes.
2025-05-28 16:48:43 +0200sabathan2(~sabathan@amarseille-159-1-12-107.w86-203.abo.wanadoo.fr) (Remote host closed the connection)
2025-05-28 16:48:44 +0200 <EvanR> and A and B "are singletons" too, despite being a different species of thing?
2025-05-28 16:48:44 +0200 <Leary> It comes (I presume) from "singleton set", which is any set of cardinality 1.
2025-05-28 16:49:02 +0200sabathan2(~sabathan@amarseille-159-1-12-107.w86-203.abo.wanadoo.fr)
2025-05-28 16:49:06 +0200 <Leary> When "loosely identifying", yes.
2025-05-28 16:49:12 +0200 <EvanR> wild
2025-05-28 16:49:37 +0200 <EvanR> since T has multiple constructors I wouldn't have guess it was singleton related
2025-05-28 16:49:47 +0200 <Leary> I mean, the whole idea is to pretend we have values at the type level.
2025-05-28 16:50:06 +0200 <EvanR> what about data kinds
2025-05-28 16:50:10 +0200Shsl-Junko-POSER(~Shsl-Junk@50.235.208.178)
2025-05-28 16:50:14 +0200 <EvanR> do those count as singletons
2025-05-28 16:50:17 +0200 <EvanR> despite not being values
2025-05-28 16:50:34 +0200spew(~spew@135.233.119.40) ()
2025-05-28 16:51:56 +0200 <EvanR> I'll stop asking questions and just call out absurdity if I find a singleton has cardinality other than 1
2025-05-28 16:52:04 +0200 <Leary> Uhh. They're kinda orthogonal, just a useful tool to actually create some structure at the type level.
2025-05-28 16:53:32 +0200 <EvanR> well it corresponds directly to "pretend we have values at type level" since it literally promotes values to types
2025-05-28 16:55:56 +0200 <Leary> They relate on a conceptual level, but are independent of actual singleton-ness.
2025-05-28 16:56:10 +0200 <EvanR> nitrix, instead of unsafePerformIO + IORef, try (carefully implemented unsafePerformIO + IVar) then it doesn't break RT
2025-05-28 16:56:43 +0200 <nitrix> o:
2025-05-28 16:57:31 +0200 <EvanR> if I wrote data T a where A :: T Int; B :: T Float; C :: T Int, would I be violating singleton-ness, and are there consequences
2025-05-28 16:57:52 +0200 <EvanR> what do I break
2025-05-28 16:57:59 +0200sabathan2(~sabathan@amarseille-159-1-12-107.w86-203.abo.wanadoo.fr) (Remote host closed the connection)
2025-05-28 16:58:09 +0200 <Leary> "singletonicity"
2025-05-28 16:58:21 +0200sabathan2(~sabathan@amarseille-159-1-12-107.w86-203.abo.wanadoo.fr)
2025-05-28 16:58:23 +0200Shsl-Junko-POSER(~Shsl-Junk@50.235.208.178) (Quit: Client closed)
2025-05-28 16:58:44 +0200 <EvanR> it seems like I could still implement TestEquality correctly on T
2025-05-28 16:59:18 +0200 <EvanR> or in a way that doesn't explode
2025-05-28 16:59:37 +0200amadaluzia(~amadaluzi@user/amadaluzia) (Ping timeout: 252 seconds)
2025-05-28 17:00:30 +0200 <Leary> It just means that `A` and `C` aren't distinguished on the type level, so the information of which one you're dealing with isn't there, and you can't have the compiler verify facts about it.
2025-05-28 17:00:56 +0200 <Leary> It's just jumping out of pretend dependent-types land and back into regular Haskell; nothing's gonna explode.
2025-05-28 17:03:13 +0200 <EvanR> nice
2025-05-28 17:04:55 +0200sabathan2(~sabathan@amarseille-159-1-12-107.w86-203.abo.wanadoo.fr) (Remote host closed the connection)
2025-05-28 17:05:15 +0200Frostillicus(~Frostilli@pool-71-174-119-69.bstnma.fios.verizon.net) (Ping timeout: 260 seconds)
2025-05-28 17:05:20 +0200sabathan2(~sabathan@amarseille-159-1-12-107.w86-203.abo.wanadoo.fr)
2025-05-28 17:05:30 +0200dhil(~dhil@5.151.29.138) (Ping timeout: 252 seconds)
2025-05-28 17:10:51 +0200sabathan2(~sabathan@amarseille-159-1-12-107.w86-203.abo.wanadoo.fr) (Remote host closed the connection)
2025-05-28 17:11:13 +0200sabathan2(~sabathan@amarseille-159-1-12-107.w86-203.abo.wanadoo.fr)
2025-05-28 17:12:58 +0200tromp(~textual@2001:1c00:3487:1b00:5da2:ba0:a157:afb4) (Quit: My iMac has gone to sleep. ZZZzzz…)
2025-05-28 17:14:46 +0200machinedgod(~machinedg@d108-173-18-100.abhsia.telus.net) (Ping timeout: 276 seconds)
2025-05-28 17:17:03 +0200sabathan2(~sabathan@amarseille-159-1-12-107.w86-203.abo.wanadoo.fr) (Remote host closed the connection)
2025-05-28 17:17:27 +0200sabathan2(~sabathan@amarseille-159-1-12-107.w86-203.abo.wanadoo.fr)
2025-05-28 17:21:09 +0200Frostillicus(~Frostilli@pool-71-174-119-69.bstnma.fios.verizon.net)
2025-05-28 17:21:36 +0200lortabac(~lortabac@2a01:e0a:541:b8f0:55ab:e185:7f81:54a4) lortabac
2025-05-28 17:22:19 +0200tromp(~textual@2001:1c00:3487:1b00:5da2:ba0:a157:afb4)
2025-05-28 17:22:46 +0200sabathan2(~sabathan@amarseille-159-1-12-107.w86-203.abo.wanadoo.fr) (Remote host closed the connection)
2025-05-28 17:23:10 +0200sabathan2(~sabathan@amarseille-159-1-12-107.w86-203.abo.wanadoo.fr)
2025-05-28 17:24:56 +0200lortabac(~lortabac@2a01:e0a:541:b8f0:55ab:e185:7f81:54a4) (Client Quit)
2025-05-28 17:25:56 +0200fp(~Thunderbi@2001:708:20:1406::1370) (Ping timeout: 272 seconds)
2025-05-28 17:28:48 +0200sabathan2(~sabathan@amarseille-159-1-12-107.w86-203.abo.wanadoo.fr) (Remote host closed the connection)
2025-05-28 17:29:10 +0200sabathan2(~sabathan@amarseille-159-1-12-107.w86-203.abo.wanadoo.fr)
2025-05-28 17:37:21 +0200sabathan2(~sabathan@amarseille-159-1-12-107.w86-203.abo.wanadoo.fr) (Remote host closed the connection)
2025-05-28 17:37:42 +0200sabathan2(~sabathan@amarseille-159-1-12-107.w86-203.abo.wanadoo.fr)
2025-05-28 17:44:21 +0200sabathan2(~sabathan@amarseille-159-1-12-107.w86-203.abo.wanadoo.fr) (Remote host closed the connection)
2025-05-28 17:44:40 +0200sabathan2(~sabathan@amarseille-159-1-12-107.w86-203.abo.wanadoo.fr)
2025-05-28 17:46:37 +0200spk-Guest24(~spk-Guest@2405:201:e02d:902f:47b2:524d:9d9e:d2f4)
2025-05-28 17:52:57 +0200sabathan2(~sabathan@amarseille-159-1-12-107.w86-203.abo.wanadoo.fr) (Remote host closed the connection)
2025-05-28 17:53:18 +0200sabathan2(~sabathan@amarseille-159-1-12-107.w86-203.abo.wanadoo.fr)
2025-05-28 17:56:22 +0200ljdarj(~Thunderbi@user/ljdarj) (Ping timeout: 276 seconds)
2025-05-28 18:01:05 +0200sabathan2(~sabathan@amarseille-159-1-12-107.w86-203.abo.wanadoo.fr) (Remote host closed the connection)
2025-05-28 18:01:26 +0200sabathan2(~sabathan@amarseille-159-1-12-107.w86-203.abo.wanadoo.fr)
2025-05-28 18:05:46 +0200ljdarj(~Thunderbi@user/ljdarj) ljdarj
2025-05-28 18:09:38 +0200turlando(~turlando@user/turlando) ()
2025-05-28 18:10:29 +0200ljdarj(~Thunderbi@user/ljdarj) (Ping timeout: 268 seconds)
2025-05-28 18:11:09 +0200sabathan2(~sabathan@amarseille-159-1-12-107.w86-203.abo.wanadoo.fr) (Remote host closed the connection)
2025-05-28 18:11:30 +0200sabathan2(~sabathan@amarseille-159-1-12-107.w86-203.abo.wanadoo.fr)
2025-05-28 18:15:34 +0200tromp(~textual@2001:1c00:3487:1b00:5da2:ba0:a157:afb4) (Quit: My iMac has gone to sleep. ZZZzzz…)
2025-05-28 18:18:07 +0200turlando(~turlando@user/turlando) turlando
2025-05-28 18:23:58 +0200merijn(~merijn@77.242.116.146) (Ping timeout: 252 seconds)
2025-05-28 18:25:05 +0200sabathan2(~sabathan@amarseille-159-1-12-107.w86-203.abo.wanadoo.fr) (Remote host closed the connection)
2025-05-28 18:25:26 +0200sabathan2(~sabathan@amarseille-159-1-12-107.w86-203.abo.wanadoo.fr)
2025-05-28 18:26:01 +0200tromp(~textual@2001:1c00:3487:1b00:5da2:ba0:a157:afb4)
2025-05-28 18:31:05 +0200sabathan2(~sabathan@amarseille-159-1-12-107.w86-203.abo.wanadoo.fr) (Remote host closed the connection)
2025-05-28 18:31:25 +0200sabathan2(~sabathan@amarseille-159-1-12-107.w86-203.abo.wanadoo.fr)
2025-05-28 18:37:57 +0200chele(~chele@user/chele) (Remote host closed the connection)
2025-05-28 18:38:55 +0200kuribas(~user@ip-188-118-57-242.reverse.destiny.be) (Remote host closed the connection)
2025-05-28 18:40:24 +0200ft(~ft@p3e9bc106.dip0.t-ipconnect.de) ft
2025-05-28 18:41:14 +0200RedFlamingos(~RedFlamin@user/RedFlamingos) (Quit: RedFlamingos)
2025-05-28 18:43:35 +0200sabathan2(~sabathan@amarseille-159-1-12-107.w86-203.abo.wanadoo.fr) (Remote host closed the connection)
2025-05-28 18:43:58 +0200sabathan2(~sabathan@amarseille-159-1-12-107.w86-203.abo.wanadoo.fr)
2025-05-28 18:44:59 +0200lxsameer(~lxsameer@Serene/lxsameer) (Ping timeout: 245 seconds)
2025-05-28 18:47:30 +0200 <absence> Is there something I can add to test1 to require that constraints on g should "propagate" to f, so that test3 compiles? https://play.haskell.org/saved/5pSDuinu
2025-05-28 18:48:42 +0200 <geekosaur> you would need to specify the `Functor` constraint
2025-05-28 18:48:43 +0200jle`(~jle`@2603:8001:3b00:11:cbf7:2c80:8f8:480c) (Ping timeout: 268 seconds)
2025-05-28 18:48:59 +0200 <absence> That's what I was hoping to avoid...
2025-05-28 18:49:16 +0200jle`(~jle`@2603:8001:3b00:11:3b41:97f4:1903:c327) jle`
2025-05-28 18:49:34 +0200 <geekosaur> you cannot say "all possible constraints", because in general Haskell must provide a witness to the required constraint (in ghc this witness is the instance record containing the specific method definitions)
2025-05-28 18:51:39 +0200sabathan2(~sabathan@amarseille-159-1-12-107.w86-203.abo.wanadoo.fr) (Remote host closed the connection)
2025-05-28 18:52:00 +0200sabathan2(~sabathan@amarseille-159-1-12-107.w86-203.abo.wanadoo.fr)
2025-05-28 18:52:12 +0200Frostillicus(~Frostilli@pool-71-174-119-69.bstnma.fios.verizon.net) (Ping timeout: 252 seconds)
2025-05-28 18:54:37 +0200 <absence> I had imagined that test3 would pass a dictionary for Functor f to test1, which then would somehow forward it, and it would all check out. Is there something I'm missing that makes it impossible in general, or is it "just" a matter of Haskell not having the syntax to express it?
2025-05-28 18:57:56 +0200 <geekosaur> that's just not how typeclasses work
2025-05-28 18:58:44 +0200 <geekosaur> there are various advanced tricks possible, but in general typeclasses just aren't what you want here
2025-05-28 18:59:46 +0200 <geekosaur> you can use `IfCxt` to reify `Dict`s IIRC, and then you can do some things with them, but there are strict limits
2025-05-28 19:01:18 +0200Frostillicus(~Frostilli@pool-71-174-119-69.bstnma.fios.verizon.net)
2025-05-28 19:06:39 +0200 <geekosaur> interestingly, about the time you asked this a full answer appeared on the Discord Haskell channel https://paste.tomsmeding.com/40pDrdx2
2025-05-28 19:07:26 +0200sabathan2(~sabathan@amarseille-159-1-12-107.w86-203.abo.wanadoo.fr) (Remote host closed the connection)
2025-05-28 19:07:48 +0200sabathan2(~sabathan@amarseille-159-1-12-107.w86-203.abo.wanadoo.fr)
2025-05-28 19:10:20 +0200 <absence> Hmm I see, thanks!
2025-05-28 19:17:18 +0200sabathan2(~sabathan@amarseille-159-1-12-107.w86-203.abo.wanadoo.fr) (Remote host closed the connection)
2025-05-28 19:17:39 +0200sabathan2(~sabathan@amarseille-159-1-12-107.w86-203.abo.wanadoo.fr)
2025-05-28 19:23:22 +0200dhil(~dhil@5.151.29.137) dhil
2025-05-28 19:25:21 +0200sabathan2(~sabathan@amarseille-159-1-12-107.w86-203.abo.wanadoo.fr) (Remote host closed the connection)
2025-05-28 19:25:43 +0200sabathan2(~sabathan@amarseille-159-1-12-107.w86-203.abo.wanadoo.fr)
2025-05-28 19:26:09 +0200CiaoSen(~Jura@2a02:8071:64e1:da0:5a47:caff:fe78:33db) (Ping timeout: 276 seconds)
2025-05-28 19:31:38 +0200sabathan2(~sabathan@amarseille-159-1-12-107.w86-203.abo.wanadoo.fr) (Remote host closed the connection)
2025-05-28 19:32:00 +0200sabathan2(~sabathan@amarseille-159-1-12-107.w86-203.abo.wanadoo.fr)
2025-05-28 19:32:12 +0200Frostillicus(~Frostilli@pool-71-174-119-69.bstnma.fios.verizon.net) (Ping timeout: 265 seconds)
2025-05-28 19:35:10 +0200peterbecich(~Thunderbi@syn-047-229-123-186.res.spectrum.com) peterbecich
2025-05-28 19:37:54 +0200sabathan2(~sabathan@amarseille-159-1-12-107.w86-203.abo.wanadoo.fr) (Remote host closed the connection)
2025-05-28 19:38:14 +0200sabathan2(~sabathan@amarseille-159-1-12-107.w86-203.abo.wanadoo.fr)
2025-05-28 19:44:03 +0200sabathan2(~sabathan@amarseille-159-1-12-107.w86-203.abo.wanadoo.fr) (Remote host closed the connection)
2025-05-28 19:44:28 +0200sabathan2(~sabathan@amarseille-159-1-12-107.w86-203.abo.wanadoo.fr)
2025-05-28 19:48:06 +0200lxsameer(~lxsameer@Serene/lxsameer) lxsameer
2025-05-28 19:50:26 +0200pavonia(~user@user/siracusa) siracusa
2025-05-28 19:53:39 +0200peterbecich(~Thunderbi@syn-047-229-123-186.res.spectrum.com) (Ping timeout: 260 seconds)
2025-05-28 19:53:42 +0200sabathan2(~sabathan@amarseille-159-1-12-107.w86-203.abo.wanadoo.fr) (Remote host closed the connection)
2025-05-28 19:54:02 +0200sabathan2(~sabathan@amarseille-159-1-12-107.w86-203.abo.wanadoo.fr)
2025-05-28 19:54:44 +0200ljdarj(~Thunderbi@user/ljdarj) ljdarj
2025-05-28 19:55:07 +0200bitdex(~bitdex@gateway/tor-sasl/bitdex) bitdex
2025-05-28 19:58:33 +0200olliep(~ollie@2a0a:ef40:19e:b02:5af:d167:b1b4:7a80) (Ping timeout: 252 seconds)
2025-05-28 20:04:14 +0200Tuplanolla(~Tuplanoll@91-159-69-59.elisa-laajakaista.fi) Tuplanolla
2025-05-28 20:04:42 +0200shaeto(~Shaeto@94.25.234.139) (Quit: WeeChat 4.1.1)
2025-05-28 20:05:51 +0200sabathan2(~sabathan@amarseille-159-1-12-107.w86-203.abo.wanadoo.fr) (Remote host closed the connection)
2025-05-28 20:06:11 +0200tzh(~tzh@c-76-115-131-146.hsd1.or.comcast.net) tzh
2025-05-28 20:06:14 +0200sabathan2(~sabathan@amarseille-159-1-12-107.w86-203.abo.wanadoo.fr)
2025-05-28 20:07:39 +0200 <EvanR> should this be possible or impossible :: (forall a . Elem a as -> b) -> Int -> Maybe b
2025-05-28 20:07:59 +0200 <EvanR> I guess it's impossible because it seems to want the result being Nothing or Just to depend on the choice of as
2025-05-28 20:10:13 +0200jmcantrell(~weechat@user/jmcantrell) jmcantrell
2025-05-28 20:12:08 +0200sabathan2(~sabathan@amarseille-159-1-12-107.w86-203.abo.wanadoo.fr) (Remote host closed the connection)
2025-05-28 20:12:31 +0200sabathan2(~sabathan@amarseille-159-1-12-107.w86-203.abo.wanadoo.fr)
2025-05-28 20:13:53 +0200spk-Guest24(~spk-Guest@2405:201:e02d:902f:47b2:524d:9d9e:d2f4) (Quit: Client closed)
2025-05-28 20:14:34 +0200sprotte24(~sprotte24@p200300d16f3c6b007804d0f3f760a6e1.dip0.t-ipconnect.de)
2025-05-28 20:19:49 +0200sabathan2(~sabathan@amarseille-159-1-12-107.w86-203.abo.wanadoo.fr) (Remote host closed the connection)
2025-05-28 20:20:13 +0200sabathan2(~sabathan@amarseille-159-1-12-107.w86-203.abo.wanadoo.fr)
2025-05-28 20:26:21 +0200sabathan2(~sabathan@amarseille-159-1-12-107.w86-203.abo.wanadoo.fr) (Remote host closed the connection)
2025-05-28 20:26:43 +0200sabathan2(~sabathan@amarseille-159-1-12-107.w86-203.abo.wanadoo.fr)
2025-05-28 20:29:08 +0200tccq(~user@user/tccq) tccq
2025-05-28 20:29:42 +0200tabaqui(~tabaqui@167.71.80.236) tabaqui
2025-05-28 20:31:48 +0200JuanDaugherty(~juan@user/JuanDaugherty) JuanDaugherty
2025-05-28 20:32:44 +0200sabathan2(~sabathan@amarseille-159-1-12-107.w86-203.abo.wanadoo.fr) (Remote host closed the connection)
2025-05-28 20:33:03 +0200sabathan2(~sabathan@amarseille-159-1-12-107.w86-203.abo.wanadoo.fr)
2025-05-28 20:34:59 +0200chexum(~quassel@gateway/tor-sasl/chexum) chexum
2025-05-28 20:38:17 +0200ljdarj1(~Thunderbi@user/ljdarj) ljdarj
2025-05-28 20:39:08 +0200merijn(~merijn@host-vr.cgnat-g.v4.dfn.nl) merijn
2025-05-28 20:39:13 +0200lxsameer(~lxsameer@Serene/lxsameer) (Ping timeout: 244 seconds)
2025-05-28 20:39:42 +0200sabathan2(~sabathan@amarseille-159-1-12-107.w86-203.abo.wanadoo.fr) (Remote host closed the connection)
2025-05-28 20:40:05 +0200sabathan2(~sabathan@amarseille-159-1-12-107.w86-203.abo.wanadoo.fr)
2025-05-28 20:40:15 +0200ljdarj(~Thunderbi@user/ljdarj) (Ping timeout: 244 seconds)
2025-05-28 20:40:15 +0200ljdarj1ljdarj
2025-05-28 20:42:51 +0200tccq(~user@user/tccq) (Ping timeout: 252 seconds)
2025-05-28 20:43:24 +0200chexum(~quassel@gateway/tor-sasl/chexum) (Ping timeout: 264 seconds)
2025-05-28 20:44:43 +0200merijn(~merijn@host-vr.cgnat-g.v4.dfn.nl) (Ping timeout: 276 seconds)
2025-05-28 20:46:53 +0200sabathan2(~sabathan@amarseille-159-1-12-107.w86-203.abo.wanadoo.fr) (Remote host closed the connection)
2025-05-28 20:47:13 +0200sabathan2(~sabathan@amarseille-159-1-12-107.w86-203.abo.wanadoo.fr)
2025-05-28 20:51:31 +0200weary-traveler(~user@user/user363627) (Remote host closed the connection)
2025-05-28 20:52:09 +0200rvalue-(~rvalue@user/rvalue) rvalue
2025-05-28 20:52:57 +0200rvalue(~rvalue@user/rvalue) (Ping timeout: 244 seconds)
2025-05-28 20:53:47 +0200sabathan2(~sabathan@amarseille-159-1-12-107.w86-203.abo.wanadoo.fr) (Remote host closed the connection)
2025-05-28 20:54:11 +0200sabathan2(~sabathan@amarseille-159-1-12-107.w86-203.abo.wanadoo.fr)
2025-05-28 20:54:56 +0200merijn(~merijn@host-vr.cgnat-g.v4.dfn.nl) merijn
2025-05-28 20:57:09 +0200rvalue-rvalue
2025-05-28 20:58:52 +0200Everything(~Everythin@77.120.244.38) (Quit: leaving)
2025-05-28 20:59:48 +0200sabathan2(~sabathan@amarseille-159-1-12-107.w86-203.abo.wanadoo.fr) (Remote host closed the connection)
2025-05-28 21:00:04 +0200caconym7(~caconym@user/caconym) (Quit: bye)
2025-05-28 21:00:09 +0200merijn(~merijn@host-vr.cgnat-g.v4.dfn.nl) (Ping timeout: 260 seconds)
2025-05-28 21:00:10 +0200sabathan2(~sabathan@amarseille-159-1-12-107.w86-203.abo.wanadoo.fr)
2025-05-28 21:00:44 +0200caconym7(~caconym@user/caconym) caconym
2025-05-28 21:07:55 +0200sabathan2(~sabathan@amarseille-159-1-12-107.w86-203.abo.wanadoo.fr) (Remote host closed the connection)
2025-05-28 21:08:19 +0200sabathan2(~sabathan@amarseille-159-1-12-107.w86-203.abo.wanadoo.fr)
2025-05-28 21:10:42 +0200merijn(~merijn@host-vr.cgnat-g.v4.dfn.nl) merijn
2025-05-28 21:15:02 +0200sabathan2(~sabathan@amarseille-159-1-12-107.w86-203.abo.wanadoo.fr) (Remote host closed the connection)
2025-05-28 21:15:24 +0200sabathan2(~sabathan@amarseille-159-1-12-107.w86-203.abo.wanadoo.fr)
2025-05-28 21:15:34 +0200merijn(~merijn@host-vr.cgnat-g.v4.dfn.nl) (Ping timeout: 252 seconds)
2025-05-28 21:19:24 +0200pierrot(~pi@user/pierrot) (Quit: ZNC 1.8.2 - http://znc.in)
2025-05-28 21:19:48 +0200pierrot(~pi@user/pierrot) pierrot
2025-05-28 21:25:31 +0200JuanDaughertyColinRobinson
2025-05-28 21:25:56 +0200sabathan2(~sabathan@amarseille-159-1-12-107.w86-203.abo.wanadoo.fr) (Remote host closed the connection)
2025-05-28 21:26:17 +0200sabathan2(~sabathan@amarseille-159-1-12-107.w86-203.abo.wanadoo.fr)
2025-05-28 21:26:31 +0200merijn(~merijn@host-vr.cgnat-g.v4.dfn.nl) merijn
2025-05-28 21:31:41 +0200merijn(~merijn@host-vr.cgnat-g.v4.dfn.nl) (Ping timeout: 272 seconds)
2025-05-28 21:31:57 +0200sabathan2(~sabathan@amarseille-159-1-12-107.w86-203.abo.wanadoo.fr) (Remote host closed the connection)
2025-05-28 21:32:19 +0200sabathan2(~sabathan@amarseille-159-1-12-107.w86-203.abo.wanadoo.fr)
2025-05-28 21:36:22 +0200peterbecich(~Thunderbi@syn-047-229-123-186.res.spectrum.com) peterbecich
2025-05-28 21:36:33 +0200ColinRobinson(~juan@user/JuanDaugherty) (Quit: praxis.meansofproduction.biz (juan@acm.org))
2025-05-28 21:38:40 +0200dhil(~dhil@5.151.29.137) (Ping timeout: 276 seconds)
2025-05-28 21:39:59 +0200sabathan2(~sabathan@amarseille-159-1-12-107.w86-203.abo.wanadoo.fr) (Remote host closed the connection)
2025-05-28 21:40:21 +0200sabathan2(~sabathan@amarseille-159-1-12-107.w86-203.abo.wanadoo.fr)
2025-05-28 21:42:19 +0200merijn(~merijn@host-vr.cgnat-g.v4.dfn.nl) merijn
2025-05-28 21:46:01 +0200sabathan2(~sabathan@amarseille-159-1-12-107.w86-203.abo.wanadoo.fr) (Remote host closed the connection)
2025-05-28 21:46:22 +0200sabathan2(~sabathan@amarseille-159-1-12-107.w86-203.abo.wanadoo.fr)
2025-05-28 21:47:35 +0200merijn(~merijn@host-vr.cgnat-g.v4.dfn.nl) (Ping timeout: 260 seconds)
2025-05-28 21:54:06 +0200sabathan2(~sabathan@amarseille-159-1-12-107.w86-203.abo.wanadoo.fr) (Remote host closed the connection)
2025-05-28 21:54:27 +0200sabathan2(~sabathan@amarseille-159-1-12-107.w86-203.abo.wanadoo.fr)
2025-05-28 21:55:48 +0200Otong(~Otong@user/Otong) Otong
2025-05-28 21:58:06 +0200merijn(~merijn@host-vr.cgnat-g.v4.dfn.nl) merijn
2025-05-28 21:59:12 +0200sabathan2(~sabathan@amarseille-159-1-12-107.w86-203.abo.wanadoo.fr) (Remote host closed the connection)
2025-05-28 21:59:34 +0200sabathan2(~sabathan@amarseille-159-1-12-107.w86-203.abo.wanadoo.fr)
2025-05-28 22:00:19 +0200Frostillicus(~Frostilli@pool-71-174-119-69.bstnma.fios.verizon.net)
2025-05-28 22:02:04 +0200 <bwe> If I have a function with return type `IO [a]` why can't I use `each :: (Monad m, Foldable f) => f a -> Stream (Of a) m ()` from Streaming.Prelude to produce a stream? https://hackage.haskell.org/package/streaming-0.2.4.0/docs/Streaming-Prelude.html#v:each Is it because IO only returns the list once it has been completely evaluated (even if the list itself is created lazily)?
2025-05-28 22:02:08 +0200sord937(~sord937@gateway/tor-sasl/sord937) (Quit: sord937)
2025-05-28 22:02:54 +0200merijn(~merijn@host-vr.cgnat-g.v4.dfn.nl) (Ping timeout: 245 seconds)
2025-05-28 22:03:55 +0200 <Rembane> That IO isn't Foldable could be a reason
2025-05-28 22:06:07 +0200sabathan2(~sabathan@amarseille-159-1-12-107.w86-203.abo.wanadoo.fr) (Remote host closed the connection)
2025-05-28 22:06:29 +0200sabathan2(~sabathan@amarseille-159-1-12-107.w86-203.abo.wanadoo.fr)
2025-05-28 22:07:38 +0200 <EvanR> function returning IO [a]...
2025-05-28 22:07:43 +0200 <EvanR> "function" isn't foldable
2025-05-28 22:08:21 +0200peterbecich(~Thunderbi@syn-047-229-123-186.res.spectrum.com) (Ping timeout: 248 seconds)
2025-05-28 22:09:11 +0200 <bwe> …then would `g :: Foldable f => IO f a` be it?
2025-05-28 22:09:33 +0200 <EvanR> but also yes, IO [a] will only return a list when the I/O action is over
2025-05-28 22:09:55 +0200 <EvanR> IO only takes 1 argument
2025-05-28 22:10:34 +0200 <EvanR> what is 'f'
2025-05-28 22:10:57 +0200 <EvanR> ok, List
2025-05-28 22:11:01 +0200 <bwe> :)
2025-05-28 22:11:09 +0200 <EvanR> IO (f a) is the correct parens here
2025-05-28 22:11:28 +0200 <bwe> `g :: Foldable f => IO (f a)`
2025-05-28 22:11:46 +0200 <EvanR> that doesn't match the argument type of each
2025-05-28 22:11:50 +0200sabathan2(~sabathan@amarseille-159-1-12-107.w86-203.abo.wanadoo.fr) (Remote host closed the connection)
2025-05-28 22:12:09 +0200sabathan2(~sabathan@amarseille-159-1-12-107.w86-203.abo.wanadoo.fr)
2025-05-28 22:12:26 +0200 <EvanR> (right now there are two 'f's in play)
2025-05-28 22:13:53 +0200merijn(~merijn@host-vr.cgnat-g.v4.dfn.nl) merijn
2025-05-28 22:15:34 +0200 <EvanR> things you can pass into each... list of a, vector of a, Map k of a, Set of a, ...
2025-05-28 22:16:02 +0200 <bwe> S.each <$> g :: IO _ -- S.each takes `f a` and `g` produces a `IO (f a)`
2025-05-28 22:16:16 +0200 <EvanR> ok you fmapped it
2025-05-28 22:16:38 +0200 <EvanR> so it's an IO action producing a Stream
2025-05-28 22:18:10 +0200 <bwe> IO does only return the full list if it's returning a list -- so I cannot run away from switching from inserting a Stream layer into underneath the IO layer, right?
2025-05-28 22:18:43 +0200merijn(~merijn@host-vr.cgnat-g.v4.dfn.nl) (Ping timeout: 244 seconds)
2025-05-28 22:22:04 +0200 <bwe> Why does IO only return the list once it is evaluated completely and not lazily? Why doesn't it stream it by default?
2025-05-28 22:22:27 +0200 <EvanR> it's not up to IO it's up to how you constructed that IO
2025-05-28 22:22:44 +0200 <EvanR> e.g. readFile does produce a lazy I/O list
2025-05-28 22:23:20 +0200 <EvanR> while strict ByteString readFile produces something only after the entire file is read in
2025-05-28 22:23:23 +0200 <bwe> …in that case I could fmap `each` over readFile and I'd be fine?
2025-05-28 22:23:49 +0200 <EvanR> it's fine as long as there are no I/O errors down the line
2025-05-28 22:24:23 +0200sabathan2(~sabathan@amarseille-159-1-12-107.w86-203.abo.wanadoo.fr) (Remote host closed the connection)
2025-05-28 22:24:33 +0200 <bwe> So, any IO will wait for the list to be evaluated completely if constructing the list itself depends on a strict thing?
2025-05-28 22:24:34 +0200Frostillicus(~Frostilli@pool-71-174-119-69.bstnma.fios.verizon.net) (Ping timeout: 245 seconds)
2025-05-28 22:24:44 +0200sabathan2(~sabathan@amarseille-159-1-12-107.w86-203.abo.wanadoo.fr)
2025-05-28 22:25:21 +0200 <EvanR> the list produced by readFile?
2025-05-28 22:25:59 +0200 <EvanR> having a hard time parsing the question precisely
2025-05-28 22:26:28 +0200 <EvanR> there's a lot of details to be assumed in this area
2025-05-28 22:27:18 +0200 <EvanR> yahb is probably capable of demonstrating some phenomena
2025-05-28 22:27:36 +0200 <int-e> unsafeInterleaveIO is a mechanism by which an IO action can be deferred until a particular value is demanded. So readFile :: FilePath -> IO String can return a list that triggers such deferred IO actions.
2025-05-28 22:27:57 +0200anselmschueler(~quassel@user/schuelermine) schuelermine
2025-05-28 22:27:57 +0200 <int-e> despite the fact that the `readFile` IO action itself is complete
2025-05-28 22:28:54 +0200 <int-e> bwe: if you analyze it like that there's no contradiction between "IO [a] will only return a list when the I/O action is over" and `readFile` doing "lazy IO".
2025-05-28 22:29:29 +0200 <int-e> Which I think is the confusion here?
2025-05-28 22:29:33 +0200 <int-e> Context is hard.
2025-05-28 22:29:43 +0200merijn(~merijn@host-vr.cgnat-g.v4.dfn.nl) merijn
2025-05-28 22:29:43 +0200 <EvanR> % (pure (repeat 7) :: IO [Int]) >>= print . take 7
2025-05-28 22:29:43 +0200 <yahb2> [7,7,7,7,7,7,7]
2025-05-28 22:29:58 +0200 <EvanR> just because it's IO doesn't mean the entire list is evaluated ^
2025-05-28 22:30:21 +0200 <EvanR> it's really up to what the IO does
2025-05-28 22:30:23 +0200sabathan2(~sabathan@amarseille-159-1-12-107.w86-203.abo.wanadoo.fr) (Remote host closed the connection)
2025-05-28 22:30:43 +0200sabathan2(~sabathan@amarseille-159-1-12-107.w86-203.abo.wanadoo.fr)
2025-05-28 22:31:47 +0200 <int-e> % import System.IO.Unsafe
2025-05-28 22:31:48 +0200 <yahb2> <no output>
2025-05-28 22:31:55 +0200 <int-e> % let sevens = (:) <$> pure 7 <*> unsafeInterleaveIO sevens in take 7 <$> sevens
2025-05-28 22:31:55 +0200 <yahb2> [7,7,7,7,7,7,7]
2025-05-28 22:32:06 +0200 <int-e> % let sevens = (:) <$> pure 7 <*> sevens in take 7 <$> sevens
2025-05-28 22:32:07 +0200 <yahb2> <interactive>: Unable to commit 1048576 bytes of memory ; <interactive>: Exiting. The system might be out of memory.
2025-05-28 22:34:29 +0200merijn(~merijn@host-vr.cgnat-g.v4.dfn.nl) (Ping timeout: 248 seconds)
2025-05-28 22:37:19 +0200 <EvanR> pure (:) <*> pure 7 <*> sevens, to even get started looking at this list it has two complete 3 obvious IO actions in sequence, and one of them might / does have to do its own IO before it completes, and so on
2025-05-28 22:39:26 +0200 <EvanR> and unsafeInterleaveIO completes early setting up a "promise" to be redeemed by whatever looks at its result next, if anything
2025-05-28 22:41:01 +0200machinedgod(~machinedg@d108-173-18-100.abhsia.telus.net) machinedgod
2025-05-28 22:42:41 +0200sabathan2(~sabathan@amarseille-159-1-12-107.w86-203.abo.wanadoo.fr) (Remote host closed the connection)
2025-05-28 22:43:02 +0200sabathan2(~sabathan@amarseille-159-1-12-107.w86-203.abo.wanadoo.fr)
2025-05-28 22:45:29 +0200merijn(~merijn@host-vr.cgnat-g.v4.dfn.nl) merijn
2025-05-28 22:45:49 +0200 <bwe> int-e: so, sort of like `[IO a, IO a, IO a]` is mocked as IO [a] but being lazy?
2025-05-28 22:47:22 +0200econo_(uid147250@id-147250.tinside.irccloud.com)
2025-05-28 22:48:29 +0200sabathan2(~sabathan@amarseille-159-1-12-107.w86-203.abo.wanadoo.fr) (Read error: Connection reset by peer)
2025-05-28 22:48:50 +0200sabathan2(~sabathan@amarseille-159-1-12-107.w86-203.abo.wanadoo.fr)
2025-05-28 22:49:00 +0200 <bwe> EvanR: "just because it's IO doesn't mean the entire list is evaluated ^" is significant - how can I tell from the return type whether IO evaluates the complete list before it returns?
2025-05-28 22:49:30 +0200 <EvanR> that information is not available in types like IO [a]
2025-05-28 22:49:44 +0200 <bwe> so, IO [a] could be both?!
2025-05-28 22:50:16 +0200 <EvanR> hell, taking this discussion seriously [a] could be both
2025-05-28 22:50:27 +0200merijn(~merijn@host-vr.cgnat-g.v4.dfn.nl) (Ping timeout: 268 seconds)
2025-05-28 22:50:33 +0200 <EvanR> (lazy I/O or not)
2025-05-28 22:51:11 +0200 <EvanR> your projects conventions hopefully provide context to know if lazy I/O is going on
2025-05-28 22:51:24 +0200 <EvanR> next best thing is documentation
2025-05-28 22:52:45 +0200 <bwe> Of course. But it's harder if you want to interface with libraries you haven't written on your own. It's not necessarily obvious whether the IO is lazy or not.
2025-05-28 22:53:35 +0200 <EvanR> bwe, re: how can I tell <erase erase erase> whether IO evaluates the complete list before it returns. If you go into the definition of the IO action and it logically must *do* IO actions to produce the list values, and there's no lazy I/O, then logically it must produce a whole list before returning
2025-05-28 22:54:15 +0200 <EvanR> though the list elements still may not be fully evaluated at that point, the list structure would be
2025-05-28 22:54:22 +0200sabathan2(~sabathan@amarseille-159-1-12-107.w86-203.abo.wanadoo.fr) (Remote host closed the connection)
2025-05-28 22:54:44 +0200sabathan2(~sabathan@amarseille-159-1-12-107.w86-203.abo.wanadoo.fr)
2025-05-28 22:55:05 +0200Frostillicus(~Frostilli@pool-71-174-119-69.bstnma.fios.verizon.net)
2025-05-28 22:56:13 +0200 <EvanR> for what it's worth, lazy I/O is not a common thing for libraries to pull on your without warning you
2025-05-28 22:57:00 +0200 <EvanR> that there is a streaming library involved is probably a good hint no lazy I/O is involved because that defeats the purpose of the streaming library
2025-05-28 22:57:24 +0200 <bwe> Then, it's essential to produce the list structure in a lazy I/O way while building a lazy IO.
2025-05-28 22:57:34 +0200 <bwe> (And that's what a streaming library does?)
2025-05-28 22:57:52 +0200 <EvanR> I would expect "streaming library" to not have any lazy I/O
2025-05-28 22:58:33 +0200 <EvanR> mainly lazy I/O is useful for applications who want to play fast and loose
2025-05-28 22:59:47 +0200jaror(~jaror@5070ACC7.static.ziggozakelijk.nl)
2025-05-28 23:00:21 +0200 <haskellbridge> <magic_rb> Lazy IO is extremely hard to debug
2025-05-28 23:00:41 +0200 <bwe> I mean, there are common use cases where you just pull data from some place (IO), and want to apply some function to it, without having all data in memory at once. I still find it hard how unintuitive it is for me to make the shift with Haskell into that one at a time processing.
2025-05-28 23:01:01 +0200 <EvanR> there are other ways to accomplish that without resorting to lazy I/O magic
2025-05-28 23:01:15 +0200merijn(~merijn@host-vr.cgnat-g.v4.dfn.nl) merijn
2025-05-28 23:02:01 +0200 <bwe> EvanR: which are those?
2025-05-28 23:02:09 +0200 <[exa]> conduit & pipes libraries
2025-05-28 23:02:13 +0200 <[exa]> and well, traverse :)
2025-05-28 23:02:14 +0200 <EvanR> e.g. instead of readFile :: FilePath -> IO [Char] -- returns a magic lazy I/O list, eachChar :: (Char -> IO ()) -> FilePath -> IO () -- visit each Char in the file in sequence and do something
2025-05-28 23:02:31 +0200 <EvanR> where eachChar is some thing I made up that is more or less efficient
2025-05-28 23:03:43 +0200 <EvanR> the intention being it doesn't load the whole file at once
2025-05-28 23:04:26 +0200sabathan2(~sabathan@amarseille-159-1-12-107.w86-203.abo.wanadoo.fr) (Remote host closed the connection)
2025-05-28 23:04:39 +0200 <bwe> [exa]: I find Streaming simpler.
2025-05-28 23:04:47 +0200sabathan2(~sabathan@amarseille-159-1-12-107.w86-203.abo.wanadoo.fr)
2025-05-28 23:05:09 +0200 <[exa]> bwe: as in, the "streaming" prelude?
2025-05-28 23:05:13 +0200 <bwe> [exa]: ... what's the buzz about traverse?
2025-05-28 23:05:24 +0200 <bwe> [exa]: https://hackage.haskell.org/package/streaming
2025-05-28 23:06:14 +0200Unicorn_Princess(~Unicorn_P@user/Unicorn-Princess/x-3540542) (Remote host closed the connection)
2025-05-28 23:07:03 +0200 <[exa]> yes this one is good too. A bit less universal approach but covers the usual usecase space :D
2025-05-28 23:07:55 +0200 <EvanR> if you're using this, then I would suggest not using lazy I/O
2025-05-28 23:08:06 +0200 <EvanR> if you want to feed in some data from a source, produce a stream, not a lazy I/O list
2025-05-28 23:08:08 +0200merijn(~merijn@host-vr.cgnat-g.v4.dfn.nl) (Ping timeout: 252 seconds)
2025-05-28 23:08:19 +0200 <EvanR> then it should play well with the rest of the library
2025-05-28 23:09:41 +0200 <bwe> EvanR: sorry if I was not able to convey my point - I want to use streaming but the point for me is how to take whatever IO input from some yet non-streaming library like DB stuff.
2025-05-28 23:10:08 +0200 <EvanR> if you are going through a library that doesn't support streaming, you can't
2025-05-28 23:10:25 +0200 <[exa]> well you can but you have to provide a bit of glue
2025-05-28 23:10:31 +0200 <EvanR> but database APIs if you go close enough to the raw API, support streaming
2025-05-28 23:11:15 +0200 <EvanR> [exa], like if it's this selda library which only produces whole list of results at once and no way to get 1 row at a time
2025-05-28 23:11:19 +0200 <[exa]> bwe: btw is this for the selda streams? if you start the work somewhere please ping me, I'd try to find time to write some code (at least for postgres)
2025-05-28 23:11:24 +0200 <[exa]> ah yes it's selda
2025-05-28 23:11:42 +0200 <bwe> [exa]: yeah, it's selda
2025-05-28 23:12:10 +0200 <haskellbridge> <sm> "The worst part of Haskell is its handling of JSON encoding – the Aeson library that everybody uses is quite complex to understand and use effectively. I believe that the unintuitive handling of JSON is one of the primary reasons that slows down Haskell adoption."
2025-05-28 23:12:17 +0200 <EvanR> it's kind of like how do I incrementally read JSON if all I have is js JSON.parse
2025-05-28 23:12:33 +0200 <[exa]> EvanR: anyway true, I read "through" too literally, there you could do by bits. Selda is more like "from"
2025-05-28 23:12:45 +0200 <[exa]> sm: lol where's that from.
2025-05-28 23:13:01 +0200 <bwe> yeah, that's my gut feeling.. that I need to make my own flavour of constructing the result list. Which essentially boils down to finding the right place of inserting S.yield and getting the type signatures right.
2025-05-28 23:13:14 +0200 <haskellbridge> <sm> this great interview: https://serokell.io/blog/haskell-in-production-simplex