Logs on 2025-12-08 (liberachat/#haskell)
| 00:04:02 | → | merijn joins (~merijn@host-vr.cgnat-g.v4.dfn.nl) |
| 00:09:01 | × | merijn quits (~merijn@host-vr.cgnat-g.v4.dfn.nl) (Ping timeout: 264 seconds) |
| 00:18:10 | × | tremon quits (~tremon@83.80.159.219) (Quit: getting boxed in) |
| 00:19:50 | → | merijn joins (~merijn@host-vr.cgnat-g.v4.dfn.nl) |
| 00:22:26 | → | elarks joins (~yerri@user/yerrii) |
| 00:24:31 | × | merijn quits (~merijn@host-vr.cgnat-g.v4.dfn.nl) (Ping timeout: 240 seconds) |
| 00:35:37 | → | merijn joins (~merijn@host-vr.cgnat-g.v4.dfn.nl) |
| 00:35:38 | → | Googulator26 joins (~Googulato@2a01-036d-0106-479c-a13d-10f6-324f-ace8.pool6.digikabel.hu) |
| 00:35:40 | × | Googulator49 quits (~Googulato@2a01-036d-0106-479c-a13d-10f6-324f-ace8.pool6.digikabel.hu) (Quit: Client closed) |
| 00:40:15 | × | merijn quits (~merijn@host-vr.cgnat-g.v4.dfn.nl) (Ping timeout: 240 seconds) |
| 00:45:25 | × | xff0x quits (~xff0x@2405:6580:b080:900:ad3f:f420:2d20:b3b4) (Ping timeout: 250 seconds) |
| 00:51:24 | → | merijn joins (~merijn@host-vr.cgnat-g.v4.dfn.nl) |
| 00:51:37 | × | bitdex quits (~bitdex@gateway/tor-sasl/bitdex) (Ping timeout: 252 seconds) |
| 00:56:38 | × | merijn quits (~merijn@host-vr.cgnat-g.v4.dfn.nl) (Ping timeout: 260 seconds) |
| 00:56:56 | × | img quits (~img@user/img) (Quit: ZNC 1.10.1 - https://znc.in) |
| 00:58:09 | → | img joins (~img@user/img) |
| 00:58:59 | → | jmcantrell_ joins (~weechat@user/jmcantrell) |
| 00:59:36 | trickard_ | is now known as trickard |
| 01:02:41 | × | trickard quits (~trickard@cpe-85-98-47-163.wireline.com.au) (Read error: Connection reset by peer) |
| 01:02:55 | → | trickard joins (~trickard@cpe-85-98-47-163.wireline.com.au) |
| 01:05:43 | → | Googulator9 joins (~Googulato@2a01-036d-0106-479c-a13d-10f6-324f-ace8.pool6.digikabel.hu) |
| 01:06:14 | × | Googulator26 quits (~Googulato@2a01-036d-0106-479c-a13d-10f6-324f-ace8.pool6.digikabel.hu) (Quit: Client closed) |
| 01:07:11 | → | merijn joins (~merijn@host-vr.cgnat-g.v4.dfn.nl) |
| 01:12:37 | × | merijn quits (~merijn@host-vr.cgnat-g.v4.dfn.nl) (Ping timeout: 264 seconds) |
| 01:15:17 | → | bitdex joins (~bitdex@gateway/tor-sasl/bitdex) |
| 01:15:37 | × | jmcantrell_ quits (~weechat@user/jmcantrell) (Ping timeout: 264 seconds) |
| 01:16:25 | × | ell quits (~ellie@user/ellie) (Remote host closed the connection) |
| 01:22:59 | → | merijn joins (~merijn@host-vr.cgnat-g.v4.dfn.nl) |
| 01:24:13 | × | jreicher quits (~user@user/jreicher) (Read error: Connection reset by peer) |
| 01:25:16 | → | jreicher joins (~user@user/jreicher) |
| 01:27:35 | × | merijn quits (~merijn@host-vr.cgnat-g.v4.dfn.nl) (Ping timeout: 240 seconds) |
| 01:34:54 | × | baturhan quits (~baturhan@user/baturhan) (Quit: Client closed) |
| 01:37:53 | → | omidmash9 joins (~omidmash@user/omidmash) |
| 01:38:46 | → | merijn joins (~merijn@host-vr.cgnat-g.v4.dfn.nl) |
| 01:39:52 | × | omidmash quits (~omidmash@user/omidmash) (Ping timeout: 244 seconds) |
| 01:39:52 | omidmash9 | is now known as omidmash |
| 01:40:57 | × | ljdarj quits (~Thunderbi@user/ljdarj) (Quit: ljdarj) |
| 01:41:48 | → | xff0x joins (~xff0x@fsb6a9491c.tkyc517.ap.nuro.jp) |
| 01:43:49 | × | merijn quits (~merijn@host-vr.cgnat-g.v4.dfn.nl) (Ping timeout: 264 seconds) |
| 01:49:55 | × | bitdex quits (~bitdex@gateway/tor-sasl/bitdex) (Ping timeout: 252 seconds) |
| 01:52:15 | → | bitdex joins (~bitdex@gateway/tor-sasl/bitdex) |
| 01:54:33 | → | merijn joins (~merijn@host-vr.cgnat-g.v4.dfn.nl) |
| 01:56:02 | → | thalber joins (~thalber@user/kerosenewife) |
| 02:00:01 | × | merijn quits (~merijn@host-vr.cgnat-g.v4.dfn.nl) (Ping timeout: 264 seconds) |
| 02:04:54 | × | sindu quits (~sindu@2.148.32.207.tmi.telenormobil.no) (Ping timeout: 260 seconds) |
| 02:06:01 | → | Googulator18 joins (~Googulato@2a01-036d-0106-479c-a13d-10f6-324f-ace8.pool6.digikabel.hu) |
| 02:06:17 | × | Googulator9 quits (~Googulato@2a01-036d-0106-479c-a13d-10f6-324f-ace8.pool6.digikabel.hu) (Quit: Client closed) |
| 02:10:22 | → | merijn joins (~merijn@host-vr.cgnat-g.v4.dfn.nl) |
| 02:16:55 | × | merijn quits (~merijn@host-vr.cgnat-g.v4.dfn.nl) (Ping timeout: 240 seconds) |
| 02:17:04 | → | trickard___ joins (~trickard@cpe-83-98-47-163.wireline.com.au) |
| 02:18:13 | × | weary-traveler quits (~user@user/user363627) (Quit: Konversation terminated!) |
| 02:18:30 | → | weary-traveler joins (~user@user/user363627) |
| 02:18:54 | × | trickard quits (~trickard@cpe-85-98-47-163.wireline.com.au) (Ping timeout: 260 seconds) |
| 02:20:17 | → | jmcantrell_ joins (~weechat@user/jmcantrell) |
| 02:20:17 | jmcantrell_ | is now known as jmcantrell |
| 02:27:09 | × | Tuplanolla quits (~Tuplanoll@91-152-225-194.elisa-laajakaista.fi) (Ping timeout: 252 seconds) |
| 02:28:23 | → | merijn joins (~merijn@host-vr.cgnat-g.v4.dfn.nl) |
| 02:29:59 | × | weary-traveler quits (~user@user/user363627) (Read error: Connection reset by peer) |
| 02:30:27 | → | weary-traveler joins (~user@user/user363627) |
| 02:30:38 | <haskellbridge> | <Zemyla> Is there an ST-like monad that's a MonadPlus, where assignments done in one alternative branch don't propagate to others? |
| 02:32:16 | <geekosaur> | I would expect that to be difficult without having each be its own separate ST |
| 02:32:40 | <Leary> | Zemyla: That's an interesting idea. `STM` already has such semantics, so you could write it as a layer on top. |
| 02:32:55 | × | FANTOM quits (~fantom@212.228.181.156) (Ping timeout: 240 seconds) |
| 02:33:37 | × | merijn quits (~merijn@host-vr.cgnat-g.v4.dfn.nl) (Ping timeout: 264 seconds) |
| 02:34:11 | <haskellbridge> | <Zemyla> The other Alternative is to make it be like StateT (IntMap Any) [] and have a bunch of unsafeCoerces under the hood. |
| 02:35:36 | → | Googulator66 joins (~Googulato@2a01-036d-0106-479c-a13d-10f6-324f-ace8.pool6.digikabel.hu) |
| 02:36:11 | × | Googulator18 quits (~Googulato@2a01-036d-0106-479c-a13d-10f6-324f-ace8.pool6.digikabel.hu) (Quit: Client closed) |
| 02:38:30 | × | trickard___ quits (~trickard@cpe-83-98-47-163.wireline.com.au) (Read error: Connection reset by peer) |
| 02:38:44 | → | trickard_ joins (~trickard@cpe-83-98-47-163.wireline.com.au) |
| 02:39:22 | × | forell quits (~forell@user/forell) (Quit: ZNC - https://znc.in) |
| 02:40:17 | → | forell joins (~forell@user/forell) |
| 02:44:11 | → | merijn joins (~merijn@host-vr.cgnat-g.v4.dfn.nl) |
| 02:46:09 | × | Sgeo quits (~Sgeo@user/sgeo) (Read error: Connection reset by peer) |
| 02:48:55 | × | merijn quits (~merijn@host-vr.cgnat-g.v4.dfn.nl) (Ping timeout: 240 seconds) |
| 02:57:20 | → | Sgeo joins (~Sgeo@user/sgeo) |
| 02:59:52 | → | merijn joins (~merijn@host-vr.cgnat-g.v4.dfn.nl) |
| 03:04:03 | <c_wraith> | There's a secret downside to that approach.. you don't get garbage collection. |
| 03:04:59 | × | merijn quits (~merijn@host-vr.cgnat-g.v4.dfn.nl) (Ping timeout: 260 seconds) |
| 03:05:38 | × | Googulator66 quits (~Googulato@2a01-036d-0106-479c-a13d-10f6-324f-ace8.pool6.digikabel.hu) (Quit: Client closed) |
| 03:05:42 | → | Googulator23 joins (~Googulato@2a01-036d-0106-479c-a13d-10f6-324f-ace8.pool6.digikabel.hu) |
| 03:15:36 | → | merijn joins (~merijn@host-vr.cgnat-g.v4.dfn.nl) |
| 03:20:07 | × | merijn quits (~merijn@host-vr.cgnat-g.v4.dfn.nl) (Ping timeout: 240 seconds) |
| 03:31:23 | → | merijn joins (~merijn@host-vr.cgnat-g.v4.dfn.nl) |
| 03:36:37 | × | merijn quits (~merijn@host-vr.cgnat-g.v4.dfn.nl) (Ping timeout: 264 seconds) |
| 03:38:08 | → | iqubic joins (~sophia@2601:602:9203:1660:767a:e6b6:2f4b:e37e) |
| 03:38:40 | → | annamalai joins (~annamalai@2409:4042:d37:b495::9e0a:ba05) |
| 03:47:25 | → | merijn joins (~merijn@host-vr.cgnat-g.v4.dfn.nl) |
| 03:48:48 | ← | thalber parts (~thalber@user/kerosenewife) (WeeChat 4.7.1) |
| 03:53:43 | × | merijn quits (~merijn@host-vr.cgnat-g.v4.dfn.nl) (Ping timeout: 246 seconds) |
| 03:56:22 | → | poscat0x04 joins (~poscat@user/poscat) |
| 03:58:10 | × | poscat quits (~poscat@user/poscat) (Ping timeout: 256 seconds) |
| 04:05:24 | → | merijn joins (~merijn@host-vr.cgnat-g.v4.dfn.nl) |
| 04:06:45 | → | dmead joins (~halloy975@2601:41:c300:ae80:354a:bc86:483c:6ece) |
| 04:06:54 | <dmead> | ?yow |
| 04:06:55 | <lambdabot> | Now that I have my "APPLE", I comprehend COST ACCOUNTING!! |
| 04:07:02 | <dmead> | i missed you, lambdabot |
| 04:10:07 | × | merijn quits (~merijn@host-vr.cgnat-g.v4.dfn.nl) (Ping timeout: 240 seconds) |
| 04:21:09 | → | merijn joins (~merijn@host-vr.cgnat-g.v4.dfn.nl) |
| 04:24:28 | × | weary-traveler quits (~user@user/user363627) (Quit: Konversation terminated!) |
| 04:24:53 | → | weary-traveler joins (~user@user/user363627) |
| 04:26:04 | × | merijn quits (~merijn@host-vr.cgnat-g.v4.dfn.nl) (Ping timeout: 260 seconds) |
| 04:30:00 | × | divlamir quits (~divlamir@user/divlamir) (Read error: Connection reset by peer) |
| 04:30:23 | → | divlamir joins (~divlamir@user/divlamir) |
| 04:37:00 | → | merijn joins (~merijn@host-vr.cgnat-g.v4.dfn.nl) |
| 04:41:43 | × | merijn quits (~merijn@host-vr.cgnat-g.v4.dfn.nl) (Ping timeout: 240 seconds) |
| 04:42:24 | → | merijn joins (~merijn@host-vr.cgnat-g.v4.dfn.nl) |
| 04:44:05 | × | EvanR quits (~EvanR@user/evanr) (Remote host closed the connection) |
| 04:44:25 | → | EvanR joins (~EvanR@user/evanr) |
| 04:47:27 | × | merijn quits (~merijn@host-vr.cgnat-g.v4.dfn.nl) (Ping timeout: 265 seconds) |
| 04:58:11 | → | merijn joins (~merijn@host-vr.cgnat-g.v4.dfn.nl) |
| 05:03:37 | × | merijn quits (~merijn@host-vr.cgnat-g.v4.dfn.nl) (Ping timeout: 264 seconds) |
| 05:11:07 | × | trickard_ quits (~trickard@cpe-83-98-47-163.wireline.com.au) (Read error: Connection reset by peer) |
| 05:11:22 | → | trickard_ joins (~trickard@cpe-83-98-47-163.wireline.com.au) |
| 05:14:25 | × | chromoblob quits (~chromoblo@user/chromob1ot1c) (Ping timeout: 264 seconds) |
| 05:15:18 | → | merijn joins (~merijn@host-vr.cgnat-g.v4.dfn.nl) |
| 05:16:06 | → | humasect joins (~humasect@dyn-192-249-132-90.nexicom.net) |
| 05:19:49 | × | merijn quits (~merijn@host-vr.cgnat-g.v4.dfn.nl) (Ping timeout: 264 seconds) |
| 05:20:18 | × | Pozyomka quits (~pyon@user/pyon) (Quit: brb) |
| 05:21:37 | × | jmcantrell quits (~weechat@user/jmcantrell) (Ping timeout: 264 seconds) |
| 05:22:13 | × | machinedgod quits (~machinedg@d75-159-126-101.abhsia.telus.net) (Ping timeout: 264 seconds) |
| 05:23:23 | → | deptype joins (~deptype@2406:b400:3a:9d2f:9b7c:331e:bc52:4fc0) |
| 05:28:44 | × | humasect quits (~humasect@dyn-192-249-132-90.nexicom.net) (Remote host closed the connection) |
| 05:28:56 | → | Pozyomka joins (~pyon@user/pyon) |
| 05:29:28 | × | Googulator23 quits (~Googulato@2a01-036d-0106-479c-a13d-10f6-324f-ace8.pool6.digikabel.hu) (Quit: Client closed) |
| 05:29:40 | → | Googulator23 joins (~Googulato@2a01-036d-0106-479c-a13d-10f6-324f-ace8.pool6.digikabel.hu) |
| 05:30:43 | → | merijn joins (~merijn@host-vr.cgnat-g.v4.dfn.nl) |
| 05:35:34 | × | merijn quits (~merijn@host-vr.cgnat-g.v4.dfn.nl) (Ping timeout: 246 seconds) |
| 05:36:16 | × | trickard_ quits (~trickard@cpe-83-98-47-163.wireline.com.au) (Read error: Connection reset by peer) |
| 05:36:29 | → | trickard_ joins (~trickard@cpe-83-98-47-163.wireline.com.au) |
| 05:40:43 | × | Googulator23 quits (~Googulato@2a01-036d-0106-479c-a13d-10f6-324f-ace8.pool6.digikabel.hu) (Quit: Client closed) |
| 05:40:46 | → | Googulator49 joins (~Googulato@85-238-68-117.pool.digikabel.hu) |
| 05:41:29 | → | chromoblob joins (~chromoblo@user/chromob1ot1c) |
| 05:46:30 | → | merijn joins (~merijn@host-vr.cgnat-g.v4.dfn.nl) |
| 05:51:37 | × | merijn quits (~merijn@host-vr.cgnat-g.v4.dfn.nl) (Ping timeout: 264 seconds) |
| 06:02:32 | → | merijn joins (~merijn@host-vr.cgnat-g.v4.dfn.nl) |
| 06:03:33 | → | takuan joins (~takuan@d8D86B9E9.access.telenet.be) |
| 06:06:11 | → | peterbecich joins (~Thunderbi@172.222.148.214) |
| 06:07:49 | × | merijn quits (~merijn@host-vr.cgnat-g.v4.dfn.nl) (Ping timeout: 264 seconds) |
| 06:10:44 | → | michalz joins (~michalz@185.246.207.201) |
| 06:18:19 | → | merijn joins (~merijn@host-vr.cgnat-g.v4.dfn.nl) |
| 06:23:43 | × | merijn quits (~merijn@host-vr.cgnat-g.v4.dfn.nl) (Ping timeout: 264 seconds) |
| 06:25:11 | trickard_ | is now known as trickard |
| 06:34:06 | → | merijn joins (~merijn@host-vr.cgnat-g.v4.dfn.nl) |
| 06:40:45 | × | merijn quits (~merijn@host-vr.cgnat-g.v4.dfn.nl) (Ping timeout: 245 seconds) |
| 06:43:25 | → | merijn joins (~merijn@host-vr.cgnat-g.v4.dfn.nl) |
| 06:43:46 | × | jreicher quits (~user@user/jreicher) (Remote host closed the connection) |
| 06:44:28 | → | jreicher joins (~user@user/jreicher) |
| 06:48:01 | × | merijn quits (~merijn@host-vr.cgnat-g.v4.dfn.nl) (Ping timeout: 246 seconds) |
| 06:54:13 | × | myxos quits (~myxos@wsip-70-166-126-146.ph.ph.cox.net) (Ping timeout: 260 seconds) |
| 06:59:13 | → | merijn joins (~merijn@host-vr.cgnat-g.v4.dfn.nl) |
| 07:04:02 | × | merijn quits (~merijn@host-vr.cgnat-g.v4.dfn.nl) (Ping timeout: 256 seconds) |
| 07:06:18 | → | fun-safe-math joins (~fun-safe-@97-120-34-41.ptld.qwest.net) |
| 07:10:33 | × | fun-safe-math quits (~fun-safe-@97-120-34-41.ptld.qwest.net) (Client Quit) |
| 07:12:15 | → | fun-safe-math joins (~fun-safe-@97-120-34-41.ptld.qwest.net) |
| 07:14:48 | → | merijn joins (~merijn@host-vr.cgnat-g.v4.dfn.nl) |
| 07:18:29 | → | myxos joins (~myxos@2001:579:8380:f20:a84e:a963:182a:8091) |
| 07:19:49 | × | merijn quits (~merijn@host-vr.cgnat-g.v4.dfn.nl) (Ping timeout: 264 seconds) |
| 07:20:28 | × | fun-safe-math quits (~fun-safe-@97-120-34-41.ptld.qwest.net) () |
| 07:20:46 | → | fun-safe-math joins (~fun-safe-@97-120-34-41.ptld.qwest.net) |
| 07:24:51 | × | fun-safe-math quits (~fun-safe-@97-120-34-41.ptld.qwest.net) (Client Quit) |
| 07:26:32 | → | fun-safe-math joins (~fun-safe-@97-120-34-41.ptld.qwest.net) |
| 07:29:14 | × | annamalai quits (~annamalai@2409:4042:d37:b495::9e0a:ba05) (Ping timeout: 260 seconds) |
| 07:29:25 | × | peterbecich quits (~Thunderbi@172.222.148.214) (Ping timeout: 264 seconds) |
| 07:30:36 | → | merijn joins (~merijn@host-vr.cgnat-g.v4.dfn.nl) |
| 07:35:14 | × | merijn quits (~merijn@host-vr.cgnat-g.v4.dfn.nl) (Ping timeout: 244 seconds) |
| 07:40:36 | → | Googulator5 joins (~Googulato@2a01-036d-0106-479c-a13d-10f6-324f-ace8.pool6.digikabel.hu) |
| 07:40:47 | × | Googulator49 quits (~Googulato@85-238-68-117.pool.digikabel.hu) (Quit: Client closed) |
| 07:44:26 | → | merijn joins (~merijn@host-vr.cgnat-g.v4.dfn.nl) |
| 07:46:09 | → | annamalai joins (~annamalai@157.33.214.170) |
| 07:49:27 | × | merijn quits (~merijn@host-vr.cgnat-g.v4.dfn.nl) (Ping timeout: 252 seconds) |
| 07:52:17 | × | ft quits (~ft@p508db844.dip0.t-ipconnect.de) (Quit: leaving) |
| 07:55:15 | × | annamalai quits (~annamalai@157.33.214.170) (Ping timeout: 240 seconds) |
| 08:00:14 | → | merijn joins (~merijn@host-vr.cgnat-g.v4.dfn.nl) |
| 08:00:56 | → | annamalai joins (~annamalai@2409:4042:d37:b495::9e0a:ba05) |
| 08:02:26 | × | Sgeo quits (~Sgeo@user/sgeo) (Read error: Connection reset by peer) |
| 08:04:47 | × | merijn quits (~merijn@host-vr.cgnat-g.v4.dfn.nl) (Ping timeout: 244 seconds) |
| 08:07:19 | → | tromp joins (~textual@2001:1c00:3487:1b00:8dfa:2450:8c32:ced0) |
| 08:10:37 | × | Googulator5 quits (~Googulato@2a01-036d-0106-479c-a13d-10f6-324f-ace8.pool6.digikabel.hu) (Quit: Client closed) |
| 08:10:39 | → | Googulator83 joins (~Googulato@85-238-68-117.pool.digikabel.hu) |
| 08:15:07 | → | polux joins (~polux@51-15-169-172.rev.poneytelecom.eu) |
| 08:33:11 | → | sord937 joins (~sord937@gateway/tor-sasl/sord937) |
| 08:44:30 | × | emmanuelux quits (~emmanuelu@user/emmanuelux) (Remote host closed the connection) |
| 08:45:40 | × | Googulator83 quits (~Googulato@85-238-68-117.pool.digikabel.hu) (Quit: Client closed) |
| 08:45:45 | → | Googulator88 joins (~Googulato@2a01-036d-0106-479c-a13d-10f6-324f-ace8.pool6.digikabel.hu) |
| 08:45:54 | × | tzh quits (~tzh@c-76-115-131-146.hsd1.or.comcast.net) (Quit: zzz) |
| 08:47:53 | → | kuribas joins (~user@2a02-1810-2825-6000-f1ea-5a47-537d-8d09.ip6.access.telenet.be) |
| 08:50:06 | × | Lord_of_Life quits (~Lord@user/lord-of-life/x-2819915) (Quit: Laa shay'a waqi'un moutlaq bale kouloun moumkine) |
| 08:50:16 | → | chele joins (~chele@user/chele) |
| 08:50:26 | → | merijn joins (~merijn@77.242.116.146) |
| 09:02:39 | × | tromp quits (~textual@2001:1c00:3487:1b00:8dfa:2450:8c32:ced0) (Ping timeout: 244 seconds) |
| 09:17:46 | × | infinity0 quits (~infinity0@pwned.gg) (Remote host closed the connection) |
| 09:18:02 | → | Square joins (~Square4@user/square) |
| 09:18:55 | → | infinity0 joins (~infinity0@pwned.gg) |
| 09:19:25 | × | infinity0 quits (~infinity0@pwned.gg) (Remote host closed the connection) |
| 09:19:45 | → | infinity0 joins (~infinity0@pwned.gg) |
| 09:22:26 | → | CiaoSen joins (~Jura@2a02:8071:64e1:da0:5a47:caff:fe78:33db) |
| 09:27:31 | × | ec quits (~ec@gateway/tor-sasl/ec) (Ping timeout: 252 seconds) |
| 09:27:56 | → | ec joins (~ec@gateway/tor-sasl/ec) |
| 09:31:43 | → | Lord_of_Life joins (~Lord@user/lord-of-life/x-2819915) |
| 09:32:34 | Googulator88 | is now known as Googulator |
| 09:36:41 | × | merijn quits (~merijn@77.242.116.146) (Ping timeout: 250 seconds) |
| 09:42:26 | × | L29Ah quits (~L29Ah@wikipedia/L29Ah) (Read error: Connection reset by peer) |
| 09:45:34 | → | merijn joins (~merijn@77.242.116.146) |
| 09:45:36 | → | Googulator22 joins (~Googulato@2a01-036d-0106-479c-a13d-10f6-324f-ace8.pool6.digikabel.hu) |
| 09:45:47 | × | Googulator quits (~Googulato@2a01-036d-0106-479c-a13d-10f6-324f-ace8.pool6.digikabel.hu) (Quit: Client closed) |
| 09:46:56 | × | Lord_of_Life quits (~Lord@user/lord-of-life/x-2819915) (Quit: Laa shay'a waqi'un moutlaq bale kouloun moumkine) |
| 09:48:44 | → | Lord_of_Life joins (~Lord@user/lord-of-life/x-2819915) |
| 09:56:25 | → | humasect joins (~humasect@dyn-192-249-132-90.nexicom.net) |
| 09:57:28 | × | Square quits (~Square4@user/square) (Remote host closed the connection) |
| 09:58:03 | → | Square joins (~Square4@user/square) |
| 10:00:54 | × | humasect quits (~humasect@dyn-192-249-132-90.nexicom.net) (Ping timeout: 260 seconds) |
| 10:04:12 | Googulator22 | is now known as Googulator |
| 10:09:36 | <Square> | I'm trying to get HLS to work with IntelliJ, which seems to work. But I don't seem to be able to navigate to 3rd party libs (especially the one that I've been developing myself). I just get type definitions interspersed for say classes I implement. Is there some general gotcha to this? |
| 10:09:39 | × | merijn quits (~merijn@77.242.116.146) (Ping timeout: 260 seconds) |
| 10:10:33 | → | merijn joins (~merijn@77.242.116.146) |
| 10:12:44 | × | sord937 quits (~sord937@gateway/tor-sasl/sord937) (Remote host closed the connection) |
| 10:13:05 | → | sord937 joins (~sord937@gateway/tor-sasl/sord937) |
| 10:14:55 | × | xff0x quits (~xff0x@fsb6a9491c.tkyc517.ap.nuro.jp) (Ping timeout: 240 seconds) |
| 10:15:19 | × | merijn quits (~merijn@77.242.116.146) (Ping timeout: 240 seconds) |
| 10:21:13 | × | Beowulf quits (florian@2a01:4f9:3b:2d56::2) (Quit: = "") |
| 10:22:42 | <tomsmeding> | Square: go-to-definition across libraries is very sparsely implemented in HLS if at all |
| 10:23:20 | <tomsmeding> | if the dependency you want to jump to is in the same project then it might work, but cabal-installed dependencies definitely do not work |
| 10:23:53 | <Square> | tomsmeding, Ok, good to know. Well then I guess I won't need to bother. |
| 10:24:32 | <Square> | But you should be able to get haddock from cabal installed dependencies though right? |
| 10:25:39 | → | merijn joins (~merijn@77.242.116.146) |
| 10:26:12 | → | haritz joins (~hrtz@2a01:4b00:bc2e:7000:d5af:a266:ca31:5ef8) |
| 10:26:12 | × | haritz quits (~hrtz@2a01:4b00:bc2e:7000:d5af:a266:ca31:5ef8) (Changing host) |
| 10:26:12 | → | haritz joins (~hrtz@user/haritz) |
| 10:29:56 | → | Beowulf joins (florian@2a01:4f9:3b:2d56::2) |
| 10:35:47 | <tomsmeding> | Square: only if you built those with documentation enabled -- haddock doesn't run by default on all built packages |
| 10:36:03 | <tomsmeding> | if you want to always run haddock whenever you build a dependency, set the 'documentation:' key to True in ~/.cabal/config |
| 10:36:13 | <tomsmeding> | (or ~/.config/cabal/config, I guess, if you have XDG dir layout) |
| 10:36:55 | <tomsmeding> | you should get automatic haddocks for modules inside the component you're working on, though, even without that option set |
| 10:37:05 | <Square> | tomsmeding, I build the dependency with Nix, but I do have haddock enabled. |
| 10:37:31 | → | __monty__ joins (~toonn@user/toonn) |
| 10:37:33 | <Square> | ..for it. |
| 10:38:05 | <tomsmeding> | I don't know where HLS tries to find the documentation, so I'll leave that question to others :) |
| 10:43:13 | × | trickard quits (~trickard@cpe-83-98-47-163.wireline.com.au) (Read error: Connection reset by peer) |
| 10:43:26 | → | trickard_ joins (~trickard@cpe-83-98-47-163.wireline.com.au) |
| 10:45:43 | → | Googulator84 joins (~Googulato@2a01-036d-0106-479c-a13d-10f6-324f-ace8.pool6.digikabel.hu) |
| 10:46:19 | × | Googulator quits (~Googulato@2a01-036d-0106-479c-a13d-10f6-324f-ace8.pool6.digikabel.hu) (Quit: Client closed) |
| 10:50:04 | Googulator84 | is now known as Googulator |
| 10:52:31 | × | haritz quits (~hrtz@user/haritz) (Ping timeout: 250 seconds) |
| 10:53:12 | → | haritz joins (~hrtz@140.228.70.141) |
| 10:53:13 | × | haritz quits (~hrtz@140.228.70.141) (Changing host) |
| 10:53:13 | → | haritz joins (~hrtz@user/haritz) |
| 11:03:57 | × | trickard_ quits (~trickard@cpe-83-98-47-163.wireline.com.au) (Read error: Connection reset by peer) |
| 11:04:09 | → | trickard_ joins (~trickard@cpe-83-98-47-163.wireline.com.au) |
| 11:06:15 | × | pabs3 quits (~pabs3@user/pabs3) (Ping timeout: 240 seconds) |
| 11:17:30 | × | merijn quits (~merijn@77.242.116.146) (Ping timeout: 265 seconds) |
| 11:19:49 | → | xff0x joins (~xff0x@2405:6580:b080:900:fe10:407:8fc1:7162) |
| 11:28:09 | → | tremon joins (~tremon@83.80.159.219) |
| 11:30:21 | → | merijn joins (~merijn@77.242.116.146) |
| 11:35:25 | × | merijn quits (~merijn@77.242.116.146) (Ping timeout: 264 seconds) |
| 11:35:34 | → | Googulator37 joins (~Googulato@2a01-036d-0106-479c-a13d-10f6-324f-ace8.pool6.digikabel.hu) |
| 11:35:40 | × | Googulator quits (~Googulato@2a01-036d-0106-479c-a13d-10f6-324f-ace8.pool6.digikabel.hu) (Quit: Client closed) |
| 11:41:14 | × | trickard_ quits (~trickard@cpe-83-98-47-163.wireline.com.au) (Read error: Connection reset by peer) |
| 11:41:28 | → | trickard_ joins (~trickard@cpe-83-98-47-163.wireline.com.au) |
| 11:45:37 | × | chromoblob quits (~chromoblo@user/chromob1ot1c) (Ping timeout: 264 seconds) |
| 11:47:54 | → | merijn joins (~merijn@77.242.116.146) |
| 11:51:05 | × | weary-traveler quits (~user@user/user363627) (Quit: Konversation terminated!) |
| 11:51:29 | → | weary-traveler joins (~user@user/user363627) |
| 11:52:33 | × | merijn quits (~merijn@77.242.116.146) (Ping timeout: 252 seconds) |
| 11:52:52 | trickard_ | is now known as trickard |
| 11:55:02 | → | chromoblob joins (~chromoblo@user/chromob1ot1c) |
| 11:57:33 | × | Franciman quits (~Franciman@mx1.fracta.dev) (Ping timeout: 260 seconds) |
| 11:57:34 | × | lortabac quits (~lortabac@mx1.fracta.dev) (Read error: Connection reset by peer) |
| 11:59:19 | × | chromoblob quits (~chromoblo@user/chromob1ot1c) (Ping timeout: 240 seconds) |
| 12:02:12 | <yin> | when would it be advantageous to use Set Int instead of IntMap () ? |
| 12:05:47 | → | merijn joins (~merijn@77.242.116.146) |
| 12:08:18 | → | lortabac joins (~lortabac@mx1.fracta.dev) |
| 12:09:06 | → | humasect joins (~humasect@dyn-192-249-132-90.nexicom.net) |
| 12:13:33 | × | humasect quits (~humasect@dyn-192-249-132-90.nexicom.net) (Ping timeout: 250 seconds) |
| 12:13:45 | → | Franciman joins (~Franciman@mx1.fracta.dev) |
| 12:15:35 | × | Googulator37 quits (~Googulato@2a01-036d-0106-479c-a13d-10f6-324f-ace8.pool6.digikabel.hu) (Quit: Client closed) |
| 12:15:41 | → | Googulator87 joins (~Googulato@2a01-036d-0106-479c-a13d-10f6-324f-ace8.pool6.digikabel.hu) |
| 12:16:44 | → | ouilemur joins (~jgmerritt@user/ouilemur) |
| 12:26:02 | × | hsw quits (~hsw@112-104-86-252.adsl.dynamic.seed.net.tw) (Quit: Leaving) |
| 12:26:21 | → | hsw joins (~hsw@112-104-86-252.adsl.dynamic.seed.net.tw) |
| 12:34:42 | → | chromoblob joins (~chromoblo@user/chromob1ot1c) |
| 12:39:48 | × | trickard quits (~trickard@cpe-83-98-47-163.wireline.com.au) (Read error: Connection reset by peer) |
| 12:40:02 | → | trickard joins (~trickard@cpe-83-98-47-163.wireline.com.au) |
| 12:42:47 | → | fp joins (~Thunderbi@2001:708:20:1406::10c5) |
| 12:45:47 | → | Googulator50 joins (~Googulato@2a01-036d-0106-479c-a13d-10f6-324f-ace8.pool6.digikabel.hu) |
| 12:46:16 | → | pabs3 joins (~pabs3@user/pabs3) |
| 12:46:21 | × | Googulator87 quits (~Googulato@2a01-036d-0106-479c-a13d-10f6-324f-ace8.pool6.digikabel.hu) (Quit: Client closed) |
| 12:47:05 | × | trickard quits (~trickard@cpe-83-98-47-163.wireline.com.au) (Read error: Connection reset by peer) |
| 12:50:59 | → | trickard joins (~trickard@cpe-83-98-47-163.wireline.com.au) |
| 12:54:08 | × | fp quits (~Thunderbi@2001:708:20:1406::10c5) (Remote host closed the connection) |
| 12:54:44 | → | fp joins (~Thunderbi@2001:708:20:1406::10c5) |
| 12:54:56 | → | turlando_ joins (~turlando@user/turlando) |
| 12:55:15 | × | turlando quits (~turlando@user/turlando) (Ping timeout: 252 seconds) |
| 13:00:10 | <bwe> | How do I configure cabal to make specific default imports? In other words: Is there really no better way than https://discourse.haskell.org/t/define-custom-command-for-a-cabal-repl-session/12088 ? |
| 13:05:43 | → | humasect joins (~humasect@dyn-192-249-132-90.nexicom.net) |
| 13:09:52 | × | humasect quits (~humasect@dyn-192-249-132-90.nexicom.net) (Ping timeout: 246 seconds) |
| 13:14:33 | × | merijn quits (~merijn@77.242.116.146) (Ping timeout: 260 seconds) |
| 13:15:35 | Googulator50 | is now known as Googulator |
| 13:17:29 | → | merijn joins (~merijn@77.242.116.146) |
| 13:22:28 | × | merijn quits (~merijn@77.242.116.146) (Ping timeout: 246 seconds) |
| 13:25:19 | → | humasect joins (~humasect@dyn-192-249-132-90.nexicom.net) |
| 13:30:01 | × | humasect quits (~humasect@dyn-192-249-132-90.nexicom.net) (Ping timeout: 264 seconds) |
| 13:30:26 | → | merijn joins (~merijn@77.242.116.146) |
| 13:39:20 | → | L29Ah joins (~L29Ah@wikipedia/L29Ah) |
| 13:42:25 | <merijn> | bwe: You can't until GHC can handle that (not sure if that issue was addressed yet in the most recent GHCs?) |
| 13:42:31 | × | DetourNetworkUK quits (DetourNetw@user/DetourNetworkUK) (Ping timeout: 240 seconds) |
| 13:43:55 | <merijn> | looks like 9.14 supports it, not sure if cabal repl can use that yet, though |
| 13:44:15 | <merijn> | https://www.well-typed.com/blog/2025/06/ghci-multiple-home-units/ |
| 13:45:34 | → | DetourNetworkUK joins (~DetourNet@user/DetourNetworkUK) |
| 13:45:47 | → | Googulator33 joins (~Googulato@2a01-036d-0106-479c-a13d-10f6-324f-ace8.pool6.digikabel.hu) |
| 13:45:49 | × | Googulator quits (~Googulato@2a01-036d-0106-479c-a13d-10f6-324f-ace8.pool6.digikabel.hu) (Quit: Client closed) |
| 13:49:50 | × | trickard quits (~trickard@cpe-83-98-47-163.wireline.com.au) (Read error: Connection reset by peer) |
| 13:50:04 | → | trickard_ joins (~trickard@cpe-83-98-47-163.wireline.com.au) |
| 13:50:59 | × | Googulator33 quits (~Googulato@2a01-036d-0106-479c-a13d-10f6-324f-ace8.pool6.digikabel.hu) (Quit: Client closed) |
| 13:51:10 | → | Googulator33 joins (~Googulato@2a01-036d-0106-479c-a13d-10f6-324f-ace8.pool6.digikabel.hu) |
| 14:03:21 | → | sindu joins (~sindu@2.148.32.207.tmi.telenormobil.no) |
| 14:10:30 | <bwe> | merijn: That sounds promising! |
| 14:10:59 | → | Lycurgus joins (~juan@user/Lycurgus) |
| 14:12:31 | × | notzmv quits (~umar@user/notzmv) (Ping timeout: 246 seconds) |
| 14:15:41 | × | Googulator33 quits (~Googulato@2a01-036d-0106-479c-a13d-10f6-324f-ace8.pool6.digikabel.hu) (Quit: Client closed) |
| 14:15:50 | → | Googulator33 joins (~Googulato@2a01-036d-0106-479c-a13d-10f6-324f-ace8.pool6.digikabel.hu) |
| 14:19:57 | × | trickard_ quits (~trickard@cpe-83-98-47-163.wireline.com.au) (Read error: Connection reset by peer) |
| 14:20:10 | → | trickard_ joins (~trickard@cpe-83-98-47-163.wireline.com.au) |
| 14:21:22 | × | pavonia quits (~user@user/siracusa) (Quit: Bye!) |
| 14:26:10 | × | DetourNetworkUK quits (~DetourNet@user/DetourNetworkUK) (Read error: Connection reset by peer) |
| 14:28:49 | → | chenjf joins (~chenjf@68.64.178.54) |
| 14:29:34 | → | DetourNetworkUK joins (DetourNetw@user/DetourNetworkUK) |
| 14:30:59 | → | humasect joins (~humasect@dyn-192-249-132-90.nexicom.net) |
| 14:33:27 | × | fp quits (~Thunderbi@2001:708:20:1406::10c5) (Remote host closed the connection) |
| 14:35:21 | × | humasect quits (~humasect@dyn-192-249-132-90.nexicom.net) (Ping timeout: 252 seconds) |
| 14:38:05 | Googulator33 | is now known as Googulator |
| 14:45:49 | → | Googulator80 joins (~Googulato@2a01-036d-0106-479c-a13d-10f6-324f-ace8.pool6.digikabel.hu) |
| 14:46:08 | × | Googulator quits (~Googulato@2a01-036d-0106-479c-a13d-10f6-324f-ace8.pool6.digikabel.hu) (Quit: Client closed) |
| 14:48:07 | × | chenjf quits (~chenjf@68.64.178.54) (Ping timeout: 240 seconds) |
| 14:53:35 | × | Lycurgus quits (~juan@user/Lycurgus) (Quit: alsoknownas.renjuan.org ( juan@acm.org )) |
| 14:55:29 | × | trickard_ quits (~trickard@cpe-83-98-47-163.wireline.com.au) (Ping timeout: 260 seconds) |
| 14:58:37 | → | trickard_ joins (~trickard@cpe-83-98-47-163.wireline.com.au) |
| 15:02:13 | Googulator80 | is now known as Googulator |
| 15:08:35 | × | Googulator quits (~Googulato@2a01-036d-0106-479c-a13d-10f6-324f-ace8.pool6.digikabel.hu) (Ping timeout: 272 seconds) |
| 15:12:24 | × | sam113101 quits (~sam@modemcable200.189-202-24.mc.videotron.ca) (Ping timeout: 260 seconds) |
| 15:18:55 | × | annamalai quits (~annamalai@2409:4042:d37:b495::9e0a:ba05) (Remote host closed the connection) |
| 15:21:06 | × | myxos quits (~myxos@2001:579:8380:f20:a84e:a963:182a:8091) (Ping timeout: 265 seconds) |
| 15:21:33 | → | sam113101 joins (~sam@modemcable200.189-202-24.mc.videotron.ca) |
| 15:24:43 | → | myxos joins (~myxos@wsip-70-166-126-146.ph.ph.cox.net) |
| 15:24:55 | → | pebble joins (~pebble@37.63.35.63) |
| 15:30:33 | × | wbooze quits (~wbooze@cgn-195-14-220-195.nc.de) (Quit: KVIrc 5.2.8 Quasar http://www.kvirc.net/) |
| 15:30:37 | × | merijn quits (~merijn@77.242.116.146) (Ping timeout: 264 seconds) |
| 15:31:29 | → | merijn joins (~merijn@77.242.116.146) |
| 15:33:54 | → | wbooze joins (~wbooze@cgn-195-14-220-195.nc.de) |
| 15:35:46 | → | chenjf joins (~chenjf@68.64.178.54) |
| 15:35:49 | × | merijn quits (~merijn@77.242.116.146) (Ping timeout: 246 seconds) |
| 15:36:33 | → | merijn joins (~merijn@77.242.116.146) |
| 15:36:48 | × | chenjf quits (~chenjf@68.64.178.54) (Remote host closed the connection) |
| 15:37:38 | → | chenjf joins (~chenjf@68.64.178.54) |
| 15:45:45 | × | merijn quits (~merijn@77.242.116.146) (Ping timeout: 252 seconds) |
| 15:46:17 | → | merijn joins (~merijn@77.242.116.146) |
| 15:53:25 | × | chenjf quits (~chenjf@68.64.178.54) (Ping timeout: 264 seconds) |
| 15:53:55 | × | CiaoSen quits (~Jura@2a02:8071:64e1:da0:5a47:caff:fe78:33db) (Ping timeout: 255 seconds) |
| 15:55:08 | → | chenjf joins (~chenjf@68.64.178.54) |
| 16:00:58 | → | Googulator joins (~Googulato@185.199.28.81) |
| 16:04:05 | → | fp joins (~Thunderbi@2001:708:20:1406::10c5) |
| 16:08:07 | × | Googulator quits (~Googulato@185.199.28.81) (Ping timeout: 272 seconds) |
| 16:08:25 | × | fp quits (~Thunderbi@2001:708:20:1406::10c5) (Ping timeout: 250 seconds) |
| 16:12:37 | × | chenjf quits (~chenjf@68.64.178.54) (Ping timeout: 264 seconds) |
| 16:26:34 | → | chenjf joins (~chenjf@68.64.178.54) |
| 16:31:49 | trickard_ | is now known as trickard |
| 16:35:11 | × | leah2 quits (~leah@vuxu.org) (Quit: Sprechen Sie noch? Wird noch gesprochen? Ich trenne.) |
| 16:37:28 | → | leah2 joins (~leah@vuxu.org) |
| 16:41:50 | → | machinedgod joins (~machinedg@d75-159-126-101.abhsia.telus.net) |
| 16:43:35 | × | chenjf quits (~chenjf@68.64.178.54) (Ping timeout: 240 seconds) |
| 16:47:45 | → | annamalai joins (~annamalai@2409:4042:d37:b495::9e0a:ba05) |
| 16:52:15 | × | merijn quits (~merijn@77.242.116.146) (Ping timeout: 240 seconds) |
| 17:06:11 | → | Googulator joins (~Googulato@2a01-036d-0106-479c-a13d-10f6-324f-ace8.pool6.digikabel.hu) |
| 17:06:57 | → | euphores joins (~SASL_euph@user/euphores) |
| 17:08:16 | → | notzmv joins (~umar@user/notzmv) |
| 17:13:51 | × | itaipu quits (~itaipu@168.121.97.28) (Ping timeout: 250 seconds) |
| 17:27:43 | × | raym quits (~ray@user/raym) (Ping timeout: 240 seconds) |
| 17:30:44 | <yin> | the description of `alter` is scrambled with `unions` https://hackage.haskell.org/package/containers-0.1.0.1/docs/Data-IntMap.html |
| 17:34:09 | × | euphores quits (~SASL_euph@user/euphores) (Quit: Leaving.) |
| 17:37:07 | → | merijn joins (~merijn@host-vr.cgnat-g.v4.dfn.nl) |
| 17:37:49 | × | merijn quits (~merijn@host-vr.cgnat-g.v4.dfn.nl) (Read error: Connection reset by peer) |
| 17:39:22 | <yin> | not sure why, the source looks correct |
| 17:40:46 | × | Googulator quits (~Googulato@2a01-036d-0106-479c-a13d-10f6-324f-ace8.pool6.digikabel.hu) (Quit: Client closed) |
| 17:40:46 | → | Googulator83 joins (~Googulato@2a01-036d-0106-479c-a13d-10f6-324f-ace8.pool6.digikabel.hu) |
| 17:42:07 | → | merijn joins (~merijn@77.242.116.146) |
| 17:44:49 | → | FANTOM_ joins (~fantom@212.228.181.156) |
| 17:48:28 | → | itaipu joins (~itaipu@168.121.97.28) |
| 17:48:48 | → | target_i joins (~target_i@user/target-i/x-6023099) |
| 17:52:37 | Googulator83 | is now known as Googulator |
| 17:58:25 | → | Square2 joins (~Square@user/square) |
| 18:00:55 | × | merijn quits (~merijn@77.242.116.146) (Ping timeout: 240 seconds) |
| 18:01:18 | × | DetourNetworkUK quits (DetourNetw@user/DetourNetworkUK) (Read error: Connection reset by peer) |
| 18:01:55 | × | Square quits (~Square4@user/square) (Ping timeout: 240 seconds) |
| 18:05:39 | × | itaipu quits (~itaipu@168.121.97.28) (Read error: Connection reset by peer) |
| 18:07:01 | → | peterbecich joins (~Thunderbi@172.222.148.214) |
| 18:08:58 | → | DetourNetworkUK joins (DetourNetw@user/DetourNetworkUK) |
| 18:10:42 | → | Googulator89 joins (~Googulato@2a01-036d-0106-479c-a13d-10f6-324f-ace8.pool6.digikabel.hu) |
| 18:10:47 | × | Googulator quits (~Googulato@2a01-036d-0106-479c-a13d-10f6-324f-ace8.pool6.digikabel.hu) (Quit: Client closed) |
| 18:12:44 | → | Guest6400 joins (~j@2600:6c5c:4e00:163:2bf4:9fab:3c73:9a6f) |
| 18:13:45 | Googulator89 | is now known as Googulator |
| 18:13:57 | × | Guest6400 quits (~j@2600:6c5c:4e00:163:2bf4:9fab:3c73:9a6f) (Remote host closed the connection) |
| 18:14:15 | → | Guest6400 joins (~j@2600:6c5c:4e00:163:2bf4:9fab:3c73:9a6f) |
| 18:14:36 | → | tzh joins (~tzh@c-76-115-131-146.hsd1.or.comcast.net) |
| 18:18:23 | Guest6400 | is now known as filesUNDcatboxUN |
| 18:18:45 | filesUNDcatboxUN | is now known as catboxmoeonpw4tj |
| 18:20:04 | × | kuribas quits (~user@2a02-1810-2825-6000-f1ea-5a47-537d-8d09.ip6.access.telenet.be) (Remote host closed the connection) |
| 18:20:55 | → | merijn joins (~merijn@77.242.116.146) |
| 18:21:28 | × | weary-traveler quits (~user@user/user363627) (Quit: Konversation terminated!) |
| 18:21:44 | → | weary-traveler joins (~user@user/user363627) |
| 18:21:49 | → | itaipu joins (~itaipu@168.121.97.28) |
| 18:25:10 | → | user47384 joins (~Guest75@128.205.160.74) |
| 18:26:04 | × | mulk quits (~mulk@p5b1127bf.dip0.t-ipconnect.de) (Quit: ZNC - http://znc.in) |
| 18:26:18 | × | merijn quits (~merijn@77.242.116.146) (Read error: Connection reset by peer) |
| 18:34:41 | × | catboxmoeonpw4tj quits (~j@2600:6c5c:4e00:163:2bf4:9fab:3c73:9a6f) (K-Lined) |
| 18:34:49 | × | sindu quits (~sindu@2.148.32.207.tmi.telenormobil.no) (Ping timeout: 264 seconds) |
| 18:35:59 | → | mulk joins (~mulk@p5b1127bf.dip0.t-ipconnect.de) |
| 18:36:38 | → | sindu joins (~sindu@2.148.32.207.tmi.telenormobil.no) |
| 18:38:58 | × | trickard quits (~trickard@cpe-83-98-47-163.wireline.com.au) (Read error: Connection reset by peer) |
| 18:39:12 | → | trickard_ joins (~trickard@cpe-83-98-47-163.wireline.com.au) |
| 18:40:41 | → | Googulator71 joins (~Googulato@2a01-036d-0106-479c-a13d-10f6-324f-ace8.pool6.digikabel.hu) |
| 18:40:48 | × | Googulator quits (~Googulato@2a01-036d-0106-479c-a13d-10f6-324f-ace8.pool6.digikabel.hu) (Quit: Client closed) |
| 18:48:34 | <yin> | updateLookupWothKey's also doesn't make sense |
| 18:49:42 | → | ljdarj joins (~Thunderbi@user/ljdarj) |
| 18:52:58 | <monochrom> | About Set Int vs IntMap (): There is also IntSet to make your choice harder! :) |
| 18:53:06 | × | user47384 quits (~Guest75@128.205.160.74) (Quit: Client closed) |
| 18:55:49 | × | ljdarj quits (~Thunderbi@user/ljdarj) (Quit: ljdarj) |
| 18:59:52 | → | ljdarj joins (~Thunderbi@user/ljdarj) |
| 19:01:01 | <EvanR> | is IntSet not just IntMap () |
| 19:01:26 | <tomsmeding> | semantically yes, implementation is specialised |
| 19:01:34 | × | mulk quits (~mulk@p5b1127bf.dip0.t-ipconnect.de) (Quit: ZNC - http://znc.in) |
| 19:01:35 | <EvanR> | nice |
| 19:04:14 | → | ft joins (~ft@p508db844.dip0.t-ipconnect.de) |
| 19:06:52 | → | raeven joins (~raeven@user/raeven) |
| 19:10:48 | × | Googulator71 quits (~Googulato@2a01-036d-0106-479c-a13d-10f6-324f-ace8.pool6.digikabel.hu) (Quit: Client closed) |
| 19:10:50 | → | Googulator95 joins (~Googulato@2a01-036d-0106-479c-a13d-10f6-324f-ace8.pool6.digikabel.hu) |
| 19:14:53 | → | mulk joins (~mulk@p5b1127bf.dip0.t-ipconnect.de) |
| 19:17:17 | × | mehbark quits (~mehbark@user/mehbark) (Quit: insert leave message here) |
| 19:17:35 | → | mehbark joins (~mehbark@joey.luug.ece.vt.edu) |
| 19:18:28 | × | mehbark quits (~mehbark@joey.luug.ece.vt.edu) (Changing host) |
| 19:18:28 | → | mehbark joins (~mehbark@user/mehbark) |
| 19:20:09 | <iqubic> | Is there a good guide to working with STArrays and the ST monad. I wrote some code for Advent of Code last night, and it's really slow because I'm making many small changes to a large data structure and recreating the whole thing each time is slow. |
| 19:20:40 | <iqubic> | Or would it be better to work with an IOArray? |
| 19:21:49 | → | Tuplanolla joins (~Tuplanoll@91-152-225-194.elisa-laajakaista.fi) |
| 19:27:03 | → | ljdarj1 joins (~Thunderbi@user/ljdarj) |
| 19:28:07 | × | peterbecich quits (~Thunderbi@172.222.148.214) (Ping timeout: 240 seconds) |
| 19:28:20 | × | ljdarj quits (~Thunderbi@user/ljdarj) (Ping timeout: 244 seconds) |
| 19:28:20 | ljdarj1 | is now known as ljdarj |
| 19:28:23 | × | chele quits (~chele@user/chele) (Remote host closed the connection) |
| 19:30:43 | → | Lord_of_Life_ joins (~Lord@user/lord-of-life/x-2819915) |
| 19:30:49 | × | Lord_of_Life quits (~Lord@user/lord-of-life/x-2819915) (Ping timeout: 260 seconds) |
| 19:31:13 | × | itaipu quits (~itaipu@168.121.97.28) (Ping timeout: 264 seconds) |
| 19:31:49 | → | itaipu joins (~itaipu@168.121.97.28) |
| 19:32:02 | Lord_of_Life_ | is now known as Lord_of_Life |
| 19:32:04 | <haskellbridge> | <Morj> iqubic "newtype IOArray i e = IOArray (STArray RealWorld i e)" - so there won't be gains to switching at least |
| 19:35:43 | <haskellbridge> | <Morj> Usually the biggest performance problems are laziness and boxed types. STArray only has boxed combinators, so if you're using it, your only chance is to set -XStrict and pray to the optimizer |
| 19:35:50 | <iqubic> | I'm not sure what you mean there. |
| 19:36:43 | <haskellbridge> | <Morj> Sorry, I'm slow to type it out |
| 19:37:24 | <haskellbridge> | <Morj> I wanted to say that there are alternatives using unboxed values, but I was verifying which package it was |
| 19:37:39 | <monochrom> | Oh, that would be vector. |
| 19:37:48 | <haskellbridge> | <Morj> Or array? |
| 19:38:28 | <monochrom> | OK that too. |
| 19:38:34 | <haskellbridge> | <Morj> Also, iqubic it just occurred to me, how good is your understanding of haskell? Are you just learning it for AOC or using this AOC to improve your high-perf skills? |
| 19:39:15 | <iqubic> | I know Haskell very well, but I've never learned how to properly work with mutable data in Haskell. |
| 19:39:37 | <haskellbridge> | <Morj> Good! |
| 19:39:44 | × | deptype quits (~deptype@2406:b400:3a:9d2f:9b7c:331e:bc52:4fc0) (Remote host closed the connection) |
| 19:40:01 | <iqubic> | This is my 6th year doing Advent of Code and I've used Haskell for a wide number of other projects too. |
| 19:40:01 | <haskellbridge> | <Morj> I don't know any guides, but you can use this blog for inspiration: https://0xd34df00d.me/posts/2024/09/naive-nfas.html#good-ol-st |
| 19:41:17 | <haskellbridge> | <Morj> It's been 5 years since I've written any high-perf myself >_> |
| 19:41:21 | → | michalz_ joins (~michalz@185.246.207.217) |
| 19:41:32 | <haskellbridge> | <Morj> I'm hearing ghc 9 made some things better |
| 19:42:42 | × | michalz quits (~michalz@185.246.207.201) (Ping timeout: 244 seconds) |
| 19:43:57 | → | merijn joins (~merijn@host-vr.cgnat-g.v4.dfn.nl) |
| 19:47:51 | <haskellbridge> | <Morj> I don't think I ever used 'array' because I don't recognize the api at all. So the simple options is to take https://hackage-content.haskell.org/package/vector-0.13.2.0/docs/Data-Vector-Unboxed-Mutable.html - and use only functions beginning with 'unsafe'. You should also set {-# LANGUAGE Strict #-}, and compile with llvm backend |
| 19:49:13 | × | merijn quits (~merijn@host-vr.cgnat-g.v4.dfn.nl) (Ping timeout: 264 seconds) |
| 19:49:42 | <haskellbridge> | <Morj> You won't be able to use structures easily, so all your types will be turned into tuples (tuples can turn into unboxed tuples). And no easy way to get sum types, sadly |
| 19:51:14 | × | itaipu quits (~itaipu@168.121.97.28) (Ping timeout: 260 seconds) |
| 19:51:22 | <haskellbridge> | <Morj> Hope my bunch of unstructured advice helped a bit |
| 19:54:01 | × | machinedgod quits (~machinedg@d75-159-126-101.abhsia.telus.net) (Ping timeout: 264 seconds) |
| 19:54:37 | <monochrom> | Unboxed sums are available in very new versions of GHC. |
| 19:55:18 | → | itaipu joins (~itaipu@168.121.97.28) |
| 19:59:44 | → | merijn joins (~merijn@host-vr.cgnat-g.v4.dfn.nl) |
| 20:04:37 | × | merijn quits (~merijn@host-vr.cgnat-g.v4.dfn.nl) (Ping timeout: 246 seconds) |
| 20:08:50 | → | jmcantrell_ joins (~weechat@user/jmcantrell) |
| 20:08:50 | jmcantrell_ | is now known as jmcantrell |
| 20:15:32 | → | merijn joins (~merijn@host-vr.cgnat-g.v4.dfn.nl) |
| 20:16:17 | → | CiaoSen joins (~Jura@2a02:8071:64e1:da0:5a47:caff:fe78:33db) |
| 20:16:36 | trickard_ | is now known as trickard |
| 20:19:18 | <[exa]> | iqubic: unboxed (or ideally primitive) mutable vectors + straightforward ST code usually gives a pretty C-like performance for me. You also want stuff like -fspecialise-aggressively -fexpose-all-unfoldings or a lot of manual INLINE if the cost-centre is spread over more functions |
| 20:20:46 | × | merijn quits (~merijn@host-vr.cgnat-g.v4.dfn.nl) (Ping timeout: 265 seconds) |
| 20:22:24 | → | spew joins (~spew@user/spew) |
| 20:26:24 | × | Square2 quits (~Square@user/square) (Read error: Connection reset by peer) |
| 20:26:41 | → | Square2 joins (~Square@user/square) |
| 20:27:03 | → | Square joins (~Square4@user/square) |
| 20:27:31 | × | trickard quits (~trickard@cpe-83-98-47-163.wireline.com.au) (Read error: Connection reset by peer) |
| 20:27:45 | → | trickard_ joins (~trickard@cpe-83-98-47-163.wireline.com.au) |
| 20:29:01 | <yin> | monochrom: I know about IntSet and that's what you want to use virtually everytime for performance, but what I want to know is if and when is Set Int useful |
| 20:31:01 | × | Square2 quits (~Square@user/square) (Ping timeout: 250 seconds) |
| 20:31:19 | → | merijn joins (~merijn@host-vr.cgnat-g.v4.dfn.nl) |
| 20:32:31 | × | michalz_ quits (~michalz@185.246.207.217) (Remote host closed the connection) |
| 20:33:40 | × | L29Ah quits (~L29Ah@wikipedia/L29Ah) (Ping timeout: 245 seconds) |
| 20:36:07 | × | merijn quits (~merijn@host-vr.cgnat-g.v4.dfn.nl) (Ping timeout: 240 seconds) |
| 20:38:51 | × | sord937 quits (~sord937@gateway/tor-sasl/sord937) (Quit: sord937) |
| 20:40:35 | × | jmcantrell quits (~weechat@user/jmcantrell) (Ping timeout: 265 seconds) |
| 20:40:41 | → | merijn joins (~merijn@host-vr.cgnat-g.v4.dfn.nl) |
| 20:41:13 | → | jmcantrell_ joins (~weechat@user/jmcantrell) |
| 20:45:19 | × | merijn quits (~merijn@host-vr.cgnat-g.v4.dfn.nl) (Ping timeout: 244 seconds) |
| 20:48:26 | → | acarrico joins (~acarrico@pppoe-209-99-221-186.greenmountainaccess.net) |
| 20:50:17 | → | karenw joins (~karenw@user/karenw) |
| 20:51:15 | → | L29Ah joins (~L29Ah@wikipedia/L29Ah) |
| 20:52:15 | × | Pozyomka quits (~pyon@user/pyon) (Quit: brb) |
| 20:56:07 | → | Pozyomka joins (~pyon@user/pyon) |
| 20:56:28 | → | merijn joins (~merijn@host-vr.cgnat-g.v4.dfn.nl) |
| 20:58:20 | <__monty__> | It seems almost just as useful as IntMap () and signals your intent more clearly. |
| 21:01:19 | × | merijn quits (~merijn@host-vr.cgnat-g.v4.dfn.nl) (Ping timeout: 240 seconds) |
| 21:01:48 | → | milan joins (~milan@88.212.61.169) |
| 21:02:27 | <milan> | Guyz do you use -XSafe? |
| 21:03:08 | <milan> | I am trying simple app but I can't even use haskell-say package in my cabal with -XSafe |
| 21:06:05 | → | Googulator93 joins (~Googulato@85-238-68-117.pool.digikabel.hu) |
| 21:07:48 | × | Googulator95 quits (~Googulato@2a01-036d-0106-479c-a13d-10f6-324f-ace8.pool6.digikabel.hu) (Quit: Client closed) |
| 21:10:02 | × | pebble quits (~pebble@37.63.35.63) (Read error: Connection reset by peer) |
| 21:11:43 | × | Ikosit quits (~Ikosit@user/ikosit) (Quit: The Lounge - https://thelounge.chat) |
| 21:11:54 | <davean> | milan: -XSafe is complicated. You can't use random packages in it. |
| 21:11:59 | → | Ikosit2 joins (~Ikosit@user/ikosit) |
| 21:12:16 | → | merijn joins (~merijn@host-vr.cgnat-g.v4.dfn.nl) |
| 21:13:52 | <milan> | davean: Yeah but https://hackage.haskell.org/package/haskell-say-1.0.0.0/docs/HaskellSay.html is marked safe? But I get app/Main.hs:3:1: error: [-Winferred-safe-imports, -Werror=inferred-safe-imports] |
| 21:13:54 | <milan> | Importing Safe-Inferred module HaskellSay from explicitly Safe module |
| 21:17:32 | <milan> | Is there a way how to get rid of this warning without just silencing it? |
| 21:18:55 | × | merijn quits (~merijn@host-vr.cgnat-g.v4.dfn.nl) (Ping timeout: 240 seconds) |
| 21:21:48 | <[exa]> | yin: there's some nice tree-ish properties of plain Set Int that you get (but I'm not sure they are exposed). Mainly since the trees are bb-α you can get stuff like k-th smallest element very fast. Not sure if that carries to the intmap representation (radix tree essentially) |
| 21:22:25 | <yin> | ah, yes. sets are ordered |
| 21:22:48 | <yin> | good point |
| 21:24:26 | <[exa]> | IntSet is kinda ordered too, right? although more implicitly |
| 21:27:50 | → | Lycurgus joins (~juan@user/Lycurgus) |
| 21:29:09 | × | wootehfoot quits (~wootehfoo@user/wootehfoot) (Read error: Connection reset by peer) |
| 21:30:20 | → | merijn joins (~merijn@host-vr.cgnat-g.v4.dfn.nl) |
| 21:30:33 | <yin> | seems like the radix tree implementation handles negative ints so that correct order is maintained |
| 21:30:46 | <yin> | cool |
| 21:31:24 | <EvanR> | maintained...... during what process |
| 21:32:40 | → | chenjf joins (~chenjf@68.64.178.54) |
| 21:33:39 | <yin> | for what i understand, it's structured so that traversing naturally happens from minBound to maxBound |
| 21:34:55 | × | merijn quits (~merijn@host-vr.cgnat-g.v4.dfn.nl) (Ping timeout: 246 seconds) |
| 21:35:53 | <yin> | (in that expected direction) |
| 21:36:18 | <yin> | my english may be failing me here |
| 21:37:49 | <EvanR> | well toList isn't really a process from IntSets to IntSets so you wouldn't be able to notice a change in ordering if there was one, because it's apples to oranges |
| 21:38:29 | <EvanR> | e.g. I figured you were asking if e.g. filtering out a particular value from the set leaves the remainder in the same relative order (observed when you do toList) |
| 21:38:48 | <EvanR> | or inserting a new value |
| 21:41:41 | → | merijn joins (~merijn@host-vr.cgnat-g.v4.dfn.nl) |
| 21:41:57 | <yin> | yes i'm also not sure in what measure those properties are exposed |
| 21:42:17 | <[exa]> | yin: anyway in the radix tree you still can't reach for k-th element in O(log(n)), I don't see they'd store weights there. So that's faster for the normal Set. OTOH the okasaki paper measured that tree merging is way faster for the radix trees (which makes sense). |
| 21:42:56 | <[exa]> | so e.g. if you need quick quantiles, go for Set Int |
| 21:44:19 | <[exa]> | (kinda sad the k-th smallest element operation is not exposed in API though.) |
| 21:46:13 | × | merijn quits (~merijn@host-vr.cgnat-g.v4.dfn.nl) (Ping timeout: 264 seconds) |
| 21:46:25 | × | spew quits (~spew@user/spew) (Quit: nyaa~) |
| 21:47:43 | × | wbooze quits (~wbooze@cgn-195-14-220-195.nc.de) (Read error: Connection reset by peer) |
| 21:49:52 | × | chenjf quits (~chenjf@68.64.178.54) (Ping timeout: 255 seconds) |
| 21:50:20 | <yin> | splitRoot is interesting |
| 21:50:44 | × | trickard_ quits (~trickard@cpe-83-98-47-163.wireline.com.au) (Read error: Connection reset by peer) |
| 21:50:46 | <yin> | oh, there's elemAt |
| 21:51:05 | <yin> | for Set |
| 21:51:46 | <yin> | how did i not know that |
| 21:51:49 | → | peterbecich joins (~Thunderbi@172.222.148.214) |
| 21:53:25 | → | trickard_ joins (~trickard@cpe-83-98-47-163.wireline.com.au) |
| 21:53:34 | <[exa]> | oh wait coooooooooooool |
| 21:53:56 | <[exa]> | yin: tbh I didn't notice it until now |
| 21:54:24 | <[exa]> | ok so my complaints above can now be safely slashed |
| 21:54:45 | <yin> | they're still valid for IntSet |
| 21:55:59 | <[exa]> | yeah but there that's expected |
| 21:56:08 | <yin> | right |
| 21:56:25 | × | peterbecich quits (~Thunderbi@172.222.148.214) (Ping timeout: 264 seconds) |
| 21:57:05 | → | merijn joins (~merijn@host-vr.cgnat-g.v4.dfn.nl) |
| 22:01:05 | → | pavonia joins (~user@user/siracusa) |
| 22:01:35 | × | merijn quits (~merijn@host-vr.cgnat-g.v4.dfn.nl) (Ping timeout: 240 seconds) |
| 22:01:49 | × | itaipu quits (~itaipu@168.121.97.28) (Ping timeout: 264 seconds) |
| 22:12:56 | → | merijn joins (~merijn@host-vr.cgnat-g.v4.dfn.nl) |
| 22:14:28 | × | takuan quits (~takuan@d8D86B9E9.access.telenet.be) (Remote host closed the connection) |
| 22:15:09 | → | itaipu joins (~itaipu@168.121.97.28) |
| 22:15:30 | × | trickard_ quits (~trickard@cpe-83-98-47-163.wireline.com.au) (Read error: Connection reset by peer) |
| 22:15:44 | → | trickard_ joins (~trickard@cpe-83-98-47-163.wireline.com.au) |
| 22:17:43 | × | merijn quits (~merijn@host-vr.cgnat-g.v4.dfn.nl) (Ping timeout: 240 seconds) |
| 22:18:00 | <monochrom> | yin: I would choose Set Int if I believe that one day I may have to change Int to something else. |
| 22:20:04 | <yin> | I maintain a personal library which abstracts the most common operations on containers so that I can have type Whatever = SomeContainer |
| 22:21:16 | <yin> | but it's both very incomplete and i feel not the most elegant solution |
| 22:22:19 | <monochrom> | Oh, the road to overthinking the best abstraction never ends. :) |
| 22:22:19 | <EvanR> | ah the Container class |
| 22:22:53 | <EvanR> | sounds like it is likely to be unable to implement some of the operations for most use cases |
| 22:23:15 | × | elarks quits (~yerri@user/yerrii) (Quit: WeeChat 4.7.1) |
| 22:23:42 | <EvanR> | java style would include "isOperationXImplemented :: Proxy a -> Bool" xD |
| 22:24:48 | <yin> | yeah this is not what we should be using classes for |
| 22:26:28 | <davean> | Type families with runtime type dispatch! |
| 22:28:45 | → | merijn joins (~merijn@host-vr.cgnat-g.v4.dfn.nl) |
| 22:29:27 | → | elarks joins (~yerri@user/yerrii) |
| 22:31:44 | trickard_ | is now known as trickard |
| 22:33:15 | × | merijn quits (~merijn@host-vr.cgnat-g.v4.dfn.nl) (Ping timeout: 240 seconds) |
| 22:34:11 | → | peterbecich joins (~Thunderbi@172.222.148.214) |
| 22:37:42 | <yin> | another insane option is to go the "one class per function" route and have a module which is just a list of sins like `class Lookupable a where lookup ...` |
| 22:39:36 | × | bitdex quits (~bitdex@gateway/tor-sasl/bitdex) (Quit: = "") |
| 22:39:50 | × | target_i quits (~target_i@user/target-i/x-6023099) (Quit: leaving) |
| 22:40:01 | × | trickard quits (~trickard@cpe-83-98-47-163.wireline.com.au) (Ping timeout: 244 seconds) |
| 22:40:19 | → | trickard_ joins (~trickard@cpe-83-98-47-163.wireline.com.au) |
| 22:41:32 | <davean> | I'm only in if you have that be via reflection |
| 22:43:05 | <monochrom> | GHC.Exts.withDict may help, but it is not an ergonomic interface. |
| 22:44:33 | → | merijn joins (~merijn@host-vr.cgnat-g.v4.dfn.nl) |
| 22:44:34 | <monochrom> | And I haven't looked into whether it still works for MPTC, FunDep, type families... |
| 22:44:43 | <yin> | at that point we would need some kind of type system! |
| 22:47:50 | → | machinedgod joins (~machinedg@d75-159-126-101.abhsia.telus.net) |
| 22:48:18 | × | Inline quits (~inlinE@2001-4dd3-7fc8-0-f57-6413-8f27-9a87.ipv6dyn.netcologne.de) (Quit: Leaving) |
| 22:49:13 | × | merijn quits (~merijn@host-vr.cgnat-g.v4.dfn.nl) (Ping timeout: 244 seconds) |
| 22:50:13 | → | ven4tor joins (~halloy594@host-128-227-1-55.xlate.ufl.edu) |
| 22:50:28 | <yin> | haskell's runtime compiler |
| 22:50:59 | ← | ven4tor parts (~halloy594@host-128-227-1-55.xlate.ufl.edu) () |
| 22:51:56 | trickard_ | is now known as trickard |
| 22:56:10 | × | raeven quits (~raeven@user/raeven) (Ping timeout: 245 seconds) |
| 23:00:20 | → | merijn joins (~merijn@host-vr.cgnat-g.v4.dfn.nl) |
| 23:04:15 | × | FANTOM_ quits (~fantom@212.228.181.156) (Ping timeout: 240 seconds) |
| 23:04:55 | × | merijn quits (~merijn@host-vr.cgnat-g.v4.dfn.nl) (Ping timeout: 240 seconds) |
| 23:07:08 | × | __monty__ quits (~toonn@user/toonn) (Quit: leaving) |
| 23:08:25 | → | Inline joins (~inlinE@2001-4dd3-7fc8-0-6429-4236-6fc8-9372.ipv6dyn.netcologne.de) |
| 23:11:43 | × | timide quits (~timide@user/timide) (Ping timeout: 240 seconds) |
| 23:13:02 | → | timide joins (~timide@user/timide) |
| 23:16:08 | → | merijn joins (~merijn@host-vr.cgnat-g.v4.dfn.nl) |
| 23:19:55 | × | peterbecich quits (~Thunderbi@172.222.148.214) (Ping timeout: 240 seconds) |
| 23:20:08 | × | gmg quits (~user@user/gehmehgeh) (Remote host closed the connection) |
| 23:20:55 | × | merijn quits (~merijn@host-vr.cgnat-g.v4.dfn.nl) (Ping timeout: 240 seconds) |
| 23:22:57 | → | Sgeo joins (~Sgeo@user/sgeo) |
| 23:29:58 | × | jmcantrell_ quits (~weechat@user/jmcantrell) (Ping timeout: 260 seconds) |
| 23:31:36 | → | jmcantrell_ joins (~weechat@user/jmcantrell) |
| 23:31:55 | → | merijn joins (~merijn@host-vr.cgnat-g.v4.dfn.nl) |
| 23:32:32 | × | Lycurgus quits (~juan@user/Lycurgus) (Quit: alsoknownas.renjuan.org ( juan@acm.org )) |
| 23:34:49 | × | itaipu quits (~itaipu@168.121.97.28) (Ping timeout: 264 seconds) |
| 23:36:55 | × | merijn quits (~merijn@host-vr.cgnat-g.v4.dfn.nl) (Ping timeout: 264 seconds) |
| 23:41:24 | × | CiaoSen quits (~Jura@2a02:8071:64e1:da0:5a47:caff:fe78:33db) (Ping timeout: 244 seconds) |
| 23:47:43 | → | merijn joins (~merijn@host-vr.cgnat-g.v4.dfn.nl) |
| 23:50:26 | × | srk quits (~sorki@user/srk) (Ping timeout: 256 seconds) |
| 23:52:30 | × | merijn quits (~merijn@host-vr.cgnat-g.v4.dfn.nl) (Ping timeout: 252 seconds) |
| 23:52:57 | → | srk joins (~sorki@user/srk) |
| 23:59:54 | → | itaipu joins (~itaipu@168.121.97.28) |
All times are in UTC on 2025-12-08.