| 2025-10-30 00:01:15 +0100 | merijn | (~merijn@host-vr.cgnat-g.v4.dfn.nl) merijn | 
| 2025-10-30 00:01:28 +0100 | Zemy_ | (~Zemy@2600:100c:b0ad:1c64:9808:dbff:fe81:e9ff) (Ping timeout: 256 seconds) | 
| 2025-10-30 00:02:14 +0100 | Zemy_ | (~Zemy@2600:100c:b0ad:1c64:88d4:f6ff:fee9:8fef) | 
| 2025-10-30 00:04:31 +0100 | Zemy | (~Zemy@mobile-107-80-206-70.mycingular.net) (Ping timeout: 264 seconds) | 
| 2025-10-30 00:05:37 +0100 | tromp | (~textual@2001:1c00:3487:1b00:5978:a504:f2fd:26f) (Quit: My iMac has gone to sleep. ZZZzzz…) | 
| 2025-10-30 00:08:07 +0100 | merijn | (~merijn@host-vr.cgnat-g.v4.dfn.nl) (Ping timeout: 264 seconds) | 
| 2025-10-30 00:19:20 +0100 | merijn | (~merijn@host-vr.cgnat-g.v4.dfn.nl) merijn | 
| 2025-10-30 00:22:38 +0100 | trickard_ | trickard | 
| 2025-10-30 00:24:17 +0100 | merijn | (~merijn@host-vr.cgnat-g.v4.dfn.nl) (Ping timeout: 260 seconds) | 
| 2025-10-30 00:35:07 +0100 | merijn | (~merijn@host-vr.cgnat-g.v4.dfn.nl) merijn | 
| 2025-10-30 00:39:59 +0100 | merijn | (~merijn@host-vr.cgnat-g.v4.dfn.nl) (Ping timeout: 256 seconds) | 
| 2025-10-30 00:42:34 +0100 | jmcantrell | (~weechat@user/jmcantrell) jmcantrell | 
| 2025-10-30 00:43:43 +0100 | pavonia | (~user@user/siracusa) siracusa | 
| 2025-10-30 00:45:40 +0100 | Zemy | (~Zemy@72.178.108.235) | 
| 2025-10-30 00:49:38 +0100 | Zemy_ | (~Zemy@2600:100c:b0ad:1c64:88d4:f6ff:fee9:8fef) (Ping timeout: 256 seconds) | 
| 2025-10-30 00:52:43 +0100 | merijn | (~merijn@host-vr.cgnat-g.v4.dfn.nl) merijn | 
| 2025-10-30 00:53:35 +0100 | Shark8 | (~Shark8@c-174-56-102-109.hsd1.nm.comcast.net) | 
| 2025-10-30 00:56:25 +0100 | Dhark8 | (~Shark8@c-174-56-102-109.hsd1.nm.comcast.net) (Ping timeout: 256 seconds) | 
| 2025-10-30 00:56:54 +0100 | ttybitnik | (~ttybitnik@user/wolper) (Quit: "¯_(ツ)_/¯") | 
| 2025-10-30 00:57:16 +0100 | merijn | (~merijn@host-vr.cgnat-g.v4.dfn.nl) (Ping timeout: 256 seconds) | 
| 2025-10-30 01:02:16 +0100 | merijn | (~merijn@host-vr.cgnat-g.v4.dfn.nl) merijn | 
| 2025-10-30 01:07:12 +0100 | merijn | (~merijn@host-vr.cgnat-g.v4.dfn.nl) (Ping timeout: 256 seconds) | 
| 2025-10-30 01:10:47 +0100 | Dhark8 | (~Shark8@c-174-56-102-109.hsd1.nm.comcast.net) | 
| 2025-10-30 01:12:15 +0100 | Dhark8 | (~Shark8@c-174-56-102-109.hsd1.nm.comcast.net) (Remote host closed the connection) | 
| 2025-10-30 01:13:03 +0100 | Dhark8 | (~Shark8@c-174-56-102-109.hsd1.nm.comcast.net) | 
| 2025-10-30 01:13:31 +0100 | Shark8 | (~Shark8@c-174-56-102-109.hsd1.nm.comcast.net) (Ping timeout: 264 seconds) | 
| 2025-10-30 01:14:45 +0100 | Dhark8 | (~Shark8@c-174-56-102-109.hsd1.nm.comcast.net) (Remote host closed the connection) | 
| 2025-10-30 01:15:33 +0100 | Dhark8 | (~Shark8@c-174-56-102-109.hsd1.nm.comcast.net) | 
| 2025-10-30 01:17:50 +0100 | merijn | (~merijn@host-vr.cgnat-g.v4.dfn.nl) merijn | 
| 2025-10-30 01:19:25 +0100 | LainIwakura | (~LainIwaku@user/LainIwakura) LainIwakura | 
| 2025-10-30 01:22:45 +0100 | OWS | (~Shark8@c-174-56-102-109.hsd1.nm.comcast.net) | 
| 2025-10-30 01:23:04 +0100 | merijn | (~merijn@host-vr.cgnat-g.v4.dfn.nl) (Ping timeout: 256 seconds) | 
| 2025-10-30 01:24:11 +0100 | Frostillicus | (~Frostilli@pool-71-174-119-69.bstnma.fios.verizon.net) (Ping timeout: 250 seconds) | 
| 2025-10-30 01:25:19 +0100 | Dhark8 | (~Shark8@c-174-56-102-109.hsd1.nm.comcast.net) (Ping timeout: 256 seconds) | 
| 2025-10-30 01:28:46 +0100 | pavonia_ | (~user@user/siracusa) siracusa | 
| 2025-10-30 01:30:28 +0100 | Eoco | (~ian@128.101.131.218) (Remote host closed the connection) | 
| 2025-10-30 01:30:39 +0100 | Googulator52 | (~Googulato@2a01-036d-0106-03fa-9dbb-a0af-2124-a319.pool6.digikabel.hu) | 
| 2025-10-30 01:30:40 +0100 | Googulator99 | (~Googulato@2a01-036d-0106-03fa-9dbb-a0af-2124-a319.pool6.digikabel.hu) (Quit: Client closed) | 
| 2025-10-30 01:30:57 +0100 | Eoco | (~ian@128.101.131.218) Eoco | 
| 2025-10-30 01:31:35 +0100 | ft_ | (~ft@p4fc2aaeb.dip0.t-ipconnect.de) ft | 
| 2025-10-30 01:31:46 +0100 | raym_ | (~ray@user/raym) raym | 
| 2025-10-30 01:32:06 +0100 | GdeVolpi1 | (~GdeVolpia@user/GdeVolpiano) GdeVolpiano | 
| 2025-10-30 01:32:29 +0100 | connrs_ | (~connrs@conners.plus.com) | 
| 2025-10-30 01:33:37 +0100 | merijn | (~merijn@host-vr.cgnat-g.v4.dfn.nl) merijn | 
| 2025-10-30 01:36:37 +0100 | pavonia | (~user@user/siracusa) (*.net *.split) | 
| 2025-10-30 01:36:37 +0100 | haltingsolver | (~cmo@2604:3d09:207f:8000::d1dc) (*.net *.split) | 
| 2025-10-30 01:36:37 +0100 | simplystuart | (~simplystu@c-75-75-152-164.hsd1.pa.comcast.net) (*.net *.split) | 
| 2025-10-30 01:36:37 +0100 | ouilemur | (~jgmerritt@user/ouilemur) (*.net *.split) | 
| 2025-10-30 01:36:37 +0100 | GdeVolpiano | (~GdeVolpia@user/GdeVolpiano) (*.net *.split) | 
| 2025-10-30 01:36:37 +0100 | bggd | (~bgg@2a01:e0a:819:1510:f314:af0a:6c28:12ae) (*.net *.split) | 
| 2025-10-30 01:36:37 +0100 | wbrawner | (~wbrawner@static.56.224.132.142.clients.your-server.de) (*.net *.split) | 
| 2025-10-30 01:36:37 +0100 | Wbooze | (~wboozE@2a02:8071:57a1:dc0:188e:cf5c:af12:b243) (*.net *.split) | 
| 2025-10-30 01:36:37 +0100 | ft | (~ft@p4fc2aaeb.dip0.t-ipconnect.de) (*.net *.split) | 
| 2025-10-30 01:36:37 +0100 | ZLima12 | (~zlima12@user/meow/ZLima12) (*.net *.split) | 
| 2025-10-30 01:36:37 +0100 | raym | (~ray@user/raym) (*.net *.split) | 
| 2025-10-30 01:36:37 +0100 | synchromesh | (~john@2406:5a00:2412:2c00:1168:9cdd:93d7:e6c6) (*.net *.split) | 
| 2025-10-30 01:36:37 +0100 | craunts795335385 | (~craunts@136.158.7.194) (*.net *.split) | 
| 2025-10-30 01:36:37 +0100 | connrs | (~connrs@user/connrs) (*.net *.split) | 
| 2025-10-30 01:36:37 +0100 | elenril | (~elenril@tutturu.khirnov.net) (*.net *.split) | 
| 2025-10-30 01:36:37 +0100 | sp1ff | (~user@2601:1c2:4c00:6820::8bad) (*.net *.split) | 
| 2025-10-30 01:36:37 +0100 | tcard | (~tcard@2400:4051:5801:7500:cf17:befc:ff82:5303) (*.net *.split) | 
| 2025-10-30 01:36:37 +0100 | phma | (~phma@2605:59c8:6211:ff08:7181:51cb:35db:c6be) (*.net *.split) | 
| 2025-10-30 01:36:37 +0100 | tuxpaint | (~a@2600:3c06::f03c:93ff:fea6:ef0e) (*.net *.split) | 
| 2025-10-30 01:36:37 +0100 | arahael | (~wetfoot@user/arahael) (*.net *.split) | 
| 2025-10-30 01:36:37 +0100 | ycp | (~znc@user/dragestil) (*.net *.split) | 
| 2025-10-30 01:36:37 +0100 | xal_ | (~xal@mx1.xal.systems) (*.net *.split) | 
| 2025-10-30 01:36:38 +0100 | ft_ | ft | 
| 2025-10-30 01:36:38 +0100 | connrs_ | connrs | 
| 2025-10-30 01:37:09 +0100 | emmanuelux | (~emmanuelu@user/emmanuelux) (Remote host closed the connection) | 
| 2025-10-30 01:37:25 +0100 | emmanuelux | (~emmanuelu@user/emmanuelux) emmanuelux | 
| 2025-10-30 01:37:44 +0100 | a_fantom | (~fantom@212.228.181.156) | 
| 2025-10-30 01:37:45 +0100 | OWS | (~Shark8@c-174-56-102-109.hsd1.nm.comcast.net) (Remote host closed the connection) | 
| 2025-10-30 01:38:38 +0100 | OWS | (~Shark8@c-174-56-102-109.hsd1.nm.comcast.net) | 
| 2025-10-30 01:38:55 +0100 | merijn | (~merijn@host-vr.cgnat-g.v4.dfn.nl) (Ping timeout: 256 seconds) | 
| 2025-10-30 01:38:55 +0100 | FANTOM | (~fantom@212.228.181.156) (Ping timeout: 256 seconds) | 
| 2025-10-30 01:40:09 +0100 | Dhark8 | (~Shark8@c-174-56-102-109.hsd1.nm.comcast.net) | 
| 2025-10-30 01:41:10 +0100 | qqe | (~qqq@185.54.23.200) | 
| 2025-10-30 01:42:14 +0100 | simplystuart | (~simplystu@c-75-75-152-164.hsd1.pa.comcast.net) | 
| 2025-10-30 01:42:14 +0100 | haltingsolver | (~cmo@2604:3d09:207f:8000::d1dc) | 
| 2025-10-30 01:42:14 +0100 | ouilemur | (~jgmerritt@user/ouilemur) ouilemur | 
| 2025-10-30 01:42:14 +0100 | bggd | (~bgg@2a01:e0a:819:1510:f314:af0a:6c28:12ae) | 
| 2025-10-30 01:42:14 +0100 | ZLima12 | (~zlima12@user/meow/ZLima12) ZLima12 | 
| 2025-10-30 01:42:14 +0100 | synchromesh | (~john@2406:5a00:2412:2c00:1168:9cdd:93d7:e6c6) synchromesh | 
| 2025-10-30 01:42:14 +0100 | elenril | (~elenril@tutturu.khirnov.net) elenril | 
| 2025-10-30 01:42:14 +0100 | sp1ff | (~user@2601:1c2:4c00:6820::8bad) sp1ff | 
| 2025-10-30 01:42:14 +0100 | tcard | (~tcard@2400:4051:5801:7500:cf17:befc:ff82:5303) tcard | 
| 2025-10-30 01:42:14 +0100 | phma | (~phma@2605:59c8:6211:ff08:7181:51cb:35db:c6be) | 
| 2025-10-30 01:42:14 +0100 | tuxpaint | (~a@2600:3c06::f03c:93ff:fea6:ef0e) firesquidwao | 
| 2025-10-30 01:42:14 +0100 | arahael | (~wetfoot@user/arahael) arahael | 
| 2025-10-30 01:42:14 +0100 | ycp | (~znc@user/dragestil) dragestil | 
| 2025-10-30 01:42:14 +0100 | xal_ | (~xal@mx1.xal.systems) xal | 
| 2025-10-30 01:42:18 +0100 | ZLima12 | (~zlima12@user/meow/ZLima12) (Max SendQ exceeded) | 
| 2025-10-30 01:42:18 +0100 | ouilemur | (~jgmerritt@user/ouilemur) (Max SendQ exceeded) | 
| 2025-10-30 01:42:26 +0100 | ZLima12 | (~zlima12@user/meow/ZLima12) ZLima12 | 
| 2025-10-30 01:42:41 +0100 | ouilemur | (~jgmerritt@user/ouilemur) ouilemur | 
| 2025-10-30 01:43:25 +0100 | OWS | (~Shark8@c-174-56-102-109.hsd1.nm.comcast.net) (Ping timeout: 265 seconds) | 
| 2025-10-30 01:43:27 +0100 | wbrawner | (~wbrawner@static.56.224.132.142.clients.your-server.de) wbrawner | 
| 2025-10-30 01:44:35 +0100 | Dhark8 | (~Shark8@c-174-56-102-109.hsd1.nm.comcast.net) (Ping timeout: 256 seconds) | 
| 2025-10-30 01:44:41 +0100 | Wbooze | (~wboozE@2a02:8071:57a1:dc0:3827:9244:6b75:269a) Inline | 
| 2025-10-30 01:46:18 +0100 | Guest34 | (~Guest34@2601:14d:4d7e:8f0:f916:ca93:9bc9:f49f) | 
| 2025-10-30 01:49:28 +0100 | merijn | (~merijn@host-vr.cgnat-g.v4.dfn.nl) merijn | 
| 2025-10-30 01:49:40 +0100 | wbrawner | (~wbrawner@static.56.224.132.142.clients.your-server.de) (Ping timeout: 246 seconds) | 
| 2025-10-30 01:49:49 +0100 | wbrawner | (~wbrawner@static.56.224.132.142.clients.your-server.de) wbrawner | 
| 2025-10-30 01:53:07 +0100 | aku | (aku@65.108.245.241) (Quit: Lost terminal) | 
| 2025-10-30 01:53:28 +0100 | GdeVolpi1 | (~GdeVolpia@user/GdeVolpiano) (Ping timeout: 255 seconds) | 
| 2025-10-30 01:55:40 +0100 | Googulator52 | (~Googulato@2a01-036d-0106-03fa-9dbb-a0af-2124-a319.pool6.digikabel.hu) (Quit: Client closed) | 
| 2025-10-30 01:55:48 +0100 | Googulator65 | (~Googulato@2a01-036d-0106-03fa-9dbb-a0af-2124-a319.pool6.digikabel.hu) | 
| 2025-10-30 01:55:58 +0100 | merijn | (~merijn@host-vr.cgnat-g.v4.dfn.nl) (Ping timeout: 246 seconds) | 
| 2025-10-30 02:00:50 +0100 | GdeVolpiano | (~GdeVolpia@user/GdeVolpiano) GdeVolpiano | 
| 2025-10-30 02:03:43 +0100 | xff0x | (~xff0x@2405:6580:b080:900:e827:de8b:d736:8bef) (Ping timeout: 265 seconds) | 
| 2025-10-30 02:03:52 +0100 | aku | (aku@65.108.245.241) eagleflo | 
| 2025-10-30 02:05:00 +0100 | haltingsolver | (~cmo@2604:3d09:207f:8000::d1dc) (Ping timeout: 256 seconds) | 
| 2025-10-30 02:06:15 +0100 | haltingsolver | (~cmo@2604:3d09:207f:8000::d1dc) | 
| 2025-10-30 02:07:31 +0100 | merijn | (~merijn@host-vr.cgnat-g.v4.dfn.nl) merijn | 
| 2025-10-30 02:11:29 +0100 | LainIwakura | (~LainIwaku@user/LainIwakura) (Ping timeout: 250 seconds) | 
| 2025-10-30 02:12:07 +0100 | merijn | (~merijn@host-vr.cgnat-g.v4.dfn.nl) (Ping timeout: 240 seconds) | 
| 2025-10-30 02:15:38 +0100 | Googulator12 | (~Googulato@2a01-036d-0106-03fa-9dbb-a0af-2124-a319.pool6.digikabel.hu) | 
| 2025-10-30 02:15:49 +0100 | Googulator65 | (~Googulato@2a01-036d-0106-03fa-9dbb-a0af-2124-a319.pool6.digikabel.hu) (Quit: Client closed) | 
| 2025-10-30 02:17:01 +0100 | acidjnk | (~acidjnk@p200300d6e7171950c80ae7d706fe6efe.dip0.t-ipconnect.de) (Read error: Connection reset by peer) | 
| 2025-10-30 02:20:31 +0100 | otto_s | (~user@p5b044037.dip0.t-ipconnect.de) (Ping timeout: 240 seconds) | 
| 2025-10-30 02:20:47 +0100 | Googulator31 | (~Googulato@2a01-036d-0106-03fa-9dbb-a0af-2124-a319.pool6.digikabel.hu) | 
| 2025-10-30 02:20:47 +0100 | Googulator12 | (~Googulato@2a01-036d-0106-03fa-9dbb-a0af-2124-a319.pool6.digikabel.hu) (Quit: Client closed) | 
| 2025-10-30 02:22:18 +0100 | otto_s | (~user@p4ff27477.dip0.t-ipconnect.de) | 
| 2025-10-30 02:23:17 +0100 | haltingsolver | (~cmo@2604:3d09:207f:8000::d1dc) (Ping timeout: 260 seconds) | 
| 2025-10-30 02:27:04 +0100 | qqe | (~qqq@185.54.23.200) (Remote host closed the connection) | 
| 2025-10-30 02:30:48 +0100 | Googulator31 | (~Googulato@2a01-036d-0106-03fa-9dbb-a0af-2124-a319.pool6.digikabel.hu) (Quit: Client closed) | 
| 2025-10-30 02:31:03 +0100 | Googulator31 | (~Googulato@2a01-036d-0106-03fa-9dbb-a0af-2124-a319.pool6.digikabel.hu) | 
| 2025-10-30 02:32:19 +0100 | Tuplanolla | (~Tuplanoll@91-159-187-167.elisa-laajakaista.fi) (Quit: Leaving.) | 
| 2025-10-30 02:35:33 +0100 | pavonia_ | pavonia | 
| 2025-10-30 02:35:39 +0100 | Googulator31 | (~Googulato@2a01-036d-0106-03fa-9dbb-a0af-2124-a319.pool6.digikabel.hu) (Client Quit) | 
| 2025-10-30 02:35:43 +0100 | Googulator59 | (~Googulato@2a01-036d-0106-03fa-9dbb-a0af-2124-a319.pool6.digikabel.hu) | 
| 2025-10-30 02:37:11 +0100 | trickard | (~trickard@cpe-52-98-47-163.wireline.com.au) (Read error: Connection reset by peer) | 
| 2025-10-30 02:39:43 +0100 | trickard_ | (~trickard@cpe-52-98-47-163.wireline.com.au) | 
| 2025-10-30 03:02:11 +0100 | meinside- | meinside | 
| 2025-10-30 03:07:41 +0100 | xff0x | (~xff0x@fsb6a9491c.tkyc517.ap.nuro.jp) | 
| 2025-10-30 03:08:51 +0100 | LainIwakura | (~LainIwaku@user/LainIwakura) LainIwakura | 
| 2025-10-30 03:10:44 +0100 | Googulator22 | (~Googulato@2a01-036d-0106-03fa-9dbb-a0af-2124-a319.pool6.digikabel.hu) | 
| 2025-10-30 03:11:18 +0100 | Googulator59 | (~Googulato@2a01-036d-0106-03fa-9dbb-a0af-2124-a319.pool6.digikabel.hu) (Quit: Client closed) | 
| 2025-10-30 03:11:36 +0100 | LainIwakura | (~LainIwaku@user/LainIwakura) (Write error: Broken pipe) | 
| 2025-10-30 03:30:43 +0100 | Googulator97 | (~Googulato@2a01-036d-0106-03fa-9dbb-a0af-2124-a319.pool6.digikabel.hu) | 
| 2025-10-30 03:30:45 +0100 | Googulator22 | (~Googulato@2a01-036d-0106-03fa-9dbb-a0af-2124-a319.pool6.digikabel.hu) (Quit: Client closed) | 
| 2025-10-30 03:36:35 +0100 | gorignak | (~gorignak@user/gorignak) (Quit: quit) | 
| 2025-10-30 03:36:52 +0100 | merijn | (~merijn@host-vr.cgnat-g.v4.dfn.nl) merijn | 
| 2025-10-30 03:41:54 +0100 | merijn | (~merijn@host-vr.cgnat-g.v4.dfn.nl) (Ping timeout: 256 seconds) | 
| 2025-10-30 03:42:37 +0100 | Shark8 | (~Shark8@c-174-56-102-109.hsd1.nm.comcast.net) | 
| 2025-10-30 03:45:40 +0100 | Googulator60 | (~Googulato@2a01-036d-0106-03fa-9dbb-a0af-2124-a319.pool6.digikabel.hu) | 
| 2025-10-30 03:45:43 +0100 | Googulator97 | (~Googulato@2a01-036d-0106-03fa-9dbb-a0af-2124-a319.pool6.digikabel.hu) (Quit: Client closed) | 
| 2025-10-30 03:52:39 +0100 | merijn | (~merijn@host-vr.cgnat-g.v4.dfn.nl) merijn | 
| 2025-10-30 03:57:37 +0100 | merijn | (~merijn@host-vr.cgnat-g.v4.dfn.nl) (Ping timeout: 264 seconds) | 
| 2025-10-30 04:00:12 +0100 | gorignak | (~gorignak@user/gorignak) gorignak | 
| 2025-10-30 04:08:12 +0100 | merijn | (~merijn@host-vr.cgnat-g.v4.dfn.nl) merijn | 
| 2025-10-30 04:08:16 +0100 | trickard_ | (~trickard@cpe-52-98-47-163.wireline.com.au) (Read error: Connection reset by peer) | 
| 2025-10-30 04:08:29 +0100 | trickard_ | (~trickard@cpe-52-98-47-163.wireline.com.au) | 
| 2025-10-30 04:13:31 +0100 | merijn | (~merijn@host-vr.cgnat-g.v4.dfn.nl) (Ping timeout: 264 seconds) | 
| 2025-10-30 04:16:47 +0100 | L29Ah | (~L29Ah@wikipedia/L29Ah) (Read error: Connection timed out) | 
| 2025-10-30 04:18:53 +0100 | rekahsoft | (~rekahsoft@70.51.99.245) (Remote host closed the connection) | 
| 2025-10-30 04:20:38 +0100 | Googulator6 | (~Googulato@2a01-036d-0106-03fa-9dbb-a0af-2124-a319.pool6.digikabel.hu) | 
| 2025-10-30 04:20:40 +0100 | Googulator60 | (~Googulato@2a01-036d-0106-03fa-9dbb-a0af-2124-a319.pool6.digikabel.hu) (Quit: Client closed) | 
| 2025-10-30 04:24:00 +0100 | merijn | (~merijn@host-vr.cgnat-g.v4.dfn.nl) merijn | 
| 2025-10-30 04:25:38 +0100 | Googulator6 | (~Googulato@2a01-036d-0106-03fa-9dbb-a0af-2124-a319.pool6.digikabel.hu) (Quit: Client closed) | 
| 2025-10-30 04:25:45 +0100 | Googulator6 | (~Googulato@2a01-036d-0106-03fa-9dbb-a0af-2124-a319.pool6.digikabel.hu) | 
| 2025-10-30 04:28:55 +0100 | merijn | (~merijn@host-vr.cgnat-g.v4.dfn.nl) (Ping timeout: 256 seconds) | 
| 2025-10-30 04:34:28 +0100 | Googulator6 | (~Googulato@2a01-036d-0106-03fa-9dbb-a0af-2124-a319.pool6.digikabel.hu) (Quit: Client closed) | 
| 2025-10-30 04:34:45 +0100 | Googulator6 | (~Googulato@2a01-036d-0106-03fa-9dbb-a0af-2124-a319.pool6.digikabel.hu) | 
| 2025-10-30 04:39:46 +0100 | merijn | (~merijn@host-vr.cgnat-g.v4.dfn.nl) merijn | 
| 2025-10-30 04:41:57 +0100 | td_ | (~td@i53870937.versanet.de) (Ping timeout: 256 seconds) | 
| 2025-10-30 04:43:27 +0100 | td_ | (~td@i53870927.versanet.de) | 
| 2025-10-30 04:45:37 +0100 | Googulator6 | (~Googulato@2a01-036d-0106-03fa-9dbb-a0af-2124-a319.pool6.digikabel.hu) (Quit: Client closed) | 
| 2025-10-30 04:45:38 +0100 | Googulator37 | (~Googulato@2a01-036d-0106-03fa-9dbb-a0af-2124-a319.pool6.digikabel.hu) | 
| 2025-10-30 04:46:30 +0100 | merijn | (~merijn@host-vr.cgnat-g.v4.dfn.nl) (Ping timeout: 256 seconds) | 
| 2025-10-30 04:54:01 +0100 | annamalai | (~annamalai@157.32.128.210) annamalai | 
| 2025-10-30 04:57:48 +0100 | merijn | (~merijn@host-vr.cgnat-g.v4.dfn.nl) merijn | 
| 2025-10-30 05:00:55 +0100 | Lord_of_Life | (~Lord@user/lord-of-life/x-2819915) (Ping timeout: 264 seconds) | 
| 2025-10-30 05:01:11 +0100 | Lord_of_Life_ | (~Lord@user/lord-of-life/x-2819915) Lord_of_Life | 
| 2025-10-30 05:02:30 +0100 | Lord_of_Life_ | Lord_of_Life | 
| 2025-10-30 05:02:55 +0100 | merijn | (~merijn@host-vr.cgnat-g.v4.dfn.nl) (Ping timeout: 256 seconds) | 
| 2025-10-30 05:13:36 +0100 | merijn | (~merijn@host-vr.cgnat-g.v4.dfn.nl) merijn | 
| 2025-10-30 05:13:53 +0100 | Googulator62 | (~Googulato@2a01-036d-0106-03fa-9dbb-a0af-2124-a319.pool6.digikabel.hu) | 
| 2025-10-30 05:17:03 +0100 | Lord_of_Life_ | (~Lord@user/lord-of-life/x-2819915) Lord_of_Life | 
| 2025-10-30 05:17:43 +0100 | Lord_of_Life | (~Lord@user/lord-of-life/x-2819915) (Ping timeout: 264 seconds) | 
| 2025-10-30 05:17:45 +0100 | trickard_ | (~trickard@cpe-52-98-47-163.wireline.com.au) (Read error: Connection reset by peer) | 
| 2025-10-30 05:17:49 +0100 | Googulator37 | (~Googulato@2a01-036d-0106-03fa-9dbb-a0af-2124-a319.pool6.digikabel.hu) (Ping timeout: 250 seconds) | 
| 2025-10-30 05:17:58 +0100 | trickard_ | (~trickard@cpe-52-98-47-163.wireline.com.au) | 
| 2025-10-30 05:18:48 +0100 | merijn | (~merijn@host-vr.cgnat-g.v4.dfn.nl) (Ping timeout: 256 seconds) | 
| 2025-10-30 05:19:21 +0100 | Lord_of_Life_ | Lord_of_Life | 
| 2025-10-30 05:19:42 +0100 | humasect | (~humasect@dyn-192-249-132-90.nexicom.net) humasect | 
| 2025-10-30 05:20:29 +0100 | ezzieygu1wuf | (~Unknown@user/ezzieyguywuf) (Ping timeout: 256 seconds) | 
| 2025-10-30 05:29:24 +0100 | merijn | (~merijn@host-vr.cgnat-g.v4.dfn.nl) merijn | 
| 2025-10-30 05:34:40 +0100 | merijn | (~merijn@host-vr.cgnat-g.v4.dfn.nl) (Ping timeout: 256 seconds) | 
| 2025-10-30 05:35:08 +0100 | bgt32 | (~keutoi@106.222.232.60) | 
| 2025-10-30 05:36:15 +0100 | aforemny_ | (~aforemny@i577B137A.versanet.de) aforemny | 
| 2025-10-30 05:37:31 +0100 | aforemny | (~aforemny@2001:9e8:6cf0:1a00:b20d:95e8:54ba:6338) (Ping timeout: 264 seconds) | 
| 2025-10-30 05:37:31 +0100 | synchromesh | (~john@2406:5a00:2412:2c00:1168:9cdd:93d7:e6c6) (Read error: Connection reset by peer) | 
| 2025-10-30 05:38:45 +0100 | synchromesh | (~john@2406:5a00:2412:2c00:a151:32b5:2959:c671) synchromesh | 
| 2025-10-30 05:45:12 +0100 | merijn | (~merijn@host-vr.cgnat-g.v4.dfn.nl) merijn | 
| 2025-10-30 05:49:58 +0100 | merijn | (~merijn@host-vr.cgnat-g.v4.dfn.nl) (Ping timeout: 256 seconds) | 
| 2025-10-30 05:50:45 +0100 | jmcantrell | (~weechat@user/jmcantrell) (Ping timeout: 252 seconds) | 
| 2025-10-30 05:51:59 +0100 | Guest34 | (~Guest34@2601:14d:4d7e:8f0:f916:ca93:9bc9:f49f) (Quit: Client closed) | 
| 2025-10-30 06:00:59 +0100 | merijn | (~merijn@host-vr.cgnat-g.v4.dfn.nl) merijn | 
| 2025-10-30 06:05:50 +0100 | merijn | (~merijn@host-vr.cgnat-g.v4.dfn.nl) (Ping timeout: 256 seconds) | 
| 2025-10-30 06:07:58 +0100 | craunts795335385 | (~craunts@136.158.7.194) | 
| 2025-10-30 06:11:21 +0100 | humasect | (~humasect@dyn-192-249-132-90.nexicom.net) (Remote host closed the connection) | 
| 2025-10-30 06:15:45 +0100 | Googulator44 | (~Googulato@2a01-036d-0106-03fa-9dbb-a0af-2124-a319.pool6.digikabel.hu) | 
| 2025-10-30 06:15:45 +0100 | Googulator62 | (~Googulato@2a01-036d-0106-03fa-9dbb-a0af-2124-a319.pool6.digikabel.hu) (Quit: Client closed) | 
| 2025-10-30 06:16:47 +0100 | merijn | (~merijn@host-vr.cgnat-g.v4.dfn.nl) merijn | 
| 2025-10-30 06:22:23 +0100 | Googulator44 | (~Googulato@2a01-036d-0106-03fa-9dbb-a0af-2124-a319.pool6.digikabel.hu) (Quit: Client closed) | 
| 2025-10-30 06:22:39 +0100 | Googulator44 | (~Googulato@2a01-036d-0106-03fa-9dbb-a0af-2124-a319.pool6.digikabel.hu) | 
| 2025-10-30 06:22:49 +0100 | craunts795335385 | (~craunts@136.158.7.194) (Ping timeout: 256 seconds) | 
| 2025-10-30 06:22:50 +0100 | merijn | (~merijn@host-vr.cgnat-g.v4.dfn.nl) (Ping timeout: 256 seconds) | 
| 2025-10-30 06:25:34 +0100 | Googulator44 | (~Googulato@2a01-036d-0106-03fa-9dbb-a0af-2124-a319.pool6.digikabel.hu) (Client Quit) | 
| 2025-10-30 06:25:45 +0100 | Googulator44 | (~Googulato@2a01-036d-0106-03fa-9dbb-a0af-2124-a319.pool6.digikabel.hu) | 
| 2025-10-30 06:31:55 +0100 | Lycurgus | (~juan@user/Lycurgus) Lycurgus | 
| 2025-10-30 06:34:20 +0100 | merijn | (~merijn@host-vr.cgnat-g.v4.dfn.nl) merijn | 
| 2025-10-30 06:39:19 +0100 | merijn | (~merijn@host-vr.cgnat-g.v4.dfn.nl) (Ping timeout: 264 seconds) | 
| 2025-10-30 06:50:07 +0100 | merijn | (~merijn@host-vr.cgnat-g.v4.dfn.nl) merijn | 
| 2025-10-30 06:54:15 +0100 | trickard_ | (~trickard@cpe-52-98-47-163.wireline.com.au) (Read error: Connection reset by peer) | 
| 2025-10-30 06:54:29 +0100 | trickard_ | (~trickard@cpe-52-98-47-163.wireline.com.au) | 
| 2025-10-30 06:55:10 +0100 | merijn | (~merijn@host-vr.cgnat-g.v4.dfn.nl) (Ping timeout: 265 seconds) | 
| 2025-10-30 06:55:43 +0100 | Googulator69 | (~Googulato@2a01-036d-0106-03fa-9dbb-a0af-2124-a319.pool6.digikabel.hu) | 
| 2025-10-30 06:55:44 +0100 | Googulator44 | (~Googulato@2a01-036d-0106-03fa-9dbb-a0af-2124-a319.pool6.digikabel.hu) (Quit: Client closed) | 
| 2025-10-30 07:03:29 +0100 | Frostillicus | (~Frostilli@pool-71-174-119-69.bstnma.fios.verizon.net) | 
| 2025-10-30 07:05:54 +0100 | merijn | (~merijn@host-vr.cgnat-g.v4.dfn.nl) merijn | 
| 2025-10-30 07:09:17 +0100 | xff0x | (~xff0x@fsb6a9491c.tkyc517.ap.nuro.jp) (Ping timeout: 256 seconds) | 
| 2025-10-30 07:11:07 +0100 | merijn | (~merijn@host-vr.cgnat-g.v4.dfn.nl) (Ping timeout: 264 seconds) | 
| 2025-10-30 07:14:13 +0100 | merijn | (~merijn@host-vr.cgnat-g.v4.dfn.nl) merijn | 
| 2025-10-30 07:18:56 +0100 | merijn | (~merijn@host-vr.cgnat-g.v4.dfn.nl) (Ping timeout: 256 seconds) | 
| 2025-10-30 07:21:00 +0100 | Googulator69 | (~Googulato@2a01-036d-0106-03fa-9dbb-a0af-2124-a319.pool6.digikabel.hu) (Quit: Client closed) | 
| 2025-10-30 07:21:05 +0100 | Googulator52 | (~Googulato@2a01-036d-0106-03fa-9dbb-a0af-2124-a319.pool6.digikabel.hu) | 
| 2025-10-30 07:21:06 +0100 | xff0x | (~xff0x@fsb6a9491c.tkyc517.ap.nuro.jp) | 
| 2025-10-30 07:22:23 +0100 | img | (~img@user/img) (Quit: ZNC 1.8.2 - https://znc.in) | 
| 2025-10-30 07:23:42 +0100 | img | (~img@user/img) img | 
| 2025-10-30 07:25:42 +0100 | Googulator98 | (~Googulato@2a01-036d-0106-03fa-9dbb-a0af-2124-a319.pool6.digikabel.hu) | 
| 2025-10-30 07:25:42 +0100 | Googulator52 | (~Googulato@2a01-036d-0106-03fa-9dbb-a0af-2124-a319.pool6.digikabel.hu) (Client Quit) | 
| 2025-10-30 07:29:56 +0100 | merijn | (~merijn@host-vr.cgnat-g.v4.dfn.nl) merijn | 
| 2025-10-30 07:36:55 +0100 | merijn | (~merijn@host-vr.cgnat-g.v4.dfn.nl) (Ping timeout: 264 seconds) | 
| 2025-10-30 07:37:38 +0100 | xff0x | (~xff0x@fsb6a9491c.tkyc517.ap.nuro.jp) (Ping timeout: 256 seconds) | 
| 2025-10-30 07:39:24 +0100 | xff0x | (~xff0x@fsb6a9491c.tkyc517.ap.nuro.jp) | 
| 2025-10-30 07:43:00 +0100 | Lycurgus | (~juan@user/Lycurgus) (Quit: alsoknownas.renjuan.org ( juan@acm.org )) | 
| 2025-10-30 07:47:25 +0100 | trickard_ | (~trickard@cpe-52-98-47-163.wireline.com.au) (Ping timeout: 264 seconds) | 
| 2025-10-30 07:47:59 +0100 | merijn | (~merijn@host-vr.cgnat-g.v4.dfn.nl) merijn | 
| 2025-10-30 07:48:20 +0100 | trickard_ | (~trickard@cpe-52-98-47-163.wireline.com.au) | 
| 2025-10-30 07:49:15 +0100 | CiaoSen | (~Jura@2a02:8071:64e1:da0:5a47:caff:fe78:33db) CiaoSen | 
| 2025-10-30 07:50:29 +0100 | trickard_ | trickard | 
| 2025-10-30 07:50:45 +0100 | Googulator98 | (~Googulato@2a01-036d-0106-03fa-9dbb-a0af-2124-a319.pool6.digikabel.hu) (Quit: Client closed) | 
| 2025-10-30 07:50:52 +0100 | Googulator98 | (~Googulato@2a01-036d-0106-03fa-9dbb-a0af-2124-a319.pool6.digikabel.hu) | 
| 2025-10-30 07:52:51 +0100 | merijn | (~merijn@host-vr.cgnat-g.v4.dfn.nl) (Ping timeout: 252 seconds) | 
| 2025-10-30 07:56:50 +0100 | Square2 | (~Square4@user/square) Square | 
| 2025-10-30 08:01:20 +0100 | jreicher | (~user@user/jreicher) (Quit: Beer) | 
| 2025-10-30 08:02:00 +0100 | merijn | (~merijn@host-vr.cgnat-g.v4.dfn.nl) merijn | 
| 2025-10-30 08:02:51 +0100 | peterbecich | (~Thunderbi@172.222.148.214) peterbecich | 
| 2025-10-30 08:07:05 +0100 | merijn | (~merijn@host-vr.cgnat-g.v4.dfn.nl) (Ping timeout: 256 seconds) | 
| 2025-10-30 08:07:49 +0100 | annamalai | (~annamalai@157.32.128.210) (Ping timeout: 264 seconds) | 
| 2025-10-30 08:11:04 +0100 | Frostillicus | (~Frostilli@pool-71-174-119-69.bstnma.fios.verizon.net) (Ping timeout: 256 seconds) | 
| 2025-10-30 08:16:20 +0100 | wootehfoot | (~wootehfoo@user/wootehfoot) wootehfoot | 
| 2025-10-30 08:17:46 +0100 | merijn | (~merijn@host-vr.cgnat-g.v4.dfn.nl) merijn | 
| 2025-10-30 08:18:30 +0100 | annamalai | (~annamalai@2409:4042:2595:bd4d::195e:70b1) annamalai | 
| 2025-10-30 08:22:58 +0100 | merijn | (~merijn@host-vr.cgnat-g.v4.dfn.nl) (Ping timeout: 256 seconds) | 
| 2025-10-30 08:27:42 +0100 | jreicher | (~user@user/jreicher) jreicher | 
| 2025-10-30 08:33:37 +0100 | merijn | (~merijn@host-vr.cgnat-g.v4.dfn.nl) merijn | 
| 2025-10-30 08:38:23 +0100 | merijn | (~merijn@host-vr.cgnat-g.v4.dfn.nl) (Ping timeout: 250 seconds) | 
| 2025-10-30 08:41:05 +0100 | peterbecich | (~Thunderbi@172.222.148.214) (Ping timeout: 256 seconds) | 
| 2025-10-30 08:45:25 +0100 | monty | (~user@2601:646:300:83b0:b942:d9b0:5ff4:a7eb) | 
| 2025-10-30 08:45:58 +0100 | monty | (~user@2601:646:300:83b0:b942:d9b0:5ff4:a7eb) (Quit: ERC 5.6.0.30.1 (IRC client for GNU Emacs 30.2)) | 
| 2025-10-30 08:45:59 +0100 | ft | (~ft@p4fc2aaeb.dip0.t-ipconnect.de) (Quit: leaving) | 
| 2025-10-30 08:49:21 +0100 | merijn | (~merijn@host-vr.cgnat-g.v4.dfn.nl) merijn | 
| 2025-10-30 08:52:24 +0100 | Frostillicus | (~Frostilli@pool-71-174-119-69.bstnma.fios.verizon.net) | 
| 2025-10-30 08:54:07 +0100 | merijn | (~merijn@host-vr.cgnat-g.v4.dfn.nl) (Ping timeout: 256 seconds) | 
| 2025-10-30 08:57:01 +0100 | Arsen | (arsen@gentoo/developer/managarm.dev.Arsen) (Ping timeout: 264 seconds) | 
| 2025-10-30 08:57:35 +0100 | Frostillicus | (~Frostilli@pool-71-174-119-69.bstnma.fios.verizon.net) (Remote host closed the connection) | 
| 2025-10-30 08:57:57 +0100 | Frostillicus | (~Frostilli@71.174.119.69) | 
| 2025-10-30 08:57:59 +0100 | Arsen | (arsen@gentoo/developer/managarm.dev.Arsen) Arsen | 
| 2025-10-30 09:03:00 +0100 | merijn | (~merijn@host-vr.cgnat-g.v4.dfn.nl) merijn | 
| 2025-10-30 09:04:25 +0100 | Sgeo_ | (~Sgeo@user/sgeo) (Read error: Connection reset by peer) | 
| 2025-10-30 09:04:53 +0100 | bgt32 | (~keutoi@106.222.232.60) (Ping timeout: 256 seconds) | 
| 2025-10-30 09:05:40 +0100 | Googulator3 | (~Googulato@2a01-036d-0106-03fa-9dbb-a0af-2124-a319.pool6.digikabel.hu) | 
| 2025-10-30 09:05:40 +0100 | Googulator98 | (~Googulato@2a01-036d-0106-03fa-9dbb-a0af-2124-a319.pool6.digikabel.hu) (Quit: Client closed) | 
| 2025-10-30 09:06:53 +0100 | bgt32 | (~keutoi@106.222.233.20) | 
| 2025-10-30 09:09:37 +0100 | Fijxu | (~Fijxu@user/fijxu) (Ping timeout: 246 seconds) | 
| 2025-10-30 09:09:39 +0100 | srazkvt | (~sarah@user/srazkvt) srazkvt | 
| 2025-10-30 09:10:00 +0100 | merijn | (~merijn@host-vr.cgnat-g.v4.dfn.nl) (Ping timeout: 256 seconds) | 
| 2025-10-30 09:13:56 +0100 | tromp | (~textual@2001:1c00:3487:1b00:5978:a504:f2fd:26f) | 
| 2025-10-30 09:16:01 +0100 | trickard | (~trickard@cpe-52-98-47-163.wireline.com.au) (Read error: Connection reset by peer) | 
| 2025-10-30 09:16:16 +0100 | trickard_ | (~trickard@cpe-52-98-47-163.wireline.com.au) | 
| 2025-10-30 09:19:30 +0100 | tzh | (~tzh@c-76-115-131-146.hsd1.or.comcast.net) (Quit: zzz) | 
| 2025-10-30 09:20:03 +0100 | jreicher | (~user@user/jreicher) (Read error: Connection reset by peer) | 
| 2025-10-30 09:20:41 +0100 | qqe | (~qqq@185.54.23.200) | 
| 2025-10-30 09:22:05 +0100 | jreicher | (~user@user/jreicher) jreicher | 
| 2025-10-30 09:25:41 +0100 | Googulator3 | (~Googulato@2a01-036d-0106-03fa-9dbb-a0af-2124-a319.pool6.digikabel.hu) (Quit: Client closed) | 
| 2025-10-30 09:25:42 +0100 | Googulator48 | (~Googulato@2a01-036d-0106-03fa-9dbb-a0af-2124-a319.pool6.digikabel.hu) | 
| 2025-10-30 09:28:59 +0100 | trickard__ | (~trickard@cpe-61-98-47-163.wireline.com.au) | 
| 2025-10-30 09:29:22 +0100 | trickard_ | (~trickard@cpe-52-98-47-163.wireline.com.au) (Ping timeout: 244 seconds) | 
| 2025-10-30 09:42:19 +0100 | trickard__ | (~trickard@cpe-61-98-47-163.wireline.com.au) (Read error: Connection reset by peer) | 
| 2025-10-30 09:42:32 +0100 | trickard_ | (~trickard@cpe-61-98-47-163.wireline.com.au) | 
| 2025-10-30 09:45:41 +0100 | Googulator36 | (~Googulato@2a01-036d-0106-03fa-9dbb-a0af-2124-a319.pool6.digikabel.hu) | 
| 2025-10-30 09:45:46 +0100 | Googulator48 | (~Googulato@2a01-036d-0106-03fa-9dbb-a0af-2124-a319.pool6.digikabel.hu) (Quit: Client closed) | 
| 2025-10-30 09:47:53 +0100 | emmanuelux | (~emmanuelu@user/emmanuelux) (Remote host closed the connection) | 
| 2025-10-30 09:53:58 +0100 | trickard_ | (~trickard@cpe-61-98-47-163.wireline.com.au) (Read error: Connection reset by peer) | 
| 2025-10-30 09:54:11 +0100 | trickard_ | (~trickard@cpe-61-98-47-163.wireline.com.au) | 
| 2025-10-30 09:56:02 +0100 | kuribas | (~user@ip-188-118-57-242.reverse.destiny.be) kuribas | 
| 2025-10-30 09:56:02 +0100 | connrs | (~connrs@conners.plus.com) (Read error: Connection reset by peer) | 
| 2025-10-30 09:56:04 +0100 | Googulator11 | (~Googulato@2a01-036d-0106-03fa-9dbb-a0af-2124-a319.pool6.digikabel.hu) | 
| 2025-10-30 09:56:16 +0100 | Googulator36 | (~Googulato@2a01-036d-0106-03fa-9dbb-a0af-2124-a319.pool6.digikabel.hu) (Quit: Client closed) | 
| 2025-10-30 09:58:34 +0100 | connrs | (~connrs@user/connrs) connrs | 
| 2025-10-30 09:59:21 +0100 | merijn | (~merijn@77.242.116.146) merijn | 
| 2025-10-30 10:00:30 +0100 | ChaiTRex | (~ChaiTRex@user/chaitrex) (Remote host closed the connection) | 
| 2025-10-30 10:00:30 +0100 | <kuribas> | Let's say I have a TimeSeries as a functor and applicative, so fmap :: (a -> b) -> TimeSeries a -> TimeSeries b, and <*> :: TimeSeries (a -> b) -> TimeSeries a -> TimeSeries b.  Can I lift this into an expression AST, where Fmap :: Formula (a -> b) -> Expr a -> Expr b, App :: Expr (a -> b) -> Expr (b)? | 
| 2025-10-30 10:00:40 +0100 | Googulator11 | (~Googulato@2a01-036d-0106-03fa-9dbb-a0af-2124-a319.pool6.digikabel.hu) (Client Quit) | 
| 2025-10-30 10:00:43 +0100 | <kuribas> | Is there an abstraction for this? | 
| 2025-10-30 10:00:46 +0100 | Googulator88 | (~Googulato@2a01-036d-0106-03fa-9dbb-a0af-2124-a319.pool6.digikabel.hu) | 
| 2025-10-30 10:00:54 +0100 | ChaiTRex | (~ChaiTRex@user/chaitrex) ChaiTRex | 
| 2025-10-30 10:01:17 +0100 | <kuribas> | Basically I want to describe the timeseries as an abstract expression. | 
| 2025-10-30 10:01:48 +0100 | <kuribas> | For example, to compile this from a set of expressions to a set database queries. | 
| 2025-10-30 10:03:10 +0100 | qqe | (~qqq@185.54.23.200) (Quit: Lost terminal) | 
| 2025-10-30 10:04:14 +0100 | <tomsmeding> | kuribas: sounds like what you're looking for is a free applicative, analogous to a "free monad" for Monad | 
| 2025-10-30 10:04:27 +0100 | <tomsmeding> | this claims to be one encoding of that https://hackage.haskell.org/package/free-5.2/docs/Control-Applicative-Free.html | 
| 2025-10-30 10:05:01 +0100 | divlamir | (~divlamir@user/divlamir) (Read error: Connection reset by peer) | 
| 2025-10-30 10:05:20 +0100 | divlamir | (~divlamir@user/divlamir) divlamir | 
| 2025-10-30 10:05:34 +0100 | <tomsmeding> | but what you wrote would work fine too, I think, as long as 1. you add an `Expr a` field to App, and you add some additional constructor for actual operations to be done | 
| 2025-10-30 10:05:56 +0100 | <tomsmeding> | (plus some Pure :: a -> Expr a) | 
| 2025-10-30 10:08:06 +0100 | <kuribas> | tomsmeding: then "f" is the Formula language? | 
| 2025-10-30 10:08:21 +0100 | <tomsmeding> | with that Control.Applicative.Free? | 
| 2025-10-30 10:08:35 +0100 | <tomsmeding> | f is your underlying Applicative of operations that you want the expression to be able to perform | 
| 2025-10-30 10:08:40 +0100 | <tomsmeding> | Ap is the expression language | 
| 2025-10-30 10:09:03 +0100 | <tomsmeding> | f itself can be an expression language too if you wish to make the whole thing symbolic | 
| 2025-10-30 10:10:38 +0100 | <tomsmeding> | kuribas: have you seen free monads before? | 
| 2025-10-30 10:11:28 +0100 | Frostillicus | (~Frostilli@71.174.119.69) (Remote host closed the connection) | 
| 2025-10-30 10:11:50 +0100 | Frostillicus | (~Frostilli@pool-71-174-119-69.bstnma.fios.verizon.net) | 
| 2025-10-30 10:12:54 +0100 | annamalai | (~annamalai@2409:4042:2595:bd4d::195e:70b1) (Ping timeout: 256 seconds) | 
| 2025-10-30 10:18:01 +0100 | <kuribas> | a bit. | 
| 2025-10-30 10:18:57 +0100 | <kuribas> | So it becomes (data Expr f a)? | 
| 2025-10-30 10:19:24 +0100 | <kuribas> | Then the abstract version is "Expr Formula a" over some formula language. | 
| 2025-10-30 10:19:27 +0100 | <tomsmeding> | kuribas: if you want to roll your own, then yes | 
| 2025-10-30 10:19:39 +0100 | <kuribas> | If I don't? | 
| 2025-10-30 10:19:47 +0100 | <tomsmeding> | you would use Ap f a :p | 
| 2025-10-30 10:20:01 +0100 | <tomsmeding> | but if you want to understand what's going on, I do kind of recommend rolling your own | 
| 2025-10-30 10:20:10 +0100 | <tomsmeding> | it's not hard and makes it more transparent what you're doing precisely | 
| 2025-10-30 10:20:28 +0100 | <kuribas> | How does my expression language fit in Ap? | 
| 2025-10-30 10:20:32 +0100 | <tomsmeding> | and then, if you will only ever instantiate f to Formula anyway, you don't even need to parametrise the thing on f | 
| 2025-10-30 10:20:40 +0100 | <kuribas> | True | 
| 2025-10-30 10:20:43 +0100 | Googulator32 | (~Googulato@2a01-036d-0106-03fa-9dbb-a0af-2124-a319.pool6.digikabel.hu) | 
| 2025-10-30 10:20:45 +0100 | Googulator88 | (~Googulato@2a01-036d-0106-03fa-9dbb-a0af-2124-a319.pool6.digikabel.hu) (Quit: Client closed) | 
| 2025-10-30 10:20:55 +0100 | <tomsmeding> | kuribas: that Ap is a little expression language that expresses fmap, pure and <*> | 
| 2025-10-30 10:20:57 +0100 | <kuribas> | Though I can have a cheap evaluator to test the language. | 
| 2025-10-30 10:21:08 +0100 | <tomsmeding> | it doesn't express anything else | 
| 2025-10-30 10:21:25 +0100 | <tomsmeding> | if you want the language to express anything else than those things, that's what f is for | 
| 2025-10-30 10:22:04 +0100 | <tomsmeding> | if you want to see _how_ it expresses fmap, pure and <*> (though pure is rather obvious), you can look at the Functor and Applicative instance definitions | 
| 2025-10-30 10:22:57 +0100 | <tomsmeding> | kuribas: what makes me a little unsure about this is that you use "Formula" for the underlying effect. f is supposed to be some kind of effect; "formula" sounds pure | 
| 2025-10-30 10:23:29 +0100 | <tomsmeding> | from what you initially said, the standard approach would be to have f describe a database query in some sense | 
| 2025-10-30 10:23:57 +0100 | <tomsmeding> | then Ap grants you the ability to perform multiple database queries and post-process their results with pure functions | 
| 2025-10-30 10:24:16 +0100 | <tomsmeding> | all while keeping the individual queries performed available in the Ap data structure as f values | 
| 2025-10-30 10:24:20 +0100 | Fijxu | (~Fijxu@user/fijxu) fijxu | 
| 2025-10-30 10:24:45 +0100 | <tomsmeding> | now f doesn't need to be an actual "do the query" effect, it could (e.g.) also just be f ~ Const String, where the String is some SQL | 
| 2025-10-30 10:25:07 +0100 | <tomsmeding> | (I expect you to want more typing than that, but just as an example) | 
| 2025-10-30 10:25:51 +0100 | <kuribas> | tomsmeding: well, this language is supposed to be pure. | 
| 2025-10-30 10:26:02 +0100 | <tomsmeding> | then why are you using applicative functors? | 
| 2025-10-30 10:26:05 +0100 | <kuribas> | Translation to effects and database queries is done as a later step. | 
| 2025-10-30 10:26:11 +0100 | <tomsmeding> | oh right | 
| 2025-10-30 10:26:18 +0100 | <kuribas> | because you suggested it? | 
| 2025-10-30 10:26:19 +0100 | <tomsmeding> | it's a pure language _modelling_ a semantics which has effects | 
| 2025-10-30 10:26:31 +0100 | <tomsmeding> | kuribas: well you started with Fmap and App :) | 
| 2025-10-30 10:26:33 +0100 | <kuribas> | well, computation always has effects. | 
| 2025-10-30 10:26:43 +0100 | <tomsmeding> | 1 + 1 does not, in the sense in which we usually mean it in haskell | 
| 2025-10-30 10:26:46 +0100 | <kuribas> | But a SQL query is also pure in semantics. | 
| 2025-10-30 10:26:50 +0100 | <kuribas> | (excluding insert) | 
| 2025-10-30 10:27:02 +0100 | <tomsmeding> | no, because it depends on the current state of the database, which is external to the program | 
| 2025-10-30 10:27:06 +0100 | <kuribas> | tomsmeding: indeed | 
| 2025-10-30 10:27:31 +0100 | <tomsmeding> | okay, I guess it is pure if you consider the DB's state to be internal to the program state, but since we're doing Haskell and it isn't, it makes sense to consider it external here too | 
| 2025-10-30 10:27:48 +0100 | <tomsmeding> | okay good I now understand what you mean with Formula then | 
| 2025-10-30 10:28:07 +0100 | <tomsmeding> | a pure, syntactic representation of an effectful query | 
| 2025-10-30 10:28:10 +0100 | <tomsmeding> | that works | 
| 2025-10-30 10:28:39 +0100 | <kuribas> | like data Formula a where AddSeries :: Formula (TimeSeries Double -> TimeSeries Double -> TimeSeries Double) | 
| 2025-10-30 10:29:00 +0100 | tromp | (~textual@2001:1c00:3487:1b00:5978:a504:f2fd:26f) (Quit: My iMac has gone to sleep. ZZZzzz…) | 
| 2025-10-30 10:29:06 +0100 | <tomsmeding> | and FromTable :: String -> Formula (TimeSeries Double) ? | 
| 2025-10-30 10:29:12 +0100 | <tomsmeding> | or something like it | 
| 2025-10-30 10:30:55 +0100 | merijn | (~merijn@77.242.116.146) (Ping timeout: 264 seconds) | 
| 2025-10-30 10:30:56 +0100 | <kuribas> | ToQuery :: Ap (TimeSeries Formula a) -> SqlQuery | 
| 2025-10-30 10:31:33 +0100 | <kuribas> | More likely ToQueries :: [HashMap Text (Ap (TimSeries Formula a))] -> [SqlQuery] | 
| 2025-10-30 10:32:42 +0100 | <tomsmeding> | okay so here's my confusion, and I think the resolution to it: especially now that you present AddSeries -- a function-typed primitive in your little language -- having a functor-style interface to it feels weird to me, because 1. AddSeries by itself doesn't encode any kind of effect, and 2. being able to inspect that the query does AddSeries by itself is not particularly helpful. Instead, here I | 
| 2025-10-30 10:32:44 +0100 | <tomsmeding> | would expect you to just have a custom AST that models your query language, with no mention of fmap or such. However, if you want to subsequently embed that little language in Haskell, you'll have to introduce an operator for embedded function application, and lo, perhaps <*> typechecks nicely | 
| 2025-10-30 10:33:03 +0100 | <tomsmeding> | it would be Ap (TimeSeries Formula) a, but yeah | 
| 2025-10-30 10:33:21 +0100 | <tomsmeding> | I think I would recommend you roll your own expression data type here instead of reusing Ap | 
| 2025-10-30 10:33:36 +0100 | <kuribas> | Ah I see.  No, I don't want fmap or <*>, but something similar on AST level. | 
| 2025-10-30 10:33:40 +0100 | <tomsmeding> | right | 
| 2025-10-30 10:34:13 +0100 | <tomsmeding> | perhaps your custom expression data type ends up having a little substructure that looks a lot like Ap, and if you really want, you can later extract that | 
| 2025-10-30 10:34:47 +0100 | <tomsmeding> | but the convenience offered by the functions on Ap are probably not worth the semantical overhead of bringing in a free applicative when it "doesn't make any sense" because it's not the standard usage of a free applicative | 
| 2025-10-30 10:35:19 +0100 | finsternis | (~X@23.226.237.192) (Ping timeout: 240 seconds) | 
| 2025-10-30 10:35:21 +0100 | <tomsmeding> | now you can still offer fmap and <*> as user API to your library if you want, that's independent from all this | 
| 2025-10-30 10:35:42 +0100 | Googulator85 | (~Googulato@2a01-036d-0106-03fa-9dbb-a0af-2124-a319.pool6.digikabel.hu) | 
| 2025-10-30 10:35:45 +0100 | Googulator32 | (~Googulato@2a01-036d-0106-03fa-9dbb-a0af-2124-a319.pool6.digikabel.hu) (Quit: Client closed) | 
| 2025-10-30 10:36:32 +0100 | <tomsmeding> | data Expr a where { Constant :: a -> Expr a ; App :: Expr (a -> b) -> Expr a -> Expr b ; AddSeries :: Expr (TS D -> TS D -> TS D) ; ... } | 
| 2025-10-30 10:37:12 +0100 | <tomsmeding> | instance Functor Expr where fmap f e = App (Constant f) e | 
| 2025-10-30 10:37:16 +0100 | Frostillicus | (~Frostilli@pool-71-174-119-69.bstnma.fios.verizon.net) (Ping timeout: 256 seconds) | 
| 2025-10-30 10:37:28 +0100 | <tomsmeding> | instance Applicative Expr where { pure = Constant ; (<*>) = App } | 
| 2025-10-30 10:38:01 +0100 | <tomsmeding> | from my best understanding of what you want to do, I think this is the most understandable | 
| 2025-10-30 10:38:14 +0100 | <kuribas> | tomsmeding: the problem with fmap is that it introduces lambdas in my AST, which I cannot transform or inspect. | 
| 2025-10-30 10:38:21 +0100 | <tomsmeding> | well, yeah | 
| 2025-10-30 10:38:21 +0100 | finsternis | (~X@23.226.237.192) finsternis | 
| 2025-10-30 10:38:38 +0100 | <kuribas> | I want some "lifted fmap", which works over (Formula (a -> b)), not (a -> b) | 
| 2025-10-30 10:38:44 +0100 | <tomsmeding> | kuribas: but you know that those introduced functions do not perform any query operations | 
| 2025-10-30 10:39:15 +0100 | <tomsmeding> | kuribas: then presumably you also don't want a general `pure` | 
| 2025-10-30 10:39:19 +0100 | <kuribas> | Which introduced functions? | 
| 2025-10-30 10:39:25 +0100 | <tomsmeding> | because `fmap f x = pure f <*> x` | 
| 2025-10-30 10:39:36 +0100 | <kuribas> | yeah,  pure would introduce lambdas. | 
| 2025-10-30 10:39:38 +0100 | bgt32 | (~keutoi@106.222.233.20) (Ping timeout: 244 seconds) | 
| 2025-10-30 10:39:46 +0100 | <tomsmeding> | kuribas: you say "lambdas", I say "functions" because not every function is a literal lambda expression :) | 
| 2025-10-30 10:39:50 +0100 | <tomsmeding> | "closures" is also correct | 
| 2025-10-30 10:39:55 +0100 | <kuribas> | sure | 
| 2025-10-30 10:40:03 +0100 | <kuribas> | I did too much Python :) | 
| 2025-10-30 10:40:20 +0100 | <kuribas> | Though lambdas in python are thorougly broken... | 
| 2025-10-30 10:40:23 +0100 | <tomsmeding> | right, so if you want <*> but no general pure and no fmap at all, then define your own <*>-like operator | 
| 2025-10-30 10:40:28 +0100 | <tomsmeding> | $* or something | 
| 2025-10-30 10:40:32 +0100 | <tomsmeding> | kuribas: they are | 
| 2025-10-30 10:40:47 +0100 | <tomsmeding> | and forget about Functor and Applicative at all | 
| 2025-10-30 10:41:26 +0100 | <tomsmeding> | and if you have some `Constant :: ... => a -> Expr a` operation, don't forget to constrain it sufficiently that only constants you actually know how to deal with fit in there :) | 
| 2025-10-30 10:41:38 +0100 | <kuribas> | I am currently using python for this project, but the language is not very expressive for this timeseries language.  I wanted to model it in haskell first. | 
| 2025-10-30 10:42:00 +0100 | <kuribas> | tomsmeding: indeed, Constant should be limited to some types. | 
| 2025-10-30 10:42:08 +0100 | <tomsmeding> | doesn't python allow you to override function application on class instances? | 
| 2025-10-30 10:42:22 +0100 | <kuribas> | yes it does. | 
| 2025-10-30 10:42:36 +0100 | <kuribas> | I can build a formula language.  But I cannot statically type id. | 
| 2025-10-30 10:42:39 +0100 | <kuribas> | it | 
| 2025-10-30 10:42:44 +0100 | <tomsmeding> | so that removes the need for a special-purpose application operator (my $*, modelled after <*>) | 
| 2025-10-30 10:42:49 +0100 | <tomsmeding> | right | 
| 2025-10-30 10:43:16 +0100 | srazkvt | (~sarah@user/srazkvt) (Quit: Konversation terminated!) | 
| 2025-10-30 10:43:20 +0100 | merijn | (~merijn@77.242.116.146) merijn | 
| 2025-10-30 10:43:26 +0100 | <tomsmeding> | kuribas: ok so the answer to your initial question is just "yes" | 
| 2025-10-30 10:43:31 +0100 | Frostillicus | (~Frostilli@pool-71-174-119-69.bstnma.fios.verizon.net) | 
| 2025-10-30 10:43:48 +0100 | trickard_ | (~trickard@cpe-61-98-47-163.wireline.com.au) (Read error: Connection reset by peer) | 
| 2025-10-30 10:43:55 +0100 | <tomsmeding> | except that the fact that TimeSeries has fmap and <*> is irrelevant here | 
| 2025-10-30 10:44:01 +0100 | trickard_ | (~trickard@cpe-61-98-47-163.wireline.com.au) | 
| 2025-10-30 10:44:07 +0100 | <tomsmeding> | Expr will _not_ have fmap and <*> | 
| 2025-10-30 10:44:16 +0100 | <kuribas> | Maybe I just to Expr f a where PureDouble :: Double -> Expr Double; FMap :: f (a -> b) -> Expr a -> Expr b; FApp :: Expr (a -> b) -> Expr a -> Expr b; ... | 
| 2025-10-30 10:44:29 +0100 | <tomsmeding> | remove the f argument to Expr | 
| 2025-10-30 10:44:32 +0100 | <tomsmeding> | but yes, that | 
| 2025-10-30 10:44:49 +0100 | <tomsmeding> | oh you're using f; why have FMap too? | 
| 2025-10-30 10:44:53 +0100 | <kuribas> | ah, but I liked the idea that I can use this to reduce to value... | 
| 2025-10-30 10:44:54 +0100 | <tomsmeding> | isn't FApp enough? | 
| 2025-10-30 10:45:10 +0100 | <tomsmeding> | what will you instantiate f to? | 
| 2025-10-30 10:45:47 +0100 | <kuribas> | "Formula" for the AST, "Identity" for the result. | 
| 2025-10-30 10:46:01 +0100 | <tomsmeding> | how is Formula different from Expr? | 
| 2025-10-30 10:46:10 +0100 | <kuribas> | maybe not :) | 
| 2025-10-30 10:46:23 +0100 | <tomsmeding> | I feel like you want your evaluator to be Expr a -> IO a | 
| 2025-10-30 10:46:48 +0100 | <kuribas> | so FormulaExpr :: Formula a -> Expr a ? | 
| 2025-10-30 10:46:54 +0100 | <tomsmeding> | what even is Formula lol | 
| 2025-10-30 10:47:09 +0100 | <kuribas> | tomsmeding: just a finite set of functions. | 
| 2025-10-30 10:47:14 +0100 | Frostillicus | (~Frostilli@pool-71-174-119-69.bstnma.fios.verizon.net) (Remote host closed the connection) | 
| 2025-10-30 10:47:24 +0100 | <kuribas> | For example operations supported by a database. | 
| 2025-10-30 10:47:34 +0100 | <kuribas> | as a GADT | 
| 2025-10-30 10:47:36 +0100 | Frostillicus | (~Frostilli@pool-71-174-119-69.bstnma.fios.verizon.net) | 
| 2025-10-30 10:47:39 +0100 | <tomsmeding> | I would call that Operation, or Function, perhaps | 
| 2025-10-30 10:47:44 +0100 | <tomsmeding> | PrimOp, maybe | 
| 2025-10-30 10:47:45 +0100 | <kuribas> | right | 
| 2025-10-30 10:47:58 +0100 | <kuribas> | It's called formula in our current lisp system :) | 
| 2025-10-30 10:48:03 +0100 | <tomsmeding> | but in that case: yes | 
| 2025-10-30 10:48:08 +0100 | <tomsmeding> | ah | 
| 2025-10-30 10:48:28 +0100 | <tomsmeding> | a "formula", to me, is an expression involving functions and arguments and stuff | 
| 2025-10-30 10:48:52 +0100 | <tomsmeding> | x^2 + sqrt(y) is a formula; sqrt is a function | 
| 2025-10-30 10:49:10 +0100 | <kuribas> | Formula a where SumSeries :: Formula ([Series Double] -> Series Double); ... | 
| 2025-10-30 10:50:13 +0100 | <tomsmeding> | right, so I'll just read DbOperation where you write Formula | 
| 2025-10-30 10:50:34 +0100 | <kuribas> | No, because it should be abstracted from DB. | 
| 2025-10-30 10:50:39 +0100 | Googulator85 | (~Googulato@2a01-036d-0106-03fa-9dbb-a0af-2124-a319.pool6.digikabel.hu) (Quit: Client closed) | 
| 2025-10-30 10:50:43 +0100 | Googulator95 | (~Googulato@2a01-036d-0106-03fa-9dbb-a0af-2124-a319.pool6.digikabel.hu) | 
| 2025-10-30 10:50:46 +0100 | <merijn> | kuribas: So you're just trying to defunctionalize your timeseries operations? | 
| 2025-10-30 10:50:48 +0100 | <tomsmeding> | okay but it's still an operation, not a combination of operations | 
| 2025-10-30 10:50:49 +0100 | <kuribas> | And it's pure, not an operation. | 
| 2025-10-30 10:50:57 +0100 | <tomsmeding> | sqrt is an operation, not a formula | 
| 2025-10-30 10:51:05 +0100 | <tomsmeding> | sqrt(x) is a formula | 
| 2025-10-30 10:51:20 +0100 | <tomsmeding> | your Formula has sqrt, not sqrt(x), hence I call it Operation, not Formula :p | 
| 2025-10-30 10:51:35 +0100 | <kuribas> | But then this is more like a formula, since it doesn't have actual operations? | 
| 2025-10-30 10:51:55 +0100 | <kuribas> | Anyway, let's call it Function then :) | 
| 2025-10-30 10:52:06 +0100 | <tomsmeding> | https://github.com/AccelerateHS/accelerate/blob/master/src/Data/Array/Accelerate/AST.hs#L661-L753 | 
| 2025-10-30 10:52:56 +0100 | <kuribas> | What the difference between operation and function? | 
| 2025-10-30 10:53:04 +0100 | <tomsmeding> | opinion | 
| 2025-10-30 10:53:14 +0100 | <tomsmeding> | i.e. I don't care | 
| 2025-10-30 10:53:54 +0100 | <tomsmeding> | I personally like "operation" a little bit more for this because "function" kind of implies to my brain that it's any general function, which it isn't, it's one from a specified set of functions | 
| 2025-10-30 10:54:08 +0100 | <kuribas> | "From Wikipedia, the free encyclopedia: In mathematics, an operation is a function from a set to itself. For example, an operation on real numbers will take in real numbers and return a real number. An operation can take zero or more input values (also called "operands" or "arguments") to a well-defined output value. The number of operands is the arity of the operation. " | 
| 2025-10-30 10:54:09 +0100 | <tomsmeding> | but that's details and subjective | 
| 2025-10-30 10:54:14 +0100 | <kuribas> | Guess they are operations then :) | 
| 2025-10-30 10:54:48 +0100 | <kuribas> | Because I have a fixed set of supported types. | 
| 2025-10-30 10:54:51 +0100 | <tomsmeding> | I expect you to also have things like ConvertSeries :: TimeSeries Double -> TimeSeries Float though; is that "from a set to itself"? :p | 
| 2025-10-30 10:55:04 +0100 | <kuribas> | The set of all supported types. | 
| 2025-10-30 10:55:13 +0100 | <kuribas> | (timeseries, scalars, ...) | 
| 2025-10-30 10:55:16 +0100 | <tomsmeding> | that's not what "from a set to itself" means, but I'm okay with it :p | 
| 2025-10-30 10:55:28 +0100 | <tomsmeding> | (mathematics' "set" is essentially haskell's "type") | 
| 2025-10-30 10:55:39 +0100 | <tomsmeding> | (insert hand-wave here) | 
| 2025-10-30 10:56:06 +0100 | <tomsmeding> | but this is all messing around about terminology, are we clear that your original question has been answered? | 
| 2025-10-30 10:56:28 +0100 | <kuribas> | Sort of :) | 
| 2025-10-30 10:56:34 +0100 | <kuribas> | I got some good ideas, thanks. | 
| 2025-10-30 10:57:02 +0100 | chele | (~chele@user/chele) chele | 
| 2025-10-30 10:59:07 +0100 | bgt32 | (~keutoi@106.222.233.20) | 
| 2025-10-30 11:01:38 +0100 | Arsen | (arsen@gentoo/developer/managarm.dev.Arsen) (Ping timeout: 256 seconds) | 
| 2025-10-30 11:02:33 +0100 | Arsen | (arsen@gentoo/developer/managarm.dev.Arsen) Arsen | 
| 2025-10-30 11:02:52 +0100 | Googulator95 | (~Googulato@2a01-036d-0106-03fa-9dbb-a0af-2124-a319.pool6.digikabel.hu) (Quit: Client closed) | 
| 2025-10-30 11:03:09 +0100 | Googulator95 | (~Googulato@2a01-036d-0106-03fa-9dbb-a0af-2124-a319.pool6.digikabel.hu) | 
| 2025-10-30 11:03:20 +0100 | Frostillicus | (~Frostilli@pool-71-174-119-69.bstnma.fios.verizon.net) (Ping timeout: 256 seconds) | 
| 2025-10-30 11:03:54 +0100 | trickard_ | trickard | 
| 2025-10-30 11:05:28 +0100 | ru0mad | (~ru0mad@titan.ruomad.net) ru0mad | 
| 2025-10-30 11:05:35 +0100 | Frostillicus | (~Frostilli@pool-71-174-119-69.bstnma.fios.verizon.net) | 
| 2025-10-30 11:05:38 +0100 | <kuribas> | I can do all this in python, using dataclasses like "class Apply()", but it kind of makes my head hurt ... | 
| 2025-10-30 11:05:41 +0100 | Googulator95 | (~Googulato@2a01-036d-0106-03fa-9dbb-a0af-2124-a319.pool6.digikabel.hu) (Client Quit) | 
| 2025-10-30 11:05:48 +0100 | Googulator95 | (~Googulato@2a01-036d-0106-03fa-9dbb-a0af-2124-a319.pool6.digikabel.hu) | 
| 2025-10-30 11:06:01 +0100 | <kuribas> | Maybe it's a bit better now that python has pattern matching. | 
| 2025-10-30 11:08:25 +0100 | xff0x | (~xff0x@fsb6a9491c.tkyc517.ap.nuro.jp) (Ping timeout: 256 seconds) | 
| 2025-10-30 11:08:27 +0100 | ru0mad | (~ru0mad@titan.ruomad.net) (Client Quit) | 
| 2025-10-30 11:10:01 +0100 | <kuribas> | Also, with the lack of GADTs and higher kinded types, I cannot statically type this in python. | 
| 2025-10-30 11:10:56 +0100 | acidjnk | (~acidjnk@p200300d6e717193069949166e2561304.dip0.t-ipconnect.de) acidjnk | 
| 2025-10-30 11:17:05 +0100 | <kuribas> | tomsmeding: we have a lot of weirder terminology that "formula".  Our "raw timeseries information struct" is called DPar, and our "non-compounded indicators" are called "IMPoint". | 
| 2025-10-30 11:18:39 +0100 | jreicher | (~user@user/jreicher) (Quit: In transit) | 
| 2025-10-30 11:18:43 +0100 | annamalai | (~annamalai@157.32.135.74) annamalai | 
| 2025-10-30 11:20:40 +0100 | haskellbridge | (~hackager@96.28.224.214) (Remote host closed the connection) | 
| 2025-10-30 11:23:44 +0100 | haskellbridge | (~hackager@96.28.224.214) hackager | 
| 2025-10-30 11:23:44 +0100 | ChanServ | +v haskellbridge | 
| 2025-10-30 11:24:52 +0100 | <kuribas> | tomsmeding: and "a collection of indicators related to some device" is called DPoint | 
| 2025-10-30 11:25:15 +0100 | <kuribas> | I used to be very confused by all those terms. | 
| 2025-10-30 11:25:23 +0100 | Googulator95 | (~Googulato@2a01-036d-0106-03fa-9dbb-a0af-2124-a319.pool6.digikabel.hu) (Quit: Client closed) | 
| 2025-10-30 11:25:41 +0100 | Googulator95 | (~Googulato@2a01-036d-0106-03fa-9dbb-a0af-2124-a319.pool6.digikabel.hu) | 
| 2025-10-30 11:27:45 +0100 | <tomsmeding> | kuribas: likely impossible to change now that everyone has been Stockholmed into them :) | 
| 2025-10-30 11:28:04 +0100 | <kuribas> | very true :) | 
| 2025-10-30 11:35:17 +0100 | annamalai | (~annamalai@157.32.135.74) (Remote host closed the connection) | 
| 2025-10-30 11:35:31 +0100 | annamalai | (~annamalai@2409:4042:2595:bd4d::195e:70b1) annamalai | 
| 2025-10-30 11:40:18 +0100 | <kuribas> | I feel we are stockholm syndromed in all the complexity of the system. | 
| 2025-10-30 11:40:49 +0100 | <kuribas> | But then that's probably the same for any legacy production system, where the focus is on delivering new features, rather than keeping the code clean. | 
| 2025-10-30 11:42:55 +0100 | <kuribas> | I still think we can improve efficiency of development by 10X, by refactoring and cleaning stuff up. | 
| 2025-10-30 11:45:46 +0100 | Googulator70 | (~Googulato@2a01-036d-0106-03fa-9dbb-a0af-2124-a319.pool6.digikabel.hu) | 
| 2025-10-30 11:45:48 +0100 | Googulator95 | (~Googulato@2a01-036d-0106-03fa-9dbb-a0af-2124-a319.pool6.digikabel.hu) (Quit: Client closed) | 
| 2025-10-30 11:48:07 +0100 | <kuribas> | It's so monolythic, you cannot understand a small part, without getting the whole system. | 
| 2025-10-30 11:48:28 +0100 | jreicher | (~user@user/jreicher) jreicher | 
| 2025-10-30 11:48:39 +0100 | <kuribas> | Which is also not documented anywhere, since it is proprietary, and created by mostly a single person. | 
| 2025-10-30 11:49:13 +0100 | qqe | (~qqq@185.54.23.200) | 
| 2025-10-30 11:51:32 +0100 | tremon | (~tremon@83.80.159.219) tremon | 
| 2025-10-30 11:52:06 +0100 | merijn | (~merijn@77.242.116.146) (Ping timeout: 252 seconds) | 
| 2025-10-30 11:54:29 +0100 | <haskellbridge> | <Morj> Over the last 6 months I, in a big hurry, solo wrote a monolithic, badly documented system. And now a second guy is working on this, and they are copy-pasting my design mistakes as patterns >_< | 
| 2025-10-30 11:56:28 +0100 | merijn | (~merijn@77.242.116.146) merijn | 
| 2025-10-30 11:56:56 +0100 | <kuribas> | lol | 
| 2025-10-30 11:57:06 +0100 | <kuribas> | At least you are honest about those design mistakes :) | 
| 2025-10-30 12:07:46 +0100 | Wbooze | (~wboozE@2a02:8071:57a1:dc0:3827:9244:6b75:269a) (Quit: Leaving) | 
| 2025-10-30 12:12:22 +0100 | wbrawner | (~wbrawner@static.56.224.132.142.clients.your-server.de) (Remote host closed the connection) | 
| 2025-10-30 12:13:47 +0100 | <dutchie> | do i need a newtype to get a Monoid instance for Map a [k] that appends the lists at matching keys? | 
| 2025-10-30 12:16:26 +0100 | <jackdk> | Yes, or be sure to write `unionWith (<>)` unless you're specifically interfacing with code that uses the `Monoid` interface. There's one in package monoidal-containers. | 
| 2025-10-30 12:16:43 +0100 | xff0x | (~xff0x@2405:6580:b080:900:85d0:1426:7d14:fc4d) | 
| 2025-10-30 12:20:06 +0100 | <dutchie> | yeah I'm using foldMap so unionWith isn't helpful | 
| 2025-10-30 12:23:11 +0100 | <jackdk> | You could also try https://hackage.haskell.org/package/reflection-2.1.9/docs/Data-Reflection.html#v:foldMapBy which uses Dark Magic™ | 
| 2025-10-30 12:26:53 +0100 | <[exa]> | Morj: "welcome to production quality" <3 | 
| 2025-10-30 12:30:36 +0100 | merijn | (~merijn@77.242.116.146) (Ping timeout: 256 seconds) | 
| 2025-10-30 12:31:46 +0100 | nerdychip | (~nerdychip@212.129.72.100) | 
| 2025-10-30 12:31:46 +0100 | nerdychip | (~nerdychip@212.129.72.100) (Changing host) | 
| 2025-10-30 12:31:46 +0100 | nerdychip | (~nerdychip@user/nerdychip) nerdychip | 
| 2025-10-30 12:36:24 +0100 | trickard | (~trickard@cpe-61-98-47-163.wireline.com.au) (Read error: Connection reset by peer) | 
| 2025-10-30 12:38:55 +0100 | trickard_ | (~trickard@cpe-61-98-47-163.wireline.com.au) | 
| 2025-10-30 12:40:49 +0100 | bgt32 | (~keutoi@106.222.233.20) (Ping timeout: 264 seconds) | 
| 2025-10-30 12:42:14 +0100 | merijn | (~merijn@77.242.116.146) merijn | 
| 2025-10-30 12:48:01 +0100 | merijn | (~merijn@77.242.116.146) (Ping timeout: 264 seconds) | 
| 2025-10-30 12:48:55 +0100 | chromoblob | (~chromoblo@user/chromob1ot1c) (Ping timeout: 264 seconds) | 
| 2025-10-30 12:51:21 +0100 | craunts795335385 | (~craunts@136.158.7.194) | 
| 2025-10-30 12:54:55 +0100 | Frostillicus | (~Frostilli@pool-71-174-119-69.bstnma.fios.verizon.net) (Ping timeout: 250 seconds) | 
| 2025-10-30 12:57:18 +0100 | merijn | (~merijn@77.242.116.146) merijn | 
| 2025-10-30 13:04:11 +0100 | srazkvt | (~sarah@user/srazkvt) srazkvt | 
| 2025-10-30 13:05:43 +0100 | Googulator70 | (~Googulato@2a01-036d-0106-03fa-9dbb-a0af-2124-a319.pool6.digikabel.hu) (Quit: Client closed) | 
| 2025-10-30 13:05:46 +0100 | Googulator91 | (~Googulato@2a01-036d-0106-03fa-9dbb-a0af-2124-a319.pool6.digikabel.hu) | 
| 2025-10-30 13:10:16 +0100 | Frostillicus | (~Frostilli@pool-71-174-119-69.bstnma.fios.verizon.net) | 
| 2025-10-30 13:14:30 +0100 | L29Ah | (~L29Ah@wikipedia/L29Ah) L29Ah | 
| 2025-10-30 13:15:19 +0100 | __monty__ | (~toonn@user/toonn) toonn | 
| 2025-10-30 13:22:54 +0100 | chromoblob | (~chromoblo@user/chromob1ot1c) chromoblob\0 | 
| 2025-10-30 13:24:33 +0100 | wbrawner | (~wbrawner@129.146.105.153) wbrawner | 
| 2025-10-30 13:27:01 +0100 | Frostillicus | (~Frostilli@pool-71-174-119-69.bstnma.fios.verizon.net) (Ping timeout: 264 seconds) | 
| 2025-10-30 13:34:03 +0100 | merijn | (~merijn@77.242.116.146) (Ping timeout: 256 seconds) | 
| 2025-10-30 13:34:15 +0100 | bggd | (~bgg@2a01:e0a:819:1510:f314:af0a:6c28:12ae) (Remote host closed the connection) | 
| 2025-10-30 13:35:41 +0100 | Googulator87 | (~Googulato@2a01-036d-0106-03fa-9dbb-a0af-2124-a319.pool6.digikabel.hu) | 
| 2025-10-30 13:35:47 +0100 | Googulator91 | (~Googulato@2a01-036d-0106-03fa-9dbb-a0af-2124-a319.pool6.digikabel.hu) (Quit: Client closed) | 
| 2025-10-30 13:37:01 +0100 | merijn | (~merijn@77.242.116.146) merijn | 
| 2025-10-30 13:37:46 +0100 | Frostillicus | (~Frostilli@pool-71-174-119-69.bstnma.fios.verizon.net) | 
| 2025-10-30 13:39:31 +0100 | trickard_ | trickard | 
| 2025-10-30 13:44:32 +0100 | FirefoxDeHuk | (~FirefoxDe@109.108.69.106) | 
| 2025-10-30 13:44:51 +0100 | bgt32 | (~keutoi@106.222.233.20) | 
| 2025-10-30 13:45:07 +0100 | Frostillicus | (~Frostilli@pool-71-174-119-69.bstnma.fios.verizon.net) (Ping timeout: 244 seconds) | 
| 2025-10-30 13:47:56 +0100 | trickard | (~trickard@cpe-61-98-47-163.wireline.com.au) (Read error: Connection reset by peer) | 
| 2025-10-30 13:48:09 +0100 | trickard | (~trickard@cpe-61-98-47-163.wireline.com.au) | 
| 2025-10-30 13:49:12 +0100 | AlexZenon | (~alzenon@85.174.182.61) (Quit: ;-) | 
| 2025-10-30 13:49:59 +0100 | AlexNoo | (~AlexNoo@85.174.182.61) (Quit: Leaving) | 
| 2025-10-30 13:51:19 +0100 | weary-traveler | (~user@user/user363627) (Remote host closed the connection) | 
| 2025-10-30 13:54:49 +0100 | robobub | (uid248673@id-248673.uxbridge.irccloud.com) robobub | 
| 2025-10-30 13:55:18 +0100 | trickard | (~trickard@cpe-61-98-47-163.wireline.com.au) (Ping timeout: 252 seconds) | 
| 2025-10-30 13:58:11 +0100 | trickard | (~trickard@cpe-50-98-47-163.wireline.com.au) | 
| 2025-10-30 14:00:45 +0100 | Googulator98 | (~Googulato@2a01-036d-0106-03fa-9dbb-a0af-2124-a319.pool6.digikabel.hu) | 
| 2025-10-30 14:00:45 +0100 | Googulator87 | (~Googulato@2a01-036d-0106-03fa-9dbb-a0af-2124-a319.pool6.digikabel.hu) (Quit: Client closed) | 
| 2025-10-30 14:07:26 +0100 | qqe | (~qqq@185.54.23.200) (Remote host closed the connection) | 
| 2025-10-30 14:10:15 +0100 | Googulator98 | (~Googulato@2a01-036d-0106-03fa-9dbb-a0af-2124-a319.pool6.digikabel.hu) (Quit: Client closed) | 
| 2025-10-30 14:10:48 +0100 | Googulator98 | (~Googulato@2a01-036d-0106-03fa-9dbb-a0af-2124-a319.pool6.digikabel.hu) | 
| 2025-10-30 14:13:33 +0100 | nerdychip | (~nerdychip@user/nerdychip) (Ping timeout: 265 seconds) | 
| 2025-10-30 14:14:45 +0100 | humasect | (~humasect@dyn-192-249-132-90.nexicom.net) humasect | 
| 2025-10-30 14:16:01 +0100 | Googulator12 | (~Googulato@2a01-036d-0106-03fa-9dbb-a0af-2124-a319.pool6.digikabel.hu) | 
| 2025-10-30 14:16:23 +0100 | AlexNoo | (~AlexNoo@85.174.182.61) | 
| 2025-10-30 14:16:31 +0100 | Googulator98 | (~Googulato@2a01-036d-0106-03fa-9dbb-a0af-2124-a319.pool6.digikabel.hu) (Quit: Client closed) | 
| 2025-10-30 14:19:13 +0100 | humasect | (~humasect@dyn-192-249-132-90.nexicom.net) (Ping timeout: 264 seconds) | 
| 2025-10-30 14:20:37 +0100 | Googulator12 | (~Googulato@2a01-036d-0106-03fa-9dbb-a0af-2124-a319.pool6.digikabel.hu) (Client Quit) | 
| 2025-10-30 14:20:43 +0100 | Googulator3 | (~Googulato@2a01-036d-0106-03fa-9dbb-a0af-2124-a319.pool6.digikabel.hu) | 
| 2025-10-30 14:35:29 +0100 | AlexZenon | (~alzenon@85.174.182.61) | 
| 2025-10-30 14:35:40 +0100 | FirefoxDeHuk | (~FirefoxDe@109.108.69.106) (Quit: Client closed) | 
| 2025-10-30 14:45:37 +0100 | Googulator3 | (~Googulato@2a01-036d-0106-03fa-9dbb-a0af-2124-a319.pool6.digikabel.hu) (Quit: Client closed) | 
| 2025-10-30 14:45:40 +0100 | Houlton | (~Houlton@user/Houlton) Houlton | 
| 2025-10-30 14:45:44 +0100 | Googulator63 | (~Googulato@2a01-036d-0106-03fa-9dbb-a0af-2124-a319.pool6.digikabel.hu) | 
| 2025-10-30 14:45:56 +0100 | <kuribas> | I did open-source first for a long time, and was shocked about industry. | 
| 2025-10-30 14:46:14 +0100 | <kuribas> | It's more about kissing peoples asses and churning out features quick, don't mind quality. | 
| 2025-10-30 14:47:12 +0100 | <kuribas> | If you create code that has little bugs, people don't see it, when it has lots of bugs, people go "look how fast this guy solves bugs"!. | 
| 2025-10-30 14:48:13 +0100 | Houlton | (~Houlton@user/Houlton) (Client Quit) | 
| 2025-10-30 14:48:32 +0100 | <kuribas> | Sorry, feeling sarcastic today. | 
| 2025-10-30 14:53:02 +0100 | Frostillicus | (~Frostilli@pool-71-174-119-69.bstnma.fios.verizon.net) | 
| 2025-10-30 14:54:17 +0100 | inline | (~inline@2a02:8071:57a1:dc0:680d:95f1:5489:2954) Inline | 
| 2025-10-30 14:59:23 +0100 | <TMA> | kuribas: it is the same with plumbers... bad plumbers display more effort and are tipped more than competent ones. custom software is a service, performative aspects are therefore much more important there | 
| 2025-10-30 15:05:51 +0100 | inline | (~inline@2a02:8071:57a1:dc0:680d:95f1:5489:2954) (Quit: Leaving) | 
| 2025-10-30 15:08:01 +0100 | Frostillicus | (~Frostilli@pool-71-174-119-69.bstnma.fios.verizon.net) (Read error: Connection reset by peer) | 
| 2025-10-30 15:09:14 +0100 | trickard__ | (~trickard@cpe-54-98-47-163.wireline.com.au) | 
| 2025-10-30 15:09:46 +0100 | Frostillicus | (~Frostilli@pool-71-174-119-69.bstnma.fios.verizon.net) | 
| 2025-10-30 15:10:33 +0100 | trickard | (~trickard@cpe-50-98-47-163.wireline.com.au) (Ping timeout: 250 seconds) | 
| 2025-10-30 15:12:52 +0100 | inline | (~inline@2a02:8071:57a1:dc0:680d:95f1:5489:2954) Inline | 
| 2025-10-30 15:13:18 +0100 | <kuribas> | TMA: they do? | 
| 2025-10-30 15:13:28 +0100 | srazkvt | (~sarah@user/srazkvt) (Ping timeout: 244 seconds) | 
| 2025-10-30 15:15:28 +0100 | pavonia | (~user@user/siracusa) (Quit: Bye!) | 
| 2025-10-30 15:15:43 +0100 | Googulator70 | (~Googulato@84-236-65-182.pool.digikabel.hu) | 
| 2025-10-30 15:15:44 +0100 | Googulator63 | (~Googulato@2a01-036d-0106-03fa-9dbb-a0af-2124-a319.pool6.digikabel.hu) (Quit: Client closed) | 
| 2025-10-30 15:16:38 +0100 | Sgeo | (~Sgeo@user/sgeo) Sgeo | 
| 2025-10-30 15:17:31 +0100 | <kuribas> | I suppose I don't know if a plumber did a good job in my home, unless the pipes break some time later. | 
| 2025-10-30 15:17:40 +0100 | <TMA> | kuribas: it is the theatrical performance that makes the difference. the client needs to see the worker expending the effort | 
| 2025-10-30 15:18:48 +0100 | <kuribas> | right | 
| 2025-10-30 15:19:56 +0100 | <TMA> | kuribas: if you don't see the performance, the effect vanishes. I have much lower opinion of the plumber that did some fixing in my mother's flat because I did not see him doing it. my mother has seen him doing it and considered the fix be of higher quality than I would assess | 
| 2025-10-30 15:21:08 +0100 | <TMA> | software development service is the same: no bugs == no opportunity to show effort fixing them fast == lower perceived value of the service | 
| 2025-10-30 15:21:33 +0100 | noctux | (~noctux@user/noctux) (Read error: Connection reset by peer) | 
| 2025-10-30 15:22:17 +0100 | <tomsmeding> | TMA: well spoken | 
| 2025-10-30 15:22:34 +0100 | <lortabac> | kuribas: it depends on the company and also which industry you are in | 
| 2025-10-30 15:22:37 +0100 | <TMA> | it is like the LLMs spitting out nonsense and then going "good catch, I goofed" | 
| 2025-10-30 15:23:23 +0100 | <tomsmeding> | (not sure about that one; that's just annoying) | 
| 2025-10-30 15:23:41 +0100 | <lortabac> | I can tell you from experience that there are companies where quality is recognized and valued | 
| 2025-10-30 15:23:58 +0100 | noctux | (~noctux@user/noctux) noctux | 
| 2025-10-30 15:24:34 +0100 | <tomsmeding> | what TMA describes fundamentally comes from a non-knowledgeable person being tasked with assessing value | 
| 2025-10-30 15:26:45 +0100 | <kuribas> | sadly management are often non-knowledgeable. | 
| 2025-10-30 15:27:00 +0100 | <kuribas> | It least on technical details of the product. | 
| 2025-10-30 15:28:25 +0100 | srazkvt | (~sarah@user/srazkvt) srazkvt | 
| 2025-10-30 15:28:43 +0100 | <tomsmeding> | and perhaps it is that part that most depends on the company, resulting also in lortabac's experience | 
| 2025-10-30 15:30:28 +0100 | <lortabac> | yes, in my experience a manager with technical competency helps a lot | 
| 2025-10-30 15:30:43 +0100 | Googulator12 | (~Googulato@2a01-036d-0106-03fa-9dbb-a0af-2124-a319.pool6.digikabel.hu) | 
| 2025-10-30 15:30:55 +0100 | <lortabac> | *competence | 
| 2025-10-30 15:31:22 +0100 | Googulator70 | (~Googulato@84-236-65-182.pool.digikabel.hu) (Quit: Client closed) | 
| 2025-10-30 15:35:19 +0100 | <TMA> | I have experienced managers that were proud of their domain incompetence. Not being "tainted" by understanding the domain was a virtue to them. | 
| 2025-10-30 15:36:00 +0100 | <TMA> | Business/economic school graduates, all of them | 
| 2025-10-30 15:43:08 +0100 | foo3 | (~Square@user/square) Square | 
| 2025-10-30 15:43:25 +0100 | <kuribas> | Or the domain is not software development.  The managers understand their domain, but not how to manage a software team. | 
| 2025-10-30 15:48:01 +0100 | Square2 | (~Square4@user/square) (Ping timeout: 264 seconds) | 
| 2025-10-30 15:57:32 +0100 | catties | (~catties@user/meow/catties) (Quit: n_n) | 
| 2025-10-30 15:57:52 +0100 | catties | (~catties@user/meow/catties) catties | 
| 2025-10-30 16:00:44 +0100 | Googulator69 | (~Googulato@2a01-036d-0106-03fa-9dbb-a0af-2124-a319.pool6.digikabel.hu) | 
| 2025-10-30 16:00:45 +0100 | Googulator12 | (~Googulato@2a01-036d-0106-03fa-9dbb-a0af-2124-a319.pool6.digikabel.hu) (Quit: Client closed) | 
| 2025-10-30 16:08:16 +0100 | jmcantrell | (~weechat@user/jmcantrell) jmcantrell | 
| 2025-10-30 16:08:43 +0100 | <haskellbridge> | <Morj> Who is administering the bridge? Since some time ago I don't get @-ed when someone mentions my name on irc, it stays as regular text. I remember it used to work, did something change? | 
| 2025-10-30 16:15:00 +0100 | jmcantrell | (~weechat@user/jmcantrell) (Ping timeout: 256 seconds) | 
| 2025-10-30 16:16:39 +0100 | <tomsmeding> | geekosaur: ^ | 
| 2025-10-30 16:17:39 +0100 | <geekosaur> | it's possible, I update the docker container weekly and heisenbridge has introduced bugs before | 
| 2025-10-30 16:17:45 +0100 | CiaoSen | (~Jura@2a02:8071:64e1:da0:5a47:caff:fe78:33db) (Ping timeout: 252 seconds) | 
| 2025-10-30 16:20:36 +0100 | machinedgod | (~machinedg@d75-159-126-101.abhsia.telus.net) machinedgod | 
| 2025-10-30 16:20:50 +0100 | <geekosaur> | although I note that I got pinged Matrix-side by Tom's ping; that may mean it only pings if it's the first thing on the line (which mismatches most but not all IRC clients) | 
| 2025-10-30 16:21:47 +0100 | <geekosaur> | Morj: testing | 
| 2025-10-30 16:21:54 +0100 | <tomsmeding> | testing for geekosaur | 
| 2025-10-30 16:22:23 +0100 | <geekosaur> | that one pinged me too | 
| 2025-10-30 16:22:24 +0100 | <tomsmeding> | I think, by default (not sure to what extent that depends on the client being Element), one's nick is recognised on matrix anywhere in a message | 
| 2025-10-30 16:22:45 +0100 | <tomsmeding> | to the point that it's even recognised when it occurs in the header of the quote in the plain-text version of a standard reply! | 
| 2025-10-30 16:22:53 +0100 | <geekosaur> | yes, but the client has to send mentions as part of the message | 
| 2025-10-30 16:22:55 +0100 | <tomsmeding> | which is why replies ping you | 
| 2025-10-30 16:23:13 +0100 | CiaoSen | (~Jura@2a02:8071:64e1:da0:5a47:caff:fe78:33db) CiaoSen | 
| 2025-10-30 16:23:14 +0100 | <tomsmeding> | oh really? | 
| 2025-10-30 16:23:17 +0100 | <tomsmeding> | oh _mentions_, yes | 
| 2025-10-30 16:23:35 +0100 | <geekosaur> | you can see this if you look at the original message (don't recall how you do this in Element, it's in the right-click menu in Nheko) | 
| 2025-10-30 16:23:40 +0100 | <geekosaur> | "view raw message" | 
| 2025-10-30 16:24:36 +0100 | <tomsmeding> | TIL | 
| 2025-10-30 16:25:19 +0100 | <tomsmeding> | (it's three-dots menu on a message -> view source) | 
| 2025-10-30 16:30:34 +0100 | srazkvt | (~sarah@user/srazkvt) (Quit: Konversation terminated!) | 
| 2025-10-30 16:30:37 +0100 | Maxdamantus | (~Maxdamant@user/maxdamantus) (Ping timeout: 264 seconds) | 
| 2025-10-30 16:35:56 +0100 | Maxdamantus | (~Maxdamant@user/maxdamantus) Maxdamantus | 
| 2025-10-30 16:36:23 +0100 | <geekosaur> | hm, silence suggests Morj didn't get pinged. but they seem to be working in general | 
| 2025-10-30 16:36:48 +0100 | <geekosaur> | unless it's somehow related to my being on both sides of the bridge (maybe using the wrong side's member list?) | 
| 2025-10-30 16:36:55 +0100 | CiaoSen | (~Jura@2a02:8071:64e1:da0:5a47:caff:fe78:33db) (Ping timeout: 264 seconds) | 
| 2025-10-30 16:37:54 +0100 | <geekosaur> | 21it: around? | 
| 2025-10-30 16:41:27 +0100 | img | (~img@user/img) (Quit: ZNC 1.8.2 - https://znc.in) | 
| 2025-10-30 16:42:44 +0100 | <haskellbridge> | <geekosaur> mmm, raw message shows nothing ☹️ | 
| 2025-10-30 16:42:46 +0100 | img | (~img@user/img) img | 
| 2025-10-30 16:45:43 +0100 | <haskellbridge> | <geekosaur> right, but it does for your pings of me. I'll ask upstream | 
| 2025-10-30 16:46:20 +0100 | Zemy_ | (~Zemy@2600:100c:b05a:6015:cc82:41ff:feec:ee96) | 
| 2025-10-30 16:46:43 +0100 | michalz | (~michalz@185.246.207.221) | 
| 2025-10-30 16:47:28 +0100 | Zemy | (~Zemy@72.178.108.235) (Read error: Connection reset by peer) | 
| 2025-10-30 16:47:55 +0100 | Zemy | (~Zemy@72.178.108.235) | 
| 2025-10-30 16:50:42 +0100 | Zemy_ | (~Zemy@2600:100c:b05a:6015:cc82:41ff:feec:ee96) (Ping timeout: 256 seconds) | 
| 2025-10-30 16:51:19 +0100 | inline | (~inline@2a02:8071:57a1:dc0:680d:95f1:5489:2954) (Quit: Leaving) | 
| 2025-10-30 16:53:32 +0100 | chele | (~chele@user/chele) (Remote host closed the connection) | 
| 2025-10-30 16:55:04 +0100 | <geekosaur> | there wasn't a bug filed for it, so I filed one (https://github.com/hifi/heisenbridge/issues/310) | 
| 2025-10-30 16:55:08 +0100 | inline | (~inline@2a02:8071:57a1:dc0:5389:5413:4fcb:de9f) Inline | 
| 2025-10-30 16:56:28 +0100 | Googulator69 | (~Googulato@2a01-036d-0106-03fa-9dbb-a0af-2124-a319.pool6.digikabel.hu) (Quit: Client closed) | 
| 2025-10-30 16:56:50 +0100 | Googulator69 | (~Googulato@2a01-036d-0106-03fa-9dbb-a0af-2124-a319.pool6.digikabel.hu) | 
| 2025-10-30 16:59:12 +0100 | Arsen | (arsen@gentoo/developer/managarm.dev.Arsen) (Ping timeout: 256 seconds) | 
| 2025-10-30 17:05:27 +0100 | FirefoxDeHuk | (~FirefoxDe@109.108.69.106) | 
| 2025-10-30 17:05:42 +0100 | FirefoxDeHuk | (~FirefoxDe@109.108.69.106) (Client Quit) | 
| 2025-10-30 17:09:50 +0100 | Arsen | (arsen@gentoo/developer/managarm.dev.Arsen) Arsen | 
| 2025-10-30 17:14:30 +0100 | Arsen | (arsen@gentoo/developer/managarm.dev.Arsen) (Ping timeout: 256 seconds) | 
| 2025-10-30 17:15:37 +0100 | Googulator69 | (~Googulato@2a01-036d-0106-03fa-9dbb-a0af-2124-a319.pool6.digikabel.hu) (Quit: Client closed) | 
| 2025-10-30 17:15:40 +0100 | Googulator76 | (~Googulato@2a01-036d-0106-03fa-9dbb-a0af-2124-a319.pool6.digikabel.hu) | 
| 2025-10-30 17:15:55 +0100 | Maxdamantus | (~Maxdamant@user/maxdamantus) (Ping timeout: 264 seconds) | 
| 2025-10-30 17:17:21 +0100 | Maxdamantus | (~Maxdamant@user/maxdamantus) Maxdamantus | 
| 2025-10-30 17:20:42 +0100 | Googulator76 | (~Googulato@2a01-036d-0106-03fa-9dbb-a0af-2124-a319.pool6.digikabel.hu) (Quit: Client closed) | 
| 2025-10-30 17:20:49 +0100 | Googulator9 | (~Googulato@2a01-036d-0106-03fa-9dbb-a0af-2124-a319.pool6.digikabel.hu) | 
| 2025-10-30 17:21:39 +0100 | Arsen | (arsen@gentoo/developer/managarm.dev.Arsen) Arsen | 
| 2025-10-30 17:27:19 +0100 | Square2 | (~Square4@user/square) Square | 
| 2025-10-30 17:27:41 +0100 | ljdarj | (~Thunderbi@user/ljdarj) ljdarj | 
| 2025-10-30 17:29:07 +0100 | turlando | (~turlando@user/turlando) turlando | 
| 2025-10-30 17:29:18 +0100 | turlando_ | (~turlando@user/turlando) (Ping timeout: 265 seconds) | 
| 2025-10-30 17:30:19 +0100 | foo3 | (~Square@user/square) (Ping timeout: 264 seconds) | 
| 2025-10-30 17:37:59 +0100 | ljdarj1 | (~Thunderbi@user/ljdarj) ljdarj | 
| 2025-10-30 17:40:50 +0100 | ljdarj | (~Thunderbi@user/ljdarj) (Ping timeout: 256 seconds) | 
| 2025-10-30 17:40:58 +0100 | ljdarj1 | ljdarj | 
| 2025-10-30 17:42:41 +0100 | ljdarj | (~Thunderbi@user/ljdarj) (Client Quit) | 
| 2025-10-30 17:43:11 +0100 | ljdarj | (~Thunderbi@user/ljdarj) ljdarj | 
| 2025-10-30 17:45:41 +0100 | Googulator9 | (~Googulato@2a01-036d-0106-03fa-9dbb-a0af-2124-a319.pool6.digikabel.hu) (Quit: Client closed) | 
| 2025-10-30 17:45:45 +0100 | Googulator28 | (~Googulato@2a01-036d-0106-03fa-9dbb-a0af-2124-a319.pool6.digikabel.hu) | 
| 2025-10-30 17:45:57 +0100 | ljdarj | (~Thunderbi@user/ljdarj) (Client Quit) | 
| 2025-10-30 17:46:10 +0100 | ljdarj | (~Thunderbi@user/ljdarj) ljdarj | 
| 2025-10-30 17:46:26 +0100 | ljdarj | (~Thunderbi@user/ljdarj) (Client Quit) | 
| 2025-10-30 17:46:58 +0100 | ljdarj | (~Thunderbi@user/ljdarj) ljdarj | 
| 2025-10-30 17:52:32 +0100 | tzh | (~tzh@c-76-115-131-146.hsd1.or.comcast.net) tzh | 
| 2025-10-30 17:53:36 +0100 | ljdarj | (~Thunderbi@user/ljdarj) (Ping timeout: 256 seconds) | 
| 2025-10-30 17:54:02 +0100 | ljdarj1 | (~Thunderbi@user/ljdarj) ljdarj | 
| 2025-10-30 17:55:21 +0100 | YoungFrog | (~youngfrog@2a02:a03f:ca07:f900:3c4e:fa7a:e07a:5a51) (Quit: ZNC 1.7.x-git-3-96481995 - https://znc.in) | 
| 2025-10-30 17:55:41 +0100 | YoungFrog | (~youngfrog@39.129-180-91.adsl-dyn.isp.belgacom.be) youngfrog | 
| 2025-10-30 17:55:56 +0100 | ljdarj | (~Thunderbi@user/ljdarj) ljdarj | 
| 2025-10-30 17:57:50 +0100 | ljdarj2 | (~Thunderbi@user/ljdarj) ljdarj | 
| 2025-10-30 17:58:49 +0100 | ljdarj1 | (~Thunderbi@user/ljdarj) (Ping timeout: 264 seconds) | 
| 2025-10-30 17:59:44 +0100 | ljdarj1 | (~Thunderbi@user/ljdarj) ljdarj | 
| 2025-10-30 18:00:24 +0100 | ljdarj | (~Thunderbi@user/ljdarj) (Ping timeout: 256 seconds) | 
| 2025-10-30 18:01:17 +0100 | ljdarj | (~Thunderbi@user/ljdarj) ljdarj | 
| 2025-10-30 18:02:06 +0100 | ljdarj2 | (~Thunderbi@user/ljdarj) (Ping timeout: 256 seconds) | 
| 2025-10-30 18:04:04 +0100 | ljdarj2 | (~Thunderbi@user/ljdarj) ljdarj | 
| 2025-10-30 18:04:22 +0100 | ljdarj1 | (~Thunderbi@user/ljdarj) (Ping timeout: 256 seconds) | 
| 2025-10-30 18:05:30 +0100 | ljdarj | (~Thunderbi@user/ljdarj) (Ping timeout: 256 seconds) | 
| 2025-10-30 18:05:30 +0100 | ljdarj2 | ljdarj | 
| 2025-10-30 18:05:42 +0100 | Googulator14 | (~Googulato@2a01-036d-0106-03fa-9dbb-a0af-2124-a319.pool6.digikabel.hu) | 
| 2025-10-30 18:05:46 +0100 | Googulator28 | (~Googulato@2a01-036d-0106-03fa-9dbb-a0af-2124-a319.pool6.digikabel.hu) (Quit: Client closed) | 
| 2025-10-30 18:08:29 +0100 | RehAal | (~RehAal@2a02:3035:669:8f77:85c3:537a:8f03:5d54) | 
| 2025-10-30 18:09:55 +0100 | jcarpenter2 | (~lol@96.78.87.197) (Ping timeout: 264 seconds) | 
| 2025-10-30 18:14:19 +0100 | RehAal | (~RehAal@2a02:3035:669:8f77:85c3:537a:8f03:5d54) (Quit: Client closed) | 
| 2025-10-30 18:15:10 +0100 | ft | (~ft@p4fc2aaeb.dip0.t-ipconnect.de) ft | 
| 2025-10-30 18:17:02 +0100 | bgt32 | (~keutoi@106.222.233.20) (Ping timeout: 260 seconds) | 
| 2025-10-30 18:23:09 +0100 | <haskellbridge> | <Morj> geekosaur: I didn't get pinged when you were testing. But geekosаur's ping I see was transformed. So it might just be my nick that's misbehaving, huh | 
| 2025-10-30 18:24:16 +0100 | <haskellbridge> | <Morj> I have an irc identity with a similar nick, but it's mostly offline. Though I don't remeber getting pinged for it when it was online | 
| 2025-10-30 18:24:39 +0100 | <haskellbridge> | <Morj> Thanks for testing | 
| 2025-10-30 18:25:37 +0100 | Googulator96 | (~Googulato@2a01-036d-0106-03fa-9dbb-a0af-2124-a319.pool6.digikabel.hu) | 
| 2025-10-30 18:25:44 +0100 | Googulator14 | (~Googulato@2a01-036d-0106-03fa-9dbb-a0af-2124-a319.pool6.digikabel.hu) (Quit: Client closed) | 
| 2025-10-30 18:26:14 +0100 | <geekosaur> | "similar" wouldn't do it; the only way it has to relate them is exact matches between IRC nick and Matrix display name | 
| 2025-10-30 18:26:28 +0100 | merijn | (~merijn@77.242.116.146) (Ping timeout: 256 seconds) | 
| 2025-10-30 18:26:47 +0100 | trickard__ | (~trickard@cpe-54-98-47-163.wireline.com.au) (Read error: Connection reset by peer) | 
| 2025-10-30 18:27:01 +0100 | trickard_ | (~trickard@cpe-54-98-47-163.wireline.com.au) | 
| 2025-10-30 18:27:27 +0100 | <geekosaur> | (although in fact it doesn't relate them at all; when that's a problem it's possible to turn on including the Matrix ID for IRC (Matrix already provides ways to get that) | 
| 2025-10-30 18:28:04 +0100 | <geekosaur> | anyway I reported it, including my suspicion it's passing the wrong side's member list | 
| 2025-10-30 18:30:39 +0100 | Googulator96 | (~Googulato@2a01-036d-0106-03fa-9dbb-a0af-2124-a319.pool6.digikabel.hu) (Quit: Client closed) | 
| 2025-10-30 18:30:44 +0100 | Googulator7 | (~Googulato@2a01-036d-0106-03fa-9dbb-a0af-2124-a319.pool6.digikabel.hu) | 
| 2025-10-30 18:31:58 +0100 | pr1sm | (~pr1sm@24.91.163.31) | 
| 2025-10-30 18:45:31 +0100 | Googulator7 | (~Googulato@2a01-036d-0106-03fa-9dbb-a0af-2124-a319.pool6.digikabel.hu) (Quit: Client closed) | 
| 2025-10-30 18:45:43 +0100 | Googulator7 | (~Googulato@2a01-036d-0106-03fa-9dbb-a0af-2124-a319.pool6.digikabel.hu) | 
| 2025-10-30 18:49:33 +0100 | inline | (~inline@2a02:8071:57a1:dc0:5389:5413:4fcb:de9f) (Quit: Leaving) | 
| 2025-10-30 18:55:13 +0100 | nerdychip | (~nerdychip@212.129.72.100) | 
| 2025-10-30 18:55:13 +0100 | nerdychip | (~nerdychip@212.129.72.100) (Changing host) | 
| 2025-10-30 18:55:13 +0100 | nerdychip | (~nerdychip@user/nerdychip) nerdychip | 
| 2025-10-30 19:10:42 +0100 | foo3 | (~Square@user/square) Square | 
| 2025-10-30 19:10:44 +0100 | Googulator54 | (~Googulato@2a01-036d-0106-03fa-9dbb-a0af-2124-a319.pool6.digikabel.hu) | 
| 2025-10-30 19:10:49 +0100 | Googulator7 | (~Googulato@2a01-036d-0106-03fa-9dbb-a0af-2124-a319.pool6.digikabel.hu) (Quit: Client closed) | 
| 2025-10-30 19:11:19 +0100 | inline | (~inline@2a02:8071:57a1:dc0:c33:90af:2d70:1d1d) Inline | 
| 2025-10-30 19:11:48 +0100 | kuribas | (~user@ip-188-118-57-242.reverse.destiny.be) (Quit: ERC 5.5.0.29.1 (IRC client for GNU Emacs 29.3)) | 
| 2025-10-30 19:13:19 +0100 | Square2 | (~Square4@user/square) (Ping timeout: 240 seconds) | 
| 2025-10-30 19:18:15 +0100 | L29Ah | (~L29Ah@wikipedia/L29Ah) () | 
| 2025-10-30 19:18:34 +0100 | L29Ah | (~L29Ah@wikipedia/L29Ah) L29Ah | 
| 2025-10-30 19:20:49 +0100 | merijn | (~merijn@host-vr.cgnat-g.v4.dfn.nl) merijn | 
| 2025-10-30 19:25:40 +0100 | Googulator55 | (~Googulato@2a01-036d-0106-03fa-9dbb-a0af-2124-a319.pool6.digikabel.hu) | 
| 2025-10-30 19:25:40 +0100 | merijn | (~merijn@host-vr.cgnat-g.v4.dfn.nl) (Ping timeout: 256 seconds) | 
| 2025-10-30 19:25:46 +0100 | Googulator54 | (~Googulato@2a01-036d-0106-03fa-9dbb-a0af-2124-a319.pool6.digikabel.hu) (Quit: Client closed) | 
| 2025-10-30 19:31:47 +0100 | poscat | (~poscat@user/poscat) poscat | 
| 2025-10-30 19:33:33 +0100 | poscat0x04 | (~poscat@user/poscat) (Ping timeout: 252 seconds) | 
| 2025-10-30 19:36:37 +0100 | merijn | (~merijn@host-vr.cgnat-g.v4.dfn.nl) merijn | 
| 2025-10-30 19:40:56 +0100 | L29Ah | (~L29Ah@wikipedia/L29Ah) (Read error: Connection timed out) | 
| 2025-10-30 19:41:25 +0100 | merijn | (~merijn@host-vr.cgnat-g.v4.dfn.nl) (Ping timeout: 264 seconds) | 
| 2025-10-30 19:43:56 +0100 | pr1sm | (~pr1sm@24.91.163.31) (Remote host closed the connection) | 
| 2025-10-30 19:46:37 +0100 | Tuplanolla | (~Tuplanoll@91-159-187-167.elisa-laajakaista.fi) Tuplanolla | 
| 2025-10-30 19:47:50 +0100 | haltingsolver | (~cmo@2604:3d09:207f:8000::d1dc) | 
| 2025-10-30 19:52:01 +0100 | merijn | (~merijn@host-vr.cgnat-g.v4.dfn.nl) merijn | 
| 2025-10-30 19:55:08 +0100 | tromp | (~textual@2001:1c00:3487:1b00:5978:a504:f2fd:26f) | 
| 2025-10-30 19:55:50 +0100 | tromp | (~textual@2001:1c00:3487:1b00:5978:a504:f2fd:26f) (Client Quit) | 
| 2025-10-30 19:56:58 +0100 | ttybitnik | (~ttybitnik@user/wolper) ttybitnik | 
| 2025-10-30 19:57:04 +0100 | tromp | (~textual@2001:1c00:3487:1b00:5978:a504:f2fd:26f) | 
| 2025-10-30 19:58:50 +0100 | merijn | (~merijn@host-vr.cgnat-g.v4.dfn.nl) (Ping timeout: 256 seconds) | 
| 2025-10-30 20:07:34 +0100 | L29Ah | (~L29Ah@wikipedia/L29Ah) L29Ah | 
| 2025-10-30 20:08:13 +0100 | synchromesh | (~john@2406:5a00:2412:2c00:a151:32b5:2959:c671) (Read error: Connection reset by peer) | 
| 2025-10-30 20:08:16 +0100 | L29Ah | (~L29Ah@wikipedia/L29Ah) (Read error: Connection reset by peer) | 
| 2025-10-30 20:09:26 +0100 | synchromesh | (~john@2406:5a00:2412:2c00:a151:32b5:2959:c671) synchromesh | 
| 2025-10-30 20:10:03 +0100 | merijn | (~merijn@host-vr.cgnat-g.v4.dfn.nl) merijn | 
| 2025-10-30 20:10:07 +0100 | L29Ah | (~L29Ah@wikipedia/L29Ah) L29Ah | 
| 2025-10-30 20:14:41 +0100 | merijn | (~merijn@host-vr.cgnat-g.v4.dfn.nl) (Ping timeout: 244 seconds) | 
| 2025-10-30 20:17:50 +0100 | rvalue- | (~rvalue@about/hackers/rvalue) rvalue | 
| 2025-10-30 20:18:55 +0100 | rvalue | (~rvalue@about/hackers/rvalue) (Ping timeout: 264 seconds) | 
| 2025-10-30 20:18:58 +0100 | tromp | (~textual@2001:1c00:3487:1b00:5978:a504:f2fd:26f) (Quit: My iMac has gone to sleep. ZZZzzz…) | 
| 2025-10-30 20:20:22 +0100 | haltingsolver | (~cmo@2604:3d09:207f:8000::d1dc) (Ping timeout: 256 seconds) | 
| 2025-10-30 20:23:38 +0100 | merijn | (~merijn@host-vr.cgnat-g.v4.dfn.nl) merijn | 
| 2025-10-30 20:27:16 +0100 | rvalue- | rvalue | 
| 2025-10-30 20:28:49 +0100 | merijn | (~merijn@host-vr.cgnat-g.v4.dfn.nl) (Ping timeout: 264 seconds) | 
| 2025-10-30 20:35:34 +0100 | opencircuit_ | (~quassel@user/opencircuit) (Remote host closed the connection) | 
| 2025-10-30 20:36:44 +0100 | opencircuit | (~quassel@user/opencircuit) opencircuit | 
| 2025-10-30 20:39:28 +0100 | merijn | (~merijn@host-vr.cgnat-g.v4.dfn.nl) merijn | 
| 2025-10-30 20:44:44 +0100 | merijn | (~merijn@host-vr.cgnat-g.v4.dfn.nl) (Ping timeout: 256 seconds) | 
| 2025-10-30 20:45:25 +0100 | segfaultfizzbuzz | (~segfaultf@23-93-74-222.fiber.dynamic.sonic.net) segfaultfizzbuzz | 
| 2025-10-30 20:46:04 +0100 | Sgeo | (~Sgeo@user/sgeo) (Read error: Connection reset by peer) | 
| 2025-10-30 20:48:52 +0100 | Sgeo | (~Sgeo@user/sgeo) Sgeo | 
| 2025-10-30 20:55:15 +0100 | merijn | (~merijn@host-vr.cgnat-g.v4.dfn.nl) merijn | 
| 2025-10-30 20:56:33 +0100 | peterbecich | (~Thunderbi@172.222.148.214) peterbecich | 
| 2025-10-30 20:57:01 +0100 | <segfaultfizzbuzz> | what are the norms these days regarding using "ai" to code among good quality professional programmers. is it fine to use or do i need to type everything into my keyboard myself | 
| 2025-10-30 20:59:08 +0100 | <EvanR> | you will be ridiculed for using your keyboard at all. Voice input to an LLM is the only way to signal how up to date you are | 
| 2025-10-30 21:00:06 +0100 | <segfaultfizzbuzz> | hahaha... but seriously...? | 
| 2025-10-30 21:00:08 +0100 | <EvanR> | in the same way that handwriting is not a thing anymore | 
| 2025-10-30 21:00:10 +0100 | <haskellbridge> | <sm> it varies a lot | 
| 2025-10-30 21:00:14 +0100 | <haskellbridge> | <loonycyborg> Direct neural uplink better | 
| 2025-10-30 21:00:19 +0100 | <geekosaur> | ai gets haskell very wrong still | 
| 2025-10-30 21:00:22 +0100 | merijn | (~merijn@host-vr.cgnat-g.v4.dfn.nl) (Ping timeout: 260 seconds) | 
| 2025-10-30 21:00:27 +0100 | <segfaultfizzbuzz> | lol yeah sorry i forgot to mention using neuralink while using tesla self driving | 
| 2025-10-30 21:00:31 +0100 | <geekosaur> | even js needs to be checked | 
| 2025-10-30 21:00:36 +0100 | <segfaultfizzbuzz> | geekosaur: oh? nice :-) | 
| 2025-10-30 21:00:43 +0100 | <haskellbridge> | <sm> I don't think you can generalise, it depends what you're doing | 
| 2025-10-30 21:00:44 +0100 | <segfaultfizzbuzz> | js is awful,... rust is like,... not bad i find | 
| 2025-10-30 21:01:02 +0100 | <EvanR> | I use it for C and it still needs to be checked, obviously | 
| 2025-10-30 21:01:22 +0100 | <geekosaur> | the question is what it was trained on. if you have a lot of blog posts by people who're still learning the language, the code the AI will produce will mostly be at their level | 
| 2025-10-30 21:01:57 +0100 | <haskellbridge> | <sm> yes also the model, the ai-based coding tool, the context, the prompts all matter | 
| 2025-10-30 21:01:57 +0100 | <segfaultfizzbuzz> | geekosaur: there also is how you prompt,... if your language is better you get better results i think | 
| 2025-10-30 21:02:04 +0100 | <geekosaur> | keep in mind that current AI still doesn't understand anything; it's a Markov bot with a smarter notion of how language fits together | 
| 2025-10-30 21:02:24 +0100 | <haskellbridge> | <sm> the coding tools and chat bots are no longer just that | 
| 2025-10-30 21:02:30 +0100 | <segfaultfizzbuzz> | and then there is architecting your application so that you can kind of limit the damage that can happen, but i would imagine that's the same as structuring code for writing on a team | 
| 2025-10-30 21:02:34 +0100 | <geekosaur> | which means it's only as good as the Markov chains it can build from its training data | 
| 2025-10-30 21:02:47 +0100 | <segfaultfizzbuzz> | hahaha markov chains :-) you might not be wrong there | 
| 2025-10-30 21:03:10 +0100 | <EvanR> | if you start pasting large amounts of code generated by the LLM into the project without understanding any of it, well, it will start to break down, and there's plenty of memes about where this leads | 
| 2025-10-30 21:03:23 +0100 | <geekosaur> | seriously, it explains a lot of things, including why LLMs in the first place | 
| 2025-10-30 21:03:35 +0100 | <segfaultfizzbuzz> | geekosaur: why LLMs in the first place? explain? | 
| 2025-10-30 21:03:43 +0100 | <geekosaur> | and makes a lot of sense if you think about it | 
| 2025-10-30 21:04:11 +0100 | <segfaultfizzbuzz> | EvanR: yeah i would say that "without understanding any of it" isn't what i do, but it can save me a lot of round trips back and forth from documentation and also it can sometimes stich things nicely (type conversions, etc) | 
| 2025-10-30 21:04:17 +0100 | <geekosaur> | why large language models are what led to something that comes across as "actual AI" | 
| 2025-10-30 21:04:54 +0100 | <segfaultfizzbuzz> | roughly speaking if you can write the type signature of your function then ai seems like it can do decently at filling in the rest 50% to 75% of the time... | 
| 2025-10-30 21:05:00 +0100 | <EvanR> | lol | 
| 2025-10-30 21:05:01 +0100 | <segfaultfizzbuzz> | or at least that's what i find | 
| 2025-10-30 21:05:13 +0100 | <EvanR> | no | 
| 2025-10-30 21:05:21 +0100 | <segfaultfizzbuzz> | EvanR: oh? | 
| 2025-10-30 21:05:44 +0100 | <EvanR> | the type signature is usually not enough to judge what you want it to do | 
| 2025-10-30 21:05:52 +0100 | <EvanR> | maybe you mean the carefully chosen name of the function | 
| 2025-10-30 21:05:56 +0100 | <segfaultfizzbuzz> | type signature plus a description/comment | 
| 2025-10-30 21:06:17 +0100 | <segfaultfizzbuzz> | yeah sorry, not type signature in isolation, i meant type signature as a hard restriction on the validity of the LLM output, given a reasonable prompt | 
| 2025-10-30 21:07:35 +0100 | <EvanR> | yeah, trying its own output against the type checker before producing anything, and retrying until it works, explains a lot of the performance I've seen | 
| 2025-10-30 21:07:45 +0100 | <EvanR> | but I'm not sure if that's a thing | 
| 2025-10-30 21:07:53 +0100 | <segfaultfizzbuzz> | EvanR: can you elaborate on "a lot of the performance I've seen" | 
| 2025-10-30 21:08:14 +0100 | <EvanR> | on a particular product preview I was working with | 
| 2025-10-30 21:08:19 +0100 | <EvanR> | integrated into the IDE | 
| 2025-10-30 21:08:30 +0100 | <segfaultfizzbuzz> | by performance do you mean like memory and cpu usage? | 
| 2025-10-30 21:08:32 +0100 | <EvanR> | the haskell code generator started slowing down to unusable after a while | 
| 2025-10-30 21:09:14 +0100 | <EvanR> | I'm sure cpu usage and memory usage was high but no | 
| 2025-10-30 21:09:33 +0100 | <EvanR> | code per minute | 
| 2025-10-30 21:10:00 +0100 | <fgidim> | haskell code into an LLM? :O | 
| 2025-10-30 21:10:07 +0100 | <segfaultfizzbuzz> | oh you think people are calling some centralized resource over the web at a high rate...? | 
| 2025-10-30 21:10:12 +0100 | <EvanR> | into, and out of | 
| 2025-10-30 21:10:25 +0100 | <segfaultfizzbuzz> | what is "the haskell code generator" otherwise? | 
| 2025-10-30 21:10:27 +0100 | <geekosaur> | I hear of a lot of people using Claude… | 
| 2025-10-30 21:10:34 +0100 | <EvanR> | I'm not sure how much this product was dependent on remote resources | 
| 2025-10-30 21:10:37 +0100 | <geekosaur> | Or Copilot | 
| 2025-10-30 21:10:38 +0100 | <segfaultfizzbuzz> | geekosaur: yep, i do... more specifically claude code | 
| 2025-10-30 21:10:43 +0100 | <EvanR> | it was more like copilot | 
| 2025-10-30 21:10:54 +0100 | <EvanR> | but some proprietary thing | 
| 2025-10-30 21:10:54 +0100 | <segfaultfizzbuzz> | copilot used to be pretty bad, it improved more recently... claude code is better | 
| 2025-10-30 21:11:03 +0100 | merijn | (~merijn@host-vr.cgnat-g.v4.dfn.nl) merijn | 
| 2025-10-30 21:11:38 +0100 | <segfaultfizzbuzz> | i would say like, ignore LLM generated code unless it (1) comes through claude code (2) has some kidn of decent type system which rejects really bad programs and (3) is reasonably well-prompted | 
| 2025-10-30 21:12:00 +0100 | <EvanR> | and how do you know any of this from the code itself | 
| 2025-10-30 21:13:32 +0100 | <segfaultfizzbuzz> | EvanR: i don't know, i'm probably not a good enough programmer to tell 75% of the time. there do tend to be high level inconsistencies in how the project concepts work, failures to compose, ... failure to do the right thing,... but yeah i'm not good enough to tell | 
| 2025-10-30 21:14:14 +0100 | <segfaultfizzbuzz> | that's why i was asking about social norms rather than the code itself :-) | 
| 2025-10-30 21:14:36 +0100 | <haskellbridge> | <sm> I have experimented a little with claude code; it's super useful including in haskell projects, and definitely not just a markov chain | 
| 2025-10-30 21:14:57 +0100 | annamalai | (~annamalai@2409:4042:2595:bd4d::195e:70b1) (Ping timeout: 260 seconds) | 
| 2025-10-30 21:15:32 +0100 | <haskellbridge> | <sm> also probably super bad for the planet until we fix the economic model | 
| 2025-10-30 21:15:33 +0100 | Guest25 | (~Guest24@2803:9800:94c0:9a3b:d823:7586:d4c3:43b8) | 
| 2025-10-30 21:15:43 +0100 | <haskellbridge> | <sm> (AI generally, not claude code) | 
| 2025-10-30 21:15:51 +0100 | merijn | (~merijn@host-vr.cgnat-g.v4.dfn.nl) (Ping timeout: 252 seconds) | 
| 2025-10-30 21:16:19 +0100 | <EvanR> | certain usage for haskell really makes sense. In haskell you tend to accept and support code that is really big and dumb, like translation functions between simple things. They're annoying to type yourself but easy for the LLM. And then it's haskell so such "repeating yourself" code is not bad | 
| 2025-10-30 21:17:14 +0100 | <EvanR> | a local macro system or something could also do it without requiring said planetary killing engines | 
| 2025-10-30 21:17:16 +0100 | <segfaultfizzbuzz> | i encountered terrence tao doing vibe proving in lean and that kind of encouraged me to use LLMs more in coding without being quite so shy | 
| 2025-10-30 21:17:23 +0100 | target_i | (~target_i@user/target-i/x-6023099) target_i | 
| 2025-10-30 21:17:30 +0100 | <omentic> | hi. cabal build has apparently triggered hardware protections for cpu overheating that i didn't even know my computer had. how can i make cabal throttle its builds? | 
| 2025-10-30 21:17:45 +0100 | <segfaultfizzbuzz> | omentic: out of curiousity are you on AMD? | 
| 2025-10-30 21:17:59 +0100 | <omentic> | no, intel laptop from 2020 | 
| 2025-10-30 21:18:01 +0100 | <EvanR> | if your CPU can't run at 100% then that's another problem | 
| 2025-10-30 21:18:18 +0100 | <EvanR> | ventilate the room | 
| 2025-10-30 21:18:39 +0100 | <omentic> | i've never seen this before in my life. it's very strange... no other build system has done this, not nix, not cargo, not clang | 
| 2025-10-30 21:18:43 +0100 | <segfaultfizzbuzz> | omentic: i don't know,... thermal paste, maybe BIOS or operating system settings for power efficient mode? | 
| 2025-10-30 21:18:50 +0100 | <omentic> | and i've compiled chromium on this thing lmao | 
| 2025-10-30 21:19:00 +0100 | <segfaultfizzbuzz> | i saved a buddy's thinkpad once by re-pasting it after about five years | 
| 2025-10-30 21:19:02 +0100 | <EvanR> | cabal can't make your CPU more hot than running 100% | 
| 2025-10-30 21:19:14 +0100 | <segfaultfizzbuzz> | omentic: is this a thinkpad? | 
| 2025-10-30 21:19:17 +0100 | <omentic> | yeah | 
| 2025-10-30 21:19:17 +0100 | <EvanR> | though maybe you don't often use all your cores | 
| 2025-10-30 21:19:29 +0100 | haltingsolver | (~cmo@2604:3d09:207f:8000::d1dc) | 
| 2025-10-30 21:19:31 +0100 | <segfaultfizzbuzz> | yeah, repaste it, get a good thermal paste | 
| 2025-10-30 21:19:35 +0100 | <omentic> | hmm | 
| 2025-10-30 21:19:40 +0100 | <omentic> | i think i will not do that lmao | 
| 2025-10-30 21:19:50 +0100 | <segfaultfizzbuzz> | my buddy's thinkpad would shut down after about an hour's worth of ordinary moderate use like playing videos and stuff | 
| 2025-10-30 21:20:00 +0100 | Guest25 | hedgehog99 | 
| 2025-10-30 21:20:02 +0100 | <segfaultfizzbuzz> | omentic: a good thermal paste is like $10 | 
| 2025-10-30 21:20:27 +0100 | <segfaultfizzbuzz> | DM me and i'll tell you how to do it, you also need some isopropyl alcohol and a roll of paper towels,... total cost might be $15 or $20 | 
| 2025-10-30 21:20:56 +0100 | <omentic> | i do not think i want to re-thermal paste my ultrabook to cabal to build | 
| 2025-10-30 21:20:59 +0100 | <yushyin> | use ptm7950 instead of a paste | 
| 2025-10-30 21:21:35 +0100 | <segfaultfizzbuzz> | yushyin: yeah thermal pads are cool too but i don't have experience with them | 
| 2025-10-30 21:21:50 +0100 | Guest24 | (~Guest24@2803:9800:94c0:9a3b:d823:7586:d4c3:43b8) | 
| 2025-10-30 21:22:00 +0100 | <segfaultfizzbuzz> | omentic: the paste will continue to degrade and your problems will get worse | 
| 2025-10-30 21:22:04 +0100 | chiselfuse | (~chiselfus@user/chiselfuse) (Ping timeout: 272 seconds) | 
| 2025-10-30 21:22:28 +0100 | CiaoSen | (~Jura@2a02:8071:64e1:da0:5a47:caff:fe78:33db) CiaoSen | 
| 2025-10-30 21:22:47 +0100 | chiselfuse | (~chiselfus@user/chiselfuse) chiselfuse | 
| 2025-10-30 21:23:14 +0100 | <segfaultfizzbuzz> | omentic: or do what i did and get a desktop :-) i've concluded that the laptop form factor is only useful for SSH | 
| 2025-10-30 21:23:16 +0100 | ttybitnik | (~ttybitnik@user/wolper) (Ping timeout: 256 seconds) | 
| 2025-10-30 21:23:26 +0100 | Guest24 | (~Guest24@2803:9800:94c0:9a3b:d823:7586:d4c3:43b8) (Client Quit) | 
| 2025-10-30 21:23:53 +0100 | <omentic> | segfault: i really **do not** want to re-thermal paste my laptop to fix a cabal build issue that is only present with cabal and no other build system, lol | 
| 2025-10-30 21:24:05 +0100 | <EvanR> | it's not cabal's fault | 
| 2025-10-30 21:24:35 +0100 | <EvanR> | just make sure you get proper air flow to the laptop | 
| 2025-10-30 21:24:39 +0100 | merijn | (~merijn@host-vr.cgnat-g.v4.dfn.nl) merijn | 
| 2025-10-30 21:24:48 +0100 | <omentic> | hmm | 
| 2025-10-30 21:25:27 +0100 | hedgehog99 | (~Guest24@2803:9800:94c0:9a3b:d823:7586:d4c3:43b8) (Ping timeout: 250 seconds) | 
| 2025-10-30 21:25:32 +0100 | <haskellbridge> | <loonycyborg> I doubt that exact buildsystem matters | 
| 2025-10-30 21:26:00 +0100 | <haskellbridge> | <loonycyborg> they all eat lot less cpu cycles than actual compile commands | 
| 2025-10-30 21:26:00 +0100 | <haskellbridge> | <sm> cabal efficiently maximising your processors, eh ? Point a fan at the laptop or build at night ? | 
| 2025-10-30 21:26:33 +0100 | <segfaultfizzbuzz> | omentic: how much $ do you have for a desktop | 
| 2025-10-30 21:26:45 +0100 | <haskellbridge> | <sm> blast it with compressed air, maybe you can dislodge some dust :) | 
| 2025-10-30 21:27:08 +0100 | simplystuart | (~simplystu@c-75-75-152-164.hsd1.pa.comcast.net) (Remote host closed the connection) | 
| 2025-10-30 21:27:24 +0100 | <haskellbridge> | <sm> or, limit how many processors cabal uses at once with -j | 
| 2025-10-30 21:27:28 +0100 | <omentic> | dude i am not buying a new computer it is beyond reasonable for me to want to compile a project with three dependencies on my laptop | 
| 2025-10-30 21:27:30 +0100 | simplystuart | (~simplystu@c-75-75-152-164.hsd1.pa.comcast.net) | 
| 2025-10-30 21:28:06 +0100 | Lycurgus | (~juan@user/Lycurgus) Lycurgus | 
| 2025-10-30 21:28:06 +0100 | <omentic> | sm: i'm thinking that's my problem, yeah. i suspect cargo/clang etc don't use all cores and i've accidentally passed a flag to GHC that's telling it to do so | 
| 2025-10-30 21:28:11 +0100 | <omentic> | time to read the manual on -threaded | 
| 2025-10-30 21:28:28 +0100 | <haskellbridge> | <sm> it'll build packages in parallel by default, add -j1 to stop that | 
| 2025-10-30 21:29:00 +0100 | ljdarj1 | (~Thunderbi@user/ljdarj) ljdarj | 
| 2025-10-30 21:30:21 +0100 | <haskellbridge> | <sm> I think -threaded is something different, affecting how the program you're building runs | 
| 2025-10-30 21:30:22 +0100 | <monochrom> | cabal by default looks at your number of cores (even hyperthreads) and potentially builds that many packages in parallel. That can push your CPU. (For me, RAM is my bottleneck, I get thrashing.) So yeah use an explicit -j to limit it. (I use -j2.) | 
| 2025-10-30 21:30:33 +0100 | <haskellbridge> | <sm> while -j affects cabal build itself | 
| 2025-10-30 21:31:07 +0100 | <monochrom> | NB. "builds that many packages in parallel" = runs that many instances of GHC in parallel. (You know how much memory that takes, right? :) ) | 
| 2025-10-30 21:31:09 +0100 | merijn | (~merijn@host-vr.cgnat-g.v4.dfn.nl) (Ping timeout: 244 seconds) | 
| 2025-10-30 21:31:36 +0100 | <haskellbridge> | <sm> also, if it's just three dependencies it's going to be finished relatively soon. Then it's just rebuilding some of your own modules when needed. | 
| 2025-10-30 21:31:48 +0100 | ljdarj | (~Thunderbi@user/ljdarj) (Ping timeout: 252 seconds) | 
| 2025-10-30 21:31:48 +0100 | ljdarj1 | ljdarj | 
| 2025-10-30 21:33:09 +0100 | <haskellbridge> | <sm> for a more general solution, there must be some kind of linux quota system you could use (rlimit ?) | 
| 2025-10-30 21:33:37 +0100 | <monochrom> | (Hell, I don't add -j2 by hand, I put in ~/.cabal/config "jobs: 2".) | 
| 2025-10-30 21:34:49 +0100 | <monochrom> | rlimit causes killing processes. as opposed to informing processes to behave. | 
| 2025-10-30 21:34:59 +0100 | <haskellbridge> | <sm> ack | 
| 2025-10-30 21:35:18 +0100 | <haskellbridge> | <sm> and I suppose nice doesn't prevent it using 100% | 
| 2025-10-30 21:35:48 +0100 | <monochrom> | nice prevents it using 100% iff something else of higher priority uses 100%. >:) | 
| 2025-10-30 21:36:50 +0100 | <monochrom> | You can always run it in VirtualBox. VirtualBox can lie about # of CPUs and speed. | 
| 2025-10-30 21:37:03 +0100 | <haskellbridge> | <sm> by the way I'll guess those other build systems also use multiple processors, but probably they finish sooner | 
| 2025-10-30 21:37:08 +0100 | <omentic> | monochrom: re: memory, gulp | 
| 2025-10-30 21:37:25 +0100 | peterbecich | (~Thunderbi@172.222.148.214) (Ping timeout: 256 seconds) | 
| 2025-10-30 21:38:43 +0100 | <haskellbridge> | <sm> also does swapping contribute to cpu activity / heat ? building haskell is probably using more memory | 
| 2025-10-30 21:38:56 +0100 | <haskellbridge> | <sm> avoid swapping | 
| 2025-10-30 21:39:34 +0100 | <omentic> | what is the -N argument to RTS opts? this page references it, but doesn't define it: https://ghc.gitlab.haskell.org/ghc/doc/users_guide/runtime_control.html | 
| 2025-10-30 21:40:10 +0100 | <omentic> | i do kind of wonder if fucked-up swap is contributing to only seeing this with cabal | 
| 2025-10-30 21:40:28 +0100 | <omentic> | if it is using up a bunch of memory and swapping a lot... | 
| 2025-10-30 21:40:28 +0100 | <haskellbridge> | <sm> you should definitely check, with [h]top | 
| 2025-10-30 21:40:40 +0100 | Googulator98 | (~Googulato@2a01-036d-0106-03fa-9dbb-a0af-2124-a319.pool6.digikabel.hu) | 
| 2025-10-30 21:40:45 +0100 | Googulator55 | (~Googulato@2a01-036d-0106-03fa-9dbb-a0af-2124-a319.pool6.digikabel.hu) (Quit: Client closed) | 
| 2025-10-30 21:41:11 +0100 | <haskellbridge> | <sm> +RTS -N is essentially a suggestion of how many cores the program should use, IIRC. But for cabal commands, -j is easier | 
| 2025-10-30 21:42:25 +0100 | <monochrom> | Telling cabal -N does not limit its -j | 
| 2025-10-30 21:42:42 +0100 | merijn | (~merijn@host-vr.cgnat-g.v4.dfn.nl) merijn | 
| 2025-10-30 21:45:41 +0100 | Googulator98 | (~Googulato@2a01-036d-0106-03fa-9dbb-a0af-2124-a319.pool6.digikabel.hu) (Quit: Client closed) | 
| 2025-10-30 21:45:54 +0100 | Googulator98 | (~Googulato@2a01-036d-0106-03fa-9dbb-a0af-2124-a319.pool6.digikabel.hu) | 
| 2025-10-30 21:46:30 +0100 | L29Ah | (~L29Ah@wikipedia/L29Ah) (Ping timeout: 256 seconds) | 
| 2025-10-30 21:47:37 +0100 | merijn | (~merijn@host-vr.cgnat-g.v4.dfn.nl) (Ping timeout: 256 seconds) | 
| 2025-10-30 21:48:06 +0100 | myme1 | (~myme@2a01:799:d5e:5f00:ffab:db87:b0e2:97dd) myme | 
| 2025-10-30 21:48:18 +0100 | myme | (~myme@2a01:799:d5e:5f00:dea7:7da2:d01d:b0f1) (Ping timeout: 244 seconds) | 
| 2025-10-30 21:48:38 +0100 | <omentic> | hmm, and -j 2 in ghc-options should limit the maximum no. of threads to 2? | 
| 2025-10-30 21:50:19 +0100 | L29Ah | (~L29Ah@wikipedia/L29Ah) L29Ah | 
| 2025-10-30 21:50:38 +0100 | <omentic> | mmm. neither the no. of parallel modules nor the no. of threads in use appears to be limited by -j 2 or -j2. weird. maybe -with-rtsopts=-N is overwriting that? | 
| 2025-10-30 21:51:26 +0100 | ttybitnik | (~ttybitnik@user/wolper) ttybitnik | 
| 2025-10-30 21:52:10 +0100 | <geekosaur> | something else to keep in mind is that limiting GHC's threads will only work if you either limit cabal to one thread or use ghc semaphores (in sufficiently recent ghc) | 
| 2025-10-30 21:52:33 +0100 | <omentic> | uhhhh, oh that is good to know | 
| 2025-10-30 21:52:49 +0100 | <geekosaur> | because cabal will spawn as many ghcs as it's allowed to run threads, each of which will use the number of threads you tell it | 
| 2025-10-30 21:53:16 +0100 | <geekosaur> | with job semaphores the number of concurrently running ghc threads will be limited across the entire build | 
| 2025-10-30 21:53:45 +0100 | <omentic> | why would you want cabal to use more than one thread if ghc can spawn multiple threads by itself? | 
| 2025-10-30 21:54:03 +0100 | <omentic> | legacy behavior? or is there an improvement wrt. linking or something | 
| 2025-10-30 21:54:05 +0100 | <geekosaur> | building multiple dependencies concurrently | 
| 2025-10-30 21:54:14 +0100 | myme1 | myme | 
| 2025-10-30 21:55:12 +0100 | peterbecich | (~Thunderbi@172.222.148.214) peterbecich | 
| 2025-10-30 21:55:18 +0100 | <geekosaur> | but then you need to arrange for each dependency to use ghc-options | 
| 2025-10-30 21:55:29 +0100 | Googulator98 | (~Googulato@2a01-036d-0106-03fa-9dbb-a0af-2124-a319.pool6.digikabel.hu) (Quit: Client closed) | 
| 2025-10-30 21:55:37 +0100 | Googulator98 | (~Googulato@2a01-036d-0106-03fa-9dbb-a0af-2124-a319.pool6.digikabel.hu) | 
| 2025-10-30 21:55:46 +0100 | <omentic> | hm. okay. with ghc-options containing -threaded -j2 -rtsopts -with-rtsopts=-N2 and jobs: 1, i still see cabal building five or six things in parallel and all my cores spinning up... | 
| 2025-10-30 21:55:50 +0100 | <geekosaur> | if job semaphores are supported, all the ghcs will "check out" threads as available | 
| 2025-10-30 21:56:07 +0100 | <geekosaur> | check your cabal configuration | 
| 2025-10-30 21:56:18 +0100 | <geekosaur> | oh wait, you said jobs: 1, sorry | 
| 2025-10-30 21:56:48 +0100 | <omentic> | looks like jobs: $ncpus in my global cabal config but yeah i've got a line here locally | 
| 2025-10-30 21:56:51 +0100 | <geekosaur> | I don't normally see things building in parallel with that situation (but I also don't run into it much, I have enough cores that I set jobs: fairly high) | 
| 2025-10-30 21:58:09 +0100 | merijn | (~merijn@host-vr.cgnat-g.v4.dfn.nl) merijn | 
| 2025-10-30 21:58:21 +0100 | <omentic> | urgh | 
| 2025-10-30 21:58:29 +0100 | <omentic> | okay i will deal with this later, thanks for the pointers | 
| 2025-10-30 21:59:06 +0100 | <omentic> | oh -- actually before i head out, do you know: is it possible to get some sort of caching working with cabal (or stack) if i've got a package that's not on stackage? | 
| 2025-10-30 21:59:47 +0100 | <davean> | caching? What caching do you want that cabal doesn't default to doing> | 
| 2025-10-30 22:00:16 +0100 | <omentic> | well, not building pandoc | 
| 2025-10-30 22:00:48 +0100 | Googulator29 | (~Googulato@2a01-036d-0106-03fa-9dbb-a0af-2124-a319.pool6.digikabel.hu) | 
| 2025-10-30 22:01:04 +0100 | Googulator98 | (~Googulato@2a01-036d-0106-03fa-9dbb-a0af-2124-a319.pool6.digikabel.hu) (Quit: Client closed) | 
| 2025-10-30 22:01:20 +0100 | <monochrom> | -j is not a ghc-option | 
| 2025-10-30 22:01:22 +0100 | <omentic> | this might be a haskell limitation, i'm not sure. but i don't have to build anything locally when all the packages i want are in stackage. that's nice. except right now i've got one package not on stackage | 
| 2025-10-30 22:02:29 +0100 | <omentic> | monochrom: oh? i saw it in the ghc manual so i thought it'd go in ghc-options. is there another place to put it or is it unsupported with cabal? | 
| 2025-10-30 22:02:42 +0100 | <monochrom> | jobs: is probably something you should put in the global config because it is about your computer not a particular package or project | 
| 2025-10-30 22:02:55 +0100 | merijn | (~merijn@host-vr.cgnat-g.v4.dfn.nl) (Ping timeout: 256 seconds) | 
| 2025-10-30 22:03:06 +0100 | <davean> | omentic: are you on POSIX or windows? Because POSIX doesn't standardize that as working and its known to be funky. | 
| 2025-10-30 22:03:23 +0100 | <omentic> | posix. that is very good to know. lmao | 
| 2025-10-30 22:03:51 +0100 | <davean> | So providing it or not is a matter of how conservitive you are and sure you'll get the ABI stuff matched up right | 
| 2025-10-30 22:03:52 +0100 | <omentic> | huh, weird the manual does not mention that... | 
| 2025-10-30 22:04:19 +0100 | <davean> | Like I assure you it 100% breaks every time for my Linux system, but mine isn't the same as yours | 
| 2025-10-30 22:04:27 +0100 | <davean> | if you're on Debian it'll probably work great | 
| 2025-10-30 22:05:29 +0100 | <davean> | stackage leans on the "make it easy" side over "get it right" you can provide such a cache for cabal but cabal leans on the "get it right" side | 
| 2025-10-30 22:05:53 +0100 | <davean> | er, not stackage | 
| 2025-10-30 22:05:55 +0100 | <davean> | but yah | 
| 2025-10-30 22:06:19 +0100 | <davean> | So anyway, no one actively provides such a cache for cabal+hackage in general. Its not hard to do but it would be very large. | 
| 2025-10-30 22:06:48 +0100 | <omentic> | do you know if it is possible to get a partial cache? i.e. cache pandoc but not cache the other dependency i need. or is this impossible wrt. how ghc builds things | 
| 2025-10-30 22:06:51 +0100 | <davean> | and then sometimes, rarely but it will happen, it'll spit out a binary that doesn't work | 
| 2025-10-30 22:07:12 +0100 | <davean> | You can only cache it in respect to the otehr things you build so I'm nto sure what the use would be | 
| 2025-10-30 22:07:29 +0100 | <monochrom> | I don't know how to tell cabal to use stack's cache, or stack to use cabal's cache. | 
| 2025-10-30 22:07:59 +0100 | <monochrom> | Hell even Thunderbird and Firefox probably don't use each other's cache... | 
| 2025-10-30 22:09:06 +0100 | <davean> | omentic: very specificly POSIX is a source code level compatability standard, not a binary compatability standard, and distros can and do break binary compatability between them, and some even inside them. | 
| 2025-10-30 22:09:19 +0100 | <omentic> | i'm surprised that breaks -j | 
| 2025-10-30 22:09:33 +0100 | <davean> | no I'm talking about a cache | 
| 2025-10-30 22:10:05 +0100 | <davean> | Like its not actually that much of a deal for most users | 
| 2025-10-30 22:10:07 +0100 | <omentic> | oh yeah that tracks. but your distinction for a cache would be by cpu architecture + os, right | 
| 2025-10-30 22:10:24 +0100 | <davean> | Thats not enough, thats just enough MOST of the time | 
| 2025-10-30 22:11:00 +0100 | <davean> | It can be specific to a given install of an os | 
| 2025-10-30 22:11:06 +0100 | <omentic> | but also from what you said earlier sounds like ghc needs all dependencies and such for the compiler to do its thing | 
| 2025-10-30 22:11:26 +0100 | <davean> | GHC works with a consistent set of dependencies | 
| 2025-10-30 22:11:42 +0100 | <davean> | so it only needs the dependencies of pandoc and your overall project to match | 
| 2025-10-30 22:11:48 +0100 | <davean> | but it needs an equality match | 
| 2025-10-30 22:12:07 +0100 | <davean> | I think a *binary result equality match* I THINK but I'm not sure there | 
| 2025-10-30 22:13:54 +0100 | merijn | (~merijn@host-vr.cgnat-g.v4.dfn.nl) merijn | 
| 2025-10-30 22:14:36 +0100 | <omentic> | interesting ok | 
| 2025-10-30 22:14:51 +0100 | <davean> | You CAN build this cache | 
| 2025-10-30 22:15:02 +0100 | <davean> | and if you're layering it on top of stackage, the size explosion isn't so bad | 
| 2025-10-30 22:15:05 +0100 | <omentic> | well, i'll try to fix the parallelism, then try to get caching working, but i'll have to do it a bit later | 
| 2025-10-30 22:15:17 +0100 | <omentic> | thx for the help here yall | 
| 2025-10-30 22:15:40 +0100 | Googulator97 | (~Googulato@2a01-036d-0106-03fa-9dbb-a0af-2124-a319.pool6.digikabel.hu) | 
| 2025-10-30 22:15:45 +0100 | <davean> | omentic: BTW what makes build times so bad for you? (I didn't read up) | 
| 2025-10-30 22:16:08 +0100 | Googulator29 | (~Googulato@2a01-036d-0106-03fa-9dbb-a0af-2124-a319.pool6.digikabel.hu) (Quit: Client closed) | 
| 2025-10-30 22:16:09 +0100 | Googulator97 | (~Googulato@2a01-036d-0106-03fa-9dbb-a0af-2124-a319.pool6.digikabel.hu) (Client Quit) | 
| 2025-10-30 22:16:18 +0100 | Googulator97 | (~Googulato@2a01-036d-0106-03fa-9dbb-a0af-2124-a319.pool6.digikabel.hu) | 
| 2025-10-30 22:18:34 +0100 | nerdychip | (~nerdychip@user/nerdychip) (Read error: Connection reset by peer) | 
| 2025-10-30 22:18:41 +0100 | merijn | (~merijn@host-vr.cgnat-g.v4.dfn.nl) (Ping timeout: 244 seconds) | 
| 2025-10-30 22:19:06 +0100 | ljdarj | (~Thunderbi@user/ljdarj) (Quit: ljdarj) | 
| 2025-10-30 22:19:55 +0100 | peterbecich | (~Thunderbi@172.222.148.214) (Ping timeout: 256 seconds) | 
| 2025-10-30 22:20:45 +0100 | <haskellbridge> | <sm> 2020 intel thinkpad possibly swapping | 
| 2025-10-30 22:21:25 +0100 | nerdychip | (~nerdychip@212.129.72.100) | 
| 2025-10-30 22:21:25 +0100 | nerdychip | (~nerdychip@212.129.72.100) (Changing host) | 
| 2025-10-30 22:21:25 +0100 | nerdychip | (~nerdychip@user/nerdychip) nerdychip | 
| 2025-10-30 22:25:39 +0100 | merijn | (~merijn@host-vr.cgnat-g.v4.dfn.nl) merijn |