2026/05/15

2026-05-15 00:01:27 +0000merijn(~merijn@62.45.136.136) (Ping timeout: 244 seconds)
2026-05-15 00:04:57 +0000tri(~tri@ool-44c70bcb.dyn.optonline.net)
2026-05-15 00:11:00 +0000tri(~tri@ool-44c70bcb.dyn.optonline.net) (Ping timeout: 246 seconds)
2026-05-15 00:12:37 +0000merijn(~merijn@host-cl.cgnat-g.v4.dfn.nl) merijn
2026-05-15 00:14:06 +0000AlexNoo_(~AlexNoo@85.174.181.90)
2026-05-15 00:17:02 +0000AlexZenon(~alzenon@94.233.241.177) (Ping timeout: 265 seconds)
2026-05-15 00:17:07 +0000Alex_delenda_est(~al_test@94.233.241.177) (Ping timeout: 264 seconds)
2026-05-15 00:17:21 +0000AlexNoo(~AlexNoo@94.233.241.177) (Ping timeout: 244 seconds)
2026-05-15 00:17:43 +0000merijn(~merijn@host-cl.cgnat-g.v4.dfn.nl) (Ping timeout: 264 seconds)
2026-05-15 00:20:35 +0000emmanuelux(~em@user/emmanuelux) (Ping timeout: 252 seconds)
2026-05-15 00:20:54 +0000AlexZenon(~alzenon@85.174.181.90)
2026-05-15 00:28:13 +0000merijn(~merijn@host-cl.cgnat-g.v4.dfn.nl) merijn
2026-05-15 00:30:56 +0000emmanuelux(~em@user/emmanuelux) emmanuelux
2026-05-15 00:33:42 +0000Pozyomka(~pyon@user/pyon) (Quit: brb)
2026-05-15 00:34:55 +0000merijn(~merijn@host-cl.cgnat-g.v4.dfn.nl) (Ping timeout: 244 seconds)
2026-05-15 00:35:01 +0000Pozyomka(~pyon@user/pyon) pyon
2026-05-15 00:39:26 +0000tri(~tri@ool-44c70bcb.dyn.optonline.net)
2026-05-15 00:45:25 +0000tri(~tri@ool-44c70bcb.dyn.optonline.net) (Ping timeout: 276 seconds)
2026-05-15 00:46:17 +0000merijn(~merijn@host-cl.cgnat-g.v4.dfn.nl) merijn
2026-05-15 00:51:09 +0000merijn(~merijn@host-cl.cgnat-g.v4.dfn.nl) (Ping timeout: 245 seconds)
2026-05-15 00:51:18 +0000paddymahoney(~paddymaho@pool-99-250-10-137.cpe.net.cable.rogers.com) (Ping timeout: 255 seconds)
2026-05-15 00:51:48 +0000craunts795335385(~craunts@136.158.7.226)
2026-05-15 00:52:02 +0000xff0x(~xff0x@2405:6580:b080:900:c0ba:1c73:d25a:2e80) (Ping timeout: 248 seconds)
2026-05-15 00:54:17 +0000paddymahoney(~paddymaho@pool-99-250-10-137.cpe.net.cable.rogers.com)
2026-05-15 00:59:01 +0000xff0x(~xff0x@2405:6580:b080:900:94b8:17a0:cf07:b333)
2026-05-15 01:02:04 +0000merijn(~merijn@host-cl.cgnat-g.v4.dfn.nl) merijn
2026-05-15 01:03:51 +0000tri(~tri@ool-44c70bcb.dyn.optonline.net)
2026-05-15 01:04:04 +0000xff0x(~xff0x@2405:6580:b080:900:94b8:17a0:cf07:b333) (Ping timeout: 245 seconds)
2026-05-15 01:07:20 +0000merijn(~merijn@host-cl.cgnat-g.v4.dfn.nl) (Ping timeout: 252 seconds)
2026-05-15 01:12:14 +0000tri(~tri@ool-44c70bcb.dyn.optonline.net) (Ping timeout: 244 seconds)
2026-05-15 01:17:52 +0000merijn(~merijn@host-cl.cgnat-g.v4.dfn.nl) merijn
2026-05-15 01:23:15 +0000merijn(~merijn@host-cl.cgnat-g.v4.dfn.nl) (Ping timeout: 265 seconds)
2026-05-15 01:25:58 +0000tri(~tri@ool-44c70bcb.dyn.optonline.net)
2026-05-15 01:26:01 +0000acidjnk_new3(~acidjnk@p200300d6e700e572c501f488808c0283.dip0.t-ipconnect.de) (Ping timeout: 248 seconds)
2026-05-15 01:30:55 +0000tri(~tri@ool-44c70bcb.dyn.optonline.net) (Ping timeout: 264 seconds)
2026-05-15 01:33:40 +0000merijn(~merijn@host-cl.cgnat-g.v4.dfn.nl) merijn
2026-05-15 01:38:43 +0000merijn(~merijn@host-cl.cgnat-g.v4.dfn.nl) (Ping timeout: 272 seconds)
2026-05-15 01:43:16 +0000tri(~tri@ool-44c70bcb.dyn.optonline.net)
2026-05-15 01:48:30 +0000tri(~tri@ool-44c70bcb.dyn.optonline.net) (Ping timeout: 245 seconds)
2026-05-15 01:49:28 +0000merijn(~merijn@host-cl.cgnat-g.v4.dfn.nl) merijn
2026-05-15 01:54:55 +0000merijn(~merijn@host-cl.cgnat-g.v4.dfn.nl) (Ping timeout: 264 seconds)
2026-05-15 02:01:11 +0000xff0x(~xff0x@fsb6a9491c.tkyc517.ap.nuro.jp)
2026-05-15 02:03:39 +0000tri(~tri@ool-44c70bcb.dyn.optonline.net)
2026-05-15 02:04:23 +0000crazazy(crazazy@tilde.town) (Quit: WeeChat 4.6.3)
2026-05-15 02:05:15 +0000merijn(~merijn@host-cl.cgnat-g.v4.dfn.nl) merijn
2026-05-15 02:06:18 +0000td_(~td@i5387092A.versanet.de) (Ping timeout: 256 seconds)
2026-05-15 02:08:11 +0000td_(~td@83.135.9.15)
2026-05-15 02:08:12 +0000tri(~tri@ool-44c70bcb.dyn.optonline.net) (Ping timeout: 265 seconds)
2026-05-15 02:11:59 +0000merijn(~merijn@host-cl.cgnat-g.v4.dfn.nl) (Ping timeout: 245 seconds)
2026-05-15 02:13:53 +0000layline_layline-away
2026-05-15 02:14:08 +0000layline-away(~layline@149.154.26.39) (Quit: ZZZzzz…)
2026-05-15 02:15:19 +0000 <monochrom> I'm devil's advocate and I say that one can always defunctionalize all of dynamic dispatch (table of function pointers), continuations (functions again), and effect systems (continuations again, and see the previous item) to just message passing.
2026-05-15 02:18:01 +0000 <monochrom> I have claimed isomorphisms between all of them, so "clearly" any one of them can be said to encompass the others. More clear is that none of them is more profound than the others, and furthermore the whole consideration is nothing profound either.
2026-05-15 02:19:39 +0000Square(~Square@user/square) Square
2026-05-15 02:21:32 +0000tri(~tri@ool-44c70bcb.dyn.optonline.net)
2026-05-15 02:23:17 +0000merijn(~merijn@host-cl.cgnat-g.v4.dfn.nl) merijn
2026-05-15 02:27:50 +0000tri(~tri@ool-44c70bcb.dyn.optonline.net) (Ping timeout: 256 seconds)
2026-05-15 02:28:24 +0000merijn(~merijn@host-cl.cgnat-g.v4.dfn.nl) (Ping timeout: 256 seconds)
2026-05-15 02:29:33 +0000merijn(~merijn@host-cl.cgnat-g.v4.dfn.nl) merijn
2026-05-15 02:32:45 +0000tri(~tri@ool-44c70bcb.dyn.optonline.net)
2026-05-15 02:34:04 +0000lisbeths(uid135845@id-135845.lymington.irccloud.com) lisbeths
2026-05-15 02:34:38 +0000merijn(~merijn@host-cl.cgnat-g.v4.dfn.nl) (Ping timeout: 256 seconds)
2026-05-15 02:36:50 +0000tri(~tri@ool-44c70bcb.dyn.optonline.net) (Ping timeout: 245 seconds)
2026-05-15 02:45:18 +0000merijn(~merijn@host-cl.cgnat-g.v4.dfn.nl) merijn
2026-05-15 02:50:17 +0000merijn(~merijn@host-cl.cgnat-g.v4.dfn.nl) (Ping timeout: 244 seconds)
2026-05-15 02:52:23 +0000tri(~tri@ool-44c70bcb.dyn.optonline.net)
2026-05-15 02:56:40 +0000tri(~tri@ool-44c70bcb.dyn.optonline.net) (Remote host closed the connection)
2026-05-15 02:56:52 +0000tri(~tri@ool-44c70bcb.dyn.optonline.net)
2026-05-15 03:01:06 +0000merijn(~merijn@host-cl.cgnat-g.v4.dfn.nl) merijn
2026-05-15 03:06:12 +0000merijn(~merijn@host-cl.cgnat-g.v4.dfn.nl) (Ping timeout: 265 seconds)
2026-05-15 03:16:53 +0000merijn(~merijn@host-cl.cgnat-g.v4.dfn.nl) merijn
2026-05-15 03:21:45 +0000merijn(~merijn@host-cl.cgnat-g.v4.dfn.nl) (Ping timeout: 246 seconds)
2026-05-15 03:27:52 +0000craunts795335385(~craunts@136.158.7.226) (Quit: The Lounge - https://thelounge.chat)
2026-05-15 03:34:01 +0000 <jreicher> I'm not presupposing or claiming any kind of profundity here. I'm just playing with the ideas to see what I find. But TBH I'm not sure I understand what you mean by "messaging passing" in a pure functional context. Can you explain that, if the question makes sense?
2026-05-15 03:39:54 +0000paddymahoney(~paddymaho@pool-99-250-10-137.cpe.net.cable.rogers.com) (Ping timeout: 245 seconds)
2026-05-15 03:49:54 +0000merijn(~merijn@host-cl.cgnat-g.v4.dfn.nl) merijn
2026-05-15 03:56:24 +0000merijn(~merijn@host-cl.cgnat-g.v4.dfn.nl) (Ping timeout: 246 seconds)
2026-05-15 04:07:56 +0000merijn(~merijn@host-cl.cgnat-g.v4.dfn.nl) merijn
2026-05-15 04:12:49 +0000merijn(~merijn@host-cl.cgnat-g.v4.dfn.nl) (Ping timeout: 245 seconds)
2026-05-15 04:19:40 +0000machinedgod(~machinedg@d172-219-48-230.abhsia.telus.net) (Ping timeout: 244 seconds)
2026-05-15 04:20:47 +0000paddymahoney(~paddymaho@pool-99-250-10-137.cpe.net.cable.rogers.com)
2026-05-15 04:24:55 +0000merijn(~merijn@host-cl.cgnat-g.v4.dfn.nl) merijn
2026-05-15 04:27:24 +0000 <monochrom> Today people say "call method m() of object o". But that's not the original OO. Original OO said "send message m() to object o".
2026-05-15 04:29:49 +0000merijn(~merijn@host-cl.cgnat-g.v4.dfn.nl) (Ping timeout: 265 seconds)
2026-05-15 04:30:21 +0000Inline(~noOne@ipservice-092-208-182-236.092.208.pools.vodafone-ip.de) (Ping timeout: 272 seconds)
2026-05-15 04:31:10 +0000 <monochrom> Meanwhile, FP people thought up taking CPS code, which requires a language that supports higher-order functions, and performing defunctionalization to convert continuations to data, therefore requiring only first-order functions. So now one doesn't pass around continuations, instead passes around data.
2026-05-15 04:31:29 +0000 <monochrom> And then you just have to accept message = data. Same difference.
2026-05-15 04:35:50 +0000 <monochrom> The data from defunctionalization are of an algebraic data type. The receiver does a case-of and reacts to different cases differently. That's just another way to say "dispatch".
2026-05-15 04:37:48 +0000 <monochrom> (unless you really insist that "dispatch" must involve function pointers, like average OO people do; then I can compromise with: case-of is defunctionalized dispatch.)
2026-05-15 04:40:17 +0000merijn(~merijn@host-cl.cgnat-g.v4.dfn.nl) merijn
2026-05-15 04:45:08 +0000merijn(~merijn@host-cl.cgnat-g.v4.dfn.nl) (Ping timeout: 252 seconds)
2026-05-15 04:49:29 +0000 <monochrom> An example of this equivalence is the exception effect. It can be implemented by "3" ways: bi-contiuation passing, stack frames, the Either monad which is an algebraic data type. But then bi-continuation passing is just church encoding of the Either ADT. And pushing stack frames containing function pointers is just passing continuations.
2026-05-15 04:55:11 +0000 <monochrom> This holds for all algebraic effects. All of them could have been free monads implemented as algebraic data types. People use delimited continuations for speed only; it's just a code optimization. There is no mathematical difference apart from performance.
2026-05-15 04:56:04 +0000merijn(~merijn@host-cl.cgnat-g.v4.dfn.nl) merijn