2025/02/25

2025-02-25 00:00:34 +0100olivial(~benjaminl@user/benjaminl) (Ping timeout: 260 seconds)
2025-02-25 00:06:10 +0100merijn(~merijn@host-vr.cgnat-g.v4.dfn.nl) merijn
2025-02-25 00:07:12 +0100Sgeo(~Sgeo@user/sgeo) Sgeo
2025-02-25 00:09:12 +0100malte(~malte@mal.tc) malte
2025-02-25 00:09:59 +0100AlexNoo(~AlexNoo@178.34.162.44) (Read error: Connection reset by peer)
2025-02-25 00:11:12 +0100merijn(~merijn@host-vr.cgnat-g.v4.dfn.nl) (Ping timeout: 272 seconds)
2025-02-25 00:11:25 +0100gmg(~user@user/gehmehgeh) (Remote host closed the connection)
2025-02-25 00:12:14 +0100AlexNoo(~AlexNoo@178.34.162.44)
2025-02-25 00:14:01 +0100gmg(~user@user/gehmehgeh) gehmehgeh
2025-02-25 00:17:49 +0100malte(~malte@mal.tc) (Remote host closed the connection)
2025-02-25 00:18:12 +0100zungi(~tory@user/andrewchawk) (Ping timeout: 264 seconds)
2025-02-25 00:20:17 +0100malte(~malte@mal.tc) malte
2025-02-25 00:20:23 +0100peterbecich(~Thunderbi@syn-047-229-123-186.res.spectrum.com) (Ping timeout: 245 seconds)
2025-02-25 00:21:58 +0100merijn(~merijn@host-vr.cgnat-g.v4.dfn.nl) merijn
2025-02-25 00:23:20 +0100zungi(~tory@user/andrewchawk) andrewchawk
2025-02-25 00:26:52 +0100merijn(~merijn@host-vr.cgnat-g.v4.dfn.nl) (Ping timeout: 252 seconds)
2025-02-25 00:29:47 +0100pabs3(~pabs3@user/pabs3) (Remote host closed the connection)
2025-02-25 00:30:44 +0100pabs3(~pabs3@user/pabs3) pabs3
2025-02-25 00:37:44 +0100alfiee(~alfiee@user/alfiee) alfiee
2025-02-25 00:37:45 +0100merijn(~merijn@host-vr.cgnat-g.v4.dfn.nl) merijn
2025-02-25 00:42:13 +0100alfiee(~alfiee@user/alfiee) (Ping timeout: 248 seconds)
2025-02-25 00:42:39 +0100Unicorn_Princess(~Unicorn_P@user/Unicorn-Princess/x-3540542) (Remote host closed the connection)
2025-02-25 00:44:28 +0100merijn(~merijn@host-vr.cgnat-g.v4.dfn.nl) (Ping timeout: 252 seconds)
2025-02-25 00:50:47 +0100merijn(~merijn@host-vr.cgnat-g.v4.dfn.nl) merijn
2025-02-25 00:55:43 +0100merijn(~merijn@host-vr.cgnat-g.v4.dfn.nl) (Ping timeout: 244 seconds)
2025-02-25 00:57:47 +0100mange(~user@user/mange) mange
2025-02-25 01:02:39 +0100olivial(~benjaminl@user/benjaminl) benjaminl
2025-02-25 01:03:10 +0100vanishingideal(~vanishing@user/vanishingideal) (Remote host closed the connection)
2025-02-25 01:04:25 +0100olivial_(~benjaminl@c-76-144-12-233.hsd1.or.comcast.net) (Ping timeout: 268 seconds)
2025-02-25 01:06:34 +0100merijn(~merijn@host-vr.cgnat-g.v4.dfn.nl) merijn
2025-02-25 01:07:05 +0100eL_Bart0(eL_Bart0@dietunichtguten.org) (Ping timeout: 244 seconds)
2025-02-25 01:08:28 +0100olivial(~benjaminl@user/benjaminl) (Ping timeout: 265 seconds)
2025-02-25 01:11:26 +0100merijn(~merijn@host-vr.cgnat-g.v4.dfn.nl) (Ping timeout: 244 seconds)
2025-02-25 01:14:54 +0100olivial(~benjaminl@user/benjaminl) benjaminl
2025-02-25 01:19:35 +0100vanishingideal(~vanishing@user/vanishingideal) vanishingideal
2025-02-25 01:22:22 +0100merijn(~merijn@host-vr.cgnat-g.v4.dfn.nl) merijn
2025-02-25 01:23:07 +0100alfiee(~alfiee@user/alfiee) alfiee
2025-02-25 01:27:29 +0100merijn(~merijn@host-vr.cgnat-g.v4.dfn.nl) (Ping timeout: 260 seconds)
2025-02-25 01:27:29 +0100alfiee(~alfiee@user/alfiee) (Ping timeout: 248 seconds)
2025-02-25 01:38:07 +0100merijn(~merijn@host-vr.cgnat-g.v4.dfn.nl) merijn
2025-02-25 01:38:41 +0100euleritian(~euleritia@ip4d17fae8.dynamic.kabel-deutschland.de) (Ping timeout: 248 seconds)
2025-02-25 01:43:40 +0100merijn(~merijn@host-vr.cgnat-g.v4.dfn.nl) (Ping timeout: 272 seconds)
2025-02-25 01:49:09 +0100ljdarj(~Thunderbi@user/ljdarj) (Ping timeout: 244 seconds)
2025-02-25 01:51:42 +0100euleritian(~euleritia@ip4d17fae8.dynamic.kabel-deutschland.de)
2025-02-25 01:53:56 +0100merijn(~merijn@host-vr.cgnat-g.v4.dfn.nl) merijn
2025-02-25 01:56:27 +0100xff0x(~xff0x@2405:6580:b080:900:6dac:d85c:a56f:65f8) (Ping timeout: 276 seconds)
2025-02-25 01:57:27 +0100acidjnk(~acidjnk@p200300d6e7283f506dba6a8fb70c33a2.dip0.t-ipconnect.de) (Ping timeout: 268 seconds)
2025-02-25 01:59:13 +0100merijn(~merijn@host-vr.cgnat-g.v4.dfn.nl) (Ping timeout: 265 seconds)
2025-02-25 01:59:34 +0100m5zs7k(aquares@web10.mydevil.net) (Quit: m5zs7k)
2025-02-25 02:03:29 +0100m5zs7k(aquares@web10.mydevil.net) m5zs7k
2025-02-25 02:08:32 +0100alfiee(~alfiee@user/alfiee) alfiee
2025-02-25 02:09:46 +0100merijn(~merijn@host-vr.cgnat-g.v4.dfn.nl) merijn
2025-02-25 02:09:58 +0100zlqrvx(~zlqrvx@user/zlqrvx) (Quit: %quit%)
2025-02-25 02:11:03 +0100zlqrvx(~zlqrvx@user/zlqrvx) zlqrvx
2025-02-25 02:12:50 +0100alfiee(~alfiee@user/alfiee) (Ping timeout: 252 seconds)
2025-02-25 02:14:24 +0100merijn(~merijn@host-vr.cgnat-g.v4.dfn.nl) (Ping timeout: 246 seconds)
2025-02-25 02:16:48 +0100merijn(~merijn@host-vr.cgnat-g.v4.dfn.nl) merijn
2025-02-25 02:17:36 +0100sprotte24(~sprotte24@p200300d16f3063004006d4006bd9f81a.dip0.t-ipconnect.de) (Read error: Connection reset by peer)
2025-02-25 02:21:38 +0100merijn(~merijn@host-vr.cgnat-g.v4.dfn.nl) (Ping timeout: 252 seconds)
2025-02-25 02:32:05 +0100Square2(~Square4@user/square) (Ping timeout: 265 seconds)
2025-02-25 02:32:38 +0100merijn(~merijn@host-vr.cgnat-g.v4.dfn.nl) merijn
2025-02-25 02:35:55 +0100alp(~alp@2001:861:8ca0:4940:4960:283e:5e01:3e7b) (Ping timeout: 252 seconds)
2025-02-25 02:38:14 +0100merijn(~merijn@host-vr.cgnat-g.v4.dfn.nl) (Ping timeout: 244 seconds)
2025-02-25 02:39:15 +0100Square(~Square4@user/square) Square
2025-02-25 02:43:32 +0100califax(~califax@user/califx) (Remote host closed the connection)
2025-02-25 02:43:55 +0100califax(~califax@user/califx) califx
2025-02-25 02:43:55 +0100machinedgod(~machinedg@d108-173-18-100.abhsia.telus.net) (Ping timeout: 244 seconds)
2025-02-25 02:46:43 +0100euleritian(~euleritia@ip4d17fae8.dynamic.kabel-deutschland.de) (Remote host closed the connection)
2025-02-25 02:47:10 +0100euleritian(~euleritia@ip4d17fae8.dynamic.kabel-deutschland.de)
2025-02-25 02:47:21 +0100euleritian(~euleritia@ip4d17fae8.dynamic.kabel-deutschland.de) (Remote host closed the connection)
2025-02-25 02:48:22 +0100euleritian(~euleritia@ip4d17fae8.dynamic.kabel-deutschland.de)
2025-02-25 02:48:48 +0100euleritian(~euleritia@ip4d17fae8.dynamic.kabel-deutschland.de) (Remote host closed the connection)
2025-02-25 02:49:11 +0100euleritian(~euleritia@ip4d17fae8.dynamic.kabel-deutschland.de)
2025-02-25 02:49:17 +0100xff0x(~xff0x@fsb6a9491c.tkyc517.ap.nuro.jp)
2025-02-25 02:49:40 +0100merijn(~merijn@host-vr.cgnat-g.v4.dfn.nl) merijn
2025-02-25 02:54:26 +0100merijn(~merijn@host-vr.cgnat-g.v4.dfn.nl) (Ping timeout: 248 seconds)
2025-02-25 02:54:56 +0100alfiee(~alfiee@user/alfiee) alfiee
2025-02-25 02:59:23 +0100alfiee(~alfiee@user/alfiee) (Ping timeout: 252 seconds)
2025-02-25 03:05:22 +0100merijn(~merijn@host-vr.cgnat-g.v4.dfn.nl) merijn
2025-02-25 03:06:52 +0100Tuplanolla(~Tuplanoll@91-159-69-59.elisa-laajakaista.fi) (Quit: Leaving.)
2025-02-25 03:10:24 +0100merijn(~merijn@host-vr.cgnat-g.v4.dfn.nl) (Ping timeout: 252 seconds)
2025-02-25 03:21:08 +0100merijn(~merijn@host-vr.cgnat-g.v4.dfn.nl) merijn
2025-02-25 03:25:26 +0100merijn(~merijn@host-vr.cgnat-g.v4.dfn.nl) (Ping timeout: 252 seconds)
2025-02-25 03:36:32 +0100merijn(~merijn@host-vr.cgnat-g.v4.dfn.nl) merijn
2025-02-25 03:40:20 +0100alfiee(~alfiee@user/alfiee) alfiee
2025-02-25 03:43:18 +0100merijn(~merijn@host-vr.cgnat-g.v4.dfn.nl) (Ping timeout: 245 seconds)
2025-02-25 03:44:30 +0100alfiee(~alfiee@user/alfiee) (Ping timeout: 252 seconds)
2025-02-25 03:50:09 +0100petrichor(~znc-user@user/petrichor) (Read error: Connection reset by peer)
2025-02-25 03:51:56 +0100euleritian(~euleritia@ip4d17fae8.dynamic.kabel-deutschland.de) (Remote host closed the connection)
2025-02-25 03:52:16 +0100euleritian(~euleritia@ip4d17fae8.dynamic.kabel-deutschland.de)
2025-02-25 03:52:59 +0100petrichor(~znc-user@user/petrichor) petrichor
2025-02-25 03:54:30 +0100peterbecich(~Thunderbi@syn-047-229-123-186.res.spectrum.com) peterbecich
2025-02-25 03:54:35 +0100merijn(~merijn@host-vr.cgnat-g.v4.dfn.nl) merijn
2025-02-25 03:54:37 +0100ash3en(~Thunderbi@2a03:7846:b6eb:101:93ac:a90a:da67:f207) (Ping timeout: 268 seconds)
2025-02-25 03:59:32 +0100merijn(~merijn@host-vr.cgnat-g.v4.dfn.nl) (Ping timeout: 252 seconds)
2025-02-25 04:01:58 +0100ash3en(~Thunderbi@2a03:7846:b6eb:101:93ac:a90a:da67:f207) ash3en
2025-02-25 04:04:30 +0100tavare(~tavare@user/tavare) tavare
2025-02-25 04:07:01 +0100xff0x(~xff0x@fsb6a9491c.tkyc517.ap.nuro.jp) (Ping timeout: 248 seconds)
2025-02-25 04:07:36 +0100peterbecich(~Thunderbi@syn-047-229-123-186.res.spectrum.com) (Ping timeout: 252 seconds)
2025-02-25 04:11:08 +0100xff0x(~xff0x@fsb6a9491c.tkyc517.ap.nuro.jp)
2025-02-25 04:18:38 +0100tavare(~tavare@user/tavare) (Remote host closed the connection)
2025-02-25 04:24:27 +0100dmoerner(~dmoerner@fedora/dmoerner) dmoerner
2025-02-25 04:26:10 +0100merijn(~merijn@host-vr.cgnat-g.v4.dfn.nl) merijn
2025-02-25 04:26:44 +0100alfiee(~alfiee@user/alfiee) alfiee
2025-02-25 04:26:56 +0100weary-traveler(~user@user/user363627) user363627
2025-02-25 04:27:48 +0100zungi(~tory@user/andrewchawk) (Ping timeout: 264 seconds)
2025-02-25 04:29:37 +0100zungi(~tory@user/andrewchawk) andrewchawk
2025-02-25 04:30:52 +0100merijn(~merijn@host-vr.cgnat-g.v4.dfn.nl) (Ping timeout: 244 seconds)
2025-02-25 04:31:04 +0100alfiee(~alfiee@user/alfiee) (Ping timeout: 252 seconds)
2025-02-25 04:41:58 +0100merijn(~merijn@host-vr.cgnat-g.v4.dfn.nl) merijn
2025-02-25 04:46:09 +0100merijn(~merijn@host-vr.cgnat-g.v4.dfn.nl) (Ping timeout: 244 seconds)
2025-02-25 04:47:19 +0100L29Ah(~L29Ah@wikipedia/L29Ah) (Read error: Connection timed out)
2025-02-25 04:57:20 +0100merijn(~merijn@host-vr.cgnat-g.v4.dfn.nl) merijn
2025-02-25 05:02:24 +0100merijn(~merijn@host-vr.cgnat-g.v4.dfn.nl) (Ping timeout: 265 seconds)
2025-02-25 05:08:42 +0100euleritian(~euleritia@ip4d17fae8.dynamic.kabel-deutschland.de) (Remote host closed the connection)
2025-02-25 05:08:56 +0100euleritian(~euleritia@ip4d17fae8.dynamic.kabel-deutschland.de)
2025-02-25 05:09:02 +0100euleritian(~euleritia@ip4d17fae8.dynamic.kabel-deutschland.de) (Read error: Connection reset by peer)
2025-02-25 05:09:27 +0100euleritian(~euleritia@ip4d17fae8.dynamic.kabel-deutschland.de)
2025-02-25 05:12:48 +0100alfiee(~alfiee@user/alfiee) alfiee
2025-02-25 05:13:07 +0100merijn(~merijn@host-vr.cgnat-g.v4.dfn.nl) merijn
2025-02-25 05:17:03 +0100alfiee(~alfiee@user/alfiee) (Ping timeout: 245 seconds)
2025-02-25 05:20:16 +0100merijn(~merijn@host-vr.cgnat-g.v4.dfn.nl) (Ping timeout: 272 seconds)
2025-02-25 05:21:53 +0100peterbecich(~Thunderbi@syn-047-229-123-186.res.spectrum.com) peterbecich
2025-02-25 05:27:11 +0100petrichor(~znc-user@user/petrichor) (Read error: Connection reset by peer)
2025-02-25 05:28:58 +0100petrichor(~znc-user@user/petrichor) petrichor
2025-02-25 05:29:25 +0100bitdex(~bitdex@gateway/tor-sasl/bitdex) bitdex
2025-02-25 05:31:11 +0100merijn(~merijn@host-vr.cgnat-g.v4.dfn.nl) merijn
2025-02-25 05:35:58 +0100merijn(~merijn@host-vr.cgnat-g.v4.dfn.nl) (Ping timeout: 252 seconds)
2025-02-25 05:39:15 +0100aforemny(~aforemny@i59F4C45F.versanet.de) aforemny
2025-02-25 05:39:35 +0100aforemny_(~aforemny@2001:9e8:6cc6:4c00:6a7:4bec:d8bb:d20c) (Ping timeout: 244 seconds)
2025-02-25 05:43:42 +0100peterbecich(~Thunderbi@syn-047-229-123-186.res.spectrum.com) (Ping timeout: 272 seconds)
2025-02-25 05:46:58 +0100merijn(~merijn@host-vr.cgnat-g.v4.dfn.nl) merijn
2025-02-25 05:49:39 +0100euphores(~SASL_euph@user/euphores) (Quit: Leaving.)
2025-02-25 05:49:53 +0100Square(~Square4@user/square) (Ping timeout: 248 seconds)
2025-02-25 05:51:44 +0100merijn(~merijn@host-vr.cgnat-g.v4.dfn.nl) (Ping timeout: 252 seconds)
2025-02-25 05:57:54 +0100 <ski> "exponentiation involves instantiating one numeral to `r -> r`" -- did this, for implication goals, in a logic programming prototype, having unbounded number of continuation levels (and then `IO' or `ST s' at the bottom, for update-in-place of logic variables)
2025-02-25 05:58:33 +0100alfiee(~alfiee@user/alfiee) alfiee
2025-02-25 06:01:51 +0100merijn(~merijn@host-vr.cgnat-g.v4.dfn.nl) merijn
2025-02-25 06:02:53 +0100alfiee(~alfiee@user/alfiee) (Ping timeout: 245 seconds)
2025-02-25 06:03:49 +0100j1n37(~j1n37@user/j1n37) j1n37
2025-02-25 06:04:12 +0100j1n37-(~j1n37@user/j1n37) (Ping timeout: 252 seconds)
2025-02-25 06:06:38 +0100merijn(~merijn@host-vr.cgnat-g.v4.dfn.nl) (Ping timeout: 245 seconds)
2025-02-25 06:17:40 +0100merijn(~merijn@host-vr.cgnat-g.v4.dfn.nl) merijn
2025-02-25 06:22:15 +0100merijn(~merijn@host-vr.cgnat-g.v4.dfn.nl) (Ping timeout: 244 seconds)
2025-02-25 06:33:27 +0100merijn(~merijn@host-vr.cgnat-g.v4.dfn.nl) merijn
2025-02-25 06:35:13 +0100polyphem(~polyphem@p4fc2ccda.dip0.t-ipconnect.de) polyphem
2025-02-25 06:38:25 +0100merijn(~merijn@host-vr.cgnat-g.v4.dfn.nl) (Ping timeout: 248 seconds)
2025-02-25 06:40:30 +0100j1n37(~j1n37@user/j1n37) (Read error: Connection reset by peer)
2025-02-25 06:41:00 +0100misterfish(~misterfis@84.53.85.146) misterfish
2025-02-25 06:42:13 +0100sudden(~cat@user/sudden) (Ping timeout: 248 seconds)
2025-02-25 06:43:48 +0100polyphem(~polyphem@p4fc2ccda.dip0.t-ipconnect.de) (Ping timeout: 252 seconds)
2025-02-25 06:44:11 +0100j1n37(~j1n37@user/j1n37) j1n37
2025-02-25 06:44:58 +0100alfiee(~alfiee@user/alfiee) alfiee
2025-02-25 06:45:09 +0100k0zy(~user@user/k0zy) k0zy
2025-02-25 06:47:17 +0100rvalue(~rvalue@user/rvalue) (Read error: Connection reset by peer)
2025-02-25 06:47:49 +0100rvalue(~rvalue@user/rvalue) rvalue
2025-02-25 06:49:08 +0100alfiee(~alfiee@user/alfiee) (Ping timeout: 245 seconds)
2025-02-25 06:49:14 +0100merijn(~merijn@host-vr.cgnat-g.v4.dfn.nl) merijn
2025-02-25 06:54:18 +0100sudden(~cat@user/sudden) sudden
2025-02-25 06:55:48 +0100merijn(~merijn@host-vr.cgnat-g.v4.dfn.nl) (Ping timeout: 245 seconds)
2025-02-25 06:56:36 +0100fp1(~Thunderbi@wireless-86-50-141-43.open.aalto.fi) fp
2025-02-25 06:57:40 +0100califax(~califax@user/califx) (Remote host closed the connection)
2025-02-25 06:58:33 +0100califax(~califax@user/califx) califx
2025-02-25 06:59:55 +0100alp(~alp@2001:861:8ca0:4940:1509:d62f:8652:bd61)
2025-02-25 07:00:42 +0100fp1(~Thunderbi@wireless-86-50-141-43.open.aalto.fi) (Ping timeout: 244 seconds)
2025-02-25 07:01:16 +0100talismanick(~user@2601:644:937c:ed10::ae5) (Read error: Connection reset by peer)
2025-02-25 07:03:11 +0100michalz(~michalz@185.246.207.203)
2025-02-25 07:03:58 +0100ensyde(~ensyde@2601:5c6:c200:6dc0::a1d8) ensyde
2025-02-25 07:07:18 +0100merijn(~merijn@host-vr.cgnat-g.v4.dfn.nl) merijn
2025-02-25 07:10:08 +0100machinedgod(~machinedg@d108-173-18-100.abhsia.telus.net) machinedgod
2025-02-25 07:12:04 +0100merijn(~merijn@host-vr.cgnat-g.v4.dfn.nl) (Ping timeout: 244 seconds)
2025-02-25 07:15:37 +0100echoreply(~echoreply@2001:19f0:9002:1f3b:5400:ff:fe6f:8b8d) (Quit: WeeChat 2.8)
2025-02-25 07:16:31 +0100echoreply(~echoreply@45.32.163.16) echoreply
2025-02-25 07:17:30 +0100takuan(~takuan@d8D86B601.access.telenet.be)
2025-02-25 07:19:00 +0100k0zy(~user@user/k0zy) (Ping timeout: 252 seconds)
2025-02-25 07:23:06 +0100merijn(~merijn@host-vr.cgnat-g.v4.dfn.nl) merijn
2025-02-25 07:25:56 +0100hughjfchen(~hughjfche@vmi2417424.contaboserver.net) (Quit: WeeChat 4.4.3)
2025-02-25 07:26:20 +0100simplystuart(~simplystu@c-75-75-152-164.hsd1.pa.comcast.net) (Ping timeout: 252 seconds)
2025-02-25 07:27:59 +0100alp(~alp@2001:861:8ca0:4940:1509:d62f:8652:bd61) (Ping timeout: 260 seconds)
2025-02-25 07:28:00 +0100merijn(~merijn@host-vr.cgnat-g.v4.dfn.nl) (Ping timeout: 246 seconds)
2025-02-25 07:28:08 +0100hughjfchen(~hughjfche@vmi2417424.contaboserver.net) hughjfchen
2025-02-25 07:30:41 +0100simplystuart(~simplystu@c-75-75-152-164.hsd1.pa.comcast.net)
2025-02-25 07:31:03 +0100alfiee(~alfiee@user/alfiee) alfiee
2025-02-25 07:35:48 +0100alfiee(~alfiee@user/alfiee) (Ping timeout: 272 seconds)
2025-02-25 07:38:52 +0100merijn(~merijn@host-vr.cgnat-g.v4.dfn.nl) merijn
2025-02-25 07:44:01 +0100peterbecich(~Thunderbi@syn-047-229-123-186.res.spectrum.com) peterbecich
2025-02-25 07:44:02 +0100merijn(~merijn@host-vr.cgnat-g.v4.dfn.nl) (Ping timeout: 272 seconds)
2025-02-25 07:46:14 +0100p3n(~p3n@2a00:19a0:3:7c:0:d9c6:7cf6:1) (Quit: ZNC 1.9.1 - https://znc.in)
2025-02-25 07:54:41 +0100merijn(~merijn@host-vr.cgnat-g.v4.dfn.nl) merijn
2025-02-25 07:57:32 +0100p3n(~p3n@217.198.124.246) p3n
2025-02-25 07:59:42 +0100merijn(~merijn@host-vr.cgnat-g.v4.dfn.nl) (Ping timeout: 252 seconds)
2025-02-25 08:02:55 +0100merijn(~merijn@host-vr.cgnat-g.v4.dfn.nl) merijn
2025-02-25 08:03:05 +0100tccq(~user@user/tccq) (Remote host closed the connection)
2025-02-25 08:04:00 +0100rvalue-(~rvalue@user/rvalue) rvalue
2025-02-25 08:04:50 +0100rvalue(~rvalue@user/rvalue) (Ping timeout: 252 seconds)
2025-02-25 08:07:28 +0100merijn(~merijn@host-vr.cgnat-g.v4.dfn.nl) (Ping timeout: 245 seconds)
2025-02-25 08:09:56 +0100Lord_of_Life(~Lord@user/lord-of-life/x-2819915) (Ping timeout: 244 seconds)
2025-02-25 08:10:12 +0100Lord_of_Life_(~Lord@user/lord-of-life/x-2819915) Lord_of_Life
2025-02-25 08:11:34 +0100Lord_of_Life_Lord_of_Life
2025-02-25 08:12:25 +0100CiaoSen(~Jura@2a02:8071:64e1:7180:4e50:ddff:fe9b:8922) CiaoSen
2025-02-25 08:12:42 +0100rvalue-rvalue
2025-02-25 08:15:42 +0100misterfish(~misterfis@84.53.85.146) (Ping timeout: 272 seconds)
2025-02-25 08:16:48 +0100alfiee(~alfiee@user/alfiee) alfiee
2025-02-25 08:18:22 +0100j1n37(~j1n37@user/j1n37) (Read error: Connection reset by peer)
2025-02-25 08:18:39 +0100merijn(~merijn@host-vr.cgnat-g.v4.dfn.nl) merijn
2025-02-25 08:20:35 +0100tromp(~textual@2a02:a210:cba:8500:6ddc:c1a9:bc13:1391)
2025-02-25 08:21:29 +0100j1n37(~j1n37@user/j1n37) j1n37
2025-02-25 08:21:38 +0100alfiee(~alfiee@user/alfiee) (Ping timeout: 268 seconds)
2025-02-25 08:23:32 +0100merijn(~merijn@host-vr.cgnat-g.v4.dfn.nl) (Ping timeout: 252 seconds)
2025-02-25 08:25:22 +0100peterbecich(~Thunderbi@syn-047-229-123-186.res.spectrum.com) (Ping timeout: 252 seconds)
2025-02-25 08:34:27 +0100merijn(~merijn@host-vr.cgnat-g.v4.dfn.nl) merijn
2025-02-25 08:36:45 +0100lortabac(~lortabac@2a01:e0a:541:b8f0:55ab:e185:7f81:54a4) lortabac
2025-02-25 08:41:08 +0100merijn(~merijn@host-vr.cgnat-g.v4.dfn.nl) (Ping timeout: 252 seconds)
2025-02-25 08:43:54 +0100talismanick(~user@2601:644:937c:ed10::ae5) talismanick
2025-02-25 08:47:44 +0100kaskal(~kaskal@2a02:8388:15bf:c200:6260:f3eb:9ba8:d6f8) (Quit: ZNC - https://znc.in)
2025-02-25 08:48:07 +0100kaskal(~kaskal@2a02:8388:15bf:c200:69b8:13b6:b9c5:a489) kaskal
2025-02-25 08:57:46 +0100tromp(~textual@2a02:a210:cba:8500:6ddc:c1a9:bc13:1391) (Quit: My iMac has gone to sleep. ZZZzzz…)
2025-02-25 09:00:01 +0100caconym(~caconym@user/caconym) (Quit: bye)
2025-02-25 09:00:42 +0100sord937(~sord937@gateway/tor-sasl/sord937) sord937
2025-02-25 09:01:02 +0100caconym(~caconym@user/caconym) caconym
2025-02-25 09:02:12 +0100alfiee(~alfiee@user/alfiee) alfiee
2025-02-25 09:06:25 +0100alfiee(~alfiee@user/alfiee) (Ping timeout: 252 seconds)
2025-02-25 09:12:21 +0100eL_Bart0(eL_Bart0@dietunichtguten.org)
2025-02-25 09:18:42 +0100alp(~alp@2001:861:8ca0:4940:9bfe:6d72:595b:d191)
2025-02-25 09:24:13 +0100ljdarj(~Thunderbi@user/ljdarj) ljdarj
2025-02-25 09:24:57 +0100merijn(~merijn@77.242.116.146) merijn
2025-02-25 09:27:56 +0100bitterx(~bitterx@APN-122-12-44-gprs.simobil.net)
2025-02-25 09:28:06 +0100bitterx(~bitterx@APN-122-12-44-gprs.simobil.net) (Changing host)
2025-02-25 09:28:06 +0100bitterx(~bitterx@user/bitterx) bitterx
2025-02-25 09:29:28 +0100sord937(~sord937@gateway/tor-sasl/sord937) (Remote host closed the connection)
2025-02-25 09:29:46 +0100sord937(~sord937@gateway/tor-sasl/sord937) sord937
2025-02-25 09:30:57 +0100glguy(glguy@libera/staff/glguy) (Read error: Connection reset by peer)
2025-02-25 09:41:22 +0100misterfish(~misterfis@h239071.upc-h.chello.nl) misterfish
2025-02-25 09:43:32 +0100zzz(~z@user/zero) zero
2025-02-25 09:43:56 +0100tromp(~textual@2a02:a210:cba:8500:6ddc:c1a9:bc13:1391)
2025-02-25 09:45:18 +0100yin(~z@user/zero) (Read error: Connection reset by peer)
2025-02-25 09:45:18 +0100zzzyin
2025-02-25 09:47:01 +0100ash3en(~Thunderbi@2a03:7846:b6eb:101:93ac:a90a:da67:f207) (Quit: ash3en)
2025-02-25 09:47:37 +0100alfiee(~alfiee@user/alfiee) alfiee
2025-02-25 09:49:08 +0100Unicorn_Princess(~Unicorn_P@user/Unicorn-Princess/x-3540542) Unicorn_Princess
2025-02-25 09:49:22 +0100 <tomsmeding> Athas: suppose I had a library inspired by Kmett's 'ad' library, but with first-class support for arrays somehow, instead of just scalars. (The goal being to significantly reduce the overhead of all those dual-number heap nodes.) What would you expect its interface to be?
2025-02-25 09:52:36 +0100alfiee(~alfiee@user/alfiee) (Ping timeout: 272 seconds)
2025-02-25 09:57:12 +0100zungi(~tory@user/andrewchawk) (Ping timeout: 264 seconds)
2025-02-25 09:57:50 +0100lxsameer(~lxsameer@Serene/lxsameer) lxsameer
2025-02-25 09:58:41 +0100zungi(~tory@user/andrewchawk) andrewchawk
2025-02-25 09:58:45 +0100tabaqui1(~root@87.200.129.102) tabaqui
2025-02-25 10:00:01 +0100acidjnk(~acidjnk@p200300d6e7283f38a15cd1ba33b15ba0.dip0.t-ipconnect.de) acidjnk
2025-02-25 10:00:44 +0100 <Athas> tomsmeding: good question. I'm not terribly imaginatine when it comes to Haskell types, I must admit. I would probably like a type family 'Array sh t', where 'sh' is an Accelerate-like shape (this is not so important for 'ad'), and 't' is heavily constrained to either a some primal number type or dual/adjoint numbers.
2025-02-25 10:01:07 +0100chele(~chele@user/chele) chele
2025-02-25 10:01:22 +0100 <Athas> Then the array type has a vocabulary of first order bulk operations (where I expect good performance for derivatives), and also some second order operations (like map) that should at least work.
2025-02-25 10:02:09 +0100weary-traveler(~user@user/user363627) (Remote host closed the connection)
2025-02-25 10:03:21 +0100why(~why@n218250229238.netvigator.com)
2025-02-25 10:05:28 +0100 <tomsmeding> Athas: Thanks! Second order operations are fundamentally more difficult to make work with the 'ad'-style algorithm than first-order bulk operations, though
2025-02-25 10:05:47 +0100 <Athas> Yes, I know, which is why I wouldn't expect them to work well, and I could sympathise with not having them at all.
2025-02-25 10:05:57 +0100 <tomsmeding> as in, making them work but slow is easy (fromList . map f . toList), but making them fast is rather difficult
2025-02-25 10:06:21 +0100 <tomsmeding> (though perhaps allocating fewer list nodes is doable)
2025-02-25 10:06:57 +0100 <Athas> I would be OK with the API limiting primal values to types that can be unboxed (and also imposing some strictness requirements).
2025-02-25 10:07:16 +0100 <Athas> Making the tape more efficient (by storing it in an unboxed and bump-allocated vector) would make a big difference to performance, I think.
2025-02-25 10:07:19 +0100 <tomsmeding> Athas: some other component of the interface that is surprisingly tricky: 'ad' uses Traversable as the universal input structure, but if you have heterogeneously typed inputs, that doesn't really work any more
2025-02-25 10:07:30 +0100 <Athas> The tape-based AD libraries in C++ are not slow at all.
2025-02-25 10:07:50 +0100 <Athas> Heterogeneously typed active inputs are rare.
2025-02-25 10:08:09 +0100 <Athas> For example, they occur in none of the ADBench benchmarks.
2025-02-25 10:08:15 +0100 <tomsmeding> Athas: I tried, but the fact that the forward pass becomes a write to a vector with potential reallocation logic, instead of just allocating an object in the haskell nursery, increases the overhead quite a bit
2025-02-25 10:08:29 +0100 <tomsmeding> Athas: mind that having arrays of different ranks in the input is already "heterogeneously typed"
2025-02-25 10:08:46 +0100 <tomsmeding> as is "arrays and scalars"
2025-02-25 10:09:14 +0100 <Athas> Oh, I was considering only the types of the underlying scalars.
2025-02-25 10:09:34 +0100 <tomsmeding> I was thinking of that Traversable constraint; that requires all the "input values" to really be exactly the same Haskell type
2025-02-25 10:09:55 +0100 <Athas> Well, so there's another restriction I'm OK with: the input may be assumed to be isomorphic to a monomorphic sequence of scalars. Many AD libraries make that assumption. The Haskell type system is easily strong enough to make that nice to work with.
2025-02-25 10:10:23 +0100 <tomsmeding> what do you mean with a monomorphic sequence of scalars? [Vector a]?
2025-02-25 10:10:40 +0100 <Athas> Not the list, just 'Vector a'.
2025-02-25 10:10:50 +0100 <tomsmeding> do other AD libraries really do that?
2025-02-25 10:10:57 +0100 <tomsmeding> that feels a bit much, to me
2025-02-25 10:10:58 +0100 <Athas> But I don't understand - if you require that the input is some 'f t' where 'f' is Traversable, isn't that essentially going to be a sequence of 't's with some shape on top?
2025-02-25 10:11:05 +0100 <tomsmeding> exactly
2025-02-25 10:11:18 +0100 <tomsmeding> which works for scalars, but if you have array support, then it's suddenly inadequate
2025-02-25 10:11:22 +0100 <Athas> It's common in C++ AD libraries yes, although they sometimes put some polish on top to make it seem like that's not how it works.
2025-02-25 10:11:28 +0100 <tomsmeding> interesting
2025-02-25 10:11:35 +0100 <Athas> You just pretend the arrays are concatenated. It's easy.
2025-02-25 10:12:01 +0100 <tomsmeding> well f (Vector Double) would be rather easy to support, for a Traversable f
2025-02-25 10:12:20 +0100 <Athas> These libraries ultimately expect the input to be a sequence of scalars. In Haskell, you could do fancier things (like arrays of functions!), but I'm not sure that is so useful.
2025-02-25 10:12:43 +0100 <Athas> I'd much prefer a Haskell AD library that can efficiently handle boring classic numerical problems, even if fancy weird things, like functional vector fields, cannot be handled.
2025-02-25 10:12:52 +0100AlexZenon(~alzenon@178.34.162.44) (Ping timeout: 272 seconds)
2025-02-25 10:13:01 +0100 <tomsmeding> I'm not thinking about functional vector fields :p
2025-02-25 10:13:43 +0100 <Athas> When you're talking about the Jacobian matrix, you're already in a sense flattening all of the scalars to form each axis.
2025-02-25 10:14:57 +0100 <tomsmeding> full disclosure: I've been hacking on something like this; the API currently looks like this: gradient' from here ( https://git.tomsmeding.com/ad-dual/tree/src/Numeric/ADDual/Array/Internal.hs ), where 'VDual s Double' implements the classes from here ( https://git.tomsmeding.com/ad-dual/tree/src/Numeric/ADDual/VectorOps.hs )
2025-02-25 10:15:04 +0100 <tomsmeding> arrays are single-dimensional only
2025-02-25 10:15:12 +0100 <tomsmeding> but that's rather non-fundamental
2025-02-25 10:15:40 +0100 <Athas> Yes, that can be fixed at a higher level.
2025-02-25 10:15:48 +0100 <tomsmeding> also that
2025-02-25 10:17:02 +0100 <Athas> This looks compelling. Using 'f (VS.Vector a)' instead of just 'a' is make it easier to have some efficient representation without imposing constraints on 'f'?
2025-02-25 10:17:25 +0100 <tomsmeding> it just means that you can pass in a single vector if you want, but also a list of vectors.
2025-02-25 10:17:38 +0100 <tomsmeding> Or a boxed vector of vectors!
2025-02-25 10:17:49 +0100 <Athas> Yes, I think it's fine for all of my uses, but honestly just 'VS.Vector a' would work as well.
2025-02-25 10:18:18 +0100 <tomsmeding> it doesn't even assume that 'a' is Double, so you should be able to instantiate 'a' with a standard forward-mode dual number
2025-02-25 10:18:43 +0100AlexZenon(~alzenon@178.34.162.44)
2025-02-25 10:18:52 +0100 <Athas> This looks compelling, but why unsafePerformIO directly? Can this not be expressed with ST?
2025-02-25 10:19:01 +0100 <Athas> Are dual numbers Storable?
2025-02-25 10:19:09 +0100 <Athas> I guess they could be.
2025-02-25 10:19:14 +0100 <tomsmeding> surely they could be
2025-02-25 10:19:31 +0100 <Athas> But this cannot possibly do reverse-then-forward, right?
2025-02-25 10:19:49 +0100 <tomsmeding> how would that look in 'ad'?
2025-02-25 10:19:57 +0100Smiles(uid551636@id-551636.lymington.irccloud.com) Smiles
2025-02-25 10:20:17 +0100 <tomsmeding> and I think you may be right that IO is overkill here!
2025-02-25 10:20:27 +0100 <Athas> jvp (\ ... vjp ...), but with the weird 'ad' names instead.
2025-02-25 10:20:40 +0100 <Athas> It Just Works in 'ad'.
2025-02-25 10:20:49 +0100califax(~califax@user/califx) (Remote host closed the connection)
2025-02-25 10:21:00 +0100 <tomsmeding> wouldn't that be Reverse s (Forward Double) in 'ad'?
2025-02-25 10:21:08 +0100califax(~califax@user/califx) califx
2025-02-25 10:21:13 +0100 <tomsmeding> i.e. doing reverse mode, but secretly the scalars are dual numbers?
2025-02-25 10:21:55 +0100 <Athas> Operationally yes. I don't know what the type of that looks like. I was referring to the surface syntax.
2025-02-25 10:22:19 +0100 <Athas> It's 'diffF' on a function that uses 'grad'.
2025-02-25 10:22:30 +0100off^(~off@108.192.66.114) (Ping timeout: 268 seconds)
2025-02-25 10:22:36 +0100tomsmedingopens the 'ad' docs
2025-02-25 10:22:50 +0100 <tomsmeding> the fact that that package's name is so short is really inconvenient. :P
2025-02-25 10:22:59 +0100dsrt^(~dsrt@108.192.66.114) (Ping timeout: 260 seconds)
2025-02-25 10:24:27 +0100 <tomsmeding> I'm not familiar enough with the 'ad' API to figure out what that 'AD' type is suppose to do
2025-02-25 10:24:29 +0100 <tomsmeding> *supposed
2025-02-25 10:24:47 +0100 <tomsmeding> nothing, it seems, semantically?
2025-02-25 10:25:48 +0100 <tomsmeding> Athas: I think if you 'diffF' on a function that uses 'grad', you instantiate the 'a' in the type of 'grad' with 'AD s (Forward a)'; does that sound right?
2025-02-25 10:26:24 +0100 <Athas> Yes, so that ought to work. That is good.
2025-02-25 10:26:40 +0100 <tomsmeding> if so, then exactly the same thing should work here
2025-02-25 10:26:40 +0100why(~why@n218250229238.netvigator.com) (Quit: Client closed)
2025-02-25 10:27:08 +0100ThePenguin(~ThePengui@cust-95-80-24-166.csbnet.se) (Remote host closed the connection)
2025-02-25 10:28:23 +0100 <tomsmeding> Athas: I might be able to switch to ST, but because the individual scalar operations are effectful (they mutate the tape), there's going to be some unsafePerformIO-like thing there anyway
2025-02-25 10:28:41 +0100 <tomsmeding> and there isn't even unsafePerformST!
2025-02-25 10:28:51 +0100 <tomsmeding> I guess that's called "runST . unsafeCoerce"
2025-02-25 10:29:07 +0100ThePenguin(~ThePengui@cust-95-80-24-166.csbnet.se) ThePenguin
2025-02-25 10:29:37 +0100 <tomsmeding> 'ad' also has unsafePerformIO in the same positions
2025-02-25 10:31:54 +0100 <Athas> How close is this to working?
2025-02-25 10:32:04 +0100 <tomsmeding> I benchmarked this on a simple 2-hidden-layer neural network with relu activation and softmax at the end; when input and hidden layers are all width N, then when N goes from 100 to 2000, the speedup over 'ad' goes from 26x to ~550x
2025-02-25 10:32:22 +0100ski. o O ( "Data Parallel Haskell" (GHC 6.10 - 8.4)
2025-02-25 10:32:22 +0100ski<https://downloads.haskell.org/ghc/8.4-latest/docs/html/users_guide/parallel.html#data-parallel-has…>,<https://wiki.haskell.org/GHC/Data_Parallel_Haskell,<https://www.cs.cmu.edu/~scandal/cacm/cacm2.html>,<https://web.archive.org/web/20040806031752/http://cgi.cse.unsw.edu.au/~chak/papers/papers.html#ndp…>,<https://en.wikipedia.org/wiki/NESL>,<https://en.wikipedia.org/wiki/Data_parallelism> )
2025-02-25 10:32:38 +0100 <tomsmeding> Athas: I used fneural_A for my library and fneural for 'ad' https://git.tomsmeding.com/ad-dual/tree/examples/Numeric/ADDual/Examples.hs
2025-02-25 10:32:59 +0100 <Athas> tomsmeding: very promising!
2025-02-25 10:33:09 +0100 <tomsmeding> perhaps I should've been fair and used fneural_A for both, but honestly, fneural should be faster because it uses V.map sometimes
2025-02-25 10:33:22 +0100alfiee(~alfiee@user/alfiee) alfiee
2025-02-25 10:33:45 +0100 <tomsmeding> the inspiration for this was your question of "is there anything better than 'ad'" and me thinking "we can't possibly have just this as the answer"
2025-02-25 10:33:55 +0100 <tomsmeding> :)
2025-02-25 10:34:35 +0100 <tomsmeding> It's fun to see the original performance around 300ms, and then seeing the array version be 700us. :p
2025-02-25 10:35:00 +0100 <Athas> Here is how well tape based AD can do in C++: https://sigkill.dk/junk/gmm-diff.pdf - 'adept', 'adol-c', and 'cppad' use taping, while everything else is some kind of source transformation.
2025-02-25 10:35:31 +0100 <Athas> So 4x to 5x slower than Enzyme (which is a compiler transformation) is dosable in C++. And these tools don't actually know what a "matrix" is; they're completely scalar-oriented.
2025-02-25 10:36:20 +0100 <tomsmeding> we have the disadvantage that being scalar-oriented means spraying your the heap with huge amounts of garbage, and also creating long, deep chains that the GC has to traverse
2025-02-25 10:36:45 +0100 <tomsmeding> but with arrays, even just first-order ones, both of those problems should be reduced to negligibility
2025-02-25 10:36:48 +0100 <Athas> Indeed.
2025-02-25 10:37:17 +0100 <Athas> And in the limit, with high level array operations, some things can perhaps be differentiated more effectively, using knowledge about what is actually going on.
2025-02-25 10:37:19 +0100 <tomsmeding> I find it interesting in your graph that 'tensorflow' is just like "I have about 0.6 seconds overhead, otherwise I have the same graph as you guys"
2025-02-25 10:37:43 +0100alfiee(~alfiee@user/alfiee) (Ping timeout: 252 seconds)
2025-02-25 10:37:50 +0100 <Athas> The TF code is crap, I have an issue for it. It is something I took from ADBench but there is no way this is as fast as it should be.
2025-02-25 10:38:00 +0100 <tomsmeding> perhaps, but scalar-level AD is in some sense the limit of cleverness in that respect -- it automatically detects and exploits _all_ sparsity!
2025-02-25 10:38:13 +0100 <tomsmeding> heh okay
2025-02-25 10:38:47 +0100 <tomsmeding> also pytorch is like "I'm faster than all you guys but you just need to give me data"
2025-02-25 10:38:56 +0100 <Athas> ski: what about DPH?
2025-02-25 10:39:36 +0100 <Athas> The PyTorch code in ADBench was also crap, but a colleague of mine was so disgusted that he rewrote it, when we needed it for a paper a few years back.
2025-02-25 10:39:54 +0100 <tomsmeding> anyway this is very much a side-track to what I should actually be working on these weeks. But I wanted to get some ideas from you anyway :)
2025-02-25 10:39:58 +0100 <tomsmeding> hah
2025-02-25 10:40:11 +0100 <Athas> No no, I think this is definitely what you should be workign on. Keep up! Don't get distracted!
2025-02-25 10:40:19 +0100 <tomsmeding> it's funny how people put those graphs in papers, but then the underlying implementations are actually kind of crap :P
2025-02-25 10:40:41 +0100 <tomsmeding> well, first I have to revise a journal paper which is due in 2 weeks or so. :P
2025-02-25 10:41:25 +0100 <tomsmeding> it's also in a way unsatisfying. Writing this ad-dual thing is mostly like "this is easy stuff, the interesting research is in tackling harder problems like actually differentiating higher-order code first-class, or as a source-code transformation, or stuff like that"
2025-02-25 10:41:37 +0100 <tomsmeding> "this is trivial application of the stuff we already know"
2025-02-25 10:41:51 +0100 <tomsmeding> but then it ends up, in this particular niche of haskell AD libraries, improving the state of the art by >500x.
2025-02-25 10:42:36 +0100 <tomsmeding> This is at most a workshop talk!
2025-02-25 10:43:03 +0100 <tomsmeding> Real-world impact is not particularly correlated with publication-worthiness
2025-02-25 10:45:18 +0100 <ski> Athas : wondering whether there'd be any hope of integrating it with something like the above
2025-02-25 10:45:24 +0100 <tomsmeding> Athas: do you get those nice plots out of gradbench?
2025-02-25 10:45:59 +0100tzh(~tzh@c-76-115-131-146.hsd1.or.comcast.net) (Quit: zzz)
2025-02-25 10:46:27 +0100 <tomsmeding> ski: are you thinking of just the parallelism part, or also the distributed computing part of DPH? (IIRC they had distributed execution over multiple machines as a core design goal)
2025-02-25 10:46:42 +0100 <tomsmeding> in any case, the fact that it doesn't really exist any more makes this a hard proposition :)
2025-02-25 10:53:54 +0100kuribas(~user@ip-188-118-57-242.reverse.destiny.be) kuribas
2025-02-25 10:55:43 +0100 <[exa]> ski: I was trying to find some such connection before and it doesn't really seem easily. IMO we'd need some very interesting encoding of the array indexes and updates that can be differentiated directly and then reconstructed. Most differentiation formulations I've seen basically deny that.
2025-02-25 10:58:38 +0100divya-(divya@140.238.251.170) divya
2025-02-25 10:59:53 +0100divya-divya
2025-02-25 11:00:20 +0100 <ski> mainly the parallelism, i suppose, tomsmeding
2025-02-25 11:01:10 +0100 <ski> [exa] : differentiated as in AD, or say as in differential lambda calculus ?
2025-02-25 11:02:51 +0100 <[exa]> ski: as in AD in this case
2025-02-25 11:06:07 +0100ljdarj(~Thunderbi@user/ljdarj) (Ping timeout: 244 seconds)
2025-02-25 11:06:33 +0100 <Athas> tomsmeding: yes, those plots are from gradbench (but not fully automated yet).
2025-02-25 11:07:48 +0100 <Athas> ski: the things that didn't work in DPH are dead (mostly the vectorisation transform), but a lot of the other ideas are well and alive, or its successors are. DPH begat Repa, which inspired massiv, which to my knowledge is still good and living.
2025-02-25 11:07:54 +0100ljdarj(~Thunderbi@user/ljdarj) ljdarj
2025-02-25 11:08:23 +0100 <ski> mm, i see
2025-02-25 11:08:52 +0100 <Athas> Accelerate itself is also a DPH spinoff.
2025-02-25 11:09:13 +0100 <ski> Obsidian ?
2025-02-25 11:09:58 +0100 <Athas> No, that came out of a different line of research.
2025-02-25 11:10:09 +0100 <ski> mhm
2025-02-25 11:10:10 +0100 <ski> ([exa] : you mentioning updates (and reconstruction) made me wonder)
2025-02-25 11:12:33 +0100 <tomsmeding> ski: I'm doing my PhD in the group that's currently doing research on Accelerate, so in that sense I'm in the right place :p
2025-02-25 11:13:41 +0100xff0x(~xff0x@fsb6a9491c.tkyc517.ap.nuro.jp) (Ping timeout: 248 seconds)
2025-02-25 11:14:00 +0100 <ski> nice :b
2025-02-25 11:14:08 +0100gmg(~user@user/gehmehgeh) (Quit: Leaving)
2025-02-25 11:18:26 +0100misterfish(~misterfis@h239071.upc-h.chello.nl) (Ping timeout: 252 seconds)
2025-02-25 11:19:47 +0100alfiee(~alfiee@user/alfiee) alfiee
2025-02-25 11:21:11 +0100 <[exa]> ski: the differential lambda calculus is btw not directly related to the datatype differentiation (as with zippers), right?
2025-02-25 11:21:49 +0100 <[exa]> ski: anyway the main thing I took home from the AD currently is that the array indices need some completely different approach before this works automatically in all cases
2025-02-25 11:22:24 +0100[exa]goes aFfInE TeNsOrS
2025-02-25 11:23:32 +0100 <ski> @type System.IO.Unsafe.unsafePerformIO . Control.Monad.ST.Unsafe.unsafeSTToIO -- "I guess that's called \"runST . unsafeCoerce\""
2025-02-25 11:23:33 +0100 <lambdabot> ST s c -> c
2025-02-25 11:23:35 +0100 <ski> @type Control.Monad.Primitive.unsafeInlineST
2025-02-25 11:23:36 +0100 <lambdabot> ST s a -> a
2025-02-25 11:23:55 +0100 <ski> [exa] : not afaik
2025-02-25 11:24:11 +0100 <Hecate> morning
2025-02-25 11:24:17 +0100 <ski> moining
2025-02-25 11:24:26 +0100alfiee(~alfiee@user/alfiee) (Ping timeout: 272 seconds)
2025-02-25 11:25:41 +0100 <tomsmeding> ski: right, but at that point I'm not sure one can really say "yes, I'm using ST and not IO" :p
2025-02-25 11:26:03 +0100tomsmedinghas a meeting
2025-02-25 11:26:20 +0100acidjnk(~acidjnk@p200300d6e7283f38a15cd1ba33b15ba0.dip0.t-ipconnect.de) (Ping timeout: 272 seconds)
2025-02-25 11:26:36 +0100 <[exa]> ski: interesting construction tho. thanks. :D
2025-02-25 11:27:24 +0100L29Ah(~L29Ah@wikipedia/L29Ah) L29Ah
2025-02-25 11:28:15 +0100tromp(~textual@2a02:a210:cba:8500:6ddc:c1a9:bc13:1391) (Quit: My iMac has gone to sleep. ZZZzzz…)
2025-02-25 11:28:36 +0100 <ski> hm ?
2025-02-25 11:29:26 +0100 <ski> (the unsafe stuff ?)
2025-02-25 11:29:42 +0100misterfish(~misterfis@31-161-39-137.biz.kpn.net) misterfish
2025-02-25 11:31:29 +0100gmg(~user@user/gehmehgeh) gehmehgeh
2025-02-25 11:33:34 +0100__monty__(~toonn@user/toonn) toonn
2025-02-25 11:36:51 +0100tromp(~textual@2a02:a210:cba:8500:6ddc:c1a9:bc13:1391)
2025-02-25 11:41:46 +0100olivial(~benjaminl@user/benjaminl) (Ping timeout: 244 seconds)
2025-02-25 11:41:50 +0100olivial_(~benjaminl@2601:1c0:847f:9c70:223:24ff:fe66:4370)
2025-02-25 11:43:23 +0100Googulator(~Googulato@2a01:36d:106:c81:ad7c:ac56:196b:c9a2) (Quit: Client closed)
2025-02-25 11:43:39 +0100Googulator(~Googulato@2a01-036d-0106-0c81-ad7c-ac56-196b-c9a2.pool6.digikabel.hu)
2025-02-25 11:49:12 +0100Tuplanolla(~Tuplanoll@91-159-69-59.elisa-laajakaista.fi) Tuplanolla
2025-02-25 11:53:33 +0100lortabac(~lortabac@2a01:e0a:541:b8f0:55ab:e185:7f81:54a4) (Ping timeout: 252 seconds)
2025-02-25 12:04:54 +0100lortabac(~lortabac@2a01:e0a:541:b8f0:55ab:e185:7f81:54a4) lortabac
2025-02-25 12:06:11 +0100alfiee(~alfiee@user/alfiee) alfiee
2025-02-25 12:10:29 +0100alfiee(~alfiee@user/alfiee) (Ping timeout: 260 seconds)
2025-02-25 12:11:19 +0100Googulator(~Googulato@2a01-036d-0106-0c81-ad7c-ac56-196b-c9a2.pool6.digikabel.hu) (Quit: Client closed)
2025-02-25 12:11:44 +0100xff0x(~xff0x@2405:6580:b080:900:3152:bac6:3fc:3eb6)
2025-02-25 12:12:06 +0100Googulator(~Googulato@2a01:36d:106:c81:ad7c:ac56:196b:c9a2)
2025-02-25 12:12:30 +0100kuribas(~user@ip-188-118-57-242.reverse.destiny.be) (Remote host closed the connection)
2025-02-25 12:17:56 +0100lortabac(~lortabac@2a01:e0a:541:b8f0:55ab:e185:7f81:54a4) (Ping timeout: 244 seconds)
2025-02-25 12:18:10 +0100acidjnk(~acidjnk@p200300d6e7283f38a15cd1ba33b15ba0.dip0.t-ipconnect.de) acidjnk
2025-02-25 12:22:45 +0100merijn(~merijn@77.242.116.146) (Ping timeout: 268 seconds)
2025-02-25 12:25:09 +0100eL_Bart0(eL_Bart0@dietunichtguten.org) (Ping timeout: 252 seconds)
2025-02-25 12:28:53 +0100wootehfoot(~wootehfoo@user/wootehfoot) wootehfoot
2025-02-25 12:36:30 +0100merijn(~merijn@77.242.116.146) merijn
2025-02-25 12:36:38 +0100CiaoSen(~Jura@2a02:8071:64e1:7180:4e50:ddff:fe9b:8922) (Ping timeout: 245 seconds)
2025-02-25 12:40:35 +0100ljdarj(~Thunderbi@user/ljdarj) (Ping timeout: 265 seconds)
2025-02-25 12:43:29 +0100merijn(~merijn@77.242.116.146) (Ping timeout: 265 seconds)
2025-02-25 12:49:34 +0100sprotte24(~sprotte24@p200300d16f33ea00f98eb0699631b9b8.dip0.t-ipconnect.de)
2025-02-25 12:49:59 +0100merijn(~merijn@77.242.116.146) merijn
2025-02-25 12:51:55 +0100alfiee(~alfiee@user/alfiee) alfiee
2025-02-25 12:53:15 +0100sprotte24(~sprotte24@p200300d16f33ea00f98eb0699631b9b8.dip0.t-ipconnect.de) (Read error: Connection reset by peer)
2025-02-25 12:53:19 +0100ljdarj(~Thunderbi@user/ljdarj) ljdarj
2025-02-25 12:56:10 +0100alfiee(~alfiee@user/alfiee) (Ping timeout: 244 seconds)
2025-02-25 13:00:05 +0100caconym(~caconym@user/caconym) (Quit: bye)
2025-02-25 13:03:52 +0100caconym(~caconym@user/caconym) caconym
2025-02-25 13:05:09 +0100califax(~califax@user/califx) (Remote host closed the connection)
2025-02-25 13:05:24 +0100califax(~califax@user/califx) califx
2025-02-25 13:09:59 +0100aristid(sid1599@id-1599.uxbridge.irccloud.com) (Ping timeout: 260 seconds)
2025-02-25 13:10:58 +0100kuribas(~user@ip-188-118-57-242.reverse.destiny.be) kuribas
2025-02-25 13:11:22 +0100foul_owl(~kerry@94.156.149.93) (Ping timeout: 252 seconds)
2025-02-25 13:12:21 +0100ft(~ft@p4fc2a610.dip0.t-ipconnect.de) (Quit: leaving)
2025-02-25 13:12:59 +0100merijn(~merijn@77.242.116.146) (Ping timeout: 265 seconds)
2025-02-25 13:13:10 +0100aristid(sid1599@id-1599.uxbridge.irccloud.com)
2025-02-25 13:15:45 +0100acidjnk(~acidjnk@p200300d6e7283f38a15cd1ba33b15ba0.dip0.t-ipconnect.de) (Ping timeout: 252 seconds)
2025-02-25 13:16:42 +0100lortabac(~lortabac@2a01:e0a:541:b8f0:55ab:e185:7f81:54a4)
2025-02-25 13:25:38 +0100foul_owl(~kerry@94.156.149.92) foul_owl
2025-02-25 13:26:31 +0100bitterx(~bitterx@user/bitterx) (Quit: bitterx)
2025-02-25 13:26:46 +0100dsrt^(~dsrt@108.192.66.114)
2025-02-25 13:26:47 +0100off^(~off@108.192.66.114)
2025-02-25 13:26:51 +0100merijn(~merijn@77.242.116.146) merijn
2025-02-25 13:37:18 +0100alfiee(~alfiee@user/alfiee) alfiee
2025-02-25 13:37:30 +0100jespada(~jespada@2800:a4:2292:6100:79b2:449e:bbb0:bfcf) jespada
2025-02-25 13:42:04 +0100alfiee(~alfiee@user/alfiee) (Ping timeout: 260 seconds)
2025-02-25 13:50:19 +0100bitdex(~bitdex@gateway/tor-sasl/bitdex) (Quit: = "")
2025-02-25 14:01:35 +0100comerijn(~merijn@77.242.116.146) merijn
2025-02-25 14:04:13 +0100merijn(~merijn@77.242.116.146) (Ping timeout: 265 seconds)
2025-02-25 14:04:54 +0100slack1256(~slack1256@2803:c600:5111:952f:8534:d540:7202:b800) (Remote host closed the connection)
2025-02-25 14:05:50 +0100mange(~user@user/mange) (Quit: Zzz...)
2025-02-25 14:23:22 +0100alfiee(~alfiee@user/alfiee) alfiee
2025-02-25 14:27:37 +0100alfiee(~alfiee@user/alfiee) (Ping timeout: 244 seconds)
2025-02-25 14:27:46 +0100L29Ah(~L29Ah@wikipedia/L29Ah) (Ping timeout: 248 seconds)
2025-02-25 14:33:41 +0100comerijn(~merijn@77.242.116.146) (Ping timeout: 248 seconds)
2025-02-25 14:33:49 +0100Miroboru(~myrvoll@178-164-114.82.3p.ntebredband.no) Miroboru