| 2025-11-28 00:01:19 +0100 | xff0x | (~xff0x@2405:6580:b080:900:7143:8b5a:1c3d:7f99) (Ping timeout: 250 seconds) |
| 2025-11-28 00:03:12 +0100 | ttybitnik | (~ttybitnik@user/wolper) (Ping timeout: 244 seconds) |
| 2025-11-28 00:03:47 +0100 | merijn | (~merijn@host-vr.cgnat-g.v4.dfn.nl) merijn |
| 2025-11-28 00:07:32 +0100 | humasect | (~humasect@dyn-192-249-132-90.nexicom.net) |
| 2025-11-28 00:08:15 +0100 | merijn | (~merijn@host-vr.cgnat-g.v4.dfn.nl) (Ping timeout: 240 seconds) |
| 2025-11-28 00:08:35 +0100 | xff0x | (~xff0x@2405:6580:b080:900:7143:8b5a:1c3d:7f99) |
| 2025-11-28 00:10:57 +0100 | CiaoSen | (~Jura@2a02:8071:64e1:da0:5a47:caff:fe78:33db) (Ping timeout: 244 seconds) |
| 2025-11-28 00:15:02 +0100 | __monty__ | (~toonn@user/toonn) (Quit: leaving) |
| 2025-11-28 00:17:40 +0100 | ljdarj | (~Thunderbi@user/ljdarj) (Quit: ljdarj) |
| 2025-11-28 00:19:20 +0100 | merijn | (~merijn@host-vr.cgnat-g.v4.dfn.nl) merijn |
| 2025-11-28 00:23:35 +0100 | merijn | (~merijn@host-vr.cgnat-g.v4.dfn.nl) (Ping timeout: 240 seconds) |
| 2025-11-28 00:30:22 +0100 | mange | (~mange@user/mange) mange |
| 2025-11-28 00:34:45 +0100 | merijn | (~merijn@host-vr.cgnat-g.v4.dfn.nl) merijn |
| 2025-11-28 00:38:55 +0100 | merijn | (~merijn@host-vr.cgnat-g.v4.dfn.nl) (Ping timeout: 240 seconds) |
| 2025-11-28 00:41:10 +0100 | L29Ah | (~L29Ah@wikipedia/L29Ah) L29Ah |
| 2025-11-28 00:46:40 +0100 | ec | (~ec@gateway/tor-sasl/ec) (Remote host closed the connection) |
| 2025-11-28 00:47:05 +0100 | ec | (~ec@gateway/tor-sasl/ec) ec |
| 2025-11-28 00:50:06 +0100 | merijn | (~merijn@host-vr.cgnat-g.v4.dfn.nl) merijn |
| 2025-11-28 00:53:05 +0100 | DetourNe- | (~DetourNet@user/DetourNetworkUK) DetourNetworkUK |
| 2025-11-28 00:53:28 +0100 | DetourNetworkUK | (DetourNetw@user/DetourNetworkUK) (Read error: Connection reset by peer) |
| 2025-11-28 00:54:37 +0100 | merijn | (~merijn@host-vr.cgnat-g.v4.dfn.nl) (Ping timeout: 246 seconds) |
| 2025-11-28 00:55:20 +0100 | DetourNe- | DetourNetworkUK |
| 2025-11-28 00:57:42 +0100 | humasect | (~humasect@dyn-192-249-132-90.nexicom.net) (Remote host closed the connection) |
| 2025-11-28 01:01:36 +0100 | Googulator73 | Googulator |
| 2025-11-28 01:02:24 +0100 | lambdabot | (~lambdabot@haskell/bot/lambdabot) (Quit: Wee!) |
| 2025-11-28 01:05:08 +0100 | lambdabot | (~lambdabot@haskell/bot/lambdabot) lambdabot |
| 2025-11-28 01:05:08 +0100 | ChanServ | +v lambdabot |
| 2025-11-28 01:05:30 +0100 | merijn | (~merijn@host-vr.cgnat-g.v4.dfn.nl) merijn |
| 2025-11-28 01:05:43 +0100 | Shark8 | (~Shark8@c-174-56-102-109.hsd1.nm.comcast.net) |
| 2025-11-28 01:08:25 +0100 | Frostillicus | (~Frostilli@pool-71-174-119-69.bstnma.fios.verizon.net) (Ping timeout: 264 seconds) |
| 2025-11-28 01:10:37 +0100 | Googulator | (~Googulato@2a01-036d-0106-4ad8-f42e-6d50-f4ab-2863.pool6.digikabel.hu) (Quit: Client closed) |
| 2025-11-28 01:10:39 +0100 | Googulator21 | (~Googulato@2a01-036d-0106-4ad8-f42e-6d50-f4ab-2863.pool6.digikabel.hu) |
| 2025-11-28 01:12:19 +0100 | merijn | (~merijn@host-vr.cgnat-g.v4.dfn.nl) (Ping timeout: 264 seconds) |
| 2025-11-28 01:13:41 +0100 | trickard | (~trickard@cpe-91-98-47-163.wireline.com.au) (Read error: Connection reset by peer) |
| 2025-11-28 01:13:55 +0100 | trickard_ | (~trickard@cpe-91-98-47-163.wireline.com.au) |
| 2025-11-28 01:23:32 +0100 | merijn | (~merijn@host-vr.cgnat-g.v4.dfn.nl) merijn |
| 2025-11-28 01:23:39 +0100 | Shark8 | (~Shark8@c-174-56-102-109.hsd1.nm.comcast.net) (Read error: Connection reset by peer) |
| 2025-11-28 01:24:23 +0100 | Shark8 | (~Shark8@c-174-56-102-109.hsd1.nm.comcast.net) |
| 2025-11-28 01:27:00 +0100 | acidjnk | (~acidjnk@p200300d6e7171932119317c4eba72db3.dip0.t-ipconnect.de) (Ping timeout: 244 seconds) |
| 2025-11-28 01:28:15 +0100 | merijn | (~merijn@host-vr.cgnat-g.v4.dfn.nl) (Ping timeout: 252 seconds) |
| 2025-11-28 01:30:20 +0100 | Frostillicus | (~Frostilli@pool-71-174-119-69.bstnma.fios.verizon.net) |
| 2025-11-28 01:36:58 +0100 | vanishingideal | (~vanishing@user/vanishingideal) (Ping timeout: 246 seconds) |
| 2025-11-28 01:38:56 +0100 | merijn | (~merijn@host-vr.cgnat-g.v4.dfn.nl) merijn |
| 2025-11-28 01:43:20 +0100 | merijn | (~merijn@host-vr.cgnat-g.v4.dfn.nl) (Ping timeout: 240 seconds) |
| 2025-11-28 01:44:51 +0100 | Tuplanolla | (~Tuplanoll@91-152-225-194.elisa-laajakaista.fi) (Quit: Leaving.) |
| 2025-11-28 01:48:00 +0100 | emmanuelux | (~emmanuelu@user/emmanuelux) emmanuelux |
| 2025-11-28 01:49:15 +0100 | tromp | (~textual@2001:1c00:3487:1b00:9176:7929:ae5a:d4f6) (Quit: My iMac has gone to sleep. ZZZzzz…) |
| 2025-11-28 01:53:04 +0100 | xff0x | (~xff0x@2405:6580:b080:900:7143:8b5a:1c3d:7f99) (Ping timeout: 246 seconds) |
| 2025-11-28 01:54:19 +0100 | merijn | (~merijn@host-vr.cgnat-g.v4.dfn.nl) merijn |
| 2025-11-28 01:58:31 +0100 | Sgeo | (~Sgeo@user/sgeo) (Read error: Connection reset by peer) |
| 2025-11-28 01:58:40 +0100 | merijn | (~merijn@host-vr.cgnat-g.v4.dfn.nl) (Ping timeout: 246 seconds) |
| 2025-11-28 02:04:26 +0100 | ec | (~ec@gateway/tor-sasl/ec) (Ping timeout: 272 seconds) |
| 2025-11-28 02:05:41 +0100 | humasect | (~humasect@dyn-192-249-132-90.nexicom.net) |
| 2025-11-28 02:05:45 +0100 | ec | (~ec@gateway/tor-sasl/ec) ec |
| 2025-11-28 02:07:22 +0100 | jmcantrell | (~weechat@user/jmcantrell) jmcantrell |
| 2025-11-28 02:09:50 +0100 | merijn | (~merijn@host-vr.cgnat-g.v4.dfn.nl) merijn |
| 2025-11-28 02:14:07 +0100 | merijn | (~merijn@host-vr.cgnat-g.v4.dfn.nl) (Ping timeout: 240 seconds) |
| 2025-11-28 02:16:07 +0100 | defragger | (~random@i6DFADE72.versanet.de) (Ping timeout: 240 seconds) |
| 2025-11-28 02:18:04 +0100 | defragger | (~random@i6DFADE44.versanet.de) defragger |
| 2025-11-28 02:18:51 +0100 | Shark8 | (~Shark8@c-174-56-102-109.hsd1.nm.comcast.net) (Ping timeout: 252 seconds) |
| 2025-11-28 02:20:31 +0100 | jmcantrell | (~weechat@user/jmcantrell) (Ping timeout: 240 seconds) |
| 2025-11-28 02:22:13 +0100 | trickard_ | trickard |
| 2025-11-28 02:25:10 +0100 | merijn | (~merijn@host-vr.cgnat-g.v4.dfn.nl) merijn |
| 2025-11-28 02:29:44 +0100 | merijn | (~merijn@host-vr.cgnat-g.v4.dfn.nl) (Ping timeout: 260 seconds) |
| 2025-11-28 02:33:03 +0100 | Shark8 | (~Shark8@c-174-56-102-109.hsd1.nm.comcast.net) |
| 2025-11-28 02:34:13 +0100 | Sgeo | (~Sgeo@user/sgeo) Sgeo |
| 2025-11-28 02:39:44 +0100 | Frostillicus | (~Frostilli@pool-71-174-119-69.bstnma.fios.verizon.net) (Remote host closed the connection) |
| 2025-11-28 02:40:07 +0100 | Frostillicus | (~Frostilli@pool-71-174-119-69.bstnma.fios.verizon.net) |
| 2025-11-28 02:40:35 +0100 | merijn | (~merijn@host-vr.cgnat-g.v4.dfn.nl) merijn |
| 2025-11-28 02:44:41 +0100 | cstml | (~cstml@user/cstml) (Quit: ZNC 1.10.1 - https://znc.in) |
| 2025-11-28 02:44:56 +0100 | merijn | (~merijn@host-vr.cgnat-g.v4.dfn.nl) (Ping timeout: 240 seconds) |
| 2025-11-28 02:46:08 +0100 | lambdabot | (~lambdabot@haskell/bot/lambdabot) (Quit: Will there be a rubber tree at the bottom of this cliff?) |
| 2025-11-28 02:46:15 +0100 | lambdabot | (~lambdabot@haskell/bot/lambdabot) lambdabot |
| 2025-11-28 02:46:15 +0100 | ChanServ | +v lambdabot |
| 2025-11-28 02:47:09 +0100 | cstml | (~cstml@user/cstml) cstml |
| 2025-11-28 02:55:03 +0100 | merijn | (~merijn@host-vr.cgnat-g.v4.dfn.nl) merijn |
| 2025-11-28 02:56:57 +0100 | omidmash1 | (~omidmash@user/omidmash) omidmash |
| 2025-11-28 02:58:07 +0100 | xff0x | (~xff0x@fsb6a9491c.tkyc517.ap.nuro.jp) |
| 2025-11-28 02:58:32 +0100 | Lord_of_Life | (~Lord@user/lord-of-life/x-2819915) (Quit: Laa shay'a waqi'un moutlaq bale kouloun moumkine) |
| 2025-11-28 02:59:15 +0100 | merijn | (~merijn@host-vr.cgnat-g.v4.dfn.nl) (Ping timeout: 240 seconds) |
| 2025-11-28 02:59:29 +0100 | omidmash | (~omidmash@user/omidmash) (Ping timeout: 260 seconds) |
| 2025-11-28 02:59:29 +0100 | omidmash1 | omidmash |
| 2025-11-28 02:59:33 +0100 | sord937 | (~sord937@gateway/tor-sasl/sord937) sord937 |
| 2025-11-28 03:02:25 +0100 | Lord_of_Life | (~Lord@user/lord-of-life/x-2819915) Lord_of_Life |
| 2025-11-28 03:04:22 +0100 | humasect | (~humasect@dyn-192-249-132-90.nexicom.net) (Remote host closed the connection) |
| 2025-11-28 03:04:22 +0100 | trickard | (~trickard@cpe-91-98-47-163.wireline.com.au) (Read error: Connection reset by peer) |
| 2025-11-28 03:04:36 +0100 | trickard_ | (~trickard@cpe-91-98-47-163.wireline.com.au) |
| 2025-11-28 03:04:50 +0100 | Lord_of_Life | (~Lord@user/lord-of-life/x-2819915) (Excess Flood) |
| 2025-11-28 03:05:10 +0100 | <int-e> | Okay, lambdabot moved once again... now on ghc-9.10.3. Some packages that were available before may be missing or hidden. https://silicon.int-e.eu/lambdabot/State/packages.txt is the current state of that (parenthesized ones are hidden; I would've preferred to hide ghc-interanal and ghc-prim but can't for technical reasons) |
| 2025-11-28 03:07:21 +0100 | img | (~img@user/img) (Quit: ZNC 1.8.2 - https://znc.in) |
| 2025-11-28 03:08:40 +0100 | jmcantrell | (~weechat@user/jmcantrell) jmcantrell |
| 2025-11-28 03:08:42 +0100 | img | (~img@user/img) img |
| 2025-11-28 03:08:56 +0100 | X-Scale | (~ARM@6.67.114.89.rev.vodafone.pt) (Ping timeout: 240 seconds) |
| 2025-11-28 03:10:27 +0100 | merijn | (~merijn@host-vr.cgnat-g.v4.dfn.nl) merijn |
| 2025-11-28 03:12:36 +0100 | sord937 | (~sord937@gateway/tor-sasl/sord937) (Remote host closed the connection) |
| 2025-11-28 03:12:55 +0100 | sord937 | (~sord937@gateway/tor-sasl/sord937) sord937 |
| 2025-11-28 03:14:35 +0100 | merijn | (~merijn@host-vr.cgnat-g.v4.dfn.nl) (Ping timeout: 240 seconds) |
| 2025-11-28 03:17:52 +0100 | trickard_ | trickard |
| 2025-11-28 03:25:49 +0100 | merijn | (~merijn@host-vr.cgnat-g.v4.dfn.nl) merijn |
| 2025-11-28 03:29:55 +0100 | merijn | (~merijn@host-vr.cgnat-g.v4.dfn.nl) (Ping timeout: 240 seconds) |
| 2025-11-28 03:35:44 +0100 | X-Scale | (~ARM@6.67.114.89.rev.vodafone.pt) X-Scale |
| 2025-11-28 03:41:13 +0100 | merijn | (~merijn@host-vr.cgnat-g.v4.dfn.nl) merijn |
| 2025-11-28 03:41:33 +0100 | glguy_ | (glguy@libera/staff/glguy) glguy |
| 2025-11-28 03:42:44 +0100 | glguy | (glguy@libera/staff/glguy) (Read error: Connection reset by peer) |
| 2025-11-28 03:44:13 +0100 | sord937 | (~sord937@gateway/tor-sasl/sord937) (Remote host closed the connection) |
| 2025-11-28 03:44:34 +0100 | sord937 | (~sord937@gateway/tor-sasl/sord937) sord937 |
| 2025-11-28 03:47:44 +0100 | merijn | (~merijn@host-vr.cgnat-g.v4.dfn.nl) (Ping timeout: 240 seconds) |
| 2025-11-28 03:47:55 +0100 | Lord_of_Life | (~Lord@user/lord-of-life/x-2819915) Lord_of_Life |
| 2025-11-28 03:54:52 +0100 | machinedgod | (~machinedg@d75-159-126-101.abhsia.telus.net) (Ping timeout: 246 seconds) |
| 2025-11-28 03:59:14 +0100 | merijn | (~merijn@host-vr.cgnat-g.v4.dfn.nl) merijn |
| 2025-11-28 04:03:35 +0100 | merijn | (~merijn@host-vr.cgnat-g.v4.dfn.nl) (Ping timeout: 240 seconds) |
| 2025-11-28 04:08:10 +0100 | glguy_ | glguy |
| 2025-11-28 04:11:29 +0100 | <glguy> | thanks for keeping it updated |
| 2025-11-28 04:12:41 +0100 | <int-e> | Well, sort of. I think the last time was 5 years ago. |
| 2025-11-28 04:13:27 +0100 | <glguy> | ok, then: thanks for running it :) |
| 2025-11-28 04:14:38 +0100 | merijn | (~merijn@host-vr.cgnat-g.v4.dfn.nl) merijn |
| 2025-11-28 04:16:00 +0100 | <int-e> | :) |
| 2025-11-28 04:18:57 +0100 | merijn | (~merijn@host-vr.cgnat-g.v4.dfn.nl) (Ping timeout: 244 seconds) |
| 2025-11-28 04:23:25 +0100 | Frostillicus | (~Frostilli@pool-71-174-119-69.bstnma.fios.verizon.net) (Ping timeout: 264 seconds) |
| 2025-11-28 04:30:00 +0100 | merijn | (~merijn@host-vr.cgnat-g.v4.dfn.nl) merijn |
| 2025-11-28 04:32:35 +0100 | td_ | (~td@i5387090C.versanet.de) (Ping timeout: 240 seconds) |
| 2025-11-28 04:34:15 +0100 | merijn | (~merijn@host-vr.cgnat-g.v4.dfn.nl) (Ping timeout: 240 seconds) |
| 2025-11-28 04:34:45 +0100 | td_ | (~td@i53870937.versanet.de) |
| 2025-11-28 04:35:17 +0100 | vardhan | (~vardhan@122.172.83.239) |
| 2025-11-28 04:40:17 +0100 | weary-traveler | (~user@user/user363627) user363627 |
| 2025-11-28 04:41:00 +0100 | Googulator73 | (~Googulato@2a01-036d-0106-4ad8-f42e-6d50-f4ab-2863.pool6.digikabel.hu) |
| 2025-11-28 04:41:17 +0100 | Googulator21 | (~Googulato@2a01-036d-0106-4ad8-f42e-6d50-f4ab-2863.pool6.digikabel.hu) (Quit: Client closed) |
| 2025-11-28 04:45:25 +0100 | merijn | (~merijn@host-vr.cgnat-g.v4.dfn.nl) merijn |
| 2025-11-28 04:49:35 +0100 | merijn | (~merijn@host-vr.cgnat-g.v4.dfn.nl) (Ping timeout: 240 seconds) |
| 2025-11-28 05:00:49 +0100 | merijn | (~merijn@host-vr.cgnat-g.v4.dfn.nl) merijn |
| 2025-11-28 05:04:55 +0100 | merijn | (~merijn@host-vr.cgnat-g.v4.dfn.nl) (Ping timeout: 240 seconds) |
| 2025-11-28 05:16:12 +0100 | merijn | (~merijn@host-vr.cgnat-g.v4.dfn.nl) merijn |
| 2025-11-28 05:22:55 +0100 | merijn | (~merijn@host-vr.cgnat-g.v4.dfn.nl) (Ping timeout: 240 seconds) |
| 2025-11-28 05:28:31 +0100 | marinelli | (~weechat@gateway/tor-sasl/marinelli) (Quit: marinelli) |
| 2025-11-28 05:32:14 +0100 | marinelli | (~weechat@gateway/tor-sasl/marinelli) marinelli |
| 2025-11-28 05:34:14 +0100 | merijn | (~merijn@host-vr.cgnat-g.v4.dfn.nl) merijn |
| 2025-11-28 05:34:57 +0100 | mniip | (mniip@libera/staff/mniip) (Read error: Connection reset by peer) |
| 2025-11-28 05:38:28 +0100 | merijn | (~merijn@host-vr.cgnat-g.v4.dfn.nl) (Ping timeout: 246 seconds) |
| 2025-11-28 05:40:58 +0100 | mniip | (mniip@libera/staff/mniip) mniip |
| 2025-11-28 05:49:37 +0100 | merijn | (~merijn@host-vr.cgnat-g.v4.dfn.nl) merijn |
| 2025-11-28 05:54:08 +0100 | merijn | (~merijn@host-vr.cgnat-g.v4.dfn.nl) (Ping timeout: 240 seconds) |
| 2025-11-28 06:03:38 +0100 | jmcantrell | (~weechat@user/jmcantrell) (Quit: WeeChat 4.7.2) |
| 2025-11-28 06:03:46 +0100 | Frostillicus | (~Frostilli@pool-71-174-119-69.bstnma.fios.verizon.net) |
| 2025-11-28 06:05:00 +0100 | merijn | (~merijn@host-vr.cgnat-g.v4.dfn.nl) merijn |
| 2025-11-28 06:06:20 +0100 | Frostillicus | (~Frostilli@pool-71-174-119-69.bstnma.fios.verizon.net) (Read error: Connection reset by peer) |
| 2025-11-28 06:07:02 +0100 | jmcantrell | (~weechat@user/jmcantrell) jmcantrell |
| 2025-11-28 06:08:43 +0100 | Frostillicus | (~Frostilli@pool-71-174-119-69.bstnma.fios.verizon.net) |
| 2025-11-28 06:09:37 +0100 | merijn | (~merijn@host-vr.cgnat-g.v4.dfn.nl) (Ping timeout: 264 seconds) |
| 2025-11-28 06:20:30 +0100 | merijn | (~merijn@host-vr.cgnat-g.v4.dfn.nl) merijn |
| 2025-11-28 06:24:21 +0100 | timide | (~timide@user/timide) (K-Lined) |
| 2025-11-28 06:25:01 +0100 | merijn | (~merijn@host-vr.cgnat-g.v4.dfn.nl) (Ping timeout: 244 seconds) |
| 2025-11-28 06:28:23 +0100 | gmg | (~user@user/gehmehgeh) (Remote host closed the connection) |
| 2025-11-28 06:29:35 +0100 | peterbecich | (~Thunderbi@172.222.148.214) peterbecich |
| 2025-11-28 06:31:50 +0100 | trickard | (~trickard@cpe-91-98-47-163.wireline.com.au) (Read error: Connection reset by peer) |
| 2025-11-28 06:32:04 +0100 | trickard_ | (~trickard@cpe-91-98-47-163.wireline.com.au) |
| 2025-11-28 06:35:53 +0100 | merijn | (~merijn@host-vr.cgnat-g.v4.dfn.nl) merijn |
| 2025-11-28 06:39:39 +0100 | mange | (~mange@user/mange) (Remote host closed the connection) |
| 2025-11-28 06:40:25 +0100 | merijn | (~merijn@host-vr.cgnat-g.v4.dfn.nl) (Ping timeout: 246 seconds) |
| 2025-11-28 06:51:22 +0100 | merijn | (~merijn@host-vr.cgnat-g.v4.dfn.nl) merijn |
| 2025-11-28 06:51:25 +0100 | trickard_ | (~trickard@cpe-91-98-47-163.wireline.com.au) (Read error: Connection reset by peer) |
| 2025-11-28 06:51:38 +0100 | trickard_ | (~trickard@cpe-91-98-47-163.wireline.com.au) |
| 2025-11-28 06:55:55 +0100 | merijn | (~merijn@host-vr.cgnat-g.v4.dfn.nl) (Ping timeout: 240 seconds) |
| 2025-11-28 06:58:04 +0100 | Frostillicus | (~Frostilli@pool-71-174-119-69.bstnma.fios.verizon.net) (Ping timeout: 260 seconds) |
| 2025-11-28 07:05:35 +0100 | peterbecich | (~Thunderbi@172.222.148.214) (Ping timeout: 240 seconds) |
| 2025-11-28 07:06:54 +0100 | merijn | (~merijn@host-vr.cgnat-g.v4.dfn.nl) merijn |
| 2025-11-28 07:08:02 +0100 | Frostillicus | (~Frostilli@pool-71-174-119-69.bstnma.fios.verizon.net) |
| 2025-11-28 07:12:06 +0100 | peterbecich | (~Thunderbi@172.222.148.214) peterbecich |
| 2025-11-28 07:12:24 +0100 | takuan | (~takuan@d8D86B9E9.access.telenet.be) |
| 2025-11-28 07:13:13 +0100 | merijn | (~merijn@host-vr.cgnat-g.v4.dfn.nl) (Ping timeout: 264 seconds) |
| 2025-11-28 07:20:57 +0100 | Guest38_ | (~textual@2a01:5ec0:1805:a54f:f5f7:4084:cb60:e5fd) |
| 2025-11-28 07:24:05 +0100 | merijn | (~merijn@host-vr.cgnat-g.v4.dfn.nl) merijn |
| 2025-11-28 07:28:15 +0100 | merijn | (~merijn@host-vr.cgnat-g.v4.dfn.nl) (Ping timeout: 240 seconds) |
| 2025-11-28 07:28:33 +0100 | acidjnk | (~acidjnk@p200300d6e7171932119317c4eba72db3.dip0.t-ipconnect.de) acidjnk |
| 2025-11-28 07:28:38 +0100 | humasect | (~humasect@dyn-192-249-132-90.nexicom.net) humasect |
| 2025-11-28 07:34:07 +0100 | acidjnk | (~acidjnk@p200300d6e7171932119317c4eba72db3.dip0.t-ipconnect.de) (Ping timeout: 255 seconds) |
| 2025-11-28 07:35:48 +0100 | driib3180 | (~driib@vmi931078.contaboserver.net) (Ping timeout: 244 seconds) |
| 2025-11-28 07:35:52 +0100 | Frostillicus | (~Frostilli@pool-71-174-119-69.bstnma.fios.verizon.net) (Remote host closed the connection) |
| 2025-11-28 07:36:16 +0100 | Frostillicus | (~Frostilli@pool-71-174-119-69.bstnma.fios.verizon.net) |
| 2025-11-28 07:39:28 +0100 | merijn | (~merijn@host-vr.cgnat-g.v4.dfn.nl) merijn |
| 2025-11-28 07:42:20 +0100 | falafel | (~falafel@gateway/vpn/pia/falafel) falafel |
| 2025-11-28 07:43:34 +0100 | Frostillicus | (~Frostilli@pool-71-174-119-69.bstnma.fios.verizon.net) (Ping timeout: 255 seconds) |
| 2025-11-28 07:43:35 +0100 | merijn | (~merijn@host-vr.cgnat-g.v4.dfn.nl) (Ping timeout: 240 seconds) |
| 2025-11-28 07:44:35 +0100 | driib3180 | (~driib@vmi931078.contaboserver.net) driib |
| 2025-11-28 07:45:55 +0100 | Frostillicus | (~Frostilli@pool-71-174-119-69.bstnma.fios.verizon.net) |
| 2025-11-28 07:46:17 +0100 | humasect | (~humasect@dyn-192-249-132-90.nexicom.net) (Quit: Leaving...) |
| 2025-11-28 07:46:41 +0100 | trickard_ | (~trickard@cpe-91-98-47-163.wireline.com.au) (Read error: Connection reset by peer) |
| 2025-11-28 07:46:55 +0100 | trickard_ | (~trickard@cpe-91-98-47-163.wireline.com.au) |
| 2025-11-28 07:48:19 +0100 | falafel | (~falafel@gateway/vpn/pia/falafel) (Ping timeout: 246 seconds) |
| 2025-11-28 07:48:32 +0100 | X-Scale | (~ARM@6.67.114.89.rev.vodafone.pt) (Ping timeout: 240 seconds) |
| 2025-11-28 07:50:48 +0100 | humasect | (~humasect@dyn-192-249-132-90.nexicom.net) humasect |
| 2025-11-28 07:52:06 +0100 | driib3180 | (~driib@vmi931078.contaboserver.net) (Quit: Ping timeout (120 seconds)) |
| 2025-11-28 07:53:08 +0100 | driib3180 | (~driib@vmi931078.contaboserver.net) driib |
| 2025-11-28 07:54:51 +0100 | merijn | (~merijn@host-vr.cgnat-g.v4.dfn.nl) merijn |
| 2025-11-28 07:59:21 +0100 | Googulator73 | (~Googulato@2a01-036d-0106-4ad8-f42e-6d50-f4ab-2863.pool6.digikabel.hu) (Ping timeout: 250 seconds) |
| 2025-11-28 08:00:02 +0100 | califax | (~califax@user/califx) (Remote host closed the connection) |
| 2025-11-28 08:00:22 +0100 | califax | (~califax@user/califx) califx |
| 2025-11-28 08:01:37 +0100 | merijn | (~merijn@host-vr.cgnat-g.v4.dfn.nl) (Ping timeout: 246 seconds) |
| 2025-11-28 08:03:56 +0100 | humasect | (~humasect@dyn-192-249-132-90.nexicom.net) (Remote host closed the connection) |
| 2025-11-28 08:06:06 +0100 | Frostillicus | (~Frostilli@pool-71-174-119-69.bstnma.fios.verizon.net) (Read error: Connection reset by peer) |
| 2025-11-28 08:06:40 +0100 | Frostillicus | (~Frostilli@pool-71-174-119-69.bstnma.fios.verizon.net) |
| 2025-11-28 08:06:54 +0100 | Guest38_ | (~textual@2a01:5ec0:1805:a54f:f5f7:4084:cb60:e5fd) (Quit: Textual IRC Client: www.textualapp.com) |
| 2025-11-28 08:08:09 +0100 | driib3180 | (~driib@vmi931078.contaboserver.net) (Ping timeout: 265 seconds) |
| 2025-11-28 08:08:21 +0100 | haritz | (~hrtz@user/haritz) (Quit: ZNC 1.8.2+deb3.1+deb12u1 - https://znc.in) |
| 2025-11-28 08:09:15 +0100 | trickard_ | trickard |
| 2025-11-28 08:10:17 +0100 | driib3180 | (~driib@vmi931078.contaboserver.net) driib |
| 2025-11-28 08:10:24 +0100 | jmcantrell | (~weechat@user/jmcantrell) (Ping timeout: 260 seconds) |
| 2025-11-28 08:12:36 +0100 | biberu | (~biberu@user/biberu) biberu |
| 2025-11-28 08:12:53 +0100 | merijn | (~merijn@host-vr.cgnat-g.v4.dfn.nl) merijn |
| 2025-11-28 08:17:15 +0100 | merijn | (~merijn@host-vr.cgnat-g.v4.dfn.nl) (Ping timeout: 240 seconds) |
| 2025-11-28 08:25:15 +0100 | Guest38 | (~textual@2a01:5ec0:1805:a54f:f5f7:4084:cb60:e5fd) |
| 2025-11-28 08:26:21 +0100 | CiaoSen | (~Jura@2a02:8071:64e1:da0:5a47:caff:fe78:33db) CiaoSen |
| 2025-11-28 08:27:00 +0100 | annamalai | (~annamalai@2409:4042:2d87:3c71::9e8a:460b) (Ping timeout: 265 seconds) |
| 2025-11-28 08:27:21 +0100 | ft | (~ft@p508db844.dip0.t-ipconnect.de) (Quit: leaving) |
| 2025-11-28 08:28:15 +0100 | merijn | (~merijn@host-vr.cgnat-g.v4.dfn.nl) merijn |
| 2025-11-28 08:32:35 +0100 | merijn | (~merijn@host-vr.cgnat-g.v4.dfn.nl) (Ping timeout: 240 seconds) |
| 2025-11-28 08:38:07 +0100 | jreicher | (~user@user/jreicher) (Read error: Connection reset by peer) |
| 2025-11-28 08:39:11 +0100 | jreicher | (~user@user/jreicher) jreicher |
| 2025-11-28 08:40:08 +0100 | driib3180 | (~driib@vmi931078.contaboserver.net) (Ping timeout: 240 seconds) |
| 2025-11-28 08:40:46 +0100 | jreicher | (~user@user/jreicher) (Read error: Connection reset by peer) |
| 2025-11-28 08:41:47 +0100 | jreicher | (~user@user/jreicher) jreicher |
| 2025-11-28 08:42:15 +0100 | xff0x | (~xff0x@fsb6a9491c.tkyc517.ap.nuro.jp) (Ping timeout: 240 seconds) |
| 2025-11-28 08:43:38 +0100 | merijn | (~merijn@host-vr.cgnat-g.v4.dfn.nl) merijn |
| 2025-11-28 08:44:23 +0100 | xff0x | (~xff0x@fsb6a9491c.tkyc517.ap.nuro.jp) |
| 2025-11-28 08:48:37 +0100 | merijn | (~merijn@host-vr.cgnat-g.v4.dfn.nl) (Ping timeout: 264 seconds) |
| 2025-11-28 08:57:37 +0100 | annamalai | (~annamalai@157.32.117.148) annamalai |
| 2025-11-28 08:59:08 +0100 | merijn | (~merijn@host-vr.cgnat-g.v4.dfn.nl) merijn |
| 2025-11-28 08:59:10 +0100 | absence | (torgeihe@hildring.pvv.ntnu.no) (Ping timeout: 255 seconds) |
| 2025-11-28 09:00:49 +0100 | driib3180 | (~driib@vmi931078.contaboserver.net) driib |
| 2025-11-28 09:03:25 +0100 | merijn | (~merijn@host-vr.cgnat-g.v4.dfn.nl) (Ping timeout: 250 seconds) |
| 2025-11-28 09:09:56 +0100 | merijn | (~merijn@host-vr.cgnat-g.v4.dfn.nl) merijn |
| 2025-11-28 09:10:35 +0100 | Frostillicus | (~Frostilli@pool-71-174-119-69.bstnma.fios.verizon.net) (Ping timeout: 240 seconds) |
| 2025-11-28 09:10:48 +0100 | driib3180 | (~driib@vmi931078.contaboserver.net) (Ping timeout: 252 seconds) |
| 2025-11-28 09:14:39 +0100 | merijn | (~merijn@host-vr.cgnat-g.v4.dfn.nl) (Ping timeout: 252 seconds) |
| 2025-11-28 09:18:36 +0100 | Frostillicus | (~Frostilli@pool-71-174-119-69.bstnma.fios.verizon.net) |
| 2025-11-28 09:23:07 +0100 | tromp | (~textual@2001:1c00:3487:1b00:9176:7929:ae5a:d4f6) |
| 2025-11-28 09:25:19 +0100 | merijn | (~merijn@host-vr.cgnat-g.v4.dfn.nl) merijn |
| 2025-11-28 09:29:44 +0100 | merijn | (~merijn@host-vr.cgnat-g.v4.dfn.nl) (Ping timeout: 240 seconds) |
| 2025-11-28 09:34:08 +0100 | ljdarj | (~Thunderbi@user/ljdarj) ljdarj |
| 2025-11-28 09:40:41 +0100 | merijn | (~merijn@host-vr.cgnat-g.v4.dfn.nl) merijn |
| 2025-11-28 09:41:13 +0100 | Googulator73 | (~Googulato@team.broadbit.hu) |
| 2025-11-28 09:41:22 +0100 | mjrosenb | (~mjrosenb@70.18.10.118) (Ping timeout: 246 seconds) |
| 2025-11-28 09:45:55 +0100 | merijn | (~merijn@host-vr.cgnat-g.v4.dfn.nl) (Ping timeout: 264 seconds) |
| 2025-11-28 09:47:04 +0100 | merijn | (~merijn@host-vr.cgnat-g.v4.dfn.nl) merijn |
| 2025-11-28 09:49:48 +0100 | Googulator73 | Googulator |
| 2025-11-28 09:50:42 +0100 | Guest38 | (~textual@2a01:5ec0:1805:a54f:f5f7:4084:cb60:e5fd) (Quit: Textual IRC Client: www.textualapp.com) |
| 2025-11-28 09:54:12 +0100 | img | (~img@user/img) (Quit: ZNC 1.10.1 - https://znc.in) |
| 2025-11-28 09:55:32 +0100 | img | (~img@user/img) img |
| 2025-11-28 09:57:43 +0100 | Square2 | (~Square4@user/square) (Ping timeout: 240 seconds) |
| 2025-11-28 10:00:05 +0100 | acidjnk | (~acidjnk@p200300d6e7171911dda60d32ed7e3ae9.dip0.t-ipconnect.de) acidjnk |
| 2025-11-28 10:01:39 +0100 | driib3180 | (~driib@vmi931078.contaboserver.net) driib |
| 2025-11-28 10:04:15 +0100 | emmanuelux | (~emmanuelu@user/emmanuelux) (Remote host closed the connection) |
| 2025-11-28 10:04:55 +0100 | defragger | (~random@i6DFADE44.versanet.de) (Ping timeout: 240 seconds) |
| 2025-11-28 10:15:53 +0100 | Googulator99 | (~Googulato@team.broadbit.hu) |
| 2025-11-28 10:18:29 +0100 | __monty__ | (~toonn@user/toonn) toonn |
| 2025-11-28 10:18:49 +0100 | tromp | (~textual@2001:1c00:3487:1b00:9176:7929:ae5a:d4f6) (Quit: My iMac has gone to sleep. ZZZzzz…) |
| 2025-11-28 10:19:19 +0100 | Googulator | (~Googulato@team.broadbit.hu) (Ping timeout: 250 seconds) |
| 2025-11-28 10:20:03 +0100 | Googulator99 | Googulator |
| 2025-11-28 10:21:14 +0100 | peterbecich | (~Thunderbi@172.222.148.214) (Ping timeout: 244 seconds) |
| 2025-11-28 10:26:37 +0100 | <lucabtz> | glguy, im luca from matrix. would it be possible to have something like xmonad with glirc, i see the executable is in exec and is not much code, most of the code is in the library. maybe i could try adding a list of haskell extensions with similar callbacks as for the C API |
| 2025-11-28 10:28:44 +0100 | <merijn> | lucabtz: What does "like xmonad" mean here? |
| 2025-11-28 10:29:44 +0100 | <lucabtz> | > <glguy> xmonad is a well-known tool that people configure in Haskell, but the way that's achieved is to have the program be a library. Every use of it is a program you write and compile that links in the library |
| 2025-11-28 10:29:45 +0100 | <lambdabot> | <hint>:1:1: error: parse error on input `<' |
| 2025-11-28 10:30:01 +0100 | <lucabtz> | (didnt know it is a command sorry) |
| 2025-11-28 10:31:18 +0100 | <__monty__> | It's trivially possible in the sense that you can write any program. |
| 2025-11-28 10:32:45 +0100 | <lucabtz> | s/possible/easily implementable |
| 2025-11-28 10:34:02 +0100 | <merijn> | lucabtz: I mean, glirc is already a library? |
| 2025-11-28 10:34:08 +0100 | <merijn> | So it's already that |
| 2025-11-28 10:35:16 +0100 | <lucabtz> | sure im just wondering how hard it would be to pass a list of haskell callbacks for it to process, similarly to the C API |
| 2025-11-28 10:39:28 +0100 | vgtw | (~vgtw@user/vgtw) (Quit: ZNC - https://znc.in) |
| 2025-11-28 10:39:29 +0100 | trickard | (~trickard@cpe-91-98-47-163.wireline.com.au) (Read error: Connection reset by peer) |
| 2025-11-28 10:39:41 +0100 | trickard_ | (~trickard@cpe-91-98-47-163.wireline.com.au) |
| 2025-11-28 10:39:53 +0100 | vgtw | (~vgtw@user/vgtw) vgtw |
| 2025-11-28 10:40:31 +0100 | haritz | (~hrtz@2a01:4b00:bc2e:7000:d5af:a266:ca31:5ef8) |
| 2025-11-28 10:40:31 +0100 | haritz | (~hrtz@2a01:4b00:bc2e:7000:d5af:a266:ca31:5ef8) (Changing host) |
| 2025-11-28 10:40:31 +0100 | haritz | (~hrtz@user/haritz) haritz |
| 2025-11-28 10:40:42 +0100 | travisb_ | (~travisb@172-13-49-137.lightspeed.milwwi.sbcglobal.net) |
| 2025-11-28 10:41:23 +0100 | tabemann | (~travisb@172-13-49-137.lightspeed.milwwi.sbcglobal.net) (Read error: Connection reset by peer) |
| 2025-11-28 10:45:52 +0100 | <__monty__> | Sounds pretty doable, especially if that is how the C API already works. |
| 2025-11-28 10:46:57 +0100 | <lucabtz> | yeah to me too, but im bored at work because im just renaming a lot of variables and anyway not much was happening here. sorry if i bothered |
| 2025-11-28 10:49:08 +0100 | <__monty__> | No need to apologize it's just a pretty open-ended question that only someone who's intimately familiar with the library would have a good answer to. |
| 2025-11-28 10:49:30 +0100 | X-Scale | (~ARM@6.67.114.89.rev.vodafone.pt) X-Scale |
| 2025-11-28 10:53:31 +0100 | gmg | (~user@user/gehmehgeh) gehmehgeh |
| 2025-11-28 10:57:01 +0100 | chromoblob | (~chromoblo@user/chromob1ot1c) (Ping timeout: 264 seconds) |
| 2025-11-28 10:57:15 +0100 | chromoblob | (~chromoblo@user/chromob1ot1c) chromoblob\0 |
| 2025-11-28 10:57:35 +0100 | xff0x | (~xff0x@fsb6a9491c.tkyc517.ap.nuro.jp) (Ping timeout: 240 seconds) |
| 2025-11-28 11:00:45 +0100 | chromoblob | (~chromoblo@user/chromob1ot1c) (Read error: Connection reset by peer) |
| 2025-11-28 11:01:11 +0100 | chromoblob | (~chromoblo@user/chromob1ot1c) chromoblob\0 |
| 2025-11-28 11:02:13 +0100 | <__monty__> | lucabtz: Do you just like the idea of extending an IRC client in Haskell or do you have existing libraries in mind? |
| 2025-11-28 11:07:57 +0100 | chromoblob | (~chromoblo@user/chromob1ot1c) (Ping timeout: 252 seconds) |
| 2025-11-28 11:08:45 +0100 | chromoblob | (~chromoblo@user/chromob1ot1c) chromoblob\0 |
| 2025-11-28 11:08:55 +0100 | ljdarj | (~Thunderbi@user/ljdarj) (Ping timeout: 240 seconds) |
| 2025-11-28 11:08:56 +0100 | tzh | (~tzh@c-76-115-131-146.hsd1.or.comcast.net) (Quit: zzz) |
| 2025-11-28 11:11:44 +0100 | chromoblob | (~chromoblo@user/chromob1ot1c) (Read error: Connection reset by peer) |
| 2025-11-28 11:14:15 +0100 | notzmv | (~umar@user/notzmv) (Ping timeout: 240 seconds) |
| 2025-11-28 11:16:34 +0100 | Vajb | (~Vajb@n6jrirf92qztswrjkg8-1.v6.elisa-mobile.fi) (Ping timeout: 246 seconds) |
| 2025-11-28 11:17:49 +0100 | chele | (~chele@user/chele) chele |
| 2025-11-28 11:17:54 +0100 | chromoblob | (~chromoblo@user/chromob1ot1c) chromoblob\0 |
| 2025-11-28 11:17:59 +0100 | gf3 | (~gf3@user/gf3) (Quit: Ping timeout (120 seconds)) |
| 2025-11-28 11:18:19 +0100 | gf3 | (~gf3@user/gf3) gf3 |
| 2025-11-28 11:18:39 +0100 | chromoblob | (~chromoblo@user/chromob1ot1c) (Read error: Connection reset by peer) |
| 2025-11-28 11:18:58 +0100 | chromoblob | (~chromoblo@user/chromob1ot1c) chromoblob\0 |
| 2025-11-28 11:19:33 +0100 | Googulator | (~Googulato@team.broadbit.hu) (Ping timeout: 250 seconds) |
| 2025-11-28 11:22:31 +0100 | bliminse | (~bliminse@user/bliminse) (Ping timeout: 250 seconds) |
| 2025-11-28 11:23:34 +0100 | bliminse | (~bliminse@user/bliminse) bliminse |
| 2025-11-28 11:25:12 +0100 | chromoblob | (~chromoblo@user/chromob1ot1c) (Ping timeout: 244 seconds) |
| 2025-11-28 11:25:55 +0100 | merijn | (~merijn@host-vr.cgnat-g.v4.dfn.nl) (Ping timeout: 240 seconds) |
| 2025-11-28 11:26:03 +0100 | chromoblob | (~chromoblo@user/chromob1ot1c) chromoblob\0 |
| 2025-11-28 11:29:37 +0100 | Sgeo | (~Sgeo@user/sgeo) (Read error: Connection reset by peer) |
| 2025-11-28 11:34:07 +0100 | merijn | (~merijn@host-vr.cgnat-g.v4.dfn.nl) merijn |
| 2025-11-28 11:40:05 +0100 | <lucabtz> | no i just like the idea really, nothing existing in mind |
| 2025-11-28 11:41:20 +0100 | pie_ | (~pie_bnc@user/pie/x-2818909) () |
| 2025-11-28 11:41:31 +0100 | pie_ | (~pie_bnc@user/pie/x-2818909) __ |
| 2025-11-28 11:43:06 +0100 | fp | (~Thunderbi@2001:708:20:1406::1370) fp |
| 2025-11-28 11:45:53 +0100 | qqe | (~qqq@185.54.22.255) |
| 2025-11-28 11:46:07 +0100 | APic | (apic@apic.name) (Ping timeout: 255 seconds) |
| 2025-11-28 11:48:10 +0100 | APic | (apic@apic.name) APic |
| 2025-11-28 11:50:51 +0100 | trickard_ | (~trickard@cpe-91-98-47-163.wireline.com.au) (Read error: Connection reset by peer) |
| 2025-11-28 11:51:05 +0100 | trickard_ | (~trickard@cpe-91-98-47-163.wireline.com.au) |
| 2025-11-28 12:02:23 +0100 | Tuplanolla | (~Tuplanoll@91-152-225-194.elisa-laajakaista.fi) Tuplanolla |
| 2025-11-28 12:06:12 +0100 | <__monty__> | That's OK, I don't mind Haskell maximalism : ) |
| 2025-11-28 12:08:43 +0100 | fp | (~Thunderbi@2001:708:20:1406::1370) (Ping timeout: 264 seconds) |
| 2025-11-28 12:24:16 +0100 | fp | (~Thunderbi@130.233.70.215) fp |
| 2025-11-28 12:27:15 +0100 | <[exa]> | is there some canonical tutorial on implementing a linear-types-capable typesystem? Like there's THIH for typeclasses. |
| 2025-11-28 12:32:35 +0100 | <merijn> | probably not |
| 2025-11-28 12:32:47 +0100 | <merijn> | That's probably "read research papers" territory :) |
| 2025-11-28 12:40:50 +0100 | trickard_ | (~trickard@cpe-91-98-47-163.wireline.com.au) (Read error: Connection reset by peer) |
| 2025-11-28 12:41:03 +0100 | trickard_ | (~trickard@cpe-91-98-47-163.wireline.com.au) |
| 2025-11-28 12:45:00 +0100 | Catty | catties |
| 2025-11-28 12:53:52 +0100 | merijn | (~merijn@host-vr.cgnat-g.v4.dfn.nl) (Ping timeout: 246 seconds) |
| 2025-11-28 12:55:39 +0100 | tromp | (~textual@2001:1c00:3487:1b00:9176:7929:ae5a:d4f6) |
| 2025-11-28 12:56:13 +0100 | merijn | (~merijn@host-vr.cgnat-g.v4.dfn.nl) merijn |
| 2025-11-28 12:57:19 +0100 | <tomsmeding> | [exa]: I have been recommended this thing at some point https://granule-project.github.io/papers/esop22-paper.pdf ; not quite what you're asking for, but perhaps still interesting |
| 2025-11-28 13:08:02 +0100 | <[exa]> | tomsmeding: sounds good, thanks a lot! |
| 2025-11-28 13:16:41 +0100 | chromoblob | (~chromoblo@user/chromob1ot1c) (Read error: Connection reset by peer) |
| 2025-11-28 13:17:06 +0100 | chromoblob | (~chromoblo@user/chromob1ot1c) chromoblob\0 |
| 2025-11-28 13:19:07 +0100 | Googulator | (~Googulato@team.broadbit.hu) |
| 2025-11-28 13:26:49 +0100 | notzmv | (~umar@user/notzmv) notzmv |
| 2025-11-28 13:28:05 +0100 | barrucadu | (~barrucadu@carcosa.barrucadu.co.uk) (Quit: Lost terminal) |
| 2025-11-28 13:30:38 +0100 | xff0x | (~xff0x@ai083123.d.east.v6connect.net) |
| 2025-11-28 13:42:22 +0100 | trickard_ | (~trickard@cpe-91-98-47-163.wireline.com.au) (Read error: Connection reset by peer) |
| 2025-11-28 13:42:36 +0100 | trickard_ | (~trickard@cpe-91-98-47-163.wireline.com.au) |
| 2025-11-28 13:47:00 +0100 | barrucadu | (~barrucadu@carcosa.barrucadu.co.uk) barrucadu |
| 2025-11-28 13:58:04 +0100 | AlexZenon | (~alzenon@85.174.183.41) (Quit: ;-) |
| 2025-11-28 13:58:13 +0100 | AlexNoo | (~AlexNoo@85.174.183.41) (Quit: Leaving) |
| 2025-11-28 14:05:15 +0100 | ljdarj | (~Thunderbi@user/ljdarj) ljdarj |
| 2025-11-28 14:05:38 +0100 | CiaoSen | (~Jura@2a02:8071:64e1:da0:5a47:caff:fe78:33db) (Ping timeout: 260 seconds) |
| 2025-11-28 14:16:26 +0100 | AlexNoo | (~AlexNoo@85.174.183.41) |
| 2025-11-28 14:19:07 +0100 | AlexZenon | (~alzenon@85.174.183.41) |
| 2025-11-28 14:22:36 +0100 | ttybitnik | (~ttybitnik@user/wolper) ttybitnik |
| 2025-11-28 14:27:19 +0100 | CiaoSen | (~Jura@2a02:8071:64e1:da0:5a47:caff:fe78:33db) CiaoSen |
| 2025-11-28 14:29:53 +0100 | ft | (~ft@p508db844.dip0.t-ipconnect.de) ft |
| 2025-11-28 14:37:39 +0100 | trickard_ | trickard |
| 2025-11-28 14:53:11 +0100 | Googulator | (~Googulato@team.broadbit.hu) (Ping timeout: 250 seconds) |
| 2025-11-28 15:00:31 +0100 | gmg | (~user@user/gehmehgeh) (Remote host closed the connection) |
| 2025-11-28 15:01:40 +0100 | gmg | (~user@user/gehmehgeh) gehmehgeh |
| 2025-11-28 15:15:12 +0100 | <yin> | is `cabal run test` supposed to run test-suite? |
| 2025-11-28 15:15:45 +0100 | <merijn> | yin: Yes, but also maybe no :p |
| 2025-11-28 15:16:16 +0100 | trickard | (~trickard@cpe-91-98-47-163.wireline.com.au) (Read error: Connection reset by peer) |
| 2025-11-28 15:16:26 +0100 | <merijn> | I assume you mean `test` is the name of a test-suite there? |
| 2025-11-28 15:16:28 +0100 | trickard_ | (~trickard@cpe-91-98-47-163.wireline.com.au) |
| 2025-11-28 15:17:25 +0100 | <merijn> | There was a weird thing where if you don't configure with --enable-tests it won't build (and thus not run) test suites by default |
| 2025-11-28 15:20:07 +0100 | <yin> | ah yes, `test` is the name of the test-suite. that makes more sense |
| 2025-11-28 15:20:15 +0100 | <yin> | ty |
| 2025-11-28 15:22:26 +0100 | <merijn> | yin: For local development you probably wanna just do "cabal configure --enable-tests" so that it *always* builds tests and then it should "Just Work (TM)" |
| 2025-11-28 15:25:55 +0100 | trickard_ | (~trickard@cpe-91-98-47-163.wireline.com.au) (Ping timeout: 240 seconds) |
| 2025-11-28 15:29:17 +0100 | ljdarj1 | (~Thunderbi@user/ljdarj) ljdarj |
| 2025-11-28 15:30:49 +0100 | ljdarj | (~Thunderbi@user/ljdarj) (Ping timeout: 250 seconds) |
| 2025-11-28 15:30:52 +0100 | ljdarj1 | ljdarj |
| 2025-11-28 15:37:09 +0100 | ouilemur | (~jgmerritt@user/ouilemur) (Quit: WeeChat 4.7.0) |
| 2025-11-28 15:38:52 +0100 | trickard_ | (~trickard@cpe-91-98-47-163.wireline.com.au) |
| 2025-11-28 15:42:29 +0100 | ljdarj | (~Thunderbi@user/ljdarj) (Ping timeout: 260 seconds) |
| 2025-11-28 15:43:57 +0100 | sord937 | (~sord937@gateway/tor-sasl/sord937) (Quit: sord937) |
| 2025-11-28 15:50:50 +0100 | Googulator | (~Googulato@team.broadbit.hu) |
| 2025-11-28 15:53:22 +0100 | mjrosenb | (~mjrosenb@pool-71-190-143-170.nycmny.fios.verizon.net) |
| 2025-11-28 15:55:35 +0100 | Googulator | (~Googulato@team.broadbit.hu) (Ping timeout: 250 seconds) |
| 2025-11-28 15:57:58 +0100 | tromp | (~textual@2001:1c00:3487:1b00:9176:7929:ae5a:d4f6) (Quit: My iMac has gone to sleep. ZZZzzz…) |
| 2025-11-28 15:58:19 +0100 | lucabtz | (~lucabtz@user/lucabtz) (Ping timeout: 246 seconds) |
| 2025-11-28 15:59:07 +0100 | lucabtz | (~lucabtz@user/lucabtz) lucabtz |
| 2025-11-28 16:02:19 +0100 | Nguntal_Geni | (~Nguntal_A@182.8.228.63) |
| 2025-11-28 16:02:46 +0100 | Nguntal_Geni | (~Nguntal_A@182.8.228.63) (Leaving) |
| 2025-11-28 16:05:40 +0100 | ljdarj | (~Thunderbi@user/ljdarj) ljdarj |
| 2025-11-28 16:08:38 +0100 | pabs3 | (~pabs3@user/pabs3) (Read error: Connection reset by peer) |
| 2025-11-28 16:09:37 +0100 | pabs3 | (~pabs3@user/pabs3) pabs3 |
| 2025-11-28 16:16:29 +0100 | Googulator | (~Googulato@team.broadbit.hu) |
| 2025-11-28 16:21:02 +0100 | ljdarj | (~Thunderbi@user/ljdarj) (Quit: ljdarj) |
| 2025-11-28 16:22:14 +0100 | pavonia | (~user@user/siracusa) (Quit: Bye!) |
| 2025-11-28 16:22:42 +0100 | ttybitnik | (~ttybitnik@user/wolper) (Quit: Fading out...) |
| 2025-11-28 16:22:47 +0100 | trickard_ | trickard |
| 2025-11-28 16:26:51 +0100 | biberu | (~biberu@user/biberu) (Read error: Connection reset by peer) |
| 2025-11-28 16:28:27 +0100 | tromp | (~textual@2001:1c00:3487:1b00:9176:7929:ae5a:d4f6) |
| 2025-11-28 16:32:15 +0100 | fp | (~Thunderbi@130.233.70.215) (Ping timeout: 240 seconds) |
| 2025-11-28 16:38:51 +0100 | travisb_ | tabemann |
| 2025-11-28 16:42:58 +0100 | ljdarj | (~Thunderbi@user/ljdarj) ljdarj |
| 2025-11-28 16:58:52 +0100 | merijn | (~merijn@host-vr.cgnat-g.v4.dfn.nl) (Ping timeout: 246 seconds) |
| 2025-11-28 17:00:39 +0100 | humasect | (~humasect@dyn-192-249-132-90.nexicom.net) humasect |
| 2025-11-28 17:02:24 +0100 | milan | (~milan@88.212.61.169) |
| 2025-11-28 17:02:50 +0100 | humasect | (~humasect@dyn-192-249-132-90.nexicom.net) (Remote host closed the connection) |
| 2025-11-28 17:03:20 +0100 | FirefoxDeHuk | (~FirefoxDe@user/FirefoxDeHuk) FirefoxDeHuk |
| 2025-11-28 17:03:54 +0100 | <milan> | Hello guyz.. Long time no see :). I have a question why GHC uses native backend. Wouldn't it be better to only use LLVM? We chould then have ghc on arm? Is my reasoning sound? |
| 2025-11-28 17:04:26 +0100 | humasect | (~humasect@dyn-192-249-132-90.nexicom.net) humasect |
| 2025-11-28 17:08:07 +0100 | <fgarcia> | if i had to guess, supporting llvm has a burden to it maintainers are not intersted in. this is me speculating though |
| 2025-11-28 17:08:35 +0100 | <juri_> | my guess would be vectorization requirements. |
| 2025-11-28 17:09:24 +0100 | merijn | (~merijn@host-vr.cgnat-g.v4.dfn.nl) merijn |
| 2025-11-28 17:10:25 +0100 | <tomsmeding> | milan: you can tell GHC to use LLVM (-fllvm), but you're probably aware of that |
| 2025-11-28 17:10:56 +0100 | <tomsmeding> | common wisdom is that it tends to bring improvement on highly numerical, tight code (because LLVM does auto-vectorisation), and is slightly worse on very haskell-y code |
| 2025-11-28 17:11:18 +0100 | lucabtz | (~lucabtz@user/lucabtz) (Remote host closed the connection) |
| 2025-11-28 17:11:18 +0100 | <milan> | tomsmeding: Yeah, so both can be used and both needs to be maintained? Which is more work to just support LLVM? |
| 2025-11-28 17:11:27 +0100 | <milan> | Ah.. so tradeof |
| 2025-11-28 17:11:34 +0100 | <tomsmeding> | personally I would be sad if GHC went LLVM-only because having a monoculture of anything is bad for progress |
| 2025-11-28 17:11:40 +0100 | <tomsmeding> | everything else is LLVM already anyway |
| 2025-11-28 17:12:09 +0100 | <tomsmeding> | also doesn't GHC support ARM these days? |
| 2025-11-28 17:12:21 +0100 | <milan> | Does it? |
| 2025-11-28 17:12:31 +0100 | <tomsmeding> | the GHC native code generator works perfectly fine at least on Apple Silicon |
| 2025-11-28 17:13:00 +0100 | ljdarj | (~Thunderbi@user/ljdarj) (Ping timeout: 256 seconds) |
| 2025-11-28 17:13:09 +0100 | <tomsmeding> | this is an innovation of the 9.0- series though |
| 2025-11-28 17:13:12 +0100 | <milan> | But I have a dream to use it in android phones. |
| 2025-11-28 17:13:13 +0100 | Frostillicus | (~Frostilli@pool-71-174-119-69.bstnma.fios.verizon.net) (Ping timeout: 264 seconds) |
| 2025-11-28 17:13:24 +0100 | <tomsmeding> | have you tried it? |
| 2025-11-28 17:13:30 +0100 | <milan> | And maybe rpi.. |
| 2025-11-28 17:13:50 +0100 | <milan> | tomsmeding: Not yet...and this might be outdated view that we dont have ghc on arm. |
| 2025-11-28 17:14:09 +0100 | <tomsmeding> | yeah in the 8.* series, you needed LLVM to make things work on ARM |
| 2025-11-28 17:14:20 +0100 | <tomsmeding> | nowadays at least some ARM targets are supported natively |
| 2025-11-28 17:14:41 +0100 | Frostillicus | (~Frostilli@pool-71-174-119-69.bstnma.fios.verizon.net) |
| 2025-11-28 17:15:17 +0100 | merijn | (~merijn@host-vr.cgnat-g.v4.dfn.nl) (Ping timeout: 265 seconds) |
| 2025-11-28 17:15:24 +0100 | FirefoxDeHuk82 | (~FirefoxDe@user/FirefoxDeHuk) FirefoxDeHuk |
| 2025-11-28 17:15:27 +0100 | <milan> | THank you.. I will look some more info online. |
| 2025-11-28 17:15:49 +0100 | FirefoxDeHuk | (~FirefoxDe@user/FirefoxDeHuk) (Quit: Client closed) |
| 2025-11-28 17:16:15 +0100 | FirefoxDeHuk82 | (~FirefoxDe@user/FirefoxDeHuk) (Client Quit) |
| 2025-11-28 17:16:28 +0100 | <tomsmeding> | milan: ghcup has versions for aarch64-deb10-linux and aarch64-apple-darwin |
| 2025-11-28 17:16:40 +0100 | <fgarcia> | this is interesting to me. i think there might be arm builds https://ports.macports.org/port/ghc/details/ . some things on the page are 'Version: 9.12.2' and 'âś“ Tahoe (arm64)' which seems quite recent |
| 2025-11-28 17:17:02 +0100 | <tomsmeding> | milan: so it's possible that if you just try using ghcup, things will just work on your target |
| 2025-11-28 17:17:19 +0100 | <tomsmeding> | fgarcia: on apple silicon I know for sure that using ghcup just works |
| 2025-11-28 17:17:28 +0100 | <tomsmeding> | some of my colleagues do that |
| 2025-11-28 17:18:16 +0100 | <fgarcia> | actually, come to think of it. i use android with termux and my phone is arm. i have been able to run some code on that and even though it is .deb the packages are newer than what some distros have! |
| 2025-11-28 17:19:01 +0100 | <tomsmeding> | right, I think the ghcup bindists don't work in termux (possibly path reasons), but yes the termux repos have a ghc |
| 2025-11-28 17:24:32 +0100 | <milan> | Hmm... now I found arm build for linux... so I expect it to "work". Why I thought otherwise? Maybe I was lost by reading old articles about arm support from 2014 :D |
| 2025-11-28 17:24:57 +0100 | CiaoSen | (~Jura@2a02:8071:64e1:da0:5a47:caff:fe78:33db) (Ping timeout: 265 seconds) |
| 2025-11-28 17:26:45 +0100 | merijn | (~merijn@host-vr.cgnat-g.v4.dfn.nl) merijn |
| 2025-11-28 17:28:17 +0100 | jmcantrell | (~weechat@user/jmcantrell) jmcantrell |
| 2025-11-28 17:28:54 +0100 | ttybitnik | (~ttybitnik@user/wolper) ttybitnik |
| 2025-11-28 17:31:35 +0100 | merijn | (~merijn@host-vr.cgnat-g.v4.dfn.nl) (Ping timeout: 240 seconds) |
| 2025-11-28 17:33:44 +0100 | machinedgod | (~machinedg@d75-159-126-101.abhsia.telus.net) machinedgod |
| 2025-11-28 17:35:14 +0100 | L29Ah | (~L29Ah@wikipedia/L29Ah) (Ping timeout: 244 seconds) |
| 2025-11-28 17:35:43 +0100 | Googulator63 | (~Googulato@team.broadbit.hu) |
| 2025-11-28 17:39:09 +0100 | Googulator | (~Googulato@team.broadbit.hu) (Ping timeout: 250 seconds) |
| 2025-11-28 17:40:13 +0100 | Frostillicus | (~Frostilli@pool-71-174-119-69.bstnma.fios.verizon.net) (Ping timeout: 264 seconds) |
| 2025-11-28 17:41:49 +0100 | Sgeo | (~Sgeo@user/sgeo) Sgeo |
| 2025-11-28 17:42:33 +0100 | merijn | (~merijn@host-vr.cgnat-g.v4.dfn.nl) merijn |
| 2025-11-28 17:47:28 +0100 | Frostillicus | (~Frostilli@pool-71-174-119-69.bstnma.fios.verizon.net) |
| 2025-11-28 17:47:32 +0100 | merijn | (~merijn@host-vr.cgnat-g.v4.dfn.nl) (Ping timeout: 244 seconds) |
| 2025-11-28 17:49:38 +0100 | Googulator63 | Googulator |
| 2025-11-28 17:52:49 +0100 | Frostillicus | (~Frostilli@pool-71-174-119-69.bstnma.fios.verizon.net) (Ping timeout: 264 seconds) |
| 2025-11-28 17:53:11 +0100 | ouilemur | (~jgmerritt@user/ouilemur) ouilemur |
| 2025-11-28 17:58:20 +0100 | merijn | (~merijn@host-vr.cgnat-g.v4.dfn.nl) merijn |
| 2025-11-28 18:02:33 +0100 | Googulator | (~Googulato@team.broadbit.hu) (Ping timeout: 250 seconds) |
| 2025-11-28 18:03:15 +0100 | merijn | (~merijn@host-vr.cgnat-g.v4.dfn.nl) (Ping timeout: 240 seconds) |
| 2025-11-28 18:04:45 +0100 | humasect | (~humasect@dyn-192-249-132-90.nexicom.net) (Remote host closed the connection) |
| 2025-11-28 18:04:48 +0100 | FirefoxDeHuk | (~FirefoxDe@user/FirefoxDeHuk) FirefoxDeHuk |
| 2025-11-28 18:06:36 +0100 | mniip | (mniip@libera/staff/mniip) (Changing host) |
| 2025-11-28 18:06:36 +0100 | mniip | (mniip@libera/staff-emeritus/mniip) mniip |
| 2025-11-28 18:07:34 +0100 | ljdarj | (~Thunderbi@user/ljdarj) ljdarj |
| 2025-11-28 18:12:26 +0100 | FirefoxDeHuk | (~FirefoxDe@user/FirefoxDeHuk) (Quit: Client closed) |
| 2025-11-28 18:14:22 +0100 | merijn | (~merijn@host-vr.cgnat-g.v4.dfn.nl) merijn |
| 2025-11-28 18:18:55 +0100 | merijn | (~merijn@host-vr.cgnat-g.v4.dfn.nl) (Ping timeout: 240 seconds) |
| 2025-11-28 18:19:42 +0100 | bgamari_ | (~bgamari@64.223.158.105) (Quit: ZNC 1.8.2 - https://znc.in) |
| 2025-11-28 18:21:12 +0100 | bgamari | (~bgamari@64.223.170.198) |
| 2025-11-28 18:27:14 +0100 | ljdarj | (~Thunderbi@user/ljdarj) (Ping timeout: 256 seconds) |
| 2025-11-28 18:30:12 +0100 | merijn | (~merijn@host-vr.cgnat-g.v4.dfn.nl) merijn |
| 2025-11-28 18:31:07 +0100 | L29Ah | (~L29Ah@wikipedia/L29Ah) L29Ah |
| 2025-11-28 18:32:09 +0100 | ljdarj | (~Thunderbi@user/ljdarj) ljdarj |
| 2025-11-28 18:34:43 +0100 | chele | (~chele@user/chele) (Remote host closed the connection) |
| 2025-11-28 18:36:10 +0100 | vardhan | (~vardhan@122.172.83.239) (Ping timeout: 246 seconds) |
| 2025-11-28 18:40:12 +0100 | humasect | (~humasect@dyn-192-249-132-90.nexicom.net) humasect |
| 2025-11-28 18:41:35 +0100 | jmcantrell | (~weechat@user/jmcantrell) (Ping timeout: 240 seconds) |
| 2025-11-28 18:41:49 +0100 | tv | (~tv@user/tv) (Read error: Connection reset by peer) |
| 2025-11-28 18:44:16 +0100 | sindu | (~sindu@2.148.32.207.tmi.telenormobil.no) |
| 2025-11-28 18:47:25 +0100 | bggd | (~bgg@2a01:e0a:fd5:f510:81e5:516f:14c0:9e92) |
| 2025-11-28 18:48:46 +0100 | jmcantrell | (~weechat@user/jmcantrell) jmcantrell |
| 2025-11-28 18:53:15 +0100 | jmcantrell | (~weechat@user/jmcantrell) (Ping timeout: 245 seconds) |
| 2025-11-28 19:03:37 +0100 | ljdarj | (~Thunderbi@user/ljdarj) (Ping timeout: 264 seconds) |
| 2025-11-28 19:12:51 +0100 | trickard | (~trickard@cpe-91-98-47-163.wireline.com.au) (Read error: Connection reset by peer) |
| 2025-11-28 19:13:05 +0100 | trickard_ | (~trickard@cpe-91-98-47-163.wireline.com.au) |
| 2025-11-28 19:17:40 +0100 | tromp | (~textual@2001:1c00:3487:1b00:9176:7929:ae5a:d4f6) (Quit: My iMac has gone to sleep. ZZZzzz…) |
| 2025-11-28 19:19:19 +0100 | ljdarj | (~Thunderbi@user/ljdarj) ljdarj |
| 2025-11-28 19:23:08 +0100 | <milan> | Guyz! I have yet another question! I know I can read docs but bothering you with stupid quesitons is so much more fun. So has anybody tried ReactJS and Miso? How do they compare. React is pushing "pure functions" for composing GUI which haskell might employ for GUI too right? Is this what MISO does? |
| 2025-11-28 19:33:58 +0100 | <EvanR> | haskell-miso.org claims that it is "isomorphic" so I'm finding it hard not to check out |
| 2025-11-28 19:35:03 +0100 | merijn | (~merijn@host-vr.cgnat-g.v4.dfn.nl) (Ping timeout: 252 seconds) |
| 2025-11-28 19:40:29 +0100 | trickard_ | (~trickard@cpe-91-98-47-163.wireline.com.au) (Read error: Connection reset by peer) |
| 2025-11-28 19:40:43 +0100 | trickard_ | (~trickard@cpe-91-98-47-163.wireline.com.au) |
| 2025-11-28 19:46:37 +0100 | merijn | (~merijn@host-vr.cgnat-g.v4.dfn.nl) merijn |
| 2025-11-28 19:48:19 +0100 | <milan> | EvanR: This isomorphism looks to me like next.js hydratation. Like prerender on server send prerenderd html then run rest on browser. I am more interested in "Function components" and composability as is in ReactJS. |
| 2025-11-28 19:49:34 +0100 | ZLima12_ | (~zlima12@user/meow/ZLima12) ZLima12 |
| 2025-11-28 19:49:49 +0100 | ZLima12 | (~zlima12@user/meow/ZLima12) (Ping timeout: 260 seconds) |
| 2025-11-28 19:49:57 +0100 | <milan> | What does not make sense for me is that ReactJS claims (computing new state of components and drawing to screen is pure function) In haskell however even printing to terminal is in IOMonad. How could displaying something be pure and impure at once? I bet ReactJS is lying here. |
| 2025-11-28 19:50:09 +0100 | <EvanR> | hydration? |
| 2025-11-28 19:52:05 +0100 | <EvanR> | an HTML UI component can be a pure function of its source data |
| 2025-11-28 19:52:16 +0100 | <milan> | EvanR: Yes look here https://nextjs.org/docs/pages/building-your-application/rendering/server-side-rendering |
| 2025-11-28 19:52:23 +0100 | <EvanR> | I pointed this out long ago while doing PHP |
| 2025-11-28 19:52:58 +0100 | <EvanR> | however you write the code, assuming you don't cause side effects in the HTML generating code, it's implementing a pure function |
| 2025-11-28 19:53:17 +0100 | <milan> | Yes computing state is pure I got it... but then You need to render right? And this is pure or not? |
| 2025-11-28 19:53:56 +0100 | <EvanR> | I'm not sure I understand the specifics of your question, what is "render" here |
| 2025-11-28 19:54:05 +0100 | <EvanR> | getting on the end user's screen? |
| 2025-11-28 19:54:20 +0100 | <milan> | Yes |
| 2025-11-28 19:54:41 +0100 | <EvanR> | well the client side engine does at some level .innerHTML = yourhtml |
| 2025-11-28 19:54:52 +0100 | <geekosaur> | you're just constructing pure HTML. the framework and the browser do the IO part |
| 2025-11-28 19:55:06 +0100 | <geekosaur> | (or JS) |
| 2025-11-28 19:55:15 +0100 | <EvanR> | your code doesn't have to deal with that |
| 2025-11-28 19:55:29 +0100 | <EvanR> | just like the repl automatically shows you the answer to an evaluation, you don't have to "print" it |
| 2025-11-28 19:55:40 +0100 | <geekosaur> | kinda like how IO can be done in a pure language by, in effect, purely constructing an impure program for the RTS to run impurely |
| 2025-11-28 19:55:56 +0100 | <milan> | But this "painting" showing cannot be possibly pure ever right? |
| 2025-11-28 19:56:13 +0100 | <geekosaur> | it's not done by your code, it's done by the browser |
| 2025-11-28 19:56:16 +0100 | <EvanR> | the word "pure" keeps growing more legs, people applying it into any situation ever |
| 2025-11-28 19:56:22 +0100 | <geekosaur> | you purely construct code the browser runs impurely |
| 2025-11-28 19:56:29 +0100 | <milan> | Eh |
| 2025-11-28 19:56:33 +0100 | <EvanR> | a pure function is a function |
| 2025-11-28 19:56:43 +0100 | <milan> | That has no side effects right? |
| 2025-11-28 19:56:45 +0100 | <EvanR> | a client side framework isn't a function |
| 2025-11-28 19:56:57 +0100 | <EvanR> | so it's not necessarily meaning for you to call it pure or not |
| 2025-11-28 19:57:00 +0100 | <EvanR> | similar to "pure data" |
| 2025-11-28 19:57:10 +0100 | <EvanR> | you'd have to specify what that even means, since data isn't a function |
| 2025-11-28 19:57:24 +0100 | <EvanR> | *meaningful |
| 2025-11-28 19:58:26 +0100 | <EvanR> | think of a browser window as the final UI screen observable to the user, it's not a function, it's a thing you send content to be displayed |
| 2025-11-28 19:58:32 +0100 | <EvanR> | like a terminal |
| 2025-11-28 19:59:01 +0100 | <milan> | Agree |
| 2025-11-28 19:59:33 +0100 | <EvanR> | if that's all it is then it's possible to get a lot done using only pure functions |
| 2025-11-28 19:59:39 +0100 | <EvanR> | and data |
| 2025-11-28 19:59:52 +0100 | <EvanR> | something behind the scenes just hooks it up |
| 2025-11-28 20:02:41 +0100 | <milan> | Yes, but... I understand why reading from (external object) is not pure.. You can always read something else so now your function can return different things. But why writing to external object is also considered impure? Wheter it succeds or not can't affect my pure program right? |
| 2025-11-28 20:03:08 +0100 | infinity0 | (~infinity0@pwned.gg) (Quit: WeeChat 4.6.3) |
| 2025-11-28 20:03:11 +0100 | <milan> | So simply printing to console should not be considered "impure" and thus in IO monad? |
| 2025-11-28 20:03:24 +0100 | <EvanR> | that is why you can type purely function programs in the repl and see the result |
| 2025-11-28 20:03:41 +0100 | <EvanR> | easily |
| 2025-11-28 20:03:52 +0100 | <EvanR> | the tower of machinery to get that on the screen has no effect on the program |
| 2025-11-28 20:04:12 +0100 | <EvanR> | which is good because there's a lot |
| 2025-11-28 20:04:43 +0100 | <milan> | Yet print :: Show a => a -> IO() ? |
| 2025-11-28 20:04:51 +0100 | <milan> | EvanR: Agree |
| 2025-11-28 20:05:05 +0100 | <EvanR> | print has that type, why is that "yet" |
| 2025-11-28 20:05:19 +0100 | <EvanR> | (note you don't have to type print to see the result in the repl) |
| 2025-11-28 20:05:51 +0100 | <EvanR> | also have to decorum and put a space between IO and () |
| 2025-11-28 20:06:03 +0100 | <EvanR> | have some* xD |
| 2025-11-28 20:06:23 +0100 | <milan> | :D My apologies |
| 2025-11-28 20:06:49 +0100 | ljdarj | (~Thunderbi@user/ljdarj) (Ping timeout: 246 seconds) |
| 2025-11-28 20:06:53 +0100 | ljdarj1 | (~Thunderbi@user/ljdarj) ljdarj |
| 2025-11-28 20:06:57 +0100 | tzh | (~tzh@c-76-115-131-146.hsd1.or.comcast.net) |
| 2025-11-28 20:07:13 +0100 | <milan> | Why print does not have type a -> Int? And always produce number 1? Why is it IO? |
| 2025-11-28 20:07:36 +0100 | <EvanR> | you're asking why the print function doesn't return a number |
| 2025-11-28 20:07:48 +0100 | <EvanR> | i.e. print 3 yields the number 3 or something? |
| 2025-11-28 20:07:54 +0100 | <milan> | No I am asking why it returns Monad if it does not have to |
| 2025-11-28 20:08:10 +0100 | <milan> | No it always yields 1 |
| 2025-11-28 20:08:27 +0100 | <EvanR> | what behavior do you want the function to have again |
| 2025-11-28 20:08:40 +0100 | <EvanR> | while being a pure function |
| 2025-11-28 20:08:48 +0100 | <EvanR> | always returning 1 would be const 1 |
| 2025-11-28 20:09:07 +0100 | <EvanR> | :t const 1 |
| 2025-11-28 20:09:08 +0100 | <lambdabot> | Num a => b -> a |
| 2025-11-28 20:09:12 +0100 | ljdarj1 | ljdarj |
| 2025-11-28 20:10:03 +0100 | <EvanR> | note it wouldn't be a very good print function, for one thing you don't know the input has Show support |
| 2025-11-28 20:10:55 +0100 | <milan> | What about myPrint :: Show a => a -> Int ? |
| 2025-11-28 20:11:09 +0100 | <mniip> | referential transparency says that `(print 3, print 3)` and `let x = print 3 in (x, x)` must do the same thing, but you'd expect the first one to output twice and the second one only once |
| 2025-11-28 20:11:27 +0100 | <milan> | mniip: hmm... |
| 2025-11-28 20:11:42 +0100 | <EvanR> | if myPrint is a pure function, then it means you can't observe any side effects |
| 2025-11-28 20:11:47 +0100 | <mniip> | this is why pure functions cannot perform side effects such as output something to the console |
| 2025-11-28 20:12:11 +0100 | <EvanR> | so it's not going to be great at printing anything |
| 2025-11-28 20:12:25 +0100 | <milan> | Had we dropped our expectation on how and if something must appear in console? |
| 2025-11-28 20:12:37 +0100 | <milan> | Well |
| 2025-11-28 20:12:44 +0100 | <milan> | Then all programs would be unusable |
| 2025-11-28 20:12:50 +0100 | <EvanR> | not necessarily |
| 2025-11-28 20:13:05 +0100 | <mniip> | if you're looking for something to use while debugging pure code, there is such a tool |
| 2025-11-28 20:13:07 +0100 | <EvanR> | your calculator is useful despite not having any I/O commands |
| 2025-11-28 20:13:21 +0100 | <milan> | It has it has display |
| 2025-11-28 20:13:25 +0100 | <milan> | same as console |
| 2025-11-28 20:13:39 +0100 | <EvanR> | I figured you were talking about the programming language though, not the hardware |
| 2025-11-28 20:13:40 +0100 | <milan> | or file that we can write to.. or socket we can write to.. |
| 2025-11-28 20:13:41 +0100 | tromp | (~textual@2001:1c00:3487:1b00:9176:7929:ae5a:d4f6) |
| 2025-11-28 20:14:15 +0100 | <EvanR> | haskell is a purely functional programming language, not purely functional hardware |
| 2025-11-28 20:14:34 +0100 | <milan> | Some external object that might or might not correctly change state because we asked it to... it is same for display in calculator, and same for file in disk. |
| 2025-11-28 20:14:47 +0100 | <EvanR> | that's just the supporting infrastructure for the runtime |
| 2025-11-28 20:15:10 +0100 | <EvanR> | as the program runs, the I/O commands it computes are executed |
| 2025-11-28 20:15:18 +0100 | <EvanR> | main :: IO () |
| 2025-11-28 20:15:43 +0100 | <EvanR> | e.g. main = print 3 >> print 3 :: IO () |
| 2025-11-28 20:15:50 +0100 | <EvanR> | would print twice |
| 2025-11-28 20:15:53 +0100 | <milan> | Yep |
| 2025-11-28 20:16:00 +0100 | <EvanR> | but the program itself just computes data |
| 2025-11-28 20:16:20 +0100 | <EvanR> | you could store the IO () in a data structure or mutable variable for later |
| 2025-11-28 20:16:28 +0100 | <EvanR> | or pass it as an argument |
| 2025-11-28 20:16:41 +0100 | <EvanR> | :t bracket |
| 2025-11-28 20:16:42 +0100 | <lambdabot> | IO a -> (a -> IO b) -> (a -> IO c) -> IO c |
| 2025-11-28 20:16:53 +0100 | ChaiTRex | (~ChaiTRex@user/chaitrex) (Remote host closed the connection) |
| 2025-11-28 20:17:00 +0100 | <EvanR> | in this way you can build up a big IO from smaller ones |
| 2025-11-28 20:17:04 +0100 | <EvanR> | algebraically |
| 2025-11-28 20:17:22 +0100 | ChaiTRex | (~ChaiTRex@user/chaitrex) ChaiTRex |
| 2025-11-28 20:17:32 +0100 | <milan> | I agree |
| 2025-11-28 20:18:04 +0100 | <EvanR> | just evaluating print 3 by itself wouldn't necessarily do the IO i.e. in (print 3, print 3), so it's a big distinction to make |
| 2025-11-28 20:18:22 +0100 | acidjnk | (~acidjnk@p200300d6e7171911dda60d32ed7e3ae9.dip0.t-ipconnect.de) (Ping timeout: 246 seconds) |
| 2025-11-28 20:18:57 +0100 | <milan> | hmm |
| 2025-11-28 20:19:42 +0100 | <EvanR> | in most language the evaluation of a function call is intertwined with executing effects, which is why you have to wrap everything with a lambda wrapper to delay the effects |
| 2025-11-28 20:19:59 +0100 | <EvanR> | so they don't happen until someone calls the function |
| 2025-11-28 20:20:06 +0100 | <EvanR> | in haskell they're two different things entirely |
| 2025-11-28 20:21:23 +0100 | <milan> | I get that they are encapsulated in IO... |
| 2025-11-28 20:22:02 +0100 | <EvanR> | yeah so, functions are over here and are like this, and I/O commands are over here |
| 2025-11-28 20:22:21 +0100 | <EvanR> | orthogonal, but can be combined easily |
| 2025-11-28 20:22:22 +0100 | <milan> | And as runtime is evaluating big IO composed of smaler IOs it always executes action there. |
| 2025-11-28 20:22:43 +0100 | <mniip> | the bonus is that IO actions are values and you can manipulate them |
| 2025-11-28 20:22:43 +0100 | <EvanR> | yes! |
| 2025-11-28 20:23:16 +0100 | <mniip> | let x = print 3 in x >> x |
| 2025-11-28 20:23:23 +0100 | <mniip> | hell you can put them in a list: sequence_ [x, x, x] |
| 2025-11-28 20:24:35 +0100 | <milan> | You can put functions to list too right? |
| 2025-11-28 20:24:48 +0100 | <EvanR> | :t [id, id, id] |
| 2025-11-28 20:24:49 +0100 | <milan> | Could ghc runtime execute print on every function it evaluates? |
| 2025-11-28 20:24:49 +0100 | <lambdabot> | [a -> a] |
| 2025-11-28 20:25:09 +0100 | <mniip> | yea but if you said `let x = print 3 in [x, x, x]` |
| 2025-11-28 20:25:12 +0100 | <mniip> | that would only print once |
| 2025-11-28 20:25:16 +0100 | <milan> | Yeah |
| 2025-11-28 20:25:26 +0100 | <milan> | Okey I think I can see your point. |
| 2025-11-28 20:25:48 +0100 | <EvanR> | you want it to print the function itself? |
| 2025-11-28 20:25:51 +0100 | <EvanR> | print id |
| 2025-11-28 20:26:25 +0100 | notzmv | (~umar@user/notzmv) (Ping timeout: 264 seconds) |