2026/06/17

2026-06-17 00:00:02 +0000merijn(~merijn@host-cl.cgnat-g.v4.dfn.nl) (Ping timeout: 256 seconds)
2026-06-17 00:01:00 +0000CiaoSen(~Jura@dynamic-046-114-193-162.46.114.pool.telefonica.de) (Ping timeout: 245 seconds)
2026-06-17 00:09:46 +0000xintron(~xintron@user/xintron) (Quit: Ping timeout (120 seconds))
2026-06-17 00:09:59 +0000xintron(~xintron@user/xintron) xintron
2026-06-17 00:10:16 +0000Natch(~natch@c-92-34-15-120.bbcust.telenor.se) (Read error: Connection reset by peer)
2026-06-17 00:10:23 +0000whereiseveryone(206ba86c98@2a03:6000:1812:100::2e4) (Read error: Connection reset by peer)
2026-06-17 00:10:28 +0000rselim(ce261f06ff@user/milesrout) (Read error: Connection reset by peer)
2026-06-17 00:10:30 +0000whereiseveryone(206ba86c98@2a03:6000:1812:100::2e4) jgart
2026-06-17 00:10:31 +0000mra(~mra@172-105-19-44.ip.linodeusercontent.com) (Read error: Connection reset by peer)
2026-06-17 00:10:33 +0000Franciman(~Franciman@mx1.fracta.dev) (Read error: Connection reset by peer)
2026-06-17 00:10:35 +0000cephei8(b8652603d7@user/cephei8) (Read error: Connection reset by peer)
2026-06-17 00:10:35 +0000evanrelf(3addc196af@2a03:6000:1812:100::f0) (Read error: Connection reset by peer)
2026-06-17 00:10:37 +0000rselim(ce261f06ff@user/milesrout) milesrout
2026-06-17 00:10:39 +0000mra(~mra@172-105-19-44.ip.linodeusercontent.com) mra
2026-06-17 00:10:40 +0000sp1ff``(~user@2601:1c2:4080:14c0:5df2:f2f4:8a07:70ec)
2026-06-17 00:10:42 +0000stefan-_(~cri@42dots.de) (Quit: ZNC 1.8.2+deb2ubuntu0.1 - https://znc.in)
2026-06-17 00:10:43 +0000evanrelf(3addc196af@2a03:6000:1812:100::f0) evanrelf
2026-06-17 00:10:43 +0000cephei8(b8652603d7@user/cephei8) cephei8
2026-06-17 00:10:47 +0000Franciman(~Franciman@mx1.fracta.dev) Franciman
2026-06-17 00:10:56 +0000merijn(~merijn@host-cl.cgnat-g.v4.dfn.nl) merijn
2026-06-17 00:10:58 +0000stefan-_(~cri@42dots.de) stefan-_
2026-06-17 00:11:01 +0000arkeet`(arkeet@moriya.ca)
2026-06-17 00:11:05 +0000firesquidwao(~a@put.gay)
2026-06-17 00:11:50 +0000jayanth(~jayanth@static-98-115-128-109.phlapa.fios.verizon.net) (Ping timeout: 245 seconds)
2026-06-17 00:13:00 +0000tuxpaint(~a@2600:3c06::f03c:93ff:fea6:ef0e) (Read error: Connection reset by peer)
2026-06-17 00:13:07 +0000sp1ff`(~user@2601:1c2:4080:14c0:5df2:f2f4:8a07:70ec) (Ping timeout: 276 seconds)
2026-06-17 00:13:07 +0000arkeet(arkeet@moriya.ca) (Ping timeout: 276 seconds)
2026-06-17 00:13:07 +0000arkeet`arkeet
2026-06-17 00:15:11 +0000merijn(~merijn@host-cl.cgnat-g.v4.dfn.nl) (Ping timeout: 244 seconds)
2026-06-17 00:15:34 +0000Natch(~natch@c-92-34-15-120.bbcust.telenor.se)
2026-06-17 00:26:17 +0000merijn(~merijn@host-cl.cgnat-g.v4.dfn.nl) merijn
2026-06-17 00:33:13 +0000merijn(~merijn@host-cl.cgnat-g.v4.dfn.nl) (Ping timeout: 248 seconds)
2026-06-17 00:40:59 +0000Axman6(~Axman6@user/axman6) Axman6
2026-06-17 00:43:00 +0000Axma66174(~Axman6@user/axman6) (Ping timeout: 245 seconds)
2026-06-17 00:44:21 +0000merijn(~merijn@host-cl.cgnat-g.v4.dfn.nl) merijn
2026-06-17 00:49:18 +0000merijn(~merijn@host-cl.cgnat-g.v4.dfn.nl) (Ping timeout: 265 seconds)
2026-06-17 00:56:42 +0000xff0x(~xff0x@2405:6580:b080:900:f9b3:ddf6:f890:9081) (Ping timeout: 246 seconds)
2026-06-17 00:59:43 +0000merijn(~merijn@host-cl.cgnat-g.v4.dfn.nl) merijn
2026-06-17 01:04:28 +0000merijn(~merijn@host-cl.cgnat-g.v4.dfn.nl) (Ping timeout: 276 seconds)
2026-06-17 01:15:06 +0000merijn(~merijn@host-cl.cgnat-g.v4.dfn.nl) merijn
2026-06-17 01:18:44 +0000weary-traveler(~user@user/user363627) user363627
2026-06-17 01:19:27 +0000merijn(~merijn@host-cl.cgnat-g.v4.dfn.nl) (Ping timeout: 246 seconds)
2026-06-17 01:23:36 +0000 <raincomplex> i think abstractions are most useful when they're clear and simple (and potentially hide a lot of complexity)
2026-06-17 01:23:42 +0000 <raincomplex> like: a function is a thing that takes some input values and produces an output value
2026-06-17 01:26:16 +0000 <raincomplex> a coroutine is a function that can yield values part way through its execution, and then be resumed
2026-06-17 01:30:18 +0000 <raincomplex> these are soft definitions that help me to understand when to use these things
2026-06-17 01:30:28 +0000merijn(~merijn@host-cl.cgnat-g.v4.dfn.nl) merijn
2026-06-17 01:34:42 +0000merijn(~merijn@host-cl.cgnat-g.v4.dfn.nl) (Ping timeout: 248 seconds)
2026-06-17 01:40:26 +0000bdkl(~bdkl@user/bdkl) bdkl
2026-06-17 01:43:09 +0000bdkl(~bdkl@user/bdkl) (Quit: bdkl)
2026-06-17 01:44:37 +0000RMSBach(~RMSBach@24.210.2.24) (Quit: ZNC 1.9.1 - https://znc.in)
2026-06-17 01:45:50 +0000merijn(~merijn@host-cl.cgnat-g.v4.dfn.nl) merijn
2026-06-17 01:47:45 +0000RMSBach(~RMSBach@2603:6013:9b40:6f2::1040) RMSBach
2026-06-17 01:49:49 +0000tremon(~tremon@83-80-159-219.cable.dynamic.v4.ziggo.nl) (Remote host closed the connection)
2026-06-17 01:50:37 +0000merijn(~merijn@host-cl.cgnat-g.v4.dfn.nl) (Ping timeout: 276 seconds)
2026-06-17 01:51:49 +0000xff0x(~xff0x@fsb6a9491c.tkyc517.ap.nuro.jp)
2026-06-17 01:56:55 +0000lisbeths(uid135845@id-135845.lymington.irccloud.com) (Quit: Connection closed for inactivity)
2026-06-17 02:01:11 +0000merijn(~merijn@host-cl.cgnat-g.v4.dfn.nl) merijn
2026-06-17 02:05:34 +0000fgarcia(~lei@user/fgarcia) (Ping timeout: 276 seconds)
2026-06-17 02:06:48 +0000fgarcia(~lei@user/fgarcia) fgarcia
2026-06-17 02:07:45 +0000merijn(~merijn@host-cl.cgnat-g.v4.dfn.nl) (Ping timeout: 246 seconds)
2026-06-17 02:07:58 +0000 <monochrom> I know how to formalize those too. But perhaps my point is not formalization. I mentioned "falsifiable", that's my real bottom line. It just happens that math is a very good way to do that.
2026-06-17 02:10:01 +0000 <monochrom> Here is an example. You have heard "survival of the fittest". I know how to falsify "this species survives". I don't know how to falsify "fit", unless we just say "it's just a synonym for survival", at which point we don't need it.
2026-06-17 02:10:03 +0000fgarcia(~lei@user/fgarcia) (Max SendQ exceeded)
2026-06-17 02:10:49 +0000 <monochrom> Likewise, I know how to falsify "foo is a monad". I don't know how to falsify "foo is a context", unless we just define "context = monad", at which point we don't need it either.
2026-06-17 02:11:24 +0000 <monochrom> BTW you don't really want "context = monad". Applicatives feel like "context" too.
2026-06-17 02:13:36 +0000wickedjargon(~user@64.114.24.74) wickedjargon
2026-06-17 02:15:26 +0000 <monochrom> I also mentioned "work with". I only know how to work with falsifiable definitions, that's why that's my bottom line. I have to be able to use something, not just "feel" that I "understand".
2026-06-17 02:16:49 +0000fgarcia(~lei@user/fgarcia) fgarcia
2026-06-17 02:19:24 +0000merijn(~merijn@host-cl.cgnat-g.v4.dfn.nl) merijn
2026-06-17 02:19:25 +0000 <monochrom> Here is a true story. I saw https://medium.com/better-programming/monads-are-just-fancy-semicolons-ffe38401fd0e . Then I put it on an exam and the question was "show that it breaks a monad law". An example of being intuitive, makes you feel great, and falsified.
2026-06-17 02:23:26 +0000spew(~spew@user/spew) spew
2026-06-17 02:24:23 +0000 <monochrom> Ironically "semicolon" is a good idea on its own because people already expect associativity and identity of it. That I can work with.
2026-06-17 02:24:25 +0000merijn(~merijn@host-cl.cgnat-g.v4.dfn.nl) (Ping timeout: 276 seconds)
2026-06-17 02:27:51 +0000 <monochrom> (But Kleisli arrow is the better destination if you want to start with semicolon.)
2026-06-17 02:28:49 +0000emilym(~Thunderbi@user/emilym) emilym
2026-06-17 02:32:49 +0000emilym(~Thunderbi@user/emilym) (Ping timeout: 245 seconds)
2026-06-17 02:34:45 +0000merijn(~merijn@host-cl.cgnat-g.v4.dfn.nl) merijn
2026-06-17 02:38:42 +0000fgarcia(~lei@user/fgarcia) (Ping timeout: 256 seconds)
2026-06-17 02:39:10 +0000merijn(~merijn@host-cl.cgnat-g.v4.dfn.nl) (Ping timeout: 254 seconds)
2026-06-17 02:40:41 +0000fgarcia(~lei@user/fgarcia) fgarcia
2026-06-17 02:50:07 +0000merijn(~merijn@host-cl.cgnat-g.v4.dfn.nl) merijn
2026-06-17 02:51:44 +0000td_(~td@i53870916.versanet.de) (Ping timeout: 244 seconds)
2026-06-17 02:54:23 +0000wickedjargon(~user@64.114.24.74) (Ping timeout: 268 seconds)
2026-06-17 02:54:42 +0000merijn(~merijn@host-cl.cgnat-g.v4.dfn.nl) (Ping timeout: 248 seconds)
2026-06-17 02:57:57 +0000jayanth(~jayanth@static-98-115-128-109.phlapa.fios.verizon.net)
2026-06-17 02:58:46 +0000machinedgod(~machinedg@d172-219-48-230.abhsia.telus.net) (Ping timeout: 252 seconds)
2026-06-17 03:01:38 +0000leppard(~noOne@ipservice-092-208-182-236.092.208.pools.vodafone-ip.de) (Ping timeout: 248 seconds)
2026-06-17 03:03:35 +0000Katarushisu6(~Katarushi@finc-20-b2-v4wan-169598-cust1799.vm7.cable.virginm.net) (Quit: Ping timeout (120 seconds))
2026-06-17 03:03:57 +0000Katarushisu6(~Katarushi@finc-20-b2-v4wan-169598-cust1799.vm7.cable.virginm.net)
2026-06-17 03:05:29 +0000merijn(~merijn@host-cl.cgnat-g.v4.dfn.nl) merijn
2026-06-17 03:10:34 +0000merijn(~merijn@host-cl.cgnat-g.v4.dfn.nl) (Ping timeout: 276 seconds)
2026-06-17 03:13:40 +0000Axman6352(~Axman6@user/axman6) Axman6
2026-06-17 03:15:55 +0000Axman6(~Axman6@user/axman6) (Ping timeout: 245 seconds)
2026-06-17 03:19:22 +0000m2(~travltux@user/travltux) (Quit: WeeChat 4.7.2)
2026-06-17 03:20:51 +0000merijn(~merijn@host-cl.cgnat-g.v4.dfn.nl) merijn
2026-06-17 03:20:51 +0000synchromesh(~john@2406:5a00:247e:1500:a691:b1ff:0:f9d) (Read error: Connection reset by peer)
2026-06-17 03:22:35 +0000m(~travltux@user/travltux) travltux
2026-06-17 03:26:10 +0000merijn(~merijn@host-cl.cgnat-g.v4.dfn.nl) (Ping timeout: 276 seconds)
2026-06-17 03:26:43 +0000synchromesh(~john@2406:5a00:247e:1500:a691:b1ff:0:f9d) synchromesh
2026-06-17 03:29:32 +0000oats(~oats@user/oats) (Read error: Connection reset by peer)
2026-06-17 03:29:47 +0000oats(~oats@user/oats) oats
2026-06-17 03:36:13 +0000merijn(~merijn@host-cl.cgnat-g.v4.dfn.nl) merijn
2026-06-17 03:40:04 +0000xff0x(~xff0x@fsb6a9491c.tkyc517.ap.nuro.jp) (Ping timeout: 244 seconds)
2026-06-17 03:42:39 +0000xff0x(~xff0x@fsb6a9491c.tkyc517.ap.nuro.jp)
2026-06-17 03:43:43 +0000merijn(~merijn@host-cl.cgnat-g.v4.dfn.nl) (Ping timeout: 276 seconds)
2026-06-17 03:46:06 +0000jayanth(~jayanth@static-98-115-128-109.phlapa.fios.verizon.net) (Ping timeout: 246 seconds)
2026-06-17 03:54:16 +0000merijn(~merijn@host-cl.cgnat-g.v4.dfn.nl) merijn