2025/12/26

2025-12-26 00:02:55 +0100DragonMaus(~DragonMau@user/dragonmaus) (Remote host closed the connection)
2025-12-26 00:03:31 +0100DragonMaus(~DragonMau@user/dragonmaus) DragonMaus
2025-12-26 00:03:59 +0100merijn(~merijn@host-cl.cgnat-g.v4.dfn.nl) (Ping timeout: 256 seconds)
2025-12-26 00:10:50 +0100DragonMaus(~DragonMau@user/dragonmaus) (Remote host closed the connection)
2025-12-26 00:11:27 +0100DragonMaus(~DragonMau@user/dragonmaus) DragonMaus
2025-12-26 00:11:49 +0100infinity0(~infinity0@pwned.gg) infinity0
2025-12-26 00:13:07 +0100humasect(~humasect@dyn-192-249-132-90.nexicom.net) humasect
2025-12-26 00:15:12 +0100merijn(~merijn@host-cl.cgnat-g.v4.dfn.nl) merijn
2025-12-26 00:15:57 +0100ChaiTRex(~ChaiTRex@user/chaitrex) (Ping timeout: 252 seconds)
2025-12-26 00:16:50 +0100ChaiTRex(~ChaiTRex@user/chaitrex) ChaiTRex
2025-12-26 00:17:37 +0100humasect(~humasect@dyn-192-249-132-90.nexicom.net) (Ping timeout: 255 seconds)
2025-12-26 00:18:51 +0100tremon(~tremon@83.80.159.219) (Quit: getting boxed in)
2025-12-26 00:20:26 +0100merijn(~merijn@host-cl.cgnat-g.v4.dfn.nl) (Ping timeout: 265 seconds)
2025-12-26 00:22:33 +0100wennefer0__(~wennefer0@user/wennefer0) wennefer0
2025-12-26 00:24:18 +0100wennefer0__(~wennefer0@user/wennefer0) (Remote host closed the connection)
2025-12-26 00:24:36 +0100wennefer0___(~wennefer0@user/wennefer0) wennefer0
2025-12-26 00:25:07 +0100bitdex(~bitdex@gateway/tor-sasl/bitdex) (Ping timeout: 252 seconds)
2025-12-26 00:31:01 +0100merijn(~merijn@host-cl.cgnat-g.v4.dfn.nl) merijn
2025-12-26 00:33:37 +0100bitdex(~bitdex@gateway/tor-sasl/bitdex) bitdex
2025-12-26 00:35:35 +0100merijn(~merijn@host-cl.cgnat-g.v4.dfn.nl) (Ping timeout: 240 seconds)
2025-12-26 00:35:45 +0100CiaoSen(~Jura@2a02:8071:64e1:da0:5a47:caff:fe78:33db) (Ping timeout: 245 seconds)
2025-12-26 00:38:28 +0100wennefer0___(~wennefer0@user/wennefer0) (Quit: Igloo: https://igloo.app)
2025-12-26 00:39:33 +0100wennefer0____(~wennefer0@user/wennefer0) wennefer0
2025-12-26 00:40:01 +0100wennefer0____(~wennefer0@user/wennefer0) (Remote host closed the connection)
2025-12-26 00:43:02 +0100ChanServ+o litharge
2025-12-26 00:43:03 +0100litharge-bo *!*@177.71.33.140 litharge
2025-12-26 00:43:39 +0100humasect(~humasect@dyn-192-249-132-90.nexicom.net) humasect
2025-12-26 00:45:03 +0100ChanServ+o litharge
2025-12-26 00:45:04 +0100litharge-bo *!*@123.27.7.53 litharge
2025-12-26 00:46:48 +0100merijn(~merijn@host-cl.cgnat-g.v4.dfn.nl) merijn
2025-12-26 00:48:37 +0100humasect(~humasect@dyn-192-249-132-90.nexicom.net) (Ping timeout: 264 seconds)
2025-12-26 00:52:13 +0100merijn(~merijn@host-cl.cgnat-g.v4.dfn.nl) (Ping timeout: 264 seconds)
2025-12-26 01:02:36 +0100merijn(~merijn@host-cl.cgnat-g.v4.dfn.nl) merijn
2025-12-26 01:07:19 +0100merijn(~merijn@host-cl.cgnat-g.v4.dfn.nl) (Ping timeout: 240 seconds)
2025-12-26 01:17:57 +0100humasect(~humasect@dyn-192-249-132-90.nexicom.net) humasect
2025-12-26 01:18:24 +0100merijn(~merijn@host-cl.cgnat-g.v4.dfn.nl) merijn
2025-12-26 01:22:55 +0100merijn(~merijn@host-cl.cgnat-g.v4.dfn.nl) (Ping timeout: 240 seconds)
2025-12-26 01:23:14 +0100humasect(~humasect@dyn-192-249-132-90.nexicom.net) (Ping timeout: 260 seconds)
2025-12-26 01:30:32 +0100haskellbridge(~hackager@96.28.224.214) (Remote host closed the connection)
2025-12-26 01:31:03 +0100haskellbridge(~hackager@96.28.224.214) hackager
2025-12-26 01:31:03 +0100ChanServ+v haskellbridge
2025-12-26 01:40:53 +0100vanishingideal(~vanishing@user/vanishingideal) vanishingideal
2025-12-26 01:52:13 +0100merijn(~merijn@host-cl.cgnat-g.v4.dfn.nl) merijn
2025-12-26 01:56:55 +0100merijn(~merijn@host-cl.cgnat-g.v4.dfn.nl) (Ping timeout: 240 seconds)
2025-12-26 01:56:55 +0100poscat(~poscat@user/poscat) (Remote host closed the connection)
2025-12-26 01:59:52 +0100poscat(~poscat@user/poscat) poscat
2025-12-26 02:00:40 +0100CloneOfNone(~CloneOfNo@user/CloneOfNone) (Read error: Connection reset by peer)
2025-12-26 02:00:50 +0100CloneOfNone(~CloneOfNo@user/CloneOfNone) CloneOfNone
2025-12-26 02:08:00 +0100merijn(~merijn@host-cl.cgnat-g.v4.dfn.nl) merijn
2025-12-26 02:09:50 +0100Digit(~Digit@user/digit) Digit
2025-12-26 02:13:13 +0100merijn(~merijn@host-cl.cgnat-g.v4.dfn.nl) (Ping timeout: 264 seconds)
2025-12-26 02:21:20 +0100humasect(~humasect@dyn-192-249-132-90.nexicom.net) humasect
2025-12-26 02:23:44 +0100merijn(~merijn@host-cl.cgnat-g.v4.dfn.nl) merijn
2025-12-26 02:24:44 +0100divlamir(~divlamir@user/divlamir) (Read error: Connection reset by peer)
2025-12-26 02:24:54 +0100divlamir(~divlamir@user/divlamir) divlamir
2025-12-26 02:28:15 +0100merijn(~merijn@host-cl.cgnat-g.v4.dfn.nl) (Ping timeout: 240 seconds)
2025-12-26 02:29:39 +0100Tuplanolla(~Tuplanoll@88-114-88-95.elisa-laajakaista.fi) (Quit: Leaving.)
2025-12-26 02:32:49 +0100humasect(~humasect@dyn-192-249-132-90.nexicom.net) (Quit: Leaving...)
2025-12-26 02:39:32 +0100merijn(~merijn@host-cl.cgnat-g.v4.dfn.nl) merijn
2025-12-26 02:44:15 +0100merijn(~merijn@host-cl.cgnat-g.v4.dfn.nl) (Ping timeout: 240 seconds)
2025-12-26 02:46:15 +0100tcard(~tcard@2400:4051:5801:7500:cf17:befc:ff82:5303) (Quit: Leaving)
2025-12-26 02:54:16 +0100iqubic(~sophia@2601:602:9203:1660:9e23:79cc:546:311b) iqubic
2025-12-26 02:55:18 +0100merijn(~merijn@host-cl.cgnat-g.v4.dfn.nl) merijn
2025-12-26 02:55:49 +0100 <iqubic> Is there a library that will let me memoize a function of type "Set a -> b"? I understand this might need an additional constraint on 'a', but I'm not sure what it would be.
2025-12-26 02:56:20 +0100tabemann(~tabemann@12.215.215.61) tabemann
2025-12-26 02:59:15 +0100humasect(~humasect@dyn-192-249-132-90.nexicom.net) humasect
2025-12-26 03:00:07 +0100merijn(~merijn@host-cl.cgnat-g.v4.dfn.nl) (Ping timeout: 240 seconds)
2025-12-26 03:06:55 +0100 <geekosaur> Ord a
2025-12-26 03:08:43 +0100polykernel_(~polykerne@user/polykernel) polykernel
2025-12-26 03:11:07 +0100merijn(~merijn@host-cl.cgnat-g.v4.dfn.nl) merijn
2025-12-26 03:11:09 +0100polykernel(~polykerne@user/polykernel) (Ping timeout: 260 seconds)
2025-12-26 03:11:09 +0100polykernel_polykernel
2025-12-26 03:13:47 +0100bitdex(~bitdex@gateway/tor-sasl/bitdex) (Ping timeout: 252 seconds)
2025-12-26 03:15:43 +0100merijn(~merijn@host-cl.cgnat-g.v4.dfn.nl) (Ping timeout: 240 seconds)
2025-12-26 03:22:38 +0100bitdex(~bitdex@gateway/tor-sasl/bitdex) bitdex
2025-12-26 03:23:43 +0100annamalai(~annamalai@157.32.199.28) (Ping timeout: 240 seconds)
2025-12-26 03:29:16 +0100merijn(~merijn@host-cl.cgnat-g.v4.dfn.nl) merijn
2025-12-26 03:33:43 +0100merijn(~merijn@host-cl.cgnat-g.v4.dfn.nl) (Ping timeout: 240 seconds)
2025-12-26 03:42:11 +0100 <Leary> iqubic: Presumably you can find this on hackage somewhere, but: https://gist.github.com/LSLeary/33a854e1ec1230e7fbcc09e44e1ee71d
2025-12-26 03:58:15 +0100humasect(~humasect@dyn-192-249-132-90.nexicom.net) (Remote host closed the connection)
2025-12-26 04:00:03 +0100merijn(~merijn@host-cl.cgnat-g.v4.dfn.nl) merijn
2025-12-26 04:04:15 +0100merijn(~merijn@host-cl.cgnat-g.v4.dfn.nl) (Ping timeout: 240 seconds)
2025-12-26 04:11:25 +0100 <iqubic> I was trying to use MemoTrie, but that doesn't seem to work...
2025-12-26 04:11:49 +0100 <iqubic> @Hackage MemoTrie
2025-12-26 04:11:49 +0100 <lambdabot> https://hackage.haskell.org/package/MemoTrie
2025-12-26 04:13:18 +0100 <iqubic> geekosaur: Do you know if there are any off the shelf ways to memoize functions taking Sets or Maps?
2025-12-26 04:13:31 +0100 <geekosaur> not off the top of my head
2025-12-26 04:14:16 +0100 <iqubic> Hmm... that's annoying. MemoTrie looks good, but it doesn't have instances for Set or Map...
2025-12-26 04:14:21 +0100 <geekosaur> I don't usually have much use for memoization, and the fact that most memoizing functions use `Map` internally makes me wonder if you're just asking for the wrong thing to begin with
2025-12-26 04:15:23 +0100 <iqubic> Well, I'm using this 'Map' to store the state of the system I'm modeling.
2025-12-26 04:15:30 +0100merijn(~merijn@host-cl.cgnat-g.v4.dfn.nl) merijn
2025-12-26 04:20:05 +0100pebble(~pebble@37.63.33.138) pebble
2025-12-26 04:21:21 +0100 <geekosaur> the other issue is that a large `Set` or `Map` would function in that case as an arbitrary number of "parameters", which would make memoization more expensive possibly to the point that it would have diminishing returns
2025-12-26 04:22:31 +0100merijn(~merijn@host-cl.cgnat-g.v4.dfn.nl) (Ping timeout: 264 seconds)
2025-12-26 04:23:19 +0100 <iqubic> Yeah, that does make sense.
2025-12-26 04:24:23 +0100 <iqubic> Why does memoizing over a list make sense?
2025-12-26 04:25:56 +0100 <geekosaur> large lists are kinda their own punishment 🙂
2025-12-26 04:26:52 +0100 <Leary> iqubic: The approach that 'MemoTrie' and related pure approaches take is to index into a lazy data type with one position for each possible argument (holding the result of applying the function). If you can design such a type for `Set` or `Map` then you can use it, but you'll likely be stymied by the fact that they're abstract types.
2025-12-26 04:27:01 +0100 <geekosaur> that said, a more practical reason for not having `Set` or `Map` instances is that instances that require additional constraints have severe limitations when possible at all, and both those instances would require an added `Ord` instance
2025-12-26 04:27:38 +0100 <geekosaur> same reason why you can't have `Set` or `Map` `Monad` instances
2025-12-26 04:29:18 +0100 <Leary> Though `splitRoot` is essentially a look into the internals, so you can probably hack a `HasTrie` instance with it.
2025-12-26 04:30:10 +0100 <glguy> Probably the easiest starting point is to use to list and memoize with a list argument
2025-12-26 04:33:33 +0100merijn(~merijn@host-cl.cgnat-g.v4.dfn.nl) merijn
2025-12-26 04:38:25 +0100merijn(~merijn@host-cl.cgnat-g.v4.dfn.nl) (Ping timeout: 264 seconds)
2025-12-26 04:44:28 +0100emmanuelux_(~emmanuelu@user/emmanuelux) emmanuelux
2025-12-26 04:44:32 +0100kaskal(~kaskal@84-115-235-223.cable.dynamic.surfer.at) (Ping timeout: 240 seconds)
2025-12-26 04:44:33 +0100emmanuelux(~emmanuelu@user/emmanuelux) (Remote host closed the connection)
2025-12-26 04:45:59 +0100kaskal(~kaskal@2a02:8388:1a8b:7d00:5666:a937:cb77:6c3b) kaskal
2025-12-26 04:49:04 +0100merijn(~merijn@host-cl.cgnat-g.v4.dfn.nl) merijn
2025-12-26 04:53:43 +0100merijn(~merijn@host-cl.cgnat-g.v4.dfn.nl) (Ping timeout: 244 seconds)
2025-12-26 04:54:14 +0100bitdex(~bitdex@gateway/tor-sasl/bitdex) (Remote host closed the connection)
2025-12-26 05:05:49 +0100merijn(~merijn@host-cl.cgnat-g.v4.dfn.nl) merijn
2025-12-26 05:10:24 +0100merijn(~merijn@host-cl.cgnat-g.v4.dfn.nl) (Ping timeout: 252 seconds)
2025-12-26 05:14:10 +0100acidjnk(~acidjnk@p200300d6e7171922bda2454d8bce8e38.dip0.t-ipconnect.de) (Ping timeout: 255 seconds)
2025-12-26 05:19:24 +0100humasect(~humasect@dyn-192-249-132-90.nexicom.net) humasect
2025-12-26 05:21:13 +0100merijn(~merijn@host-cl.cgnat-g.v4.dfn.nl) merijn
2025-12-26 05:21:37 +0100tabemann(~tabemann@12.215.215.61) (Ping timeout: 264 seconds)
2025-12-26 05:26:07 +0100 <haskellbridge> <Zemyla> You could potentially have a Map Monad instance, since the Ord constraint is on k, not a. The main problem is it doesn't let you implement pure.
2025-12-26 05:29:43 +0100merijn(~merijn@host-cl.cgnat-g.v4.dfn.nl) (Ping timeout: 264 seconds)
2025-12-26 05:30:51 +0100 <haskellbridge> <Zemyla> Map k is an alternate form of ReaderT k Maybe.
2025-12-26 05:32:27 +0100jreicher(~user@user/jreicher) jreicher
2025-12-26 05:37:32 +0100hsw(~hsw@112-104-86-252.adsl.dynamic.seed.net.tw) hsw
2025-12-26 05:37:36 +0100hsw_(~hsw@112-104-86-252.adsl.dynamic.seed.net.tw) hsw
2025-12-26 05:37:45 +0100hsw_(~hsw@112-104-86-252.adsl.dynamic.seed.net.tw) (Remote host closed the connection)
2025-12-26 05:40:02 +0100merijn(~merijn@host-cl.cgnat-g.v4.dfn.nl) merijn
2025-12-26 05:42:40 +0100tabemann(~tabemann@12.215.215.61) tabemann
2025-12-26 05:45:08 +0100merijn(~merijn@host-cl.cgnat-g.v4.dfn.nl) (Ping timeout: 260 seconds)
2025-12-26 05:46:18 +0100_d0t(~{-d0t-}@user/-d0t-/x-7915216) (Ping timeout: 260 seconds)
2025-12-26 05:50:28 +0100_d0t(~{-d0t-}@user/-d0t-/x-7915216) {-d0t-}
2025-12-26 05:54:34 +0100merijn(~merijn@host-cl.cgnat-g.v4.dfn.nl) merijn
2025-12-26 05:59:15 +0100merijn(~merijn@host-cl.cgnat-g.v4.dfn.nl) (Ping timeout: 240 seconds)
2025-12-26 06:01:33 +0100vanishingideal(~vanishing@user/vanishingideal) (Remote host closed the connection)
2025-12-26 06:05:27 +0100spew(~spew@user/spew) (Quit: nyaa~)
2025-12-26 06:10:22 +0100merijn(~merijn@host-cl.cgnat-g.v4.dfn.nl) merijn
2025-12-26 06:14:55 +0100merijn(~merijn@host-cl.cgnat-g.v4.dfn.nl) (Ping timeout: 240 seconds)
2025-12-26 06:18:06 +0100annamalai(~annamalai@157.32.132.85) annamalai
2025-12-26 06:26:12 +0100merijn(~merijn@62.45.136.136) merijn
2025-12-26 06:30:55 +0100machinedgod(~machinedg@d75-159-126-101.abhsia.telus.net) (Ping timeout: 240 seconds)
2025-12-26 06:31:15 +0100merijn(~merijn@62.45.136.136) (Ping timeout: 252 seconds)
2025-12-26 06:34:03 +0100chromoblob(~chromoblo@user/chromob1ot1c) (Ping timeout: 244 seconds)
2025-12-26 06:36:15 +0100chromoblob(~chromoblo@user/chromob1ot1c) chromoblob\0
2025-12-26 06:36:33 +0100chromoblob(~chromoblo@user/chromob1ot1c) (Read error: Connection reset by peer)
2025-12-26 06:36:52 +0100chromoblob(~chromoblo@user/chromob1ot1c) chromoblob\0
2025-12-26 06:40:22 +0100chexum(~quassel@gateway/tor-sasl/chexum) (Remote host closed the connection)
2025-12-26 06:41:32 +0100chexum(~quassel@gateway/tor-sasl/chexum) chexum
2025-12-26 06:41:57 +0100merijn(~merijn@host-cl.cgnat-g.v4.dfn.nl) merijn
2025-12-26 06:47:06 +0100merijn(~merijn@host-cl.cgnat-g.v4.dfn.nl) (Ping timeout: 265 seconds)
2025-12-26 06:57:45 +0100merijn(~merijn@host-cl.cgnat-g.v4.dfn.nl) merijn
2025-12-26 07:01:33 +0100itaipu(~itaipu@168.121.97.28) (Read error: Connection reset by peer)
2025-12-26 07:04:15 +0100merijn(~merijn@host-cl.cgnat-g.v4.dfn.nl) (Ping timeout: 240 seconds)
2025-12-26 07:15:48 +0100merijn(~merijn@host-cl.cgnat-g.v4.dfn.nl) merijn
2025-12-26 07:19:04 +0100itaipu(~itaipu@168.121.97.28) itaipu
2025-12-26 07:19:58 +0100merijn(~merijn@host-cl.cgnat-g.v4.dfn.nl) (Ping timeout: 246 seconds)
2025-12-26 07:31:10 +0100merijn(~merijn@host-cl.cgnat-g.v4.dfn.nl) merijn
2025-12-26 07:36:09 +0100pebble(~pebble@37.63.33.138) (Read error: Connection reset by peer)
2025-12-26 07:36:37 +0100merijn(~merijn@host-cl.cgnat-g.v4.dfn.nl) (Ping timeout: 264 seconds)
2025-12-26 07:46:57 +0100merijn(~merijn@host-cl.cgnat-g.v4.dfn.nl) merijn
2025-12-26 07:51:27 +0100merijn(~merijn@host-cl.cgnat-g.v4.dfn.nl) (Ping timeout: 244 seconds)
2025-12-26 07:55:32 +0100synchromesh(~john@2406:5a00:2412:2c00:c4e1:4071:89e4:83f7) (Read error: Connection reset by peer)
2025-12-26 07:55:36 +0100merijn(~merijn@host-cl.cgnat-g.v4.dfn.nl) merijn
2025-12-26 07:56:06 +0100synchromesh(~john@2406:5a00:2412:2c00:68ff:586d:59bf:bb1) synchromesh
2025-12-26 08:00:37 +0100merijn(~merijn@host-cl.cgnat-g.v4.dfn.nl) (Ping timeout: 264 seconds)
2025-12-26 08:05:58 +0100j1n37-(~j1n37@user/j1n37) (Read error: Connection reset by peer)
2025-12-26 08:06:08 +0100j1n37(~j1n37@user/j1n37) j1n37
2025-12-26 08:11:16 +0100merijn(~merijn@host-cl.cgnat-g.v4.dfn.nl) merijn
2025-12-26 08:15:50 +0100merijn(~merijn@host-cl.cgnat-g.v4.dfn.nl) (Ping timeout: 256 seconds)
2025-12-26 08:26:50 +0100merijn(~merijn@host-cl.cgnat-g.v4.dfn.nl) merijn
2025-12-26 08:30:23 +0100annamalai(~annamalai@157.32.132.85) (Remote host closed the connection)
2025-12-26 08:30:38 +0100annamalai(~annamalai@2409:4042:218b:8d26::2684:98a1) annamalai
2025-12-26 08:31:49 +0100merijn(~merijn@host-cl.cgnat-g.v4.dfn.nl) (Ping timeout: 264 seconds)
2025-12-26 08:42:36 +0100merijn(~merijn@host-cl.cgnat-g.v4.dfn.nl) merijn
2025-12-26 08:46:17 +0100peterbecich(~Thunderbi@71.84.33.135) peterbecich
2025-12-26 08:47:06 +0100merijn(~merijn@host-cl.cgnat-g.v4.dfn.nl) (Ping timeout: 252 seconds)
2025-12-26 08:56:32 +0100merijn(~merijn@host-cl.cgnat-g.v4.dfn.nl) merijn
2025-12-26 09:03:19 +0100merijn(~merijn@host-cl.cgnat-g.v4.dfn.nl) (Ping timeout: 240 seconds)
2025-12-26 09:14:28 +0100merijn(~merijn@host-cl.cgnat-g.v4.dfn.nl) merijn
2025-12-26 09:15:01 +0100sroso(~sroso@user/SrOso) (Quit: Leaving :))
2025-12-26 09:19:13 +0100merijn(~merijn@host-cl.cgnat-g.v4.dfn.nl) (Ping timeout: 264 seconds)
2025-12-26 09:22:35 +0100chromoblob(~chromoblo@user/chromob1ot1c) (Ping timeout: 240 seconds)
2025-12-26 09:23:07 +0100chromoblob(~chromoblo@user/chromob1ot1c) chromoblob\0
2025-12-26 09:30:00 +0100merijn(~merijn@host-cl.cgnat-g.v4.dfn.nl) merijn
2025-12-26 09:34:35 +0100merijn(~merijn@host-cl.cgnat-g.v4.dfn.nl) (Ping timeout: 240 seconds)
2025-12-26 09:35:39 +0100haritz(~hrtz@user/haritz) (Quit: ZNC 1.8.2+deb3.1+deb12u1 - https://znc.in)
2025-12-26 09:43:06 +0100chromoblob(~chromoblo@user/chromob1ot1c) (Read error: Connection reset by peer)
2025-12-26 09:43:26 +0100chromoblob(~chromoblo@user/chromob1ot1c) chromoblob\0
2025-12-26 09:45:47 +0100merijn(~merijn@host-cl.cgnat-g.v4.dfn.nl) merijn
2025-12-26 09:48:56 +0100Sgeo(~Sgeo@user/sgeo) (Read error: Connection reset by peer)
2025-12-26 09:52:15 +0100merijn(~merijn@host-cl.cgnat-g.v4.dfn.nl) (Ping timeout: 240 seconds)
2025-12-26 09:57:34 +0100merijn(~merijn@host-cl.cgnat-g.v4.dfn.nl) merijn
2025-12-26 10:00:38 +0100humasect(~humasect@dyn-192-249-132-90.nexicom.net) (Remote host closed the connection)
2025-12-26 10:02:23 +0100merijn(~merijn@host-cl.cgnat-g.v4.dfn.nl) (Ping timeout: 260 seconds)
2025-12-26 10:11:11 +0100emmanuelux_(~emmanuelu@user/emmanuelux) (Remote host closed the connection)
2025-12-26 10:15:17 +0100merijn(~merijn@host-cl.cgnat-g.v4.dfn.nl) merijn
2025-12-26 10:20:29 +0100merijn(~merijn@host-cl.cgnat-g.v4.dfn.nl) (Ping timeout: 260 seconds)
2025-12-26 10:31:04 +0100merijn(~merijn@host-cl.cgnat-g.v4.dfn.nl) merijn
2025-12-26 10:35:35 +0100merijn(~merijn@host-cl.cgnat-g.v4.dfn.nl) (Ping timeout: 240 seconds)
2025-12-26 10:43:37 +0100ljdarj(~Thunderbi@user/ljdarj) ljdarj
2025-12-26 10:46:51 +0100merijn(~merijn@host-cl.cgnat-g.v4.dfn.nl) merijn
2025-12-26 10:51:15 +0100merijn(~merijn@host-cl.cgnat-g.v4.dfn.nl) (Ping timeout: 244 seconds)
2025-12-26 10:58:34 +0100merijn(~merijn@host-cl.cgnat-g.v4.dfn.nl) merijn
2025-12-26 10:58:43 +0100ljdarj1(~Thunderbi@user/ljdarj) ljdarj
2025-12-26 11:00:02 +0100ljdarj(~Thunderbi@user/ljdarj) (Ping timeout: 244 seconds)
2025-12-26 11:00:07 +0100ljdarj1ljdarj
2025-12-26 11:03:30 +0100merijn(~merijn@host-cl.cgnat-g.v4.dfn.nl) (Ping timeout: 252 seconds)
2025-12-26 11:13:25 +0100peterbecich(~Thunderbi@71.84.33.135) (Ping timeout: 246 seconds)
2025-12-26 11:14:21 +0100merijn(~merijn@host-cl.cgnat-g.v4.dfn.nl) merijn
2025-12-26 11:18:55 +0100merijn(~merijn@host-cl.cgnat-g.v4.dfn.nl) (Ping timeout: 240 seconds)
2025-12-26 11:26:38 +0100califax(~califax@user/califx) (Remote host closed the connection)
2025-12-26 11:27:36 +0100califax(~califax@user/califx) califx
2025-12-26 11:28:23 +0100ljdarj1(~Thunderbi@user/ljdarj) ljdarj
2025-12-26 11:28:48 +0100ljdarj(~Thunderbi@user/ljdarj) (Ping timeout: 252 seconds)
2025-12-26 11:28:50 +0100ljdarj1ljdarj
2025-12-26 11:29:53 +0100merijn(~merijn@host-cl.cgnat-g.v4.dfn.nl) merijn
2025-12-26 11:31:21 +0100ljdarj(~Thunderbi@user/ljdarj) (Read error: Connection reset by peer)
2025-12-26 11:34:02 +0100Tuplanolla(~Tuplanoll@88-114-88-95.elisa-laajakaista.fi) Tuplanolla
2025-12-26 11:36:15 +0100merijn(~merijn@host-cl.cgnat-g.v4.dfn.nl) (Ping timeout: 240 seconds)
2025-12-26 11:41:24 +0100rainbyte(~rainbyte@186.22.19.214) (Read error: Connection reset by peer)
2025-12-26 11:42:05 +0100rainbyte(~rainbyte@186.22.19.214) rainbyte
2025-12-26 11:44:16 +0100068AABI46(~wz1000@2a01:4f9:c012:de50::1) (Quit: ZNC 1.8.2 - https://znc.in)
2025-12-26 11:47:56 +0100merijn(~merijn@host-cl.cgnat-g.v4.dfn.nl) merijn
2025-12-26 11:50:56 +0100pebble(~pebble@37.63.33.138) pebble
2025-12-26 11:52:35 +0100merijn(~merijn@host-cl.cgnat-g.v4.dfn.nl) (Ping timeout: 240 seconds)
2025-12-26 11:55:03 +0100acidjnk(~acidjnk@p200300d6e7171923edacc98e824f0ce3.dip0.t-ipconnect.de) acidjnk
2025-12-26 11:59:34 +0100merijn(~merijn@host-cl.cgnat-g.v4.dfn.nl) merijn
2025-12-26 12:04:30 +0100merijn(~merijn@host-cl.cgnat-g.v4.dfn.nl) (Ping timeout: 245 seconds)
2025-12-26 12:15:30 +0100merijn(~merijn@host-cl.cgnat-g.v4.dfn.nl) merijn
2025-12-26 12:20:15 +0100merijn(~merijn@host-cl.cgnat-g.v4.dfn.nl) (Ping timeout: 240 seconds)
2025-12-26 12:31:18 +0100merijn(~merijn@host-cl.cgnat-g.v4.dfn.nl) merijn
2025-12-26 12:33:01 +0100karenw(~karenw@user/karenw) karenw
2025-12-26 12:33:21 +0100califax_(~califax@user/califx) califx
2025-12-26 12:34:47 +0100califax(~califax@user/califx) (Ping timeout: 252 seconds)
2025-12-26 12:34:47 +0100califax_califax
2025-12-26 12:36:24 +0100merijn(~merijn@host-cl.cgnat-g.v4.dfn.nl) (Ping timeout: 260 seconds)
2025-12-26 12:46:49 +0100merijn(~merijn@host-cl.cgnat-g.v4.dfn.nl) merijn
2025-12-26 12:51:25 +0100merijn(~merijn@host-cl.cgnat-g.v4.dfn.nl) (Ping timeout: 246 seconds)
2025-12-26 13:00:34 +0100merijn(~merijn@host-cl.cgnat-g.v4.dfn.nl) merijn
2025-12-26 13:05:19 +0100merijn(~merijn@host-cl.cgnat-g.v4.dfn.nl) (Ping timeout: 240 seconds)
2025-12-26 13:10:35 +0100Digit(~Digit@user/digit) (Ping timeout: 240 seconds)
2025-12-26 13:10:43 +0100Digitteknohippie(~Digit@user/digit) Digit
2025-12-26 13:16:22 +0100merijn(~merijn@host-cl.cgnat-g.v4.dfn.nl) merijn
2025-12-26 13:17:16 +0100karenw(~karenw@user/karenw) (Quit: Deep into that darkness peering...)
2025-12-26 13:21:33 +0100merijn(~merijn@host-cl.cgnat-g.v4.dfn.nl) (Ping timeout: 252 seconds)
2025-12-26 13:32:09 +0100merijn(~merijn@host-cl.cgnat-g.v4.dfn.nl) merijn
2025-12-26 13:36:55 +0100merijn(~merijn@host-cl.cgnat-g.v4.dfn.nl) (Ping timeout: 240 seconds)
2025-12-26 13:39:31 +0100lockna_(~lockna@193-81-168-132.hdsl.highway.telekom.at) lockna
2025-12-26 13:44:13 +0100haritz(~hrtz@user/haritz) haritz
2025-12-26 13:45:38 +0100poscat(~poscat@user/poscat) (Quit: Bye)
2025-12-26 13:45:48 +0100poscat(~poscat@user/poscat) poscat
2025-12-26 13:52:44 +0100merijn(~merijn@host-cl.cgnat-g.v4.dfn.nl) merijn
2025-12-26 13:56:01 +0100machinedgod(~machinedg@d75-159-126-101.abhsia.telus.net) machinedgod
2025-12-26 13:56:47 +0100sshine(~simon@dao.mechanicus.xyz) ()
2025-12-26 13:57:15 +0100merijn(~merijn@host-cl.cgnat-g.v4.dfn.nl) (Ping timeout: 240 seconds)
2025-12-26 13:58:22 +0100humasect(~humasect@dyn-192-249-132-90.nexicom.net) humasect
2025-12-26 13:58:54 +0100humasect(~humasect@dyn-192-249-132-90.nexicom.net) (Remote host closed the connection)
2025-12-26 14:01:34 +0100merijn(~merijn@host-cl.cgnat-g.v4.dfn.nl) merijn
2025-12-26 14:08:07 +0100merijn(~merijn@host-cl.cgnat-g.v4.dfn.nl) (Ping timeout: 240 seconds)
2025-12-26 14:11:18 +0100 <ncf> Map k isn't a Monad, but it is a Bind (a monad without unit, or "semigroupad"). it is also equipped with a morphism Map k (Either a (Map k a)) → Map k a, which means that Either a (Map k a) is in a sense the "free monad" on this semigroupad (equivalently, Map k is the T₀ part of an ideal monad https://hackage.haskell.org/package/monad-ideals)
2025-12-26 14:18:03 +0100humasect(~humasect@dyn-192-249-132-90.nexicom.net) humasect
2025-12-26 14:19:36 +0100merijn(~merijn@host-cl.cgnat-g.v4.dfn.nl) merijn
2025-12-26 14:20:40 +0100pavonia(~user@user/siracusa) (Quit: Bye!)
2025-12-26 14:21:00 +0100califax(~califax@user/califx) (Remote host closed the connection)
2025-12-26 14:21:59 +0100califax(~califax@user/califx) califx
2025-12-26 14:24:01 +0100 <yin> Morj: I used to have haskell-language-server-wrapper. I still do, but I used to too.
2025-12-26 14:24:55 +0100merijn(~merijn@host-cl.cgnat-g.v4.dfn.nl) (Ping timeout: 245 seconds)
2025-12-26 14:26:14 +0100califax(~califax@user/califx) (Remote host closed the connection)
2025-12-26 14:26:40 +0100wennefer0_____(~wennefer0@user/wennefer0) wennefer0
2025-12-26 14:27:45 +0100ljdarj(~Thunderbi@user/ljdarj) ljdarj
2025-12-26 14:28:42 +0100machinedgod(~machinedg@d75-159-126-101.abhsia.telus.net) (Ping timeout: 256 seconds)
2025-12-26 14:30:55 +0100wennefer0_____(~wennefer0@user/wennefer0) (Ping timeout: 240 seconds)
2025-12-26 14:31:51 +0100ljdarj1(~Thunderbi@user/ljdarj) ljdarj
2025-12-26 14:32:29 +0100ljdarj(~Thunderbi@user/ljdarj) (Ping timeout: 260 seconds)
2025-12-26 14:32:29 +0100ljdarj1ljdarj
2025-12-26 14:35:46 +0100merijn(~merijn@host-cl.cgnat-g.v4.dfn.nl) merijn
2025-12-26 14:35:59 +0100CiaoSen(~Jura@2a02:8071:64e1:da0:5a47:caff:fe78:33db) CiaoSen
2025-12-26 14:37:10 +0100califax(~califax@user/califx) califx
2025-12-26 14:38:51 +0100machinedgod(~machinedg@d75-159-126-101.abhsia.telus.net) machinedgod
2025-12-26 14:40:15 +0100merijn(~merijn@host-cl.cgnat-g.v4.dfn.nl) (Ping timeout: 240 seconds)
2025-12-26 14:49:55 +0100 <[exa]> meh, is there any intuition/good examples for explaining why Monad Complex is written as it is? `a :+ b >>= f = realPart (f a) :+ imagPart (f b)`
2025-12-26 14:51:33 +0100merijn(~merijn@host-cl.cgnat-g.v4.dfn.nl) merijn
2025-12-26 14:51:46 +0100 <Franciman> seems like monad for (a, a)
2025-12-26 14:52:17 +0100 <Franciman> ah no
2025-12-26 14:55:06 +0100 <Franciman> f :: x -> Complex x, but you only extract real part
2025-12-26 14:55:55 +0100merijn(~merijn@host-cl.cgnat-g.v4.dfn.nl) (Ping timeout: 240 seconds)
2025-12-26 14:56:08 +0100 <Franciman> what example has type x -> Complex x ?
2025-12-26 14:56:36 +0100 <Franciman> given a real, you want to build a complex
2025-12-26 14:57:46 +0100 <Franciman> ok one example is given theta, build e^{i*theta} = sin(theta) + i cos(theta)
2025-12-26 15:00:01 +0100 <Franciman> [exa]: https://vitez.me/complex-monad
2025-12-26 15:00:16 +0100 <Franciman> here they say they don't like it, and it seems it's more for general pairing than actual complex structure
2025-12-26 15:00:41 +0100 <Franciman> this is more interesting
2025-12-26 15:00:43 +0100 <Franciman> https://stackoverflow.com/questions/47181078/meaning-and-usage-of-complex-number-functor-and-monad
2025-12-26 15:02:32 +0100merijn(~merijn@host-cl.cgnat-g.v4.dfn.nl) merijn
2025-12-26 15:05:02 +0100 <ncf> [exa]: it's the Pair monad, aka Reader Bool
2025-12-26 15:05:22 +0100spew(~spew@user/spew) spew
2025-12-26 15:05:37 +0100 <ncf> (i don't know why Complex needs a Monad instance, but here you go)
2025-12-26 15:07:19 +0100merijn(~merijn@host-cl.cgnat-g.v4.dfn.nl) (Ping timeout: 240 seconds)
2025-12-26 15:18:21 +0100merijn(~merijn@host-cl.cgnat-g.v4.dfn.nl) merijn
2025-12-26 15:22:08 +0100Pozyomka(~pyon@user/pyon) (Quit: bbl)
2025-12-26 15:23:25 +0100merijn(~merijn@host-cl.cgnat-g.v4.dfn.nl) (Ping timeout: 264 seconds)
2025-12-26 15:24:41 +0100rainbyte(~rainbyte@186.22.19.214) (Read error: Connection reset by peer)
2025-12-26 15:27:17 +0100rainbyte(~rainbyte@186.22.19.214) rainbyte
2025-12-26 15:34:09 +0100merijn(~merijn@host-cl.cgnat-g.v4.dfn.nl) merijn
2025-12-26 15:38:55 +0100merijn(~merijn@host-cl.cgnat-g.v4.dfn.nl) (Ping timeout: 240 seconds)
2025-12-26 15:48:18 +0100__monty__(~toonn@user/toonn) toonn
2025-12-26 15:49:56 +0100merijn(~merijn@host-cl.cgnat-g.v4.dfn.nl) merijn
2025-12-26 15:55:45 +0100YoungFrog(~youngfrog@39.129-180-91.adsl-dyn.isp.belgacom.be) (Ping timeout: 245 seconds)
2025-12-26 15:56:25 +0100Pozyomka(~pyon@user/pyon) pyon
2025-12-26 15:56:35 +0100merijn(~merijn@host-cl.cgnat-g.v4.dfn.nl) (Ping timeout: 240 seconds)
2025-12-26 16:00:01 +0100humasect(~humasect@dyn-192-249-132-90.nexicom.net) (Remote host closed the connection)
2025-12-26 16:00:07 +0100YoungFrog(~youngfrog@2a02:a03f:ca07:f900:2fab:8436:f7d2:8c4a) youngfrog
2025-12-26 16:01:54 +0100humasect(~humasect@dyn-192-249-132-90.nexicom.net) humasect
2025-12-26 16:03:33 +0100merijn(~merijn@host-cl.cgnat-g.v4.dfn.nl) merijn
2025-12-26 16:04:23 +0100CiaoSen(~Jura@2a02:8071:64e1:da0:5a47:caff:fe78:33db) (Ping timeout: 265 seconds)
2025-12-26 16:06:26 +0100karenw(~karenw@user/karenw) karenw
2025-12-26 16:08:35 +0100merijn(~merijn@host-cl.cgnat-g.v4.dfn.nl) (Ping timeout: 244 seconds)
2025-12-26 16:18:20 +0100 <[exa]> Franciman ncf oh so it's mainly to force the instance into existence while aligning with how the applicative works
2025-12-26 16:18:24 +0100 <[exa]> ok fair enough
2025-12-26 16:18:33 +0100 <[exa]> thanks :)
2025-12-26 16:19:21 +0100merijn(~merijn@host-cl.cgnat-g.v4.dfn.nl) merijn
2025-12-26 16:19:32 +0100 <ncf> (well, i think there's only one (lawful) monad instance you can write)
2025-12-26 16:20:07 +0100 <Franciman> they mention this phenomenon in the mailing list that is referred to in the stackoverflow thread
2025-12-26 16:21:54 +0100 <Franciman> hi ncf !
2025-12-26 16:23:55 +0100merijn(~merijn@host-cl.cgnat-g.v4.dfn.nl) (Ping timeout: 240 seconds)
2025-12-26 16:28:23 +0100wootehfoot(~wootehfoo@user/wootehfoot) wootehfoot
2025-12-26 16:31:28 +0100 <[exa]> yeah, it's ... unpleasantly rigorous
2025-12-26 16:34:24 +0100Sgeo(~Sgeo@user/sgeo) Sgeo
2025-12-26 16:35:09 +0100merijn(~merijn@host-cl.cgnat-g.v4.dfn.nl) merijn
2025-12-26 16:40:10 +0100merijn(~merijn@host-cl.cgnat-g.v4.dfn.nl) (Ping timeout: 256 seconds)
2025-12-26 16:50:55 +0100merijn(~merijn@host-cl.cgnat-g.v4.dfn.nl) merijn
2025-12-26 16:55:59 +0100merijn(~merijn@host-cl.cgnat-g.v4.dfn.nl) (Ping timeout: 260 seconds)
2025-12-26 17:00:32 +0100karenw(~karenw@user/karenw) (Quit: Deep into that darkness peering...)
2025-12-26 17:03:58 +0100Axman6(~Axman6@user/axman6) (Remote host closed the connection)
2025-12-26 17:04:33 +0100merijn(~merijn@host-cl.cgnat-g.v4.dfn.nl) merijn
2025-12-26 17:09:19 +0100merijn(~merijn@host-cl.cgnat-g.v4.dfn.nl) (Ping timeout: 240 seconds)
2025-12-26 17:20:22 +0100merijn(~merijn@host-cl.cgnat-g.v4.dfn.nl) merijn
2025-12-26 17:24:55 +0100merijn(~merijn@host-cl.cgnat-g.v4.dfn.nl) (Ping timeout: 240 seconds)
2025-12-26 17:32:10 +0100wootehfoot(~wootehfoo@user/wootehfoot) (Ping timeout: 255 seconds)
2025-12-26 17:36:09 +0100merijn(~merijn@host-cl.cgnat-g.v4.dfn.nl) merijn
2025-12-26 17:37:44 +0100ZLima12_(~zlima12@user/meow/ZLima12) ZLima12
2025-12-26 17:37:59 +0100ZLima12(~zlima12@user/meow/ZLima12) (Ping timeout: 260 seconds)
2025-12-26 17:40:49 +0100merijn(~merijn@host-cl.cgnat-g.v4.dfn.nl) (Ping timeout: 256 seconds)
2025-12-26 17:51:40 +0100merijn(~merijn@host-cl.cgnat-g.v4.dfn.nl) merijn
2025-12-26 17:56:37 +0100merijn(~merijn@host-cl.cgnat-g.v4.dfn.nl) (Ping timeout: 246 seconds)
2025-12-26 17:56:39 +0100DigitteknohippieDigit
2025-12-26 18:05:34 +0100merijn(~merijn@host-cl.cgnat-g.v4.dfn.nl) merijn