| 2023-07-28 00:01:34 +0000 | merijn | (~merijn@c-001-001-014.client.esciencecenter.eduvpn.nl) (Ping timeout: 246 seconds) |
| 2023-07-28 00:02:14 +0000 | flounders | (~flounders@24.246.133.1) (Ping timeout: 250 seconds) |
| 2023-07-28 00:02:17 +0000 | <dsal> | I just heard about amazonka2 arriving at hackage. Just came here to say woo. |
| 2023-07-28 00:03:03 +0000 | jmdaemon | (~jmdaemon@user/jmdaemon) |
| 2023-07-28 00:03:57 +0000 | <shapr> | oh wow, amazonka got an update?! |
| 2023-07-28 00:04:13 +0000 | <shapr> | dsal: did you see my blog post from yesterday? Android app in Haskell? |
| 2023-07-28 00:04:27 +0000 | phma | (~phma@host-67-44-208-59.hnremote.net) (Read error: Connection reset by peer) |
| 2023-07-28 00:04:52 +0000 | phma | (phma@2001:5b0:210b:9ac8:482d:5318:4a02:3871) |
| 2023-07-28 00:04:55 +0000 | maulanazn | (~maulanazn@103.144.170.135) |
| 2023-07-28 00:05:14 +0000 | califax | (~califax@user/califx) (Remote host closed the connection) |
| 2023-07-28 00:05:44 +0000 | <maulanazn> | Hello everyone |
| 2023-07-28 00:06:02 +0000 | maulanazn | (~maulanazn@103.144.170.135) () |
| 2023-07-28 00:06:05 +0000 | thegeekinside | (~thegeekin@189.217.90.138) |
| 2023-07-28 00:06:24 +0000 | <shapr> | that's about the attention span most people have |
| 2023-07-28 00:06:29 +0000 | <geekosaur> | o.O |
| 2023-07-28 00:06:42 +0000 | califax | (~califax@user/califx) |
| 2023-07-28 00:07:39 +0000 | maulanazn | (~maulanazn@103.144.170.135) |
| 2023-07-28 00:09:06 +0000 | <yushyin> | :D |
| 2023-07-28 00:11:02 +0000 | maulanazn | (~maulanazn@103.144.170.135) () |
| 2023-07-28 00:11:57 +0000 | maulanazn | (~maulanazn@103.144.170.135) |
| 2023-07-28 00:12:01 +0000 | reach__ | (~reach@142.198.51.47) |
| 2023-07-28 00:12:06 +0000 | maulanazn | (~maulanazn@103.144.170.135) () |
| 2023-07-28 00:14:54 +0000 | <jackdk> | Thanks dsal. I've been pushing that boulder for two years and it feels good to get it over the top. |
| 2023-07-28 00:15:03 +0000 | maulanazn | (~maulanazn@103.144.170.135) |
| 2023-07-28 00:15:10 +0000 | maulanazn | (~maulanazn@103.144.170.135) (Quit: Leaving.) |
| 2023-07-28 00:25:59 +0000 | libertyprime | (~libertypr@203.96.203.44) |
| 2023-07-28 00:26:12 +0000 | xff0x | (~xff0x@ai086045.d.east.v6connect.net) (Ping timeout: 245 seconds) |
| 2023-07-28 00:28:19 +0000 | xff0x | (~xff0x@178.255.149.135) |
| 2023-07-28 00:30:11 +0000 | wroathe | (~wroathe@207-153-38-140.fttp.usinternet.com) |
| 2023-07-28 00:30:12 +0000 | wroathe | (~wroathe@207-153-38-140.fttp.usinternet.com) (Changing host) |
| 2023-07-28 00:30:12 +0000 | wroathe | (~wroathe@user/wroathe) |
| 2023-07-28 00:35:39 +0000 | reach__ | (~reach@142.198.51.47) (Ping timeout: 246 seconds) |
| 2023-07-28 00:37:49 +0000 | reach__ | (~reach@bras-base-toroon2643w-grc-02-142-198-51-47.dsl.bell.ca) |
| 2023-07-28 00:39:30 +0000 | ystael | (~ystael@user/ystael) (Ping timeout: 246 seconds) |
| 2023-07-28 00:40:26 +0000 | xff0x | (~xff0x@178.255.149.135) (Ping timeout: 245 seconds) |
| 2023-07-28 00:40:28 +0000 | bitdex | (~bitdex@gateway/tor-sasl/bitdex) (Quit: = "") |
| 2023-07-28 00:42:24 +0000 | EsoAlgo81 | (~EsoAlgo@129.146.136.145) |
| 2023-07-28 00:42:31 +0000 | xff0x | (~xff0x@2405:6580:b080:900:f296:7c8e:ce20:8b85) |
| 2023-07-28 00:43:17 +0000 | img | (~img@user/img) (Ping timeout: 245 seconds) |
| 2023-07-28 00:44:23 +0000 | img | (~img@user/img) |
| 2023-07-28 00:49:08 +0000 | mrmr4 | (~mrmr@user/mrmr) |
| 2023-07-28 00:49:47 +0000 | mrmr | (~mrmr@user/mrmr) (Ping timeout: 246 seconds) |
| 2023-07-28 00:49:48 +0000 | mrmr4 | mrmr |
| 2023-07-28 00:50:32 +0000 | jmdaemon | (~jmdaemon@user/jmdaemon) (Quit: ZNC 1.8.2 - https://znc.in) |
| 2023-07-28 00:50:50 +0000 | jmdaemon | (~jmdaemon@user/jmdaemon) |
| 2023-07-28 00:57:29 +0000 | <Axman6> | jackdk: thanks for all your thankless work, I know how hard you've been working on this, and the changes made in 2.0 really add some polish on an already amazing project |
| 2023-07-28 00:57:58 +0000 | <Axman6> | (I say thankless, but I thank jackdk every chance I get for his work on this) |
| 2023-07-28 00:58:34 +0000 | <jackdk> | Axman6: "thanks for all your thankless work" <- Paging Mr. Russell `;-)` |
| 2023-07-28 00:58:46 +0000 | reach__ | (~reach@bras-base-toroon2643w-grc-02-142-198-51-47.dsl.bell.ca) (Ping timeout: 245 seconds) |
| 2023-07-28 00:59:01 +0000 | <Axman6> | The thank of all thanks that do not contain themselves |
| 2023-07-28 00:59:07 +0000 | jmdaemon | (~jmdaemon@user/jmdaemon) (Ping timeout: 245 seconds) |
| 2023-07-28 00:59:14 +0000 | <dsal> | shapr: I didn't. Where do I see that? |
| 2023-07-28 00:59:53 +0000 | <jackdk> | https://shapr.github.io/posts/2023-07-25-android-app-in-haskell.html I think? |
| 2023-07-28 01:01:47 +0000 | jero98772 | (~jero98772@2800:484:1d7f:5d36::1) (Ping timeout: 260 seconds) |
| 2023-07-28 01:02:22 +0000 | <arahael_> | jackdk: That's very cool. :) |
| 2023-07-28 01:02:36 +0000 | <arahael_> | jackdk: Would you have been confident to take the same approach for iOS? |
| 2023-07-28 01:02:50 +0000 | <jackdk> | arahael_: You'll have to ask shapr, it's his blog post |
| 2023-07-28 01:03:25 +0000 | <arahael_> | Ah, ok. |
| 2023-07-28 01:03:53 +0000 | <arahael_> | reflex-frp does seem to be the most promising tool for this, but I'm somehow less confident when it comes to using it for iOS in production - feels experimental. |
| 2023-07-28 01:05:20 +0000 | reach__ | (~reach@bras-base-toroon2643w-grc-02-142-198-51-47.dsl.bell.ca) |
| 2023-07-28 01:06:10 +0000 | razetime | (~quassel@117.193.5.53) |
| 2023-07-28 01:11:16 +0000 | albet70 | (~xxx@2400:8902::f03c:92ff:fe60:98d8) (Remote host closed the connection) |
| 2023-07-28 01:11:36 +0000 | pavonia | (~user@user/siracusa) |
| 2023-07-28 01:15:06 +0000 | jero98772 | (~jero98772@2800:484:1d7f:5d36::1) |
| 2023-07-28 01:16:21 +0000 | merijn | (~merijn@c-001-001-014.client.esciencecenter.eduvpn.nl) |
| 2023-07-28 01:17:24 +0000 | albet70 | (~xxx@2400:8902::f03c:92ff:fe60:98d8) |
| 2023-07-28 01:18:56 +0000 | jmd_ | (~jmdaemon@user/jmdaemon) |
| 2023-07-28 01:22:59 +0000 | nate2 | (~nate@c-98-45-169-16.hsd1.ca.comcast.net) |
| 2023-07-28 01:27:52 +0000 | nate2 | (~nate@c-98-45-169-16.hsd1.ca.comcast.net) (Ping timeout: 245 seconds) |
| 2023-07-28 01:29:03 +0000 | yangby | (~secret@183.128.108.131) |
| 2023-07-28 01:33:25 +0000 | mvk | (~mvk@2607:fea8:5c9a:a600::1c6d) (Ping timeout: 245 seconds) |
| 2023-07-28 01:37:12 +0000 | sm[i] | (~sm@2601:196:4b80:3a40:210c:477a:6863:3d54) |
| 2023-07-28 01:39:11 +0000 | wroathe | (~wroathe@user/wroathe) (Ping timeout: 245 seconds) |
| 2023-07-28 01:44:10 +0000 | hugo- | (znc@verdigris.lysator.liu.se) (Ping timeout: 244 seconds) |
| 2023-07-28 01:48:28 +0000 | lisbeths | (uid135845@id-135845.lymington.irccloud.com) |
| 2023-07-28 01:50:33 +0000 | merijn | (~merijn@c-001-001-014.client.esciencecenter.eduvpn.nl) (Ping timeout: 246 seconds) |
| 2023-07-28 01:52:22 +0000 | perrierjouet | (~perrierjo@modemcable048.127-56-74.mc.videotron.ca) (Quit: WeeChat 4.0.2) |
| 2023-07-28 01:52:45 +0000 | perrierjouet | (~perrierjo@modemcable048.127-56-74.mc.videotron.ca) |
| 2023-07-28 01:56:39 +0000 | hugo | (znc@verdigris.lysator.liu.se) |
| 2023-07-28 02:00:17 +0000 | [itchyjunk] | (~itchyjunk@user/itchyjunk/x-7353470) (Read error: Connection reset by peer) |
| 2023-07-28 02:01:16 +0000 | codaraxis | (~codaraxis@user/codaraxis) (Ping timeout: 246 seconds) |
| 2023-07-28 02:07:42 +0000 | hugo | (znc@verdigris.lysator.liu.se) (Ping timeout: 246 seconds) |
| 2023-07-28 02:11:37 +0000 | jero98772 | (~jero98772@2800:484:1d7f:5d36::1) (Ping timeout: 245 seconds) |
| 2023-07-28 02:13:37 +0000 | sm[i] | (~sm@2601:196:4b80:3a40:210c:477a:6863:3d54) (Quit: sm[i]) |
| 2023-07-28 02:16:18 +0000 | azimut | (~azimut@gateway/tor-sasl/azimut) (Ping timeout: 240 seconds) |
| 2023-07-28 02:16:56 +0000 | td_ | (~td@i5387090B.versanet.de) (Ping timeout: 246 seconds) |
| 2023-07-28 02:17:09 +0000 | nate2 | (~nate@c-98-45-169-16.hsd1.ca.comcast.net) |
| 2023-07-28 02:18:41 +0000 | reach__ | (~reach@bras-base-toroon2643w-grc-02-142-198-51-47.dsl.bell.ca) (Ping timeout: 246 seconds) |
| 2023-07-28 02:19:04 +0000 | td_ | (~td@i53870935.versanet.de) |
| 2023-07-28 02:19:07 +0000 | libertyprime | (~libertypr@203.96.203.44) (Quit: leaving) |
| 2023-07-28 02:19:45 +0000 | hugo | (znc@verdigris.lysator.liu.se) |
| 2023-07-28 02:19:50 +0000 | finn_elija | (~finn_elij@user/finn-elija/x-0085643) |
| 2023-07-28 02:19:50 +0000 | FinnElija | (~finn_elij@user/finn-elija/x-0085643) (Killed (NickServ (Forcing logout FinnElija -> finn_elija))) |
| 2023-07-28 02:19:50 +0000 | finn_elija | FinnElija |
| 2023-07-28 02:19:57 +0000 | reach__ | (~reach@142.198.51.47) |
| 2023-07-28 02:20:41 +0000 | eggplantade | (~Eggplanta@2600:1700:38c5:d800:d004:e151:c029:6b7c) |
| 2023-07-28 02:23:07 +0000 | jero98772 | (~jero98772@2800:484:1d7f:5d36::1) |
| 2023-07-28 02:24:49 +0000 | sm[i] | (~sm@2601:196:4b80:3a40:210c:477a:6863:3d54) |
| 2023-07-28 02:35:31 +0000 | perrierjouet | (~perrierjo@modemcable048.127-56-74.mc.videotron.ca) (Quit: WeeChat 4.0.2) |
| 2023-07-28 02:41:55 +0000 | terrorjack | (~terrorjac@2a01:4f8:c17:87f8::) (Quit: The Lounge - https://thelounge.chat) |
| 2023-07-28 02:42:36 +0000 | phma | (phma@2001:5b0:210b:9ac8:482d:5318:4a02:3871) (Read error: Connection reset by peer) |
| 2023-07-28 02:43:02 +0000 | phma | (phma@2001:5b0:210b:9ac8:482d:5318:4a02:3871) |
| 2023-07-28 02:43:28 +0000 | terrorjack | (~terrorjac@2a01:4f8:c17:87f8::) |
| 2023-07-28 02:43:31 +0000 | perrierjouet | (~perrierjo@modemcable048.127-56-74.mc.videotron.ca) |
| 2023-07-28 02:45:44 +0000 | justsomeguy | (~justsomeg@user/justsomeguy) (Quit: WeeChat 3.6) |
| 2023-07-28 02:46:04 +0000 | mei | (~mei@user/mei) (Ping timeout: 246 seconds) |
| 2023-07-28 02:50:04 +0000 | mei | (~mei@user/mei) |
| 2023-07-28 02:50:51 +0000 | thegeekinside | (~thegeekin@189.217.90.138) (Read error: Connection reset by peer) |
| 2023-07-28 02:55:07 +0000 | machinedgod | (~machinedg@d198-53-218-113.abhsia.telus.net) |
| 2023-07-28 02:55:55 +0000 | qqq | (~qqq@92.43.167.61) (Remote host closed the connection) |
| 2023-07-28 03:05:17 +0000 | mei | (~mei@user/mei) (Ping timeout: 244 seconds) |
| 2023-07-28 03:05:30 +0000 | perrierjouet | (~perrierjo@modemcable048.127-56-74.mc.videotron.ca) (Quit: WeeChat 4.0.2) |
| 2023-07-28 03:06:01 +0000 | perrierjouet | (~perrierjo@modemcable048.127-56-74.mc.videotron.ca) |
| 2023-07-28 03:07:27 +0000 | merijn | (~merijn@c-001-001-014.client.esciencecenter.eduvpn.nl) |
| 2023-07-28 03:09:18 +0000 | mei | (~mei@user/mei) |
| 2023-07-28 03:12:56 +0000 | merijn | (~merijn@c-001-001-014.client.esciencecenter.eduvpn.nl) (Ping timeout: 246 seconds) |
| 2023-07-28 03:15:36 +0000 | reach__ | (~reach@142.198.51.47) (Ping timeout: 246 seconds) |
| 2023-07-28 03:18:19 +0000 | reach__ | (~reach@bras-base-toroon2643w-grc-02-142-198-51-47.dsl.bell.ca) |
| 2023-07-28 03:19:19 +0000 | nate2 | (~nate@c-98-45-169-16.hsd1.ca.comcast.net) (Ping timeout: 246 seconds) |
| 2023-07-28 03:20:38 +0000 | foul_owl_ | (~kerry@174-21-159-141.tukw.qwest.net) |
| 2023-07-28 03:20:47 +0000 | foul_owl | (~kerry@185.219.141.162) (Ping timeout: 244 seconds) |
| 2023-07-28 03:25:26 +0000 | foul_owl_ | (~kerry@174-21-159-141.tukw.qwest.net) (Ping timeout: 245 seconds) |
| 2023-07-28 03:27:23 +0000 | califax | (~califax@user/califx) (Remote host closed the connection) |
| 2023-07-28 03:27:52 +0000 | califax | (~califax@user/califx) |
| 2023-07-28 03:29:34 +0000 | aforemny | (~aforemny@2001:9e8:6cfc:2a00:d5a2:6a3b:38ac:cbd4) (Ping timeout: 244 seconds) |
| 2023-07-28 03:29:44 +0000 | aforemny_ | (~aforemny@2001:9e8:6ce2:4f00:57f9:d120:56d4:9724) |
| 2023-07-28 03:32:16 +0000 | jle` | (~jle`@cpe-23-240-75-236.socal.res.rr.com) (Ping timeout: 246 seconds) |
| 2023-07-28 03:34:26 +0000 | jle` | (~jle`@cpe-23-240-75-236.socal.res.rr.com) |
| 2023-07-28 03:37:03 +0000 | foul_owl_ | (~kerry@193.29.61.236) |
| 2023-07-28 03:40:05 +0000 | sm | (~sm@plaintextaccounting/sm) (Quit: Reconnecting) |
| 2023-07-28 03:41:04 +0000 | sm | (~sm@plaintextaccounting/sm) |
| 2023-07-28 03:41:56 +0000 | texasmynsted | (~username@99.96.221.112) (Ping timeout: 250 seconds) |
| 2023-07-28 03:42:52 +0000 | reach__ | (~reach@bras-base-toroon2643w-grc-02-142-198-51-47.dsl.bell.ca) (Ping timeout: 245 seconds) |
| 2023-07-28 03:45:41 +0000 | trev | (~trev@user/trev) |
| 2023-07-28 03:52:49 +0000 | machinedgod | (~machinedg@d198-53-218-113.abhsia.telus.net) (Ping timeout: 244 seconds) |
| 2023-07-28 04:04:02 +0000 | razetime | (~quassel@117.193.5.53) (Ping timeout: 246 seconds) |
| 2023-07-28 04:06:29 +0000 | _ht | (~Thunderbi@28-52-174-82.ftth.glasoperator.nl) |
| 2023-07-28 04:08:30 +0000 | sm[i] | (~sm@2601:196:4b80:3a40:210c:477a:6863:3d54) (Quit: sm[i]) |
| 2023-07-28 04:26:08 +0000 | merijn | (~merijn@c-001-001-014.client.esciencecenter.eduvpn.nl) |
| 2023-07-28 04:45:44 +0000 | razetime | (~quassel@117.193.5.53) |
| 2023-07-28 04:55:36 +0000 | misterfish | (~misterfis@84-53-85-146.bbserv.nl) |
| 2023-07-28 04:57:28 +0000 | idgaen | (~idgaen@2a01:e0a:498:fd50:fcc6:bb5d:489a:ce8c) |
| 2023-07-28 04:59:04 +0000 | merijn | (~merijn@c-001-001-014.client.esciencecenter.eduvpn.nl) (Ping timeout: 250 seconds) |
| 2023-07-28 05:04:57 +0000 | nattiestnate | (~nate@2001:448a:20a3:c2e5:71b9:a710:2866:667f) |
| 2023-07-28 05:10:25 +0000 | <dsal> | My build's trying to build connection. Is there any way I can figure out why? It's not an obvious dependency. |
| 2023-07-28 05:11:21 +0000 | <dsal> | Oh, I just figured out `stack dot --external` directly answers my question. |
| 2023-07-28 05:13:58 +0000 | <dsal> | Weird, I was specifying network-conduit-tls >= 1.4 but it was apparently building something older. |
| 2023-07-28 05:14:27 +0000 | ByronJohnson | (~bairyn@50-250-232-19-static.hfc.comcastbusiness.net) (Ping timeout: 244 seconds) |
| 2023-07-28 05:16:23 +0000 | ByronJohnson | (~bairyn@50-250-232-19-static.hfc.comcastbusiness.net) |
| 2023-07-28 05:20:16 +0000 | reach__ | (~reach@142.198.51.47) |
| 2023-07-28 05:22:19 +0000 | seeg123456 | (~seeg12345@64.176.64.83) |
| 2023-07-28 05:25:18 +0000 | reach__ | (~reach@142.198.51.47) (Ping timeout: 244 seconds) |
| 2023-07-28 05:27:16 +0000 | harveypwca | (~harveypwc@2601:246:c180:a570:3828:d8:e523:3f67) |
| 2023-07-28 05:45:44 +0000 | _ht | (~Thunderbi@28-52-174-82.ftth.glasoperator.nl) (Quit: _ht) |
| 2023-07-28 05:46:59 +0000 | mixfix41 | (~sdeny9ee@user/mixfix41) (Ping timeout: 260 seconds) |
| 2023-07-28 05:51:19 +0000 | CiaoSen | (~Jura@2a05:5800:2a3:b400:664b:f0ff:fe37:9ef) |
| 2023-07-28 05:54:25 +0000 | titibandit | (~titibandi@user/titibandit) |
| 2023-07-28 05:54:26 +0000 | bgs | (~bgs@212-85-160-171.dynamic.telemach.net) |
| 2023-07-28 06:05:42 +0000 | titiband1t | (~titibandi@user/titibandit) |
| 2023-07-28 06:07:53 +0000 | titiband1t | (~titibandi@user/titibandit) (Remote host closed the connection) |
| 2023-07-28 06:14:00 +0000 | seeg123456 | (~seeg12345@64.176.64.83) () |
| 2023-07-28 06:14:57 +0000 | Luj | (~Luj@2a01:e0a:5f9:9681:b61c:443d:ba92:3071) (Quit: Ping timeout (120 seconds)) |
| 2023-07-28 06:15:14 +0000 | Luj | (~Luj@2a01:e0a:5f9:9681:9d2:9ce:d805:54e2) |
| 2023-07-28 06:16:28 +0000 | merijn | (~merijn@c-001-001-014.client.esciencecenter.eduvpn.nl) |
| 2023-07-28 06:19:58 +0000 | mmhat | (~mmh@p200300f1c73d1944ee086bfffe095315.dip0.t-ipconnect.de) |
| 2023-07-28 06:19:58 +0000 | mmhat | (~mmh@p200300f1c73d1944ee086bfffe095315.dip0.t-ipconnect.de) (Client Quit) |
| 2023-07-28 06:20:30 +0000 | foul_owl_ | (~kerry@193.29.61.236) (Ping timeout: 245 seconds) |
| 2023-07-28 06:21:49 +0000 | tromp | (~textual@92-110-219-57.cable.dynamic.v4.ziggo.nl) |
| 2023-07-28 06:22:32 +0000 | acidjnk | (~acidjnk@p200300d6e7072f09b522d1b3cfe8e851.dip0.t-ipconnect.de) |
| 2023-07-28 06:23:46 +0000 | misterfish | (~misterfis@84-53-85-146.bbserv.nl) (Ping timeout: 260 seconds) |
| 2023-07-28 06:29:00 +0000 | kenran | (~user@user/kenran) |
| 2023-07-28 06:34:00 +0000 | bliminse | (~bliminse@user/bliminse) |
| 2023-07-28 06:34:43 +0000 | foul_owl_ | (~kerry@185.219.141.162) |
| 2023-07-28 06:35:05 +0000 | dibblego | (~dibblego@haskell/developer/dibblego) (Ping timeout: 245 seconds) |
| 2023-07-28 06:35:16 +0000 | dibblego | (~dibblego@116.255.1.151) |
| 2023-07-28 06:35:16 +0000 | dibblego | (~dibblego@116.255.1.151) (Changing host) |
| 2023-07-28 06:35:16 +0000 | dibblego | (~dibblego@haskell/developer/dibblego) |
| 2023-07-28 06:36:55 +0000 | seeg123456 | (~seeg12345@64.176.64.83) |
| 2023-07-28 06:39:39 +0000 | shapr | (~user@2600:1700:c640:3100:fa13:6c46:116:2be9) (Ping timeout: 246 seconds) |
| 2023-07-28 06:40:51 +0000 | seeg123456 | (~seeg12345@64.176.64.83) () |
| 2023-07-28 06:41:11 +0000 | Guest8558 | (~finn@rul16-h01-176-151-21-224.dsl.sta.abo.bbox.fr) |
| 2023-07-28 06:41:16 +0000 | seeg123456 | (~seeg12345@64.176.64.83) |
| 2023-07-28 06:44:24 +0000 | tromp | (~textual@92-110-219-57.cable.dynamic.v4.ziggo.nl) (Quit: My iMac has gone to sleep. ZZZzzz…) |
| 2023-07-28 06:47:35 +0000 | chele | (~chele@user/chele) |
| 2023-07-28 06:47:51 +0000 | oo_miguel | (~Thunderbi@78-11-179-96.static.ip.netia.com.pl) |
| 2023-07-28 06:50:30 +0000 | merijn | (~merijn@c-001-001-014.client.esciencecenter.eduvpn.nl) (Ping timeout: 245 seconds) |
| 2023-07-28 06:55:53 +0000 | codaraxis | (~codaraxis@user/codaraxis) |
| 2023-07-28 06:59:11 +0000 | dibblego | (~dibblego@haskell/developer/dibblego) (Ping timeout: 245 seconds) |
| 2023-07-28 07:01:07 +0000 | dibblego | (~dibblego@116-255-1-151.ip4.superloop.au) |
| 2023-07-28 07:01:08 +0000 | dibblego | (~dibblego@116-255-1-151.ip4.superloop.au) (Changing host) |
| 2023-07-28 07:01:08 +0000 | dibblego | (~dibblego@haskell/developer/dibblego) |
| 2023-07-28 07:03:06 +0000 | simikando | (~simikando@adsl-dyn-104.95-102-88.t-com.sk) |
| 2023-07-28 07:03:44 +0000 | tromp | (~textual@92-110-219-57.cable.dynamic.v4.ziggo.nl) |
| 2023-07-28 07:05:42 +0000 | harveypwca | (~harveypwc@2601:246:c180:a570:3828:d8:e523:3f67) (Quit: Leaving) |
| 2023-07-28 07:06:35 +0000 | dobblego | (~dibblego@116-255-1-151.ip4.superloop.au) |
| 2023-07-28 07:06:36 +0000 | dobblego | (~dibblego@116-255-1-151.ip4.superloop.au) (Changing host) |
| 2023-07-28 07:06:36 +0000 | dobblego | (~dibblego@haskell/developer/dibblego) |
| 2023-07-28 07:06:53 +0000 | dibblego | (~dibblego@haskell/developer/dibblego) (Ping timeout: 246 seconds) |
| 2023-07-28 07:07:05 +0000 | dobblego | dibblego |
| 2023-07-28 07:11:47 +0000 | dibblego | (~dibblego@haskell/developer/dibblego) (Ping timeout: 246 seconds) |
| 2023-07-28 07:13:41 +0000 | misterfish | (~misterfis@84-53-85-146.bbserv.nl) |
| 2023-07-28 07:14:35 +0000 | dibblego | (~dibblego@116-255-1-151.ip4.superloop.au) |
| 2023-07-28 07:14:35 +0000 | dibblego | (~dibblego@116-255-1-151.ip4.superloop.au) (Changing host) |
| 2023-07-28 07:14:35 +0000 | dibblego | (~dibblego@haskell/developer/dibblego) |
| 2023-07-28 07:16:11 +0000 | nate2 | (~nate@c-98-45-169-16.hsd1.ca.comcast.net) |
| 2023-07-28 07:19:39 +0000 | coot | (~coot@89-69-206-216.dynamic.chello.pl) |
| 2023-07-28 07:20:44 +0000 | nate2 | (~nate@c-98-45-169-16.hsd1.ca.comcast.net) (Ping timeout: 246 seconds) |
| 2023-07-28 07:22:28 +0000 | fendor | (~fendor@2a02:8388:1640:be00:1f28:32b1:54ac:a932) |
| 2023-07-28 07:23:35 +0000 | emmanuelux | (~emmanuelu@user/emmanuelux) |
| 2023-07-28 07:24:35 +0000 | ft | (~ft@p3e9bc61e.dip0.t-ipconnect.de) (Quit: leaving) |
| 2023-07-28 07:24:50 +0000 | emmanuelux | (~emmanuelu@user/emmanuelux) (Remote host closed the connection) |
| 2023-07-28 07:25:47 +0000 | dibblego | (~dibblego@haskell/developer/dibblego) (Ping timeout: 264 seconds) |
| 2023-07-28 07:26:50 +0000 | dibblego | (~dibblego@116-255-1-151.ip4.superloop.au) |
| 2023-07-28 07:26:50 +0000 | dibblego | (~dibblego@116-255-1-151.ip4.superloop.au) (Changing host) |
| 2023-07-28 07:26:50 +0000 | dibblego | (~dibblego@haskell/developer/dibblego) |
| 2023-07-28 07:32:49 +0000 | <Inst> | erm, does anyone use halide? Since I can't get accelerate to work :( |
| 2023-07-28 07:32:55 +0000 | <Inst> | well, not without stack, but lazy |
| 2023-07-28 07:33:14 +0000 | <Inst> | bleh, tbh, i'll just install halide via msys on win64 and see how well that works out |
| 2023-07-28 07:35:01 +0000 | <[exa]> | that platform isn't very compatible with the idea of getting stuff to work |
| 2023-07-28 07:35:15 +0000 | <[exa]> | (apologies for slightly brutal honesty) |
| 2023-07-28 07:36:29 +0000 | dibblego | (~dibblego@haskell/developer/dibblego) (Ping timeout: 246 seconds) |
| 2023-07-28 07:37:02 +0000 | dibblego | (~dibblego@116-255-1-151.ip4.superloop.au) |
| 2023-07-28 07:37:02 +0000 | dibblego | (~dibblego@116-255-1-151.ip4.superloop.au) (Changing host) |
| 2023-07-28 07:37:02 +0000 | dibblego | (~dibblego@haskell/developer/dibblego) |
| 2023-07-28 07:37:43 +0000 | <mzg> | [exa]: have to write that response down, it seems to be reusable to various other situations |
| 2023-07-28 07:38:18 +0000 | <Inst> | ehhh, msys doesn't have it |
| 2023-07-28 07:38:31 +0000 | <Inst> | yeah, i know, i can't even get more niche python libs to work on windows |
| 2023-07-28 07:51:55 +0000 | simikando | (~simikando@adsl-dyn-104.95-102-88.t-com.sk) (Ping timeout: 240 seconds) |
| 2023-07-28 07:53:47 +0000 | simikando | (~simikando@adsl-dyn-104.95-102-88.t-com.sk) |
| 2023-07-28 07:55:18 +0000 | machinedgod | (~machinedg@d198-53-218-113.abhsia.telus.net) |
| 2023-07-28 07:58:05 +0000 | nattiestnate | internatetional |
| 2023-07-28 07:58:07 +0000 | machinedgod | (~machinedg@d198-53-218-113.abhsia.telus.net) (Remote host closed the connection) |
| 2023-07-28 07:59:21 +0000 | merijn | (~merijn@c-001-001-014.client.esciencecenter.eduvpn.nl) |
| 2023-07-28 08:00:18 +0000 | simikando | (~simikando@adsl-dyn-104.95-102-88.t-com.sk) (Ping timeout: 244 seconds) |
| 2023-07-28 08:01:55 +0000 | <davean> | Inst: I can say accelerate has worked for me on linux without too much trouble. I have heard people *have* gotten it to work on windows, but I forget who |
| 2023-07-28 08:02:10 +0000 | arahael_ | (~arahael@124-149-31-4.dyn.iinet.net.au) (Ping timeout: 245 seconds) |
| 2023-07-28 08:03:14 +0000 | Lord_of_Life | (~Lord@user/lord-of-life/x-2819915) |
| 2023-07-28 08:04:08 +0000 | machinedgod | (~machinedg@d198-53-218-113.abhsia.telus.net) |
| 2023-07-28 08:04:47 +0000 | <Inst> | I can't figure out how to get the newer versions of accelerate to install from github |
| 2023-07-28 08:05:59 +0000 | Tuplanolla | (~Tuplanoll@91-159-68-236.elisa-laajakaista.fi) |
| 2023-07-28 08:14:16 +0000 | phma | (phma@2001:5b0:210b:9ac8:482d:5318:4a02:3871) (Read error: Connection reset by peer) |
| 2023-07-28 08:15:18 +0000 | phma | (~phma@2001:5b0:210f:78d8:de61:1bc2:fcbd:591a) |
| 2023-07-28 08:18:18 +0000 | dobblego | (~dibblego@116-255-1-151.ip4.superloop.au) |
| 2023-07-28 08:18:18 +0000 | dobblego | (~dibblego@116-255-1-151.ip4.superloop.au) (Changing host) |
| 2023-07-28 08:18:18 +0000 | dobblego | (~dibblego@haskell/developer/dibblego) |
| 2023-07-28 08:18:28 +0000 | dibblego | (~dibblego@haskell/developer/dibblego) (Ping timeout: 258 seconds) |
| 2023-07-28 08:18:59 +0000 | dobblego | dibblego |
| 2023-07-28 08:21:43 +0000 | Unicorn_Princess | (~Unicorn_P@user/Unicorn-Princess/x-3540542) |
| 2023-07-28 08:22:04 +0000 | <[exa]> | Inst: git clone the repo and add it to your project using `cabal.project` config? |
| 2023-07-28 08:29:59 +0000 | tzh | (~tzh@c-24-21-73-154.hsd1.or.comcast.net) (Quit: zzz) |
| 2023-07-28 08:30:39 +0000 | Sgeo | (~Sgeo@user/sgeo) (Read error: Connection reset by peer) |
| 2023-07-28 08:32:09 +0000 | danse-nr3 | (~francesco@151.37.208.115) |
| 2023-07-28 08:32:44 +0000 | tbagrel1 | (~thomas@2a01:e0a:1ef:6520:c532:105d:de51:605) |
| 2023-07-28 08:33:23 +0000 | tbagrel1 | (~thomas@2a01:e0a:1ef:6520:c532:105d:de51:605) (Client Quit) |
| 2023-07-28 08:33:45 +0000 | internatetional | (~nate@2001:448a:20a3:c2e5:71b9:a710:2866:667f) (Quit: WeeChat 4.0.2) |
| 2023-07-28 08:33:57 +0000 | tbagrel1 | (~thomas@2a01:e0a:1ef:6520:c532:105d:de51:605) |
| 2023-07-28 08:34:04 +0000 | internatetional | (~nate@2001:448a:20a3:c2e5:71b9:a710:2866:667f) |
| 2023-07-28 08:37:09 +0000 | <tbagrel1> | Hey! I'm currently working on GHC memory model, and I don't exactly understand when a thunk will be overwritten with a constructor or overwritten by an indirection (IND) pointing to a newly allocated constructor. I tried to run some tests, by forcing a thunk of a small struct VS big struct, but I couldn't derive any rule from my empirical results. The larger scope of the project is inspecting |
| 2023-07-28 08:37:10 +0000 | <tbagrel1> | GHC's heap at runtime (which currently works well, except when encountering indirections) |
| 2023-07-28 08:37:56 +0000 | ub | (~Thunderbi@178.165.173.150.wireless.dyn.drei.com) |
| 2023-07-28 08:37:58 +0000 | lisbeths | (uid135845@id-135845.lymington.irccloud.com) (Quit: Connection closed for inactivity) |
| 2023-07-28 08:38:01 +0000 | shriekingnoise | (~shrieking@186.137.175.87) (Ping timeout: 244 seconds) |
| 2023-07-28 08:38:37 +0000 | ubert1 | (~Thunderbi@178.165.173.150.wireless.dyn.drei.com) |
| 2023-07-28 08:39:42 +0000 | razetime | (~quassel@117.193.5.53) (Ping timeout: 246 seconds) |
| 2023-07-28 08:39:57 +0000 | ubert | (~Thunderbi@178.115.37.112.wireless.dyn.drei.com) (Ping timeout: 245 seconds) |
| 2023-07-28 08:39:57 +0000 | ubert1 | ubert |
| 2023-07-28 08:44:51 +0000 | mango | (~finn@2001:861:5863:3d50:1ef0:ac25:6f3c:22c7) |
| 2023-07-28 08:57:19 +0000 | tcard | (~tcard@2400:4051:5801:7500:cf17:befc:ff82:5303) (Remote host closed the connection) |
| 2023-07-28 08:57:35 +0000 | tcard | (~tcard@2400:4051:5801:7500:cf17:befc:ff82:5303) |
| 2023-07-28 08:57:55 +0000 | razetime | (~quassel@117.193.5.53) |
| 2023-07-28 08:58:51 +0000 | dcoutts | (~duncan@cpc69402-oxfd27-2-0-cust903.4-3.cable.virginm.net) |
| 2023-07-28 09:02:49 +0000 | merijn | (~merijn@c-001-001-014.client.esciencecenter.eduvpn.nl) (Ping timeout: 244 seconds) |
| 2023-07-28 09:14:11 +0000 | gugu256 | (~gugu256@93.22.132.228) |
| 2023-07-28 09:14:46 +0000 | <gugu256> | Hi everybody |
| 2023-07-28 09:15:04 +0000 | <gugu256> | if i want to uninstall haskell, what folders should I remove (Windows) |
| 2023-07-28 09:15:36 +0000 | <gugu256> | uninstall GHCUP |
| 2023-07-28 09:15:43 +0000 | <gugu256> | uninstall Cabal & Stack |
| 2023-07-28 09:16:43 +0000 | <gugu256> | ??? |
| 2023-07-28 09:17:09 +0000 | yangby | (~secret@183.128.108.131) (Quit: Go out for a walk and buy a drink.) |
| 2023-07-28 09:18:37 +0000 | yangby | (~secret@183.128.108.131) |
| 2023-07-28 09:20:53 +0000 | eggplantade | (~Eggplanta@2600:1700:38c5:d800:d004:e151:c029:6b7c) (Remote host closed the connection) |
| 2023-07-28 09:24:59 +0000 | lisbeths | (uid135845@id-135845.lymington.irccloud.com) |
| 2023-07-28 09:26:28 +0000 | merijn | (~merijn@c-001-001-014.client.esciencecenter.eduvpn.nl) |
| 2023-07-28 09:27:52 +0000 | <danse-nr3> | gugu256, ghcup has its uninstallation doc https://www.haskell.org/ghcup/install/#uninstallation. Not sure whether it uninstall also cabal and stack |
| 2023-07-28 09:30:31 +0000 | mango_ | (~finn@2001:861:5863:3d50:37ea:5881:7052:43c7) |
| 2023-07-28 09:31:08 +0000 | dobblego | (~dibblego@116.255.1.151) |
| 2023-07-28 09:31:08 +0000 | dobblego | (~dibblego@116.255.1.151) (Changing host) |
| 2023-07-28 09:31:08 +0000 | dobblego | (~dibblego@haskell/developer/dibblego) |
| 2023-07-28 09:31:09 +0000 | merijn | (~merijn@c-001-001-014.client.esciencecenter.eduvpn.nl) (Ping timeout: 246 seconds) |
| 2023-07-28 09:31:09 +0000 | mango | (~finn@2001:861:5863:3d50:1ef0:ac25:6f3c:22c7) (Ping timeout: 246 seconds) |
| 2023-07-28 09:31:12 +0000 | dibblego | (~dibblego@haskell/developer/dibblego) (Ping timeout: 245 seconds) |
| 2023-07-28 09:31:39 +0000 | tromp | (~textual@92-110-219-57.cable.dynamic.v4.ziggo.nl) (Quit: My iMac has gone to sleep. ZZZzzz…) |
| 2023-07-28 09:31:52 +0000 | dobblego | dibblego |
| 2023-07-28 09:42:22 +0000 | yangby | (~secret@183.128.108.131) (Ping timeout: 252 seconds) |
| 2023-07-28 09:42:42 +0000 | yangby | (~secret@183.128.108.131) |
| 2023-07-28 09:42:51 +0000 | Lord_of_Life_ | (~Lord@user/lord-of-life/x-2819915) |
| 2023-07-28 09:42:52 +0000 | <maerwald> | gugu256: why |
| 2023-07-28 09:43:37 +0000 | mango_ | (~finn@2001:861:5863:3d50:37ea:5881:7052:43c7) (Ping timeout: 246 seconds) |
| 2023-07-28 09:43:51 +0000 | simikando | (~simikando@adsl-dyn-104.95-102-88.t-com.sk) |
| 2023-07-28 09:43:53 +0000 | Lord_of_Life | (~Lord@user/lord-of-life/x-2819915) (Ping timeout: 246 seconds) |
| 2023-07-28 09:44:49 +0000 | mango | (~finn@2001:861:5863:3d50:d28b:7203:a2f5:ab43) |
| 2023-07-28 09:44:50 +0000 | merijn | (~merijn@088-129-128-083.dynamic.caiway.nl) |
| 2023-07-28 09:45:36 +0000 | tromp | (~textual@92-110-219-57.cable.dynamic.v4.ziggo.nl) |
| 2023-07-28 09:45:44 +0000 | Lord_of_Life_ | Lord_of_Life |
| 2023-07-28 09:48:30 +0000 | <gugu256> | maerwald: 6 GB |
| 2023-07-28 09:48:44 +0000 | <maerwald> | gugu256: how much you got |
| 2023-07-28 09:49:19 +0000 | simikando | (~simikando@adsl-dyn-104.95-102-88.t-com.sk) (Ping timeout: 244 seconds) |
| 2023-07-28 09:49:34 +0000 | merijn | (~merijn@088-129-128-083.dynamic.caiway.nl) (Ping timeout: 246 seconds) |
| 2023-07-28 09:50:29 +0000 | simikando | (~simikando@adsl-dyn-104.95-102-88.t-com.sk) |
| 2023-07-28 09:53:33 +0000 | <maerwald> | gugu256: are you still counting? |
| 2023-07-28 09:53:41 +0000 | gugu_ | (~gugu256@219.134.22.93.rev.sfr.net) |
| 2023-07-28 09:53:56 +0000 | gugu_ | (~gugu256@219.134.22.93.rev.sfr.net) (Remote host closed the connection) |
| 2023-07-28 09:54:11 +0000 | <probie> | maerwald: does that really matter? It seems like a non sequitur. Even if it's just 4KiB there should be instructions on how to get rid of it |
| 2023-07-28 09:54:13 +0000 | raehik | (~raehik@cpc95906-rdng25-2-0-cust156.15-3.cable.virginm.net) |
| 2023-07-28 09:54:13 +0000 | gugu_ | (~gugu256@219.134.22.93.rev.sfr.net) |
| 2023-07-28 09:54:20 +0000 | <maerwald> | probie: there is |
| 2023-07-28 09:54:23 +0000 | <maerwald> | ghcup nuke |
| 2023-07-28 09:54:46 +0000 | gugu_ | gugu265 |
| 2023-07-28 09:54:47 +0000 | <maerwald> | just like in the oppenheimer movie |
| 2023-07-28 09:54:57 +0000 | <gugu265> | 6 GB of disk space is too much for just a compiler |
| 2023-07-28 09:55:07 +0000 | <maerwald> | hmm... you can reduce it by removing profiling libs |
| 2023-07-28 09:55:22 +0000 | <maerwald> | ghcup gc --help |
| 2023-07-28 09:55:30 +0000 | <maerwald> | it can go down to 1GB for just GHC |
| 2023-07-28 09:56:22 +0000 | <gugu265> | i removed everything |
| 2023-07-28 09:56:30 +0000 | <maerwald> | you nuked it? |
| 2023-07-28 09:56:35 +0000 | <[exa]> | cabal clean --oppenheimer |
| 2023-07-28 09:56:38 +0000 | <maerwald> | lol |
| 2023-07-28 09:56:41 +0000 | Guest8558 | (~finn@rul16-h01-176-151-21-224.dsl.sta.abo.bbox.fr) (Ping timeout: 245 seconds) |
| 2023-07-28 09:56:46 +0000 | gugu256 | (~gugu256@93.22.132.228) (Ping timeout: 250 seconds) |
| 2023-07-28 09:58:19 +0000 | <maerwald> | gugu265: also check ~/.cabal directory |
| 2023-07-28 09:58:36 +0000 | internatetional | (~nate@2001:448a:20a3:c2e5:71b9:a710:2866:667f) (Quit: WeeChat 4.0.2) |
| 2023-07-28 09:58:43 +0000 | <gugu265> | yes i removed it too |
| 2023-07-28 09:58:50 +0000 | internatetional | (~nate@2001:448a:20a3:c2e5:71b9:a710:2866:667f) |
| 2023-07-28 09:58:58 +0000 | driib | (~driib@vmi931078.contaboserver.net) (Quit: The Lounge - https://thelounge.chat) |
| 2023-07-28 09:59:04 +0000 | <maerwald> | and now what? |
| 2023-07-28 09:59:33 +0000 | driib | (~driib@vmi931078.contaboserver.net) |
| 2023-07-28 10:01:11 +0000 | Maxdamantus | (~Maxdamant@user/maxdamantus) (Ping timeout: 264 seconds) |
| 2023-07-28 10:01:39 +0000 | Maxdamantus | (~Maxdamant@user/maxdamantus) |
| 2023-07-28 10:01:52 +0000 | <gugu265> | now, i'll re-install haskell with less shit and more gold |
| 2023-07-28 10:01:58 +0000 | <maerwald> | uhm... how? |
| 2023-07-28 10:02:12 +0000 | <gugu265> | i'll just download the GHC ? |
| 2023-07-28 10:02:19 +0000 | <maerwald> | that'll still be 2GB lol |
| 2023-07-28 10:02:35 +0000 | <gugu265> | that's 4GB less |
| 2023-07-28 10:02:40 +0000 | <gugu265> | what version should I use ? |
| 2023-07-28 10:02:47 +0000 | <maerwald> | I won't tell you |
| 2023-07-28 10:02:49 +0000 | <gugu265> | 9.6.2 |
| 2023-07-28 10:02:49 +0000 | <gugu265> | 9.4.5 |
| 2023-07-28 10:02:49 +0000 | <gugu265> | 9.2.8 |
| 2023-07-28 10:02:54 +0000 | <maerwald> | but the other 4GB were due to HLS, not GHC |
| 2023-07-28 10:02:56 +0000 | <[exa]> | gugu265: tbh I'm doing the same, just get the binary ghc + binary cabal and put them into the system properly |
| 2023-07-28 10:02:58 +0000 | <maerwald> | you could have just uninstalled that |
| 2023-07-28 10:03:22 +0000 | <maerwald> | now you don't have an easy mechanism to remove profiling libs, for example |
| 2023-07-28 10:03:27 +0000 | <maerwald> | unless you know how to do it manually |
| 2023-07-28 10:03:34 +0000 | <maerwald> | seems like a step backwards |
| 2023-07-28 10:03:37 +0000 | <gugu265> | OK SO WHAT SHOULD I DO ? |
| 2023-07-28 10:03:43 +0000 | <maerwald> | first: panic |
| 2023-07-28 10:03:48 +0000 | <gugu265> | i don't have haskell installed on my computer, at all |
| 2023-07-28 10:03:48 +0000 | econo_ | (uid147250@id-147250.tinside.irccloud.com) (Quit: Connection closed for inactivity) |
| 2023-07-28 10:03:52 +0000 | <gugu265> | what do I do |
| 2023-07-28 10:04:28 +0000 | <maerwald> | curl --proto '=https' --tlsv1.2 -sSf https://get-ghcup.haskell.org | BOOTSTRAP_HASKELL_MINIMAL=yes sh |
| 2023-07-28 10:04:57 +0000 | <gugu265> | i'm on windows, u sure it'll work ? |
| 2023-07-28 10:05:01 +0000 | <maerwald> | ah |
| 2023-07-28 10:05:03 +0000 | <maerwald> | sec |
| 2023-07-28 10:05:30 +0000 | merijn | (~merijn@c-001-001-014.client.esciencecenter.eduvpn.nl) |
| 2023-07-28 10:05:34 +0000 | <gugu265> | I mean, i have MySys installed |
| 2023-07-28 10:05:49 +0000 | acro | (~acro@user/acro) (Quit: Bye.) |
| 2023-07-28 10:05:49 +0000 | ouroboros | (~ouroboros@user/ouroboros) (Quit: Bye.) |
| 2023-07-28 10:05:49 +0000 | <maerwald> | alright |
| 2023-07-28 10:06:05 +0000 | seeg123456 | (~seeg12345@64.176.64.83) () |
| 2023-07-28 10:06:52 +0000 | <maerwald> | Set-ExecutionPolicy Bypass -Scope Process -Force;[System.Net.ServicePointManager]::SecurityProtocol = [System.Net.ServicePointManager]::SecurityProtocol -bor 3072; try { Invoke-Command -ScriptBlock ([ScriptBlock]::Create((Invoke-WebRequest https://www.haskell.org/ghcup/sh/bootstrap-haskell.ps1 -UseBasicParsing))) -ArgumentList $true, $true } catch { Write-Error $_ } |
| 2023-07-28 10:06:56 +0000 | <maerwald> | that should do |
| 2023-07-28 10:07:02 +0000 | acro | (~acro@user/acro) |
| 2023-07-28 10:07:45 +0000 | <maerwald> | [exa]: manual installation on windows is quite challenging |
| 2023-07-28 10:08:04 +0000 | ouroboros | (~ouroboros@user/ouroboros) |
| 2023-07-28 10:08:09 +0000 | <gugu265> | yes that's the command they told me to do in the beginning |
| 2023-07-28 10:08:19 +0000 | <gugu265> | ok so now my question is, what do i need to install |
| 2023-07-28 10:08:22 +0000 | <maerwald> | gugu265: but this one is different |
| 2023-07-28 10:08:30 +0000 | <maerwald> | it will not install GHC |
| 2023-07-28 10:08:31 +0000 | <gugu265> | like what's the point of cabal and stack ? |
| 2023-07-28 10:08:40 +0000 | <maerwald> | gugu265: ignore stack for now |
| 2023-07-28 10:08:44 +0000 | <gugu265> | "it will not install GHC" ??? |
| 2023-07-28 10:08:50 +0000 | <maerwald> | yes, it's minimal |
| 2023-07-28 10:08:50 +0000 | <gugu265> | I want GHC, that's all i want actually |
| 2023-07-28 10:08:53 +0000 | <maerwald> | ok |
| 2023-07-28 10:09:07 +0000 | <maerwald> | then after it's done, you type: ghcup install ghc 9.4.5 |
| 2023-07-28 10:09:07 +0000 | tcard | (~tcard@2400:4051:5801:7500:cf17:befc:ff82:5303) (Quit: Leaving) |
| 2023-07-28 10:09:17 +0000 | idgaen | (~idgaen@2a01:e0a:498:fd50:fcc6:bb5d:489a:ce8c) (Quit: WeeChat 4.0.2) |
| 2023-07-28 10:09:20 +0000 | <maerwald> | it won't install HLS, stack or cabal |
| 2023-07-28 10:10:28 +0000 | puke | (~puke@user/puke) |
| 2023-07-28 10:10:50 +0000 | tcard | (~tcard@2400:4051:5801:7500:cf17:befc:ff82:5303) |
| 2023-07-28 10:11:22 +0000 | <gugu265> | extracting mysys archive... |
| 2023-07-28 10:11:31 +0000 | <maerwald> | you can tell it to use an existing msys2 |
| 2023-07-28 10:11:35 +0000 | <gugu265> | I didnt install anything else than Mysys btw |
| 2023-07-28 10:11:44 +0000 | <gugu265> | yeah but i don't know where is it |
| 2023-07-28 10:11:50 +0000 | <maerwald> | I don't know either |
| 2023-07-28 10:12:26 +0000 | <gugu265> | will it install ghci |
| 2023-07-28 10:12:27 +0000 | <gugu265> | ? |
| 2023-07-28 10:12:58 +0000 | <maerwald> | `ghcup install ghc 9.4.5` will |
| 2023-07-28 10:13:09 +0000 | <gugu265> | ok |
| 2023-07-28 10:13:11 +0000 | <gugu265> | And btw |
| 2023-07-28 10:13:12 +0000 | <maerwald> | or rather |
| 2023-07-28 10:13:20 +0000 | <maerwald> | ghcup install ghc --set 9.4.5 |
| 2023-07-28 10:13:23 +0000 | <gugu265> | Why do we need SOOO MUCH space just for 1 language ? |
| 2023-07-28 10:13:35 +0000 | <maerwald> | no idea |
| 2023-07-28 10:13:56 +0000 | <gugu265> | I'm gonna fckin raid the Glasgow University |
| 2023-07-28 10:14:07 +0000 | <maerwald> | maintaining compilers seems to be somewhat of a challenge is my guess |
| 2023-07-28 10:14:33 +0000 | <maerwald> | gugu265: uhm... |
| 2023-07-28 10:15:52 +0000 | <gugu265> | 262MB just for ghc/ghci |
| 2023-07-28 10:15:55 +0000 | <gugu265> | WHHYYYYY |
| 2023-07-28 10:16:01 +0000 | <danse-nr3> | is it not nice to get so much love from newcomers |
| 2023-07-28 10:16:04 +0000 | <maerwald> | gugu265: in US, these types of jokes are not that much appreciated (bc they actually happen) |
| 2023-07-28 10:16:15 +0000 | <maerwald> | so I'm guessing this is European humor |
| 2023-07-28 10:16:15 +0000 | <danse-nr3> | yeah that was quite bad |
| 2023-07-28 10:16:30 +0000 | <danse-nr3> | gugu265, you use windows anyways, why would you care about memory usage |
| 2023-07-28 10:16:43 +0000 | <maerwald> | lol |
| 2023-07-28 10:16:44 +0000 | <gugu265> | maerwald: Very European humor, my bad. And when i said raiding i kinda meant like a viking attack in my head |
| 2023-07-28 10:16:56 +0000 | <maerwald> | ok, viking attack with flowers? Makes sense |
| 2023-07-28 10:16:56 +0000 | <gugu265> | Cuz you know scotland |
| 2023-07-28 10:17:42 +0000 | <gugu265> | Merging file tree from "C:\ghcup\tmp\ghcup-61967fa73e18beb9\ghc-9.4.5-x86_64-unknown-mingw32" to "C:\ghcup\ghc\9.4.5" |
| 2023-07-28 10:17:50 +0000 | <maerwald> | yeah |
| 2023-07-28 10:17:53 +0000 | <gugu265> | it's been doing that for like 2 minutes |
| 2023-07-28 10:17:56 +0000 | <maerwald> | right |
| 2023-07-28 10:18:05 +0000 | <maerwald> | well... I know why |
| 2023-07-28 10:18:12 +0000 | <maerwald> | but I can't say whether we can fix it |
| 2023-07-28 10:18:21 +0000 | <maerwald> | it installs file by file for safety reasons |
| 2023-07-28 10:18:29 +0000 | <maerwald> | instead of moving entire directory |
| 2023-07-28 10:18:40 +0000 | <maerwald> | and apparently, those syscalls are SLOW on windows |
| 2023-07-28 10:18:44 +0000 | <gugu265> | it's so damn slow |
| 2023-07-28 10:19:07 +0000 | <gugu265> | maerwald: tried Linux once, almost destroyed my computer. never agin. |
| 2023-07-28 10:19:31 +0000 | <maerwald> | linux destroyed your computer or you did? |
| 2023-07-28 10:19:35 +0000 | <gugu265> | I did |
| 2023-07-28 10:19:52 +0000 | <maerwald> | well, I guess you are somewhat of a viking after all |
| 2023-07-28 10:20:00 +0000 | <gugu265> | i messed up when trying to go back to windows, and my computer couldn't boot up |
| 2023-07-28 10:20:10 +0000 | <maerwald> | I think destroying computers was a tradition in old times |
| 2023-07-28 10:20:17 +0000 | <gugu265> | Yess yes |
| 2023-07-28 10:20:21 +0000 | <gugu265> | my ancestors did that |
| 2023-07-28 10:20:28 +0000 | <maerwald> | excellent |
| 2023-07-28 10:20:36 +0000 | <gugu265> | OdinSH >>> other command line tools |
| 2023-07-28 10:20:44 +0000 | <gugu265> | [ Info ] GHC installation successful |
| 2023-07-28 10:20:48 +0000 | <gugu265> | Wooho |
| 2023-07-28 10:21:04 +0000 | <[exa]> | \o/ |
| 2023-07-28 10:21:08 +0000 | <maerwald> | so... can you type `ghci`? |
| 2023-07-28 10:21:22 +0000 | <gugu265> | it's not in path, SHITT |
| 2023-07-28 10:21:23 +0000 | eggplantade | (~Eggplanta@2600:1700:38c5:d800:d004:e151:c029:6b7c) |
| 2023-07-28 10:21:29 +0000 | <maerwald> | did you run refreshenv? |
| 2023-07-28 10:21:32 +0000 | <maerwald> | in your powershell |
| 2023-07-28 10:21:38 +0000 | <gugu265> | will do |
| 2023-07-28 10:21:43 +0000 | <[exa]> | gugu265: btw few hundreds of megs are a normal minimum for any compiler nowadays, unfortunately |
| 2023-07-28 10:22:28 +0000 | <gugu265> | refreshenv doesn't exist |
| 2023-07-28 10:23:10 +0000 | <gugu265> | i mean, I have the paths of ghc and ghci |
| 2023-07-28 10:23:16 +0000 | <gugu265> | can't i just add it myself in path ? |
| 2023-07-28 10:23:45 +0000 | <maerwald> | gugu265: RefreshEnv.exe |
| 2023-07-28 10:23:51 +0000 | <maerwald> | use tab completion man |
| 2023-07-28 10:24:44 +0000 | <gugu265> | where do i find refreshenv.exe ? |
| 2023-07-28 10:25:04 +0000 | <maerwald> | in your powershell |
| 2023-07-28 10:25:09 +0000 | <gugu265> | it doesn't work |
| 2023-07-28 10:25:24 +0000 | <gugu265> | wdym use tab completion ? |
| 2023-07-28 10:25:29 +0000 | eggplantade | (~Eggplanta@2600:1700:38c5:d800:d004:e151:c029:6b7c) (Ping timeout: 244 seconds) |
| 2023-07-28 10:26:01 +0000 | <maerwald> | close powershell and open again |
| 2023-07-28 10:26:26 +0000 | <gugu265> | still doesn't work |
| 2023-07-28 10:26:50 +0000 | <[exa]> | ghci or RefreshEnv.exe ? |
| 2023-07-28 10:26:56 +0000 | <gugu265> | both lol |
| 2023-07-28 10:27:15 +0000 | <gugu265> | ok all good |
| 2023-07-28 10:27:20 +0000 | <gugu265> | i added it in my path |
| 2023-07-28 10:27:22 +0000 | <gugu265> | myself |
| 2023-07-28 10:27:29 +0000 | <gugu265> | like a big boy |
| 2023-07-28 10:27:32 +0000 | <gugu265> | and it works |
| 2023-07-28 10:27:40 +0000 | <maerwald> | now you have it twice |
| 2023-07-28 10:27:46 +0000 | <gugu265> | twice ? |
| 2023-07-28 10:27:49 +0000 | <maerwald> | yes |
| 2023-07-28 10:27:52 +0000 | <maerwald> | in your PATH |
| 2023-07-28 10:28:00 +0000 | <maerwald> | oh |
| 2023-07-28 10:28:04 +0000 | <maerwald> | it's RefreshEnv.cmd |
| 2023-07-28 10:28:06 +0000 | <gugu265> | it was not in my path |
| 2023-07-28 10:28:21 +0000 | <maerwald> | check your path settings, I'm positive there will be two entries that are the same |
| 2023-07-28 10:28:22 +0000 | <gugu265> | RefreshEnv.cmd doesn't work |
| 2023-07-28 10:28:25 +0000 | <maerwald> | lol |
| 2023-07-28 10:28:32 +0000 | <maerwald> | your windows is busted |
| 2023-07-28 10:28:49 +0000 | <gugu265> | ,ope |
| 2023-07-28 10:28:50 +0000 | <gugu265> | nope |
| 2023-07-28 10:29:00 +0000 | <gugu265> | there aren't 2 duplicate entries |
| 2023-07-28 10:29:05 +0000 | <maerwald> | yes, prolly too old powershell version or something else |
| 2023-07-28 10:29:39 +0000 | <gugu265> | Windows 11 :skull: |
| 2023-07-28 10:29:49 +0000 | <maerwald> | or too new lol |
| 2023-07-28 10:29:50 +0000 | <maerwald> | xD |
| 2023-07-28 10:30:21 +0000 | <gugu265> | OK |
| 2023-07-28 10:30:33 +0000 | <gugu265> | So now i have an actual question abt haskell |
| 2023-07-28 10:31:06 +0000 | CiaoSen | (~Jura@2a05:5800:2a3:b400:664b:f0ff:fe37:9ef) (Ping timeout: 258 seconds) |
| 2023-07-28 10:31:06 +0000 | <maerwald> | I think you used up your support time already |
| 2023-07-28 10:31:09 +0000 | <maerwald> | jk :P |
| 2023-07-28 10:31:24 +0000 | Guest8558 | (~finn@176-151-21-224.abo.bbox.fr) |
| 2023-07-28 10:31:50 +0000 | <gugu265> | how come i cna write 3+3 in GHCI, and it works |
| 2023-07-28 10:32:04 +0000 | <gugu265> | but if i write 3+3 in a .hs file and then GHC this file, it says EROROROROR |
| 2023-07-28 10:32:16 +0000 | <maerwald> | ghci is an interactive repl |
| 2023-07-28 10:32:26 +0000 | <maerwald> | a proper source file is something different |
| 2023-07-28 10:32:30 +0000 | <maerwald> | you'll need bindings |
| 2023-07-28 10:32:38 +0000 | <maerwald> | you can't have free floating expressions |
| 2023-07-28 10:32:44 +0000 | <maerwald> | what they gonna do? |
| 2023-07-28 10:32:52 +0000 | titiband1t | (~titibandi@user/titibandit) |
| 2023-07-28 10:32:54 +0000 | <maerwald> | fall through your editor or what |
| 2023-07-28 10:33:00 +0000 | <gugu265> | ok |
| 2023-07-28 10:33:20 +0000 | <[exa]> | gugu265: try something like: main = print (3+3) |
| 2023-07-28 10:33:25 +0000 | <gugu265> | is this resource good : http://learnyouahaskell.com/ |
| 2023-07-28 10:33:33 +0000 | <gugu265> | [exa]: oh thx! |
| 2023-07-28 10:33:52 +0000 | <[exa]> | gugu265: the LYAH book has a newer and much updated version here https://learnyouahaskell.github.io/ |
| 2023-07-28 10:34:04 +0000 | <[exa]> | (still including the silly pictures) |
| 2023-07-28 10:34:20 +0000 | <gugu265> | oh thanks |
| 2023-07-28 10:35:18 +0000 | <maerwald> | gugu265: https://www.haskell.org/ghcup/steps/ |
| 2023-07-28 10:35:20 +0000 | <maerwald> | here's a first steps guide |
| 2023-07-28 10:35:25 +0000 | <[exa]> | also good. |
| 2023-07-28 10:35:57 +0000 | <gugu265> | The Glorious Glasgow Haskell Compilation System, version 9.4.5 go brrr |
| 2023-07-28 10:36:27 +0000 | danse-nr3 | (~francesco@151.37.208.115) (Remote host closed the connection) |
| 2023-07-28 10:36:49 +0000 | danse-nr3 | (~francesco@151.37.208.115) |
| 2023-07-28 10:38:33 +0000 | razetime | (~quassel@117.193.5.53) (Remote host closed the connection) |
| 2023-07-28 10:38:55 +0000 | mango | (~finn@2001:861:5863:3d50:d28b:7203:a2f5:ab43) (Ping timeout: 246 seconds) |
| 2023-07-28 10:43:43 +0000 | <maerwald> | gugu265: you can leave donations |
| 2023-07-28 10:43:52 +0000 | <gugu265> | what ? |
| 2023-07-28 10:43:59 +0000 | <maerwald> | look |
| 2023-07-28 10:44:06 +0000 | <maerwald> | you're enjoying Haskell... don't deny it |
| 2023-07-28 10:44:16 +0000 | <maerwald> | only fair to sponsor it |
| 2023-07-28 10:44:50 +0000 | <gugu265> | cabal update |
| 2023-07-28 10:44:50 +0000 | <gugu265> | Downloading the latest package list from hackage.haskell.org |
| 2023-07-28 10:44:55 +0000 | <gugu265> | why is this so long |
| 2023-07-28 10:44:58 +0000 | <maerwald> | that's gonna take a while yeah |
| 2023-07-28 10:45:01 +0000 | <maerwald> | 500mb I think |
| 2023-07-28 10:45:04 +0000 | <teddyc> | [exa]: ah and they removed the "you're fat lose some weight fatty" in the fork. good |
| 2023-07-28 10:45:34 +0000 | <gugu265> | ok i'll just ^C that then |
| 2023-07-28 10:45:38 +0000 | <maerwald> | what? |
| 2023-07-28 10:45:55 +0000 | <maerwald> | well... ^C doesn't always work on windows xD |
| 2023-07-28 10:46:01 +0000 | <maerwald> | oops |
| 2023-07-28 10:46:10 +0000 | <maerwald> | depends on your cabal version |
| 2023-07-28 10:46:45 +0000 | simikando | (~simikando@adsl-dyn-104.95-102-88.t-com.sk) (Ping timeout: 245 seconds) |
| 2023-07-28 10:49:08 +0000 | <[exa]> | teddyc: whoa good |
| 2023-07-28 10:50:48 +0000 | <maerwald> | lyah is fat shaming? |
| 2023-07-28 10:51:16 +0000 | <Rembane> | Yeah, it was. Very meh. |
| 2023-07-28 10:53:52 +0000 | mncheck | (~mncheck@193.224.205.254) |
| 2023-07-28 10:54:27 +0000 | dibblego | (~dibblego@haskell/developer/dibblego) (Ping timeout: 246 seconds) |
| 2023-07-28 10:54:47 +0000 | dibblego | (~dibblego@116-255-1-151.ip4.superloop.au) |
| 2023-07-28 10:54:47 +0000 | dibblego | (~dibblego@116-255-1-151.ip4.superloop.au) (Changing host) |
| 2023-07-28 10:54:47 +0000 | dibblego | (~dibblego@haskell/developer/dibblego) |
| 2023-07-28 10:55:49 +0000 | perrierjouet | (~perrierjo@modemcable048.127-56-74.mc.videotron.ca) (Quit: WeeChat 4.0.2) |
| 2023-07-28 10:59:46 +0000 | simikando | (~simikando@adsl-dyn-104.95-102-88.t-com.sk) |
| 2023-07-28 11:01:18 +0000 | titiband1t | (~titibandi@user/titibandit) (Remote host closed the connection) |
| 2023-07-28 11:03:00 +0000 | perrierjouet1 | (~perrierjo@modemcable048.127-56-74.mc.videotron.ca) |
| 2023-07-28 11:03:52 +0000 | gugu265 | (~gugu256@219.134.22.93.rev.sfr.net) (Remote host closed the connection) |
| 2023-07-28 11:04:17 +0000 | gugu265 | (~gugu256@219.134.22.93.rev.sfr.net) |
| 2023-07-28 11:13:39 +0000 | reach__ | (~reach@bras-base-toroon2643w-grc-02-142-198-51-47.dsl.bell.ca) |
| 2023-07-28 11:15:44 +0000 | seeg123456 | (~seeg12345@64.176.64.83) |
| 2023-07-28 11:17:40 +0000 | nate2 | (~nate@c-98-45-169-16.hsd1.ca.comcast.net) |
| 2023-07-28 11:18:03 +0000 | bontaq | (~user@ool-45779b84.dyn.optonline.net) |
| 2023-07-28 11:19:05 +0000 | reach__ | (~reach@bras-base-toroon2643w-grc-02-142-198-51-47.dsl.bell.ca) (Ping timeout: 246 seconds) |
| 2023-07-28 11:22:31 +0000 | nate2 | (~nate@c-98-45-169-16.hsd1.ca.comcast.net) (Ping timeout: 245 seconds) |
| 2023-07-28 11:24:47 +0000 | <maerwald> | dunno why I'm thinking of fat vikings now |
| 2023-07-28 11:25:10 +0000 | <Rembane> | maerwald: Have you played Lost Vikings lately? |
| 2023-07-28 11:25:22 +0000 | <maerwald> | nope... I haven't played games in years |
| 2023-07-28 11:25:36 +0000 | <maerwald> | maybe I should get a game controller |
| 2023-07-28 11:25:50 +0000 | <maerwald> | (can't use mouse for long) |
| 2023-07-28 11:27:07 +0000 | <Rembane> | It's a real classic, dunno if it's actually good |
| 2023-07-28 11:27:24 +0000 | <Rembane> | https://en.wikipedia.org/wiki/The_Lost_Vikings |
| 2023-07-28 11:27:41 +0000 | [itchyjunk] | (~itchyjunk@user/itchyjunk/x-7353470) |
| 2023-07-28 11:30:16 +0000 | <danse-nr3> | that was a great one |
| 2023-07-28 11:39:42 +0000 | maulanazn | (~maulanazn@103.144.170.135) |
| 2023-07-28 11:39:53 +0000 | maulanazn | (~maulanazn@103.144.170.135) () |
| 2023-07-28 11:49:12 +0000 | hdggxin | (~hdggxin@122.175.41.19) (Ping timeout: 240 seconds) |
| 2023-07-28 11:49:32 +0000 | misterfish | (~misterfis@84-53-85-146.bbserv.nl) (Ping timeout: 246 seconds) |
| 2023-07-28 11:52:50 +0000 | mima | (~mmh@ppp-212-114-180-185.dynamic.mnet-online.de) |
| 2023-07-28 11:53:22 +0000 | dibblego | (~dibblego@haskell/developer/dibblego) (Ping timeout: 260 seconds) |
| 2023-07-28 11:53:56 +0000 | <kenran> | I want to call https://hackage.haskell.org/package/sdl2-2.5.5.0/docs/SDL-Raw-Video.html#v:getWindowWMInfo, where SysWMInfo is a Ptr (), but the official SDL2 docs say that in order for that function to work, its info.version field needs to be filled in by another procedure call first. I haven't really done C FFI in Haskell, so I'm struggling with that part |
| 2023-07-28 11:55:04 +0000 | gugu265 | (~gugu256@219.134.22.93.rev.sfr.net) (Ping timeout: 250 seconds) |
| 2023-07-28 11:56:26 +0000 | <kenran> | I need to (I think) call getVersion :: MonadIO m => Ptr Version -> m (), but that Ptr needs to point "into" the SysWMInfo struct. Is that even possible with it being Ptr ()? |
| 2023-07-28 11:57:14 +0000 | dibblego | (~dibblego@116-255-1-151.ip4.superloop.au) |
| 2023-07-28 11:57:14 +0000 | dibblego | (~dibblego@116-255-1-151.ip4.superloop.au) (Changing host) |
| 2023-07-28 11:57:14 +0000 | dibblego | (~dibblego@haskell/developer/dibblego) |
| 2023-07-28 11:57:35 +0000 | raehik | (~raehik@cpc95906-rdng25-2-0-cust156.15-3.cable.virginm.net) (Ping timeout: 245 seconds) |
| 2023-07-28 11:57:48 +0000 | <kenran> | (the C code would be something like: SDL_SysWMInfo info; SDL_VERSION(&info.version); SDL_GetWindowWMInfo(&window, &info); |
| 2023-07-28 12:00:51 +0000 | perrierjouet1 | (~perrierjo@modemcable048.127-56-74.mc.videotron.ca) (Quit: WeeChat 4.0.2) |
| 2023-07-28 12:03:40 +0000 | perrierjouet | (~perrierjo@modemcable048.127-56-74.mc.videotron.ca) |
| 2023-07-28 12:03:47 +0000 | misterfish | (~misterfis@84-53-85-146.bbserv.nl) |
| 2023-07-28 12:04:46 +0000 | lambdabot | (~lambdabot@haskell/bot/lambdabot) (Remote host closed the connection) |
| 2023-07-28 12:05:14 +0000 | AlexNoo | (~AlexNoo@178.34.162.202) (Read error: Connection reset by peer) |
| 2023-07-28 12:05:16 +0000 | lambdabot | (~lambdabot@silicon.int-e.eu) |
| 2023-07-28 12:05:16 +0000 | lambdabot | (~lambdabot@silicon.int-e.eu) (Changing host) |
| 2023-07-28 12:05:16 +0000 | lambdabot | (~lambdabot@haskell/bot/lambdabot) |
| 2023-07-28 12:05:39 +0000 | AlexNoo | (~AlexNoo@178.34.162.202) |
| 2023-07-28 12:05:43 +0000 | Guest8558 | (~finn@176-151-21-224.abo.bbox.fr) (Ping timeout: 246 seconds) |
| 2023-07-28 12:06:07 +0000 | raehik | (~raehik@cpc95906-rdng25-2-0-cust156.15-3.cable.virginm.net) |
| 2023-07-28 12:08:52 +0000 | hdggxin | (~hdggxin@122.175.41.19) |
| 2023-07-28 12:09:11 +0000 | misterfish | (~misterfis@84-53-85-146.bbserv.nl) (Ping timeout: 245 seconds) |
| 2023-07-28 12:09:44 +0000 | <geekosaur> | kenran, `plusPtr` is a thing |
| 2023-07-28 12:10:26 +0000 | <geekosaur> | the parameter to `Ptr` is meaningless except as a tag you can use to keep distinct `Ptr`s straight in Haskell (that is, it's phantom) |
| 2023-07-28 12:11:59 +0000 | MajorBiscuit | (~MajorBisc@2001:1c00:31c:8400:f184:4168:559b:d91b) |
| 2023-07-28 12:12:46 +0000 | <kenran> | geekosaur: ahh thanks, that makes one thing clear for me! So.... in order to even get the initial SysWMInfo, I'd need to allocate manually? Or how else would I even get that initial info pointer? |
| 2023-07-28 12:13:21 +0000 | <geekosaur> | this might be easier using "CApi" calling convention (requires `CApiFFI` extension) because then you could call `SDL_VERSION(&info.version)` directly, assuming it's `Storable` |
| 2023-07-28 12:13:32 +0000 | <geekosaur> | that's what `alloca` is for |
| 2023-07-28 12:18:12 +0000 | <kenran> | sorry, I'm struggling to even clearly formulate my questions :) thanks for all the advice! (probably) last question: in order to use alloca, I'd need a Haskell type for the `a`, which in my case doesn't exist yet. Is that correct? |
| 2023-07-28 12:18:45 +0000 | <kenran> | (I'll just read up on C FFI from scratch now) |
| 2023-07-28 12:18:57 +0000 | <geekosaur> | here's where you want `Storable` |
| 2023-07-28 12:19:18 +0000 | <geekosaur> | which lets you describe a mapping between a C `struct` and a Haskell type |
| 2023-07-28 12:19:35 +0000 | danse-nr3 | (~francesco@151.37.208.115) (Read error: Connection reset by peer) |
| 2023-07-28 12:19:50 +0000 | danse-nr3 | (~francesco@151.35.133.32) |
| 2023-07-28 12:20:50 +0000 | <geekosaur> | and `hsc2hs` is one of several tools that helps you build `Storable` instances (`c2hs` is another, somewhat more automated but can make mistakes or need extra help because in C there's no difference between `foo *x` and `foo x[n]`) |
| 2023-07-28 12:21:13 +0000 | gugu265 | (~gugu256@219.134.22.93.rev.sfr.net) |
| 2023-07-28 12:25:39 +0000 | gurkenglas | (~gurkengla@dynamic-046-114-089-015.46.114.pool.telefonica.de) |
| 2023-07-28 12:26:33 +0000 | dobblego | (~dibblego@116-255-1-151.ip4.superloop.au) |
| 2023-07-28 12:26:33 +0000 | dobblego | (~dibblego@116-255-1-151.ip4.superloop.au) (Changing host) |
| 2023-07-28 12:26:34 +0000 | dobblego | (~dibblego@haskell/developer/dibblego) |
| 2023-07-28 12:26:41 +0000 | dibblego | (~dibblego@haskell/developer/dibblego) (Ping timeout: 245 seconds) |
| 2023-07-28 12:27:17 +0000 | dobblego | dibblego |
| 2023-07-28 12:27:21 +0000 | <chiselfuse> | what's wrong with this? f :: a -> a f 1 = 1 |
| 2023-07-28 12:27:40 +0000 | <chiselfuse> | • No instance for (Eq a) arising from the literal ‘1’ |
| 2023-07-28 12:30:36 +0000 | <geekosaur> | you specified "any type `a`" then used one that requires `Eq` for a pattern match |
| 2023-07-28 12:31:07 +0000 | <kenran> | cool, I seem to begin to grasp it :) so in my case I could create an .hsc file, containing my MySysWMInfo definition (where I use the existing Version type) and mapping, then use alloca to get a pointer, call getVersion |
| 2023-07-28 12:31:13 +0000 | <kenran> | I'll try that later on, thanks again geekosaur |
| 2023-07-28 12:31:48 +0000 | <chiselfuse> | geekosaur: by pattern match you mean when haskell runs and tries to match the query `f 1` to the definition? |
| 2023-07-28 12:31:53 +0000 | <geekosaur> | yes |
| 2023-07-28 12:32:06 +0000 | Inst | (~Inst@c-76-101-10-131.hsd1.fl.comcast.net) (Ping timeout: 245 seconds) |
| 2023-07-28 12:32:16 +0000 | <geekosaur> | pattern matches on instances of `Num` get translated into guards using `Eq` |
| 2023-07-28 12:32:40 +0000 | <chiselfuse> | ok, i specified that a should be of Eq and now i'm getting • Could not deduce (Num a) arising from the literal ‘1’ |
| 2023-07-28 12:33:20 +0000 | tromp | (~textual@92-110-219-57.cable.dynamic.v4.ziggo.nl) (Quit: My iMac has gone to sleep. ZZZzzz…) |
| 2023-07-28 12:33:43 +0000 | hugo | (znc@verdigris.lysator.liu.se) (Ping timeout: 246 seconds) |
| 2023-07-28 12:34:21 +0000 | <geekosaur> | right, that's the other `1` which requires `Num` |
| 2023-07-28 12:34:42 +0000 | kenran | (~user@user/kenran) (Remote host closed the connection) |
| 2023-07-28 12:34:51 +0000 | <chiselfuse> | but what if i want to have `f 2 = True` |
| 2023-07-28 12:35:24 +0000 | simikando | (~simikando@adsl-dyn-104.95-102-88.t-com.sk) (Quit: Leaving) |
| 2023-07-28 12:38:05 +0000 | <ncf> | functions can't return different types based on the value of their argument, at least in haskell |
| 2023-07-28 12:40:12 +0000 | <geekosaur> | I take it you're used to something like Java where you can use `java.lang.Object` of which everything is an instance? |
| 2023-07-28 12:40:37 +0000 | <geekosaur> | we don't have any equivalent to that, and in particular there is no subtyping |
| 2023-07-28 12:41:12 +0000 | jmd_ | (~jmdaemon@user/jmdaemon) (Ping timeout: 246 seconds) |
| 2023-07-28 12:42:14 +0000 | Inst | (~Inst@c-76-101-10-131.hsd1.fl.comcast.net) |
| 2023-07-28 12:45:43 +0000 | hugo- | (znc@verdigris.lysator.liu.se) |
| 2023-07-28 12:46:45 +0000 | acidjnk | (~acidjnk@p200300d6e7072f09b522d1b3cfe8e851.dip0.t-ipconnect.de) (Ping timeout: 245 seconds) |
| 2023-07-28 12:55:06 +0000 | <chiselfuse> | how can i define a function that returns a function of its own type? |
| 2023-07-28 12:55:59 +0000 | <chiselfuse> | it takes say an Int, and returns a function that takes an Int that returns a function that takes an Int... and so on |
| 2023-07-28 12:57:23 +0000 | MajorBiscuit | (~MajorBisc@2001:1c00:31c:8400:f184:4168:559b:d91b) (Ping timeout: 244 seconds) |
| 2023-07-28 12:57:55 +0000 | Inst | (~Inst@c-76-101-10-131.hsd1.fl.comcast.net) (Ping timeout: 258 seconds) |
| 2023-07-28 12:57:55 +0000 | <danse-nr3> | how would such function even return anything? |
| 2023-07-28 12:58:27 +0000 | <danse-nr3> | *ever |
| 2023-07-28 12:59:00 +0000 | <chiselfuse> | hmm good point, guess i'll need a helper |
| 2023-07-28 12:59:16 +0000 | MajorBiscuit | (~MajorBisc@c-001-019-004.client.tudelft.eduvpn.nl) |
| 2023-07-28 12:59:19 +0000 | <chiselfuse> | wait no |
| 2023-07-28 12:59:27 +0000 | barcisz | (~barcisz@83.6.202.49.ipv4.supernova.orange.pl) |
| 2023-07-28 12:59:34 +0000 | <chiselfuse> | don't know actually |
| 2023-07-28 12:59:46 +0000 | <chiselfuse> | i'm trying to use currying to implement a variadic function |
| 2023-07-28 12:59:53 +0000 | dcoutts | (~duncan@cpc69402-oxfd27-2-0-cust903.4-3.cable.virginm.net) (Ping timeout: 246 seconds) |
| 2023-07-28 12:59:55 +0000 | <chiselfuse> | without using other haskell features |
| 2023-07-28 13:00:32 +0000 | <chiselfuse> | so i was thinking of returning the function over and over so it'd apply itself again and again on all functions until it reaches a delimiter |
| 2023-07-28 13:00:46 +0000 | <danse-nr3> | i guess a list does not give you the flexibility you are looking for |
| 2023-07-28 13:00:53 +0000 | <chiselfuse> | s/on all functions/on all arguments/ |
| 2023-07-28 13:01:00 +0000 | Cale | (~cale@cpe80d04ade0a03-cm80d04ade0a01.cpe.net.cable.rogers.com) |
| 2023-07-28 13:01:03 +0000 | <geekosaur> | you need a way to match a delimiter, which gets you into the realm of typeclasses |
| 2023-07-28 13:01:03 +0000 | <chiselfuse> | danse-nr3: i don't want to use that either |
| 2023-07-28 13:01:08 +0000 | bitdex | (~bitdex@gateway/tor-sasl/bitdex) |
| 2023-07-28 13:01:14 +0000 | <geekosaur> | e.g. PrintfType |
| 2023-07-28 13:01:17 +0000 | <chiselfuse> | i want f 1 2 3 4 5 ... delimiter |
| 2023-07-28 13:02:13 +0000 | acidjnk | (~acidjnk@p200300d6e7072f09a8b60c3f1e99feab.dip0.t-ipconnect.de) |
| 2023-07-28 13:02:21 +0000 | <danse-nr3> | like `f (Just 1) (Just 2) (Just 3) Nothing` |
| 2023-07-28 13:02:31 +0000 | <chiselfuse> | danse-nr3: yes |
| 2023-07-28 13:03:17 +0000 | dobblego | (~dibblego@116.255.1.151) |
| 2023-07-28 13:03:18 +0000 | dobblego | (~dibblego@116.255.1.151) (Changing host) |
| 2023-07-28 13:03:18 +0000 | dobblego | (~dibblego@haskell/developer/dibblego) |
| 2023-07-28 13:03:28 +0000 | dcoutts | (~duncan@cpc69402-oxfd27-2-0-cust903.4-3.cable.virginm.net) |
| 2023-07-28 13:03:28 +0000 | tromp | (~textual@92-110-219-57.cable.dynamic.v4.ziggo.nl) |
| 2023-07-28 13:03:41 +0000 | <chiselfuse> | uh, how did you say i'd achieve that again? |
| 2023-07-28 13:03:46 +0000 | dibblego | (~dibblego@haskell/developer/dibblego) (Ping timeout: 245 seconds) |
| 2023-07-28 13:04:00 +0000 | dobblego | dibblego |
| 2023-07-28 13:04:07 +0000 | <ncf> | typeclasses (but your delimiter wouldn't be Nothing, it would be an element of another type) |
| 2023-07-28 13:04:12 +0000 | <danse-nr3> | geekosaur, i am scared of looking into that, printf seemed hacky and unsafe the last time i looked into it |
| 2023-07-28 13:05:16 +0000 | <geekosaur> | it's not, really. and while I think the current version uses more stuff, the basic trick is Haskell98 |
| 2023-07-28 13:05:44 +0000 | <chiselfuse> | ncf: what's "typeclasses", it's stuff like Eq, how would i use that? |
| 2023-07-28 13:05:59 +0000 | <geekosaur> | granting that any way to do this is "hacky" in some sense, because Haskell doesn't really do variadic functions |
| 2023-07-28 13:08:38 +0000 | <danse-nr3> | yeah, not easily though. chiselfuse's question is interesting though, although i find it hard to apply my brain on something that seems more easily achievable with lists |
| 2023-07-28 13:08:57 +0000 | <danse-nr3> | *not easily at least |
| 2023-07-28 13:12:02 +0000 | reach__ | (~reach@bras-base-toroon2643w-grc-02-142-198-51-47.dsl.bell.ca) |
| 2023-07-28 13:12:06 +0000 | <danse-nr3> | i cannot think of a function that could call itself with that interface. Maybe an helper, but then it would feed another function that takes lists. Would it still be worth anything for you chiselfuse? |
| 2023-07-28 13:13:26 +0000 | <chiselfuse> | danse-nr3: that'd be fine |
| 2023-07-28 13:15:47 +0000 | <danse-nr3> | now i am in trouble ... maybe you know that it is theoretically impossible and are just testing us :D ... i will give this a try shortly |
| 2023-07-28 13:17:51 +0000 | <chiselfuse> | i am not testing anyone lol, someone implied it was possible that's all i know |
| 2023-07-28 13:18:21 +0000 | azimut | (~azimut@gateway/tor-sasl/azimut) |
| 2023-07-28 13:21:56 +0000 | <danse-nr3> | `f (Just 1) (Just 2) (Just 3) Nothing (Just 4)` should throw a compiler error. So at compiler time we would need to know the result of applying `f` ... that sounds like going against some principles of computer science |
| 2023-07-28 13:23:27 +0000 | tromp | (~textual@92-110-219-57.cable.dynamic.v4.ziggo.nl) (Quit: My iMac has gone to sleep. ZZZzzz…) |
| 2023-07-28 13:25:59 +0000 | tromp | (~textual@92-110-219-57.cable.dynamic.v4.ziggo.nl) |
| 2023-07-28 13:26:38 +0000 | <danse-nr3> | nope, i think it is not possible. Maybe ncf knows a way with typeclasses |
| 2023-07-28 13:26:53 +0000 | <ncf> | i just said that was not possible |
| 2023-07-28 13:28:39 +0000 | <ncf> | for the typeclass trick, see https://hackage.haskell.org/package/base-4.18.0.0/docs/Text-Printf.html#t:PrintfType |
| 2023-07-28 13:29:17 +0000 | <ncf> | that has no delimiter, but you can add one if you want to by adding an arrow in the base case |
| 2023-07-28 13:37:43 +0000 | tromp | (~textual@92-110-219-57.cable.dynamic.v4.ziggo.nl) (Quit: My iMac has gone to sleep. ZZZzzz…) |
| 2023-07-28 13:37:49 +0000 | masterbuilder | (~masterbui@user/masterbuilder) |
| 2023-07-28 13:39:19 +0000 | sm[i] | (~sm@2601:196:4b80:3a40:210c:477a:6863:3d54) |
| 2023-07-28 13:43:15 +0000 | bitdex | (~bitdex@gateway/tor-sasl/bitdex) (Quit: = "") |
| 2023-07-28 13:43:46 +0000 | tromp | (~textual@92-110-219-57.cable.dynamic.v4.ziggo.nl) |
| 2023-07-28 13:44:07 +0000 | sm[i] | (~sm@2601:196:4b80:3a40:210c:477a:6863:3d54) (Client Quit) |
| 2023-07-28 13:48:55 +0000 | seeg123456 | (~seeg12345@64.176.64.83) () |
| 2023-07-28 13:54:08 +0000 | tromp | (~textual@92-110-219-57.cable.dynamic.v4.ziggo.nl) (Quit: My iMac has gone to sleep. ZZZzzz…) |
| 2023-07-28 13:59:52 +0000 | merijn | (~merijn@c-001-001-014.client.esciencecenter.eduvpn.nl) (Ping timeout: 250 seconds) |
| 2023-07-28 14:03:35 +0000 | mei | (~mei@user/mei) (Read error: Connection reset by peer) |
| 2023-07-28 14:05:24 +0000 | ystael | (~ystael@user/ystael) |
| 2023-07-28 14:06:01 +0000 | mei | (~mei@user/mei) |
| 2023-07-28 14:07:26 +0000 | puke | (~puke@user/puke) (Ping timeout: 246 seconds) |
| 2023-07-28 14:08:12 +0000 | tromp | (~textual@92-110-219-57.cable.dynamic.v4.ziggo.nl) |
| 2023-07-28 14:14:24 +0000 | internatetional | (~nate@2001:448a:20a3:c2e5:71b9:a710:2866:667f) (Quit: WeeChat 4.0.2) |
| 2023-07-28 14:19:42 +0000 | internatetional | (~nate@2001:448a:20a3:c2e5:71b9:a710:2866:667f) |
| 2023-07-28 14:19:44 +0000 | ub | (~Thunderbi@178.165.173.150.wireless.dyn.drei.com) (Quit: ub) |
| 2023-07-28 14:20:48 +0000 | mango | (~finn@2001:861:5863:3d50:4d58:d5db:5cbe:9ed8) |
| 2023-07-28 14:21:08 +0000 | thegeekinside | (~thegeekin@189.217.90.138) |
| 2023-07-28 14:26:55 +0000 | merijn | (~merijn@c-001-001-014.client.esciencecenter.eduvpn.nl) |
| 2023-07-28 14:28:22 +0000 | ec | (~ec@gateway/tor-sasl/ec) (Remote host closed the connection) |
| 2023-07-28 14:29:45 +0000 | <EvanR> | danse-nr3, a funny application of dependent types, which obeys computer science, is having the type of printf depend on the format string passed in |
| 2023-07-28 14:30:13 +0000 | ec | (~ec@gateway/tor-sasl/ec) |
| 2023-07-28 14:31:04 +0000 | reach__ | (~reach@bras-base-toroon2643w-grc-02-142-198-51-47.dsl.bell.ca) (Ping timeout: 250 seconds) |
| 2023-07-28 14:31:15 +0000 | <EvanR> | which is an extreme roundabout way to achieve something that's ultimately a bad idea probably xD |
| 2023-07-28 14:34:58 +0000 | perrierjouet | (~perrierjo@modemcable048.127-56-74.mc.videotron.ca) (Ping timeout: 250 seconds) |
| 2023-07-28 14:35:55 +0000 | ec | (~ec@gateway/tor-sasl/ec) (Remote host closed the connection) |
| 2023-07-28 14:37:53 +0000 | sm[i] | (~sm@172.56.113.55) |
| 2023-07-28 14:38:50 +0000 | <danse-nr3> | well, that does not seem too bad, provides type safety |
| 2023-07-28 14:39:40 +0000 | <[exa]> | type safety against a string |
| 2023-07-28 14:39:50 +0000 | <[exa]> | pls don't |
| 2023-07-28 14:40:33 +0000 | <danse-nr3> | uh? Given a formatting string you get a type safe function to consume values that fit there |
| 2023-07-28 14:41:03 +0000 | <[exa]> | it sounds like a good idea right? |
| 2023-07-28 14:41:21 +0000 | <danse-nr3> | no, you are right. Better ignore everything and explode at runtime |
| 2023-07-28 14:41:23 +0000 | <geekosaur> | now you just need a way to make sure that string is a constant |
| 2023-07-28 14:42:19 +0000 | <[exa]> | danse-nr3: or have an actual correct formatter/prettyprinter in place |
| 2023-07-28 14:43:36 +0000 | <[exa]> | btw if the string is compiletime constant you could use TH to convert it to correctly typed formatting function, which is IMO much less of an atrocity |
| 2023-07-28 14:44:48 +0000 | <danse-nr3> | i see what you mean ... yeah i guess that the ergonomy of passing a string that affects the type is similar to pass a typed value that would not require dependent types |
| 2023-07-28 14:45:34 +0000 | <geekosaur> | I think there's at least one printf impl that does that on hackage? |
| 2023-07-28 14:45:35 +0000 | raehik | (~raehik@cpc95906-rdng25-2-0-cust156.15-3.cable.virginm.net) (Ping timeout: 264 seconds) |
| 2023-07-28 14:45:42 +0000 | <geekosaur> | although it may be a proof of concept |
| 2023-07-28 14:47:58 +0000 | lisbeths | (uid135845@id-135845.lymington.irccloud.com) (Quit: Connection closed for inactivity) |
| 2023-07-28 14:48:22 +0000 | shriekingnoise | (~shrieking@186.137.175.87) |
| 2023-07-28 14:48:39 +0000 | Lycurgus | (~juan@user/Lycurgus) |
| 2023-07-28 14:50:10 +0000 | perrierjouet | (~perrierjo@modemcable048.127-56-74.mc.videotron.ca) |
| 2023-07-28 14:50:26 +0000 | <[exa]> | I somehow guessed it's gonna be named printf-th and voila |
| 2023-07-28 14:50:40 +0000 | Lycurgus | (~juan@user/Lycurgus) (Client Quit) |
| 2023-07-28 14:51:42 +0000 | ec | (~ec@gateway/tor-sasl/ec) |
| 2023-07-28 14:52:09 +0000 | mango | (~finn@2001:861:5863:3d50:4d58:d5db:5cbe:9ed8) (Ping timeout: 258 seconds) |
| 2023-07-28 14:52:46 +0000 | sm[i] | (~sm@172.56.113.55) (Quit: sm[i]) |
| 2023-07-28 14:54:55 +0000 | reach__ | (~reach@bras-base-toroon2643w-grc-02-142-198-51-47.dsl.bell.ca) |
| 2023-07-28 14:55:05 +0000 | sm[i] | (~sm@2607:fb90:3c9a:6cc7:e920:67c0:23ad:80fa) |
| 2023-07-28 15:00:38 +0000 | Inst | (~Inst@2601:6c4:4081:2fc0:dcd5:b807:d9d7:f4a0) |
| 2023-07-28 15:01:11 +0000 | merijn | (~merijn@c-001-001-014.client.esciencecenter.eduvpn.nl) (Ping timeout: 264 seconds) |
| 2023-07-28 15:04:33 +0000 | gugu265 | (~gugu256@219.134.22.93.rev.sfr.net) (Read error: Connection reset by peer) |
| 2023-07-28 15:05:35 +0000 | sm[i] | (~sm@2607:fb90:3c9a:6cc7:e920:67c0:23ad:80fa) (Quit: sm[i]) |
| 2023-07-28 15:06:40 +0000 | simikando | (~simikando@adsl-dyn-104.95-102-88.t-com.sk) |
| 2023-07-28 15:06:48 +0000 | Sgeo | (~Sgeo@user/sgeo) |
| 2023-07-28 15:07:55 +0000 | harveypwca | (~harveypwc@2601:246:c180:a570:3828:d8:e523:3f67) |
| 2023-07-28 15:08:03 +0000 | seeg123456 | (~seeg12345@64.176.64.83) |
| 2023-07-28 15:11:37 +0000 | MajorBiscuit | (~MajorBisc@c-001-019-004.client.tudelft.eduvpn.nl) (Quit: WeeChat 3.6) |
| 2023-07-28 15:14:41 +0000 | Inst_ | (~Inst@2601:6c4:4081:2fc0:dcd5:b807:d9d7:f4a0) |
| 2023-07-28 15:16:23 +0000 | merijn | (~merijn@c-001-001-014.client.esciencecenter.eduvpn.nl) |
| 2023-07-28 15:18:04 +0000 | Inst | (~Inst@2601:6c4:4081:2fc0:dcd5:b807:d9d7:f4a0) (Ping timeout: 260 seconds) |
| 2023-07-28 15:18:12 +0000 | Inst__ | (~Inst@2601:6c4:4081:2fc0:b8e3:e527:5654:3c93) |
| 2023-07-28 15:19:09 +0000 | nate2 | (~nate@c-98-45-169-16.hsd1.ca.comcast.net) |
| 2023-07-28 15:19:12 +0000 | pavonia | (~user@user/siracusa) (Quit: Bye!) |
| 2023-07-28 15:20:23 +0000 | Inst_ | (~Inst@2601:6c4:4081:2fc0:dcd5:b807:d9d7:f4a0) (Ping timeout: 264 seconds) |
| 2023-07-28 15:20:47 +0000 | merijn | (~merijn@c-001-001-014.client.esciencecenter.eduvpn.nl) (Ping timeout: 245 seconds) |
| 2023-07-28 15:23:59 +0000 | eggplantade | (~Eggplanta@2600:1700:38c5:d800:d004:e151:c029:6b7c) |
| 2023-07-28 15:24:35 +0000 | nate2 | (~nate@c-98-45-169-16.hsd1.ca.comcast.net) (Ping timeout: 264 seconds) |
| 2023-07-28 15:26:06 +0000 | masterbuilder | (~masterbui@user/masterbuilder) (Quit: Lost terminal) |
| 2023-07-28 15:29:39 +0000 | <danse-nr3> | is there a compiler feature to make the performance of `map f . filter g` equal to mapMaybe, iterating a list only once? |
| 2023-07-28 15:31:27 +0000 | <danse-nr3> | list fusion, i guess https://wiki.haskell.org/GHC_optimisations#Fusion |
| 2023-07-28 15:32:06 +0000 | <geekosaur> | right, but then you have to see if using that fires any appropriate RULES |
| 2023-07-28 15:32:09 +0000 | merijn | (~merijn@c-001-001-014.client.esciencecenter.eduvpn.nl) |
| 2023-07-28 15:32:31 +0000 | <geekosaur> | list fusion requires that someone predefine the fusion rules |
| 2023-07-28 15:34:46 +0000 | <danse-nr3> | i guess i will use mapMaybe then. Cheers |
| 2023-07-28 15:35:02 +0000 | mncheck | (~mncheck@193.224.205.254) (Ping timeout: 260 seconds) |
| 2023-07-28 15:36:41 +0000 | merijn | (~merijn@c-001-001-014.client.esciencecenter.eduvpn.nl) (Ping timeout: 245 seconds) |
| 2023-07-28 15:37:31 +0000 | tbagrel1 | (~thomas@2a01:e0a:1ef:6520:c532:105d:de51:605) (Quit: WeeChat 3.5) |
| 2023-07-28 15:38:20 +0000 | thegeekinside | (~thegeekin@189.217.90.138) (Read error: Connection reset by peer) |
| 2023-07-28 15:39:08 +0000 | <geekosaur> | looks to me like map and filter are both FB rules, see Note [Inline FB functions] in GHC.List |
| 2023-07-28 15:39:29 +0000 | <geekosaur> | so it should optimize, not to mapMaybe but to something morally equivalent |
| 2023-07-28 15:39:47 +0000 | <geekosaur> | and perhaps faster |
| 2023-07-28 15:40:15 +0000 | <geekosaur> | (single pass, no Maybe involved) |
| 2023-07-28 15:41:04 +0000 | albet70 | (~xxx@2400:8902::f03c:92ff:fe60:98d8) (Remote host closed the connection) |
| 2023-07-28 15:41:49 +0000 | dfg | (~dfg@user/dfg) (Remote host closed the connection) |
| 2023-07-28 15:42:15 +0000 | dfg | (~dfg@dfg.rocks) |
| 2023-07-28 15:42:15 +0000 | dfg | (~dfg@dfg.rocks) (Changing host) |
| 2023-07-28 15:42:15 +0000 | dfg | (~dfg@user/dfg) |
| 2023-07-28 15:45:11 +0000 | <geekosaur> | so instead of mapMaybe it should filterFB and mapFB in the same list operation, either dropping the filtered element or mapping it |
| 2023-07-28 15:46:02 +0000 | bitdex | (~bitdex@gateway/tor-sasl/bitdex) |
| 2023-07-28 15:46:37 +0000 | <danse-nr3> | thanks, but seems a bit opaque, i think i will stick to mapMaybe for now |
| 2023-07-28 15:46:59 +0000 | <geekosaur> | it is a bit opaque, but it's suitably clever |
| 2023-07-28 15:47:08 +0000 | <geekosaur> | ghc is pretty good at this stuff |
| 2023-07-28 15:47:11 +0000 | albet70 | (~xxx@2400:8902::f03c:92ff:fe60:98d8) |
| 2023-07-28 15:47:59 +0000 | arahael_ | (~arahael@115-64-199-191.tpgi.com.au) |
| 2023-07-28 15:48:06 +0000 | <danse-nr3> | yep, it will be handy for the times where we did not notice, and maybe with time i will learn the rules |
| 2023-07-28 15:48:53 +0000 | <danse-nr3> | is there a table to look up for them? |
| 2023-07-28 15:49:17 +0000 | <geekosaur> | as a practical matter, the rules are "write the obvious code and worry about optimization if and when it's shown to be necessary" |
| 2023-07-28 15:49:44 +0000 | razetime | (~quassel@117.193.5.53) |
| 2023-07-28 15:49:59 +0000 | <geekosaur> | also you may be left pretty embarrassed if your mapMaybe ends up slower than ghc's FB optimizations |
| 2023-07-28 15:50:20 +0000 | idgaen | (~idgaen@2a01:e0a:498:fd50:fcc6:bb5d:489a:ce8c) |
| 2023-07-28 15:50:28 +0000 | <danse-nr3> | you told me "you have to see if using that fires any appropriate rules", so i thought there was some reference somewhere |
| 2023-07-28 15:50:50 +0000 | _ht | (~Thunderbi@28-52-174-82.ftth.glasoperator.nl) |
| 2023-07-28 15:50:59 +0000 | <geekosaur> | the reference is the source code. I probably should not have said that since this seems like a "premature optimization" situation |
| 2023-07-28 15:51:42 +0000 | <danse-nr3> | yeah i am not dying for bits on this, just general good practice in writing |
| 2023-07-28 15:51:44 +0000 | <geekosaur> | if you insist on premature optimization then yes, you either look around for `RULE`s or you inspect GHC Core |
| 2023-07-28 15:52:02 +0000 | shapr | (~user@2600:1700:c640:3100:54fd:7954:acad:5050) |
| 2023-07-28 15:52:05 +0000 | <geekosaur> | good practice is to write for the reader unless profiling a hot path shows otherwise |
| 2023-07-28 15:52:22 +0000 | arahael_ | (~arahael@115-64-199-191.tpgi.com.au) (Ping timeout: 252 seconds) |
| 2023-07-28 15:52:54 +0000 | <danse-nr3> | well i also had stumbled upon list fusion before and was looking for an easy way to conceptualise it |
| 2023-07-28 15:53:31 +0000 | <geekosaur> | conceptually, list operations get split up into pieces that can be combined into a single fold |
| 2023-07-28 15:53:56 +0000 | <geekosaur> | so map becomes "call a function", filter becomes "select or reject an item", etc. |
| 2023-07-28 15:55:47 +0000 | simikando | (~simikando@adsl-dyn-104.95-102-88.t-com.sk) (Quit: Leaving) |
| 2023-07-28 15:56:08 +0000 | <danse-nr3> | yeah, but i have no elements to say which list passes will be optimised or not unless i look at the source. To put it simple this is not that simple, will study it a bit more the next time i feel it could help |
| 2023-07-28 15:56:12 +0000 | <geekosaur> | and ghc does a lot of work to turn obvious code into these optimized folds for you, and you should generally report a bug if it fails |
| 2023-07-28 15:59:21 +0000 | <[Leary]> | danse-nr3: If you want to understand list fusion, implement operations for `newtype List a = List (forall r. r -> (a -> r) -> r)` and observe that they fuse. Data.List RULES basically just map into this alternate representation. |
| 2023-07-28 16:00:12 +0000 | highvoltage | (~highvolt@bcdcac82.skybroadband.com) (Ping timeout: 240 seconds) |
| 2023-07-28 16:01:03 +0000 | ft | (~ft@p3e9bc61e.dip0.t-ipconnect.de) |
| 2023-07-28 16:01:14 +0000 | <int-e> | :t flip foldr |
| 2023-07-28 16:01:15 +0000 | <lambdabot> | Foldable t => b -> (a -> b -> b) -> t a -> b |
| 2023-07-28 16:01:31 +0000 | <int-e> | [Leary]: you're missing an `r` |
| 2023-07-28 16:01:38 +0000 | <[Leary]> | Oh, I missed a tyvar or two. Yeah, oops. |
| 2023-07-28 16:02:30 +0000 | mima | (~mmh@ppp-212-114-180-185.dynamic.mnet-online.de) (Ping timeout: 250 seconds) |
| 2023-07-28 16:03:02 +0000 | highvoltage | (~highvolt@bcdcac82.skybroadband.com) |
| 2023-07-28 16:03:03 +0000 | ft | (~ft@p3e9bc61e.dip0.t-ipconnect.de) (Remote host closed the connection) |
| 2023-07-28 16:04:59 +0000 | seeg123456 | (~seeg12345@64.176.64.83) () |
| 2023-07-28 16:05:22 +0000 | acidjnk | (~acidjnk@p200300d6e7072f09a8b60c3f1e99feab.dip0.t-ipconnect.de) (Ping timeout: 245 seconds) |
| 2023-07-28 16:05:31 +0000 | mei | (~mei@user/mei) (Remote host closed the connection) |
| 2023-07-28 16:07:19 +0000 | <danse-nr3> | not sure what you mean. I should implement `flip foldr`, and then? How do i observe that it fuses? |
| 2023-07-28 16:07:57 +0000 | mei | (~mei@user/mei) |
| 2023-07-28 16:08:14 +0000 | flounders | (~flounders@24.246.133.1) |
| 2023-07-28 16:08:50 +0000 | <int-e> | :t \xs nil cons -> foldr cons nil xs |
| 2023-07-28 16:08:51 +0000 | <lambdabot> | Foldable t => t a -> b -> (a -> b -> b) -> b |
| 2023-07-28 16:10:25 +0000 | <int-e> | danse-nr3: The idea is that `forall r. r -> (a -> r -> r) -> r` is isomorphic to [a], and `foldr`, after shuffling arguments is one direction of the isomorphism. |
| 2023-07-28 16:10:43 +0000 | <[Leary]> | danse-nr3: Rearranging the arguments of `foldr`, we have `[a] -> (forall b. b -> (a -> b -> b) -> b)`. You can also write the other direction; this type is another way to represent lists. If you write operations like `map` and `filter` on this representation, you'll be able to see intuitively (or by algebraic substitution) that they fuse. |
| 2023-07-28 16:10:53 +0000 | <int-e> | And the other direction can be derived from `foldr (:) [] xs = xs`. |
| 2023-07-28 16:11:27 +0000 | merijn | (~merijn@c-001-001-014.client.esciencecenter.eduvpn.nl) |
| 2023-07-28 16:11:52 +0000 | <int-e> | So if you understand `foldr`, understanding `forall r. r -> (a -> r -> r) -> r` should be fairly easy. |
| 2023-07-28 16:12:51 +0000 | acidjnk | (~acidjnk@p200300d6e7072f09e09871481cfbcb71.dip0.t-ipconnect.de) |
| 2023-07-28 16:17:56 +0000 | thegeekinside | (~thegeekin@189.217.90.138) |
| 2023-07-28 16:18:12 +0000 | merijn | (~merijn@c-001-001-014.client.esciencecenter.eduvpn.nl) (Ping timeout: 260 seconds) |
| 2023-07-28 16:19:52 +0000 | danse-nr3_ | (~francesco@151.37.218.65) |
| 2023-07-28 16:20:20 +0000 | <danse-nr3_> | i think we are sidetracking ... but i will try to learn this thing. How can `forall r. r -> (a -> r -> r) -> r` be isomorphic to `[a]`? |
| 2023-07-28 16:20:29 +0000 | <danse-nr3_> | so "abc" would correspond to? |
| 2023-07-28 16:20:31 +0000 | econo_ | (uid147250@id-147250.tinside.irccloud.com) |
| 2023-07-28 16:20:57 +0000 | <[Leary]> | \nil cons -> cons 'a' (cons 'b' (cons 'c' nil)) |
| 2023-07-28 16:21:16 +0000 | danse-nr3 | (~francesco@151.35.133.32) (Read error: Connection reset by peer) |
| 2023-07-28 16:21:37 +0000 | <danse-nr3_> | :t \nil cons -> cons 'a' (cons 'b' (cons 'c' nil)) |
| 2023-07-28 16:21:38 +0000 | <lambdabot> | t -> (Char -> t -> t) -> t |
| 2023-07-28 16:22:28 +0000 | <danse-nr3_> | cool stuff :) |
| 2023-07-28 16:22:45 +0000 | barcisz | (~barcisz@83.6.202.49.ipv4.supernova.orange.pl) (Quit: Connection closed) |
| 2023-07-28 16:22:49 +0000 | Drew[m]1 | (~drewefenw@2001:470:69fc:105::c8c4) |
| 2023-07-28 16:22:58 +0000 | machinedgod | (~machinedg@d198-53-218-113.abhsia.telus.net) (Ping timeout: 246 seconds) |
| 2023-07-28 16:27:39 +0000 | <danse-nr3_> | well looks like i have got some exercise do to in my spare time. Thanks geekosaur [Leary] int-e |
| 2023-07-28 16:29:58 +0000 | ec | (~ec@gateway/tor-sasl/ec) (Ping timeout: 240 seconds) |
| 2023-07-28 16:31:06 +0000 | ec | (~ec@gateway/tor-sasl/ec) |
| 2023-07-28 16:32:04 +0000 | nick4 | (~nick@2600:8807:9084:7800:504a:bdb:1c92:8eb1) (Ping timeout: 246 seconds) |
| 2023-07-28 16:36:41 +0000 | ft | (~ft@p3e9bc61e.dip0.t-ipconnect.de) |
| 2023-07-28 16:38:25 +0000 | ddellacosta | (~ddellacos@146.70.185.168) (Ping timeout: 245 seconds) |
| 2023-07-28 16:38:54 +0000 | tzh | (~tzh@c-24-21-73-154.hsd1.or.comcast.net) |
| 2023-07-28 16:38:58 +0000 | tromp | (~textual@92-110-219-57.cable.dynamic.v4.ziggo.nl) (Quit: My iMac has gone to sleep. ZZZzzz…) |
| 2023-07-28 16:41:47 +0000 | harveypwca | (~harveypwc@2601:246:c180:a570:3828:d8:e523:3f67) (Quit: Leaving) |
| 2023-07-28 16:42:01 +0000 | billchenchina | (~billchenc@103.152.35.21) (Remote host closed the connection) |
| 2023-07-28 16:42:10 +0000 | tromp | (~textual@92-110-219-57.cable.dynamic.v4.ziggo.nl) |
| 2023-07-28 16:42:29 +0000 | reach__ | (~reach@bras-base-toroon2643w-grc-02-142-198-51-47.dsl.bell.ca) (Ping timeout: 246 seconds) |
| 2023-07-28 16:49:36 +0000 | tomboy64 | (~tomboy64@user/tomboy64) (Ping timeout: 245 seconds) |
| 2023-07-28 16:51:29 +0000 | tromp | (~textual@92-110-219-57.cable.dynamic.v4.ziggo.nl) (Quit: My iMac has gone to sleep. ZZZzzz…) |
| 2023-07-28 16:52:14 +0000 | mango | (~finn@2001:861:5863:3d50:dac7:1c9e:d3d9:d11b) |
| 2023-07-28 16:52:28 +0000 | son0p | (~ff@181.136.122.143) (Ping timeout: 244 seconds) |
| 2023-07-28 16:52:42 +0000 | tomboy64 | (~tomboy64@user/tomboy64) |
| 2023-07-28 17:01:48 +0000 | reach__ | (~reach@bras-base-toroon2643w-grc-02-142-198-51-47.dsl.bell.ca) |
| 2023-07-28 17:02:44 +0000 | ddellacosta | (~ddellacos@146.70.168.156) |
| 2023-07-28 17:09:00 +0000 | jmdaemon | (~jmdaemon@user/jmdaemon) |
| 2023-07-28 17:10:17 +0000 | flounders | (~flounders@24.246.133.1) (Ping timeout: 246 seconds) |
| 2023-07-28 17:15:23 +0000 | Alex_test | (~al_test@178.34.162.202) (Ping timeout: 246 seconds) |
| 2023-07-28 17:15:28 +0000 | merijn | (~merijn@c-001-001-014.client.esciencecenter.eduvpn.nl) |
| 2023-07-28 17:16:05 +0000 | AlexZenon | (~alzenon@178.34.162.202) (Ping timeout: 246 seconds) |
| 2023-07-28 17:17:14 +0000 | hook54321 | (sid149355@id-149355.ilkley.irccloud.com) (Changing host) |
| 2023-07-28 17:17:14 +0000 | hook54321 | (sid149355@user/hook54321) |
| 2023-07-28 17:19:28 +0000 | reach__ | (~reach@bras-base-toroon2643w-grc-02-142-198-51-47.dsl.bell.ca) (Remote host closed the connection) |
| 2023-07-28 17:20:30 +0000 | L29Ah | (~L29Ah@wikipedia/L29Ah) (Ping timeout: 250 seconds) |
| 2023-07-28 17:23:41 +0000 | Alex_test | (~al_test@178.34.162.202) |
| 2023-07-28 17:23:50 +0000 | fendor | (~fendor@2a02:8388:1640:be00:1f28:32b1:54ac:a932) (Remote host closed the connection) |
| 2023-07-28 17:25:47 +0000 | <EvanR> | danse-nr3_, to show isomorphism between A and B you need maps between them that cancel each other |
| 2023-07-28 17:26:01 +0000 | notzmv | (~zmv@user/notzmv) |
| 2023-07-28 17:27:21 +0000 | <EvanR> | encode decode where decode can't fail |
| 2023-07-28 17:30:22 +0000 | tromp | (~textual@92-110-219-57.cable.dynamic.v4.ziggo.nl) |
| 2023-07-28 17:32:01 +0000 | AlexZenon | (~alzenon@178.34.162.202) |
| 2023-07-28 17:33:14 +0000 | <danse-nr3_> | yeah i think i understand that, thanks |
| 2023-07-28 17:37:17 +0000 | chele | (~chele@user/chele) (Remote host closed the connection) |
| 2023-07-28 17:43:18 +0000 | <Inst__> | seems unfortunately accurate |
| 2023-07-28 17:43:19 +0000 | <Inst__> | https://github.com/vrom911/haskeller-answers/blob/master/src/HaskellerAnswers.hs |
| 2023-07-28 17:45:36 +0000 | <yushyin> | no |
| 2023-07-28 17:49:44 +0000 | merijn | (~merijn@c-001-001-014.client.esciencecenter.eduvpn.nl) (Ping timeout: 260 seconds) |
| 2023-07-28 17:51:08 +0000 | <Inst__> | in the sense that many haskellers are guilty of the satirized behavior in the list at one time or another |
| 2023-07-28 17:56:04 +0000 | titibandit | (~titibandi@user/titibandit) (Ping timeout: 246 seconds) |
| 2023-07-28 17:57:03 +0000 | <ddellacosta> | I feel like most of these are jokes, but yeah "just use nix" does get said a bit much (saying this as a nix user myself) |
| 2023-07-28 17:59:57 +0000 | notzmv | (~zmv@user/notzmv) (Ping timeout: 245 seconds) |
| 2023-07-28 18:02:48 +0000 | billchenchina | (~billchenc@2a0c:b641:7a2:320:ee3e:47ca:6070:d71a) |
| 2023-07-28 18:03:11 +0000 | titibandit | (~titibandi@user/titibandit) |
| 2023-07-28 18:03:18 +0000 | bitdex | (~bitdex@gateway/tor-sasl/bitdex) (Ping timeout: 240 seconds) |
| 2023-07-28 18:03:48 +0000 | merijn | (~merijn@c-001-001-014.client.esciencecenter.eduvpn.nl) |
| 2023-07-28 18:05:12 +0000 | talismanick | (~user@76.133.152.122) (Remote host closed the connection) |
| 2023-07-28 18:05:25 +0000 | <yushyin> | seems to me to be more of a trend, at some point it was also 'just use stack' |
| 2023-07-28 18:05:56 +0000 | <dolio> | Some of these I've never heard, I think. |
| 2023-07-28 18:06:44 +0000 | bitdex | (~bitdex@gateway/tor-sasl/bitdex) |
| 2023-07-28 18:08:08 +0000 | thegeekinside | (~thegeekin@189.217.90.138) (Read error: Connection reset by peer) |
| 2023-07-28 18:08:21 +0000 | merijn | (~merijn@c-001-001-014.client.esciencecenter.eduvpn.nl) (Ping timeout: 245 seconds) |
| 2023-07-28 18:09:03 +0000 | <yushyin> | many of these statements are actually rather poorly received and also rejected by the regulars here |
| 2023-07-28 18:09:28 +0000 | titibandit | (~titibandi@user/titibandit) (Ping timeout: 250 seconds) |
| 2023-07-28 18:16:27 +0000 | bratwurst | (~dfadsva@2604:3d09:207f:f650::c680) |
| 2023-07-28 18:16:58 +0000 | bitdex | (~bitdex@gateway/tor-sasl/bitdex) (Ping timeout: 240 seconds) |
| 2023-07-28 18:17:30 +0000 | tromp | (~textual@92-110-219-57.cable.dynamic.v4.ziggo.nl) (Quit: My iMac has gone to sleep. ZZZzzz…) |
| 2023-07-28 18:21:09 +0000 | titibandit | (~titibandi@user/titibandit) |
| 2023-07-28 18:21:32 +0000 | razetime | (~quassel@117.193.5.53) (Remote host closed the connection) |
| 2023-07-28 18:21:54 +0000 | Guest8558 | (~finn@176-151-21-224.abo.bbox.fr) |
| 2023-07-28 18:22:24 +0000 | tromp | (~textual@92-110-219-57.cable.dynamic.v4.ziggo.nl) |
| 2023-07-28 18:25:53 +0000 | titibandit | (~titibandi@user/titibandit) (Ping timeout: 246 seconds) |
| 2023-07-28 18:26:37 +0000 | simikando | (~simikando@adsl-dyn-104.95-102-88.t-com.sk) |
| 2023-07-28 18:33:17 +0000 | mango | (~finn@2001:861:5863:3d50:dac7:1c9e:d3d9:d11b) (Ping timeout: 245 seconds) |
| 2023-07-28 18:35:43 +0000 | mango | (~finn@2001:861:5863:3d50:8912:5927:5eae:b7b) |
| 2023-07-28 18:36:25 +0000 | tromp | (~textual@92-110-219-57.cable.dynamic.v4.ziggo.nl) (Quit: My iMac has gone to sleep. ZZZzzz…) |
| 2023-07-28 18:36:56 +0000 | <cheater> | dolio: like which one |
| 2023-07-28 18:38:36 +0000 | czy | (~user@host-140-26.ilcub310.champaign.il.us.clients.pavlovmedia.net) (Remote host closed the connection) |
| 2023-07-28 18:43:36 +0000 | <dolio> | "Types are IDE" |
| 2023-07-28 18:44:48 +0000 | <dolio> | Also, two of them look like garbage that is the output of @pl which are like texbook examples of why "only write pointfree code" is a bad idea. |
| 2023-07-28 18:46:45 +0000 | <int-e> | Though to be fair to @pl, it would never use (<$>) for (.) |
| 2023-07-28 18:48:43 +0000 | mango | (~finn@2001:861:5863:3d50:8912:5927:5eae:b7b) (Ping timeout: 244 seconds) |
| 2023-07-28 18:51:01 +0000 | <dolio> | Yeah, it's possible someone figured that one out by hand. |
| 2023-07-28 18:51:19 +0000 | trev | (~trev@user/trev) (Quit: trev) |
| 2023-07-28 18:52:58 +0000 | h2t_ | (~h2t@user/h2t) (Quit: ZNC - https://znc.in) |
| 2023-07-28 18:53:17 +0000 | h2t | (~h2t@user/h2t) |
| 2023-07-28 18:53:24 +0000 | <dolio> | If it was, something like that is clearly goofing around. So I'm not sure why it's, "unfortunately accurate," that people like to do things like that that are clearly a bad idea just on a goof. |
| 2023-07-28 18:56:48 +0000 | tromp | (~textual@92-110-219-57.cable.dynamic.v4.ziggo.nl) |
| 2023-07-28 19:01:35 +0000 | simikando | (~simikando@adsl-dyn-104.95-102-88.t-com.sk) (Ping timeout: 246 seconds) |
| 2023-07-28 19:04:06 +0000 | son0p | (~ff@181.136.122.143) |
| 2023-07-28 19:05:51 +0000 | bitdex | (~bitdex@gateway/tor-sasl/bitdex) |
| 2023-07-28 19:09:22 +0000 | pavonia | (~user@user/siracusa) |
| 2023-07-28 19:09:56 +0000 | mixfix41 | (~sdeny9ee@user/mixfix41) |
| 2023-07-28 19:10:45 +0000 | <monochrom> | Parametricity can prove the difficult direction of why [a] is isomorphic to forall r. r -> (a -> r -> r) -> r. |
| 2023-07-28 19:11:26 +0000 | <monochrom> | Actually some of you saw that I put that difficult direction on my assignment, using a=Int. :) |
| 2023-07-28 19:12:09 +0000 | <monochrom> | Today I'm thinking how to be more abstract and, assuming that an initial algebra is already known to exist, how to use Yoneda's lemma to replace parametricity. |
| 2023-07-28 19:13:21 +0000 | <mauke> | r -> (a -> w -> r) -> x -> d |
| 2023-07-28 19:13:51 +0000 | tromp | (~textual@92-110-219-57.cable.dynamic.v4.ziggo.nl) (Quit: My iMac has gone to sleep. ZZZzzz…) |
| 2023-07-28 19:16:16 +0000 | misterfish | (~misterfis@178.228.71.213) |
| 2023-07-28 19:16:30 +0000 | <int-e> | mauke: still friendlier than stabby lenses |
| 2023-07-28 19:17:29 +0000 | <monochrom> | I think this is on the right track. (Given a functor F for us to make F-algebras. Assume it has an intial algebra.) Use the forgetful functor U from F-algebras to carriers in Set. Then by Yoneda, (forall a. (homomorphism from initial algebra to algebra a) -> U (algebra a)) is isomorphic to U (initial algebra). |
| 2023-07-28 19:17:32 +0000 | tromp | (~textual@92-110-219-57.cable.dynamic.v4.ziggo.nl) |
| 2023-07-28 19:17:50 +0000 | <monochrom> | And "(homomorphism from initial algebra to algebra a)" can be simplified to F a -> a. |
| 2023-07-28 19:20:40 +0000 | nate2 | (~nate@c-98-45-169-16.hsd1.ca.comcast.net) |
| 2023-07-28 19:23:00 +0000 | <ncf> | so, forall r. r → (a → r → r) → r ≃ forall r. (Maybe (a, r) → r) → r ≃ forall r. (ListF a r → r) → r ≃ forall r. (Fix (ListF a) → r) → r ≃ Fix (ListF a) ≃ [a] |
| 2023-07-28 19:23:51 +0000 | misterfish | (~misterfis@178.228.71.213) (Ping timeout: 244 seconds) |
| 2023-07-28 19:24:17 +0000 | <ncf> | well, this is not typed enough :) |
| 2023-07-28 19:25:24 +0000 | nate2 | (~nate@c-98-45-169-16.hsd1.ca.comcast.net) (Ping timeout: 246 seconds) |
| 2023-07-28 19:27:57 +0000 | bgs | (~bgs@212-85-160-171.dynamic.telemach.net) (Remote host closed the connection) |
| 2023-07-28 19:27:57 +0000 | <monochrom> | If you attempt a parametricity proof, it is simpler to stick to r -> (a -> r -> r) -> r. Don't pack it up into ListF. :) |
| 2023-07-28 19:28:17 +0000 | thegeekinside | (~thegeekin@189.217.90.138) |
| 2023-07-28 19:28:23 +0000 | <monochrom> | But if you want a general proof that works for all algebraic types, then yeah. |
| 2023-07-28 19:28:43 +0000 | forell | (~forell@user/forell) (Quit: ZNC - https://znc.in) |
| 2023-07-28 19:29:58 +0000 | bitdex | (~bitdex@gateway/tor-sasl/bitdex) (Ping timeout: 240 seconds) |
| 2023-07-28 19:33:03 +0000 | <dolio> | I think it's a lot less clear how to get this to work with categories, if you want to make literal sense of the quantified type. |
| 2023-07-28 19:35:22 +0000 | <dolio> | You have to know the right tricks to make mixed variance stuff work out. |
| 2023-07-28 19:36:12 +0000 | <ncf> | smells like the end |
| 2023-07-28 19:36:24 +0000 | <monochrom> | I literally try to shoehorn "natural transformation" into it whenever I see forall. So I prefer shoehorning category theory into it. :) |
| 2023-07-28 19:37:12 +0000 | <monochrom> | And in this case, yeah for 5 minutes I didn't know what to to with the variance of "F a -> a". Then I tried "wait, it's an F-algebra, let me switch to another category". |
| 2023-07-28 19:37:21 +0000 | bitdex | (~bitdex@gateway/tor-sasl/bitdex) |
| 2023-07-28 19:37:22 +0000 | <dolio> | Right, but in this case it can't be natural. So if you know a little, you might have heard about 'dinatural' transformations, and think you have to do that. |
| 2023-07-28 19:37:38 +0000 | forell | (~forell@user/forell) |
| 2023-07-28 19:37:54 +0000 | <dolio> | But I think that's a mistake. They don't actually work. That led some people to come up with 'strong dinatural,' which as far as I can tell was invented only for this purpose. |
| 2023-07-28 19:37:55 +0000 | <monochrom> | And so the natural transformation is from Hom(initial algebra, -) to U. (where Hom is for the category of F algebras.) |
| 2023-07-28 19:38:21 +0000 | dom0 | (~u0_a242@79.116.108.247) |
| 2023-07-28 19:38:52 +0000 | <dolio> | But then category theorists have another trick called 'extranatural,' which behaves better, and covers almost everything people want to do. So I think you'd want to try to massage things into that form first. |
| 2023-07-28 19:39:32 +0000 | <ncf> | just jump straight to using an end imo |
| 2023-07-28 19:43:44 +0000 | <monochrom> | Why can't it be natural? Alternatively, I may be proving a much weaker claim, and just focusing on what's given to be natural. |
| 2023-07-28 19:44:23 +0000 | <monochrom> | And also weak in terms of presuming somehow we already have an initial algebra in some other form in the first place. |
| 2023-07-28 19:45:02 +0000 | <monochrom> | And my conclusion at the moment is only "isomorphic in Set" so it's still an unstructured bijection. |
| 2023-07-28 19:45:26 +0000 | <dolio> | monochrom: Because r occurs in both covariant and contravariant positions. |
| 2023-07-28 19:45:38 +0000 | <dolio> | No matter how you split it up. |
| 2023-07-28 19:46:58 +0000 | <monochrom> | But I'm using Hom(initial algebra, -). |
| 2023-07-28 19:47:17 +0000 | <ncf> | so you're not formalising the whole thing |
| 2023-07-28 19:47:48 +0000 | <monochrom> | The fact that it simplifies to "/\r. F r -> r" is afterwards. |
| 2023-07-28 19:48:00 +0000 | <dolio> | Yeah, I mean if you want to make sense of a formula like `forall r. r -> (a -> r -> r) -> r` |
| 2023-07-28 19:49:11 +0000 | L29Ah | (~L29Ah@wikipedia/L29Ah) |
| 2023-07-28 19:50:27 +0000 | nyc | (~nyc@2603-7000-a106-2fb5-0000-0000-0000-1f21.res6.spectrum.com) (Changing host) |
| 2023-07-28 19:50:27 +0000 | nyc | (~nyc@user/nyc) |
| 2023-07-28 19:51:44 +0000 | danse-nr3_ | (~francesco@151.37.218.65) (Ping timeout: 250 seconds) |
| 2023-07-28 19:53:38 +0000 | <monochrom> | OK I see. I still don't know whether "forall r. (F r -> r) -> r" is the same as "forall algebra a. a -> U a". |
| 2023-07-28 19:57:08 +0000 | <dolio> | No, should be `forall algebra a. U a`, I think. |
| 2023-07-28 19:57:25 +0000 | justsomeguy | (~justsomeg@user/justsomeguy) |
| 2023-07-28 19:58:01 +0000 | <dolio> | The type of values that all algebras are required to have. |
| 2023-07-28 19:58:19 +0000 | <monochrom> | I began with "forall algebra a. Hom(initial, a) -> U a". Initiality allows simplifying Hom(initial, a) to a. |
| 2023-07-28 19:59:22 +0000 | <dolio> | No, there is a unique homomorphism from the initial algebra to each other algebra. |
| 2023-07-28 19:59:40 +0000 | <dolio> | So Hom(initial, a) is the unit type. |
| 2023-07-28 20:00:06 +0000 | <monochrom> | Oh darn, right. |
| 2023-07-28 20:02:51 +0000 | <monochrom> | Thanks. My excuse is I didn't have tea today! |
| 2023-07-28 20:03:00 +0000 | <monochrom> | And didn't have wine last night! |
| 2023-07-28 20:05:35 +0000 | <mauke> | https://www.youtube.com/watch?v=u_776fo3XHc |
| 2023-07-28 20:08:22 +0000 | coot | (~coot@89-69-206-216.dynamic.chello.pl) (Quit: coot) |
| 2023-07-28 20:13:50 +0000 | internatetional | (~nate@2001:448a:20a3:c2e5:71b9:a710:2866:667f) (Quit: WeeChat 4.0.2) |
| 2023-07-28 20:32:06 +0000 | <Inst__> | yushyin: that's why it's satire |
| 2023-07-28 20:34:21 +0000 | tromp | (~textual@92-110-219-57.cable.dynamic.v4.ziggo.nl) (Quit: My iMac has gone to sleep. ZZZzzz…) |
| 2023-07-28 20:37:03 +0000 | Pickchea | (~private@user/pickchea) |
| 2023-07-28 20:41:42 +0000 | fendor | (~fendor@2a02:8388:1640:be00:1f28:32b1:54ac:a932) |
| 2023-07-28 20:44:07 +0000 | idgaen | (~idgaen@2a01:e0a:498:fd50:fcc6:bb5d:489a:ce8c) (Quit: WeeChat 4.0.2) |
| 2023-07-28 20:47:50 +0000 | _ht | (~Thunderbi@28-52-174-82.ftth.glasoperator.nl) (Quit: _ht) |
| 2023-07-28 20:49:44 +0000 | waleee | (~waleee@2001:9b0:21c:4000:5bf9:6515:c030:57b7) |
| 2023-07-28 20:55:46 +0000 | machinedgod | (~machinedg@d198-53-218-113.abhsia.telus.net) |
| 2023-07-28 20:57:01 +0000 | nick4 | (~nick@2600:8807:9084:7800:d53:c5f4:7789:80aa) |
| 2023-07-28 21:01:29 +0000 | bratwurst | (~dfadsva@2604:3d09:207f:f650::c680) (Ping timeout: 246 seconds) |
| 2023-07-28 21:04:13 +0000 | kimiamania60 | (~681cf57f@user/kimiamania) (Quit: PegeLinux) |
| 2023-07-28 21:04:39 +0000 | kimiamania60 | (~681cf57f@user/kimiamania) |
| 2023-07-28 21:04:58 +0000 | tromp | (~textual@92-110-219-57.cable.dynamic.v4.ziggo.nl) |
| 2023-07-28 21:07:05 +0000 | nick4 | (~nick@2600:8807:9084:7800:d53:c5f4:7789:80aa) (Ping timeout: 246 seconds) |
| 2023-07-28 21:10:18 +0000 | bitdex | (~bitdex@gateway/tor-sasl/bitdex) (Ping timeout: 240 seconds) |
| 2023-07-28 21:11:00 +0000 | dom0 | (~u0_a242@79.116.108.247) (Quit: WeeChat 4.0.1) |
| 2023-07-28 21:15:27 +0000 | <justsomeguy> | Hi #haskell. I've been learning Haskell, with some help here and there, from haskellbook.com and this IRC channel. I got through the basics, recursion/folding/ADTs/how to define type classes, as well as Functor and Monad. But now I feel a little burnt out on that book. What do you think I should do from here to continue learning? |
| 2023-07-28 21:16:32 +0000 | <jade[m]> | find something you find interesting and create a project or contribute to an existing project!! |
| 2023-07-28 21:16:48 +0000 | <jade[m]> | no amount of learning will be as valuable as actually using what you learnt |
| 2023-07-28 21:16:49 +0000 | <justsomeguy> | I was considering doing a bunch of small projects, like a website link health checker, a command-line todo app, etc, but to be honest I always get stuck. Maybe I'm just dumb. |
| 2023-07-28 21:17:31 +0000 | <monochrom> | burnt out => don't continue? |
| 2023-07-28 21:17:32 +0000 | <jade[m]> | You're not, it's normal to get stuck once you get to bigger projects, that's expected even |
| 2023-07-28 21:18:01 +0000 | <jade[m]> | also yeah, burnt out means you should probably take a break and get some breathing room |
| 2023-07-28 21:18:02 +0000 | mima | (~mmh@ppp-212-114-180-85.dynamic.mnet-online.de) |
| 2023-07-28 21:18:48 +0000 | hololeap_ | (~quassel@user/hololeap) |
| 2023-07-28 21:19:27 +0000 | <monochrom> | burnt out /\ looking for more => addiction >:) |
| 2023-07-28 21:19:39 +0000 | <justsomeguy> | lol, that sounds right |
| 2023-07-28 21:19:42 +0000 | reach__ | (~reach@bras-base-toroon2643w-grc-02-142-198-51-47.dsl.bell.ca) |
| 2023-07-28 21:19:48 +0000 | <jade[m]> | haha |
| 2023-07-28 21:20:47 +0000 | acidjnk | (~acidjnk@p200300d6e7072f09e09871481cfbcb71.dip0.t-ipconnect.de) (Ping timeout: 245 seconds) |
| 2023-07-28 21:21:21 +0000 | <justsomeguy> | I think I'm going to try the tutorial for IHP, and see how that goes. I could use a simple personal website, and at least I have a pretty good idea what goes into making one from the sysadmin side. |
| 2023-07-28 21:21:44 +0000 | sm[i] | (~sm@2601:196:4b80:3a40:65:7c1f:38cd:576) |
| 2023-07-28 21:22:00 +0000 | hololeap | (~quassel@user/hololeap) (Ping timeout: 246 seconds) |
| 2023-07-28 21:22:11 +0000 | nick4 | (~nick@2600:8807:9084:7800:d53:c5f4:7789:80aa) |
| 2023-07-28 21:23:13 +0000 | ncf | (~n@monade.li) (Quit: Fairfarren.) |
| 2023-07-28 21:24:02 +0000 | reach__ | (~reach@bras-base-toroon2643w-grc-02-142-198-51-47.dsl.bell.ca) (Ping timeout: 250 seconds) |
| 2023-07-28 21:24:29 +0000 | ncf | (~n@monade.li) |
| 2023-07-28 21:25:26 +0000 | <sm> | not sure how "simple" that will be |
| 2023-07-28 21:25:45 +0000 | <justsomeguy> | I mean, it looks super complex! But also probably very guided. |
| 2023-07-28 21:26:13 +0000 | <monochrom> | simple personal website => html. what's haskell doing there? |
| 2023-07-28 21:26:24 +0000 | <sm> | step 1. be a nix user ? |
| 2023-07-28 21:26:41 +0000 | <justsomeguy> | Hmm, ok, scratch that idea. |
| 2023-07-28 21:27:06 +0000 | <monochrom> | But you can s/simple/Goldberg machine/ |
| 2023-07-28 21:27:07 +0000 | <sm> | I'm making a simple personal website myself, with shake and pandoc |
| 2023-07-28 21:27:50 +0000 | <sm> | "simple" |
| 2023-07-28 21:27:51 +0000 | <sm> | right |
| 2023-07-28 21:28:16 +0000 | <monochrom> | You can do some of my assignments at http://www.cs.utoronto.ca/~trebla/CSCC24-2023-Summer/ |
| 2023-07-28 21:28:39 +0000 | hololeap_ | (~quassel@user/hololeap) (Quit: Bye) |
| 2023-07-28 21:28:55 +0000 | hololeap | (~quassel@user/hololeap) |
| 2023-07-28 21:29:12 +0000 | <justsomeguy> | Thanks for sharing. If I do I'll send you a link to my attempts, monochrom. |
| 2023-07-28 21:29:58 +0000 | mango | (~finn@2001:861:5863:3d50:38dd:bfcb:d7f1:6ae4) |
| 2023-07-28 21:30:31 +0000 | <justsomeguy> | Battery is running out. Thanks for the advice, everyone. |
| 2023-07-28 21:30:37 +0000 | <sm> | there are some complete guided haskell projects out there.. I think https://haskell-via-sokoban.nomeata.de is one |
| 2023-07-28 21:30:49 +0000 | <sm> | good luck |
| 2023-07-28 21:31:05 +0000 | justsomeguy | (~justsomeg@user/justsomeguy) (Quit: WeeChat 3.6) |
| 2023-07-28 21:31:43 +0000 | <sm> | clash of code is also fun! hard at first but you start fresh every few minutes |
| 2023-07-28 21:39:49 +0000 | acidjnk | (~acidjnk@p200300d6e7072f7488c486b520f19958.dip0.t-ipconnect.de) |
| 2023-07-28 21:45:31 +0000 | fendor | (~fendor@2a02:8388:1640:be00:1f28:32b1:54ac:a932) (Remote host closed the connection) |
| 2023-07-28 21:46:02 +0000 | forell | (~forell@user/forell) (Ping timeout: 260 seconds) |
| 2023-07-28 21:46:47 +0000 | Tuplanolla | (~Tuplanoll@91-159-68-236.elisa-laajakaista.fi) (Quit: Leaving.) |
| 2023-07-28 21:51:19 +0000 | whatsupdoc | (uid509081@id-509081.hampstead.irccloud.com) (Quit: Connection closed for inactivity) |
| 2023-07-28 21:54:12 +0000 | tromp | (~textual@92-110-219-57.cable.dynamic.v4.ziggo.nl) (Quit: My iMac has gone to sleep. ZZZzzz…) |
| 2023-07-28 21:59:57 +0000 | wroathe | (~wroathe@user/wroathe) |
| 2023-07-28 22:06:29 +0000 | lyxia | (~lyxia@poisson.chat) (Quit: WeeChat 3.7) |
| 2023-07-28 22:07:05 +0000 | gurkenglas | (~gurkengla@dynamic-046-114-089-015.46.114.pool.telefonica.de) (Ping timeout: 246 seconds) |
| 2023-07-28 22:07:18 +0000 | bontaq | (~user@ool-45779b84.dyn.optonline.net) (Remote host closed the connection) |
| 2023-07-28 22:08:23 +0000 | Guest8558 | (~finn@176-151-21-224.abo.bbox.fr) (Ping timeout: 264 seconds) |
| 2023-07-28 22:13:01 +0000 | bitdex | (~bitdex@gateway/tor-sasl/bitdex) |
| 2023-07-28 22:14:44 +0000 | thegeekinside | (~thegeekin@189.217.90.138) (Read error: Connection reset by peer) |
| 2023-07-28 22:16:21 +0000 | mango | (~finn@2001:861:5863:3d50:38dd:bfcb:d7f1:6ae4) (Ping timeout: 260 seconds) |
| 2023-07-28 22:17:48 +0000 | forell | (~forell@user/forell) |
| 2023-07-28 22:18:10 +0000 | phma | (~phma@2001:5b0:210f:78d8:de61:1bc2:fcbd:591a) (Read error: Connection reset by peer) |
| 2023-07-28 22:19:16 +0000 | phma | (phma@2001:5b0:211c:f748:3478:76f9:d3a9:cc0a) |
| 2023-07-28 22:22:52 +0000 | lisbeths | (uid135845@id-135845.lymington.irccloud.com) |
| 2023-07-28 22:24:32 +0000 | nick4 | (~nick@2600:8807:9084:7800:d53:c5f4:7789:80aa) (Ping timeout: 245 seconds) |
| 2023-07-28 22:27:52 +0000 | acidjnk | (~acidjnk@p200300d6e7072f7488c486b520f19958.dip0.t-ipconnect.de) (Ping timeout: 245 seconds) |
| 2023-07-28 22:29:36 +0000 | mei | (~mei@user/mei) (Remote host closed the connection) |
| 2023-07-28 22:30:26 +0000 | Pickchea | (~private@user/pickchea) (Quit: Leaving) |
| 2023-07-28 22:32:02 +0000 | mei | (~mei@user/mei) |
| 2023-07-28 22:35:56 +0000 | <hololeap> | I've got a broad question of how to parse a text file with a parser combinator library |
| 2023-07-28 22:36:40 +0000 | <hololeap> | say there are 3 types of lines, 1) header lines which have some obvious structure 2) relevant lines that we want to gather 3) irrelevant lines that we want to ignore |
| 2023-07-28 22:37:19 +0000 | nick4 | (~nick@2600:8807:9084:7800:d53:c5f4:7789:80aa) |
| 2023-07-28 22:37:24 +0000 | <hololeap> | when a header line is reached, it should scan the lines below it until it reaches another header line. of the lines scanned, it makes a list of the relevant lines and stores them in some data structure under the header |
| 2023-07-28 22:37:44 +0000 | <hololeap> | what's the best/most obvious way to structure a parser like this? |
| 2023-07-28 22:38:18 +0000 | <jade[m]> | that sounds fairly straightforward - how are header lines indicated? |
| 2023-07-28 22:38:41 +0000 | <hololeap> | let's just say that the header lines look like: - header |
| 2023-07-28 22:38:49 +0000 | <hololeap> | (that is a '-', a space, then a title) |
| 2023-07-28 22:39:11 +0000 | <hololeap> | relevant lines start with 'http' |
| 2023-07-28 22:41:16 +0000 | <jade[m]> | mhm, so you want a parser that uses many over another parser that first reads a header line and then accepts lines starting with http |
| 2023-07-28 22:41:35 +0000 | nick4 | (~nick@2600:8807:9084:7800:d53:c5f4:7789:80aa) (Ping timeout: 246 seconds) |
| 2023-07-28 22:41:37 +0000 | <jade[m]> | what library are you using specifically? |
| 2023-07-28 22:41:55 +0000 | <hololeap> | megaparsec |
| 2023-07-28 22:42:22 +0000 | bitdex | (~bitdex@gateway/tor-sasl/bitdex) (Quit: = "") |
| 2023-07-28 22:44:16 +0000 | <hololeap> | I guess this kind of loosely translates into converting [Either HeaderName (Maybe URL)] to (Map HeaderName [URL]) |
| 2023-07-28 22:45:45 +0000 | <geekosaur> | (anyone else feel an urge to write it in awk?) |
| 2023-07-28 22:45:47 +0000 | dcoutts | (~duncan@cpc69402-oxfd27-2-0-cust903.4-3.cable.virginm.net) (Ping timeout: 245 seconds) |
| 2023-07-28 22:46:29 +0000 | <hololeap> | so it would have to store the HeaderName somewhere temporary and gather the URLs until a new HeaderName is reached, at which point it writes the previous mess to the Map |
| 2023-07-28 22:46:42 +0000 | <hololeap> | but I feel like that's a imperative way of thinking about it |
| 2023-07-28 22:46:53 +0000 | <jade[m]> | it is indeed |
| 2023-07-28 22:47:31 +0000 | dibblego | (~dibblego@haskell/developer/dibblego) (Ping timeout: 245 seconds) |
| 2023-07-28 22:48:29 +0000 | <jade[m]> | with a parser combinator you would rather parse a list of headers paired with a list of lines (via a record for example) and then put those in a map using one of the smart constructors for a Map |
| 2023-07-28 22:48:57 +0000 | <jade[m]> | basically makeMap (many paragraph) |
| 2023-07-28 22:49:32 +0000 | <jade[m]> | eh, you'd probably fmap that, sorry |
| 2023-07-28 22:49:48 +0000 | szkl | (uid110435@id-110435.uxbridge.irccloud.com) |
| 2023-07-28 22:50:19 +0000 | <hololeap> | ok, even more absract: convert [Either a b] to [(a, [b])] so that each pair consists of an 'a' and a list of consecutive 'b's that follow it |
| 2023-07-28 22:50:31 +0000 | gurkenglas | (~gurkengla@dynamic-046-114-089-015.46.114.pool.telefonica.de) |
| 2023-07-28 22:51:33 +0000 | <hololeap> | sorry, it seems like I start thinking about problems like these more clearly after I ask in irc :3 |
| 2023-07-28 22:51:41 +0000 | <ncf> | what do you do if the list starts with Right? |
| 2023-07-28 22:52:02 +0000 | dibblego | (~dibblego@116-255-1-151.ip4.superloop.au) |
| 2023-07-28 22:52:02 +0000 | dibblego | (~dibblego@116-255-1-151.ip4.superloop.au) (Changing host) |
| 2023-07-28 22:52:02 +0000 | dibblego | (~dibblego@haskell/developer/dibblego) |
| 2023-07-28 22:52:09 +0000 | <ncf> | (answer: you raise a parse error. so this should happen in the parser) |
| 2023-07-28 22:52:27 +0000 | <hololeap> | I was going to say, ignore the entries until the first Left |
| 2023-07-28 22:55:57 +0000 | dibblego | (~dibblego@haskell/developer/dibblego) (Excess Flood) |
| 2023-07-28 22:57:33 +0000 | arahael_ | (~arahael@115-64-199-191.tpgi.com.au) |
| 2023-07-28 22:58:44 +0000 | Xe | (~cadey@tailscale/xe) (Ping timeout: 246 seconds) |
| 2023-07-28 23:04:20 +0000 | arahael_ | (~arahael@115-64-199-191.tpgi.com.au) (Ping timeout: 246 seconds) |
| 2023-07-28 23:09:59 +0000 | forell | (~forell@user/forell) (Quit: ZNC - https://znc.in) |
| 2023-07-28 23:13:18 +0000 | forell | (~forell@user/forell) |
| 2023-07-28 23:17:17 +0000 | [itchyjunk] | (~itchyjunk@user/itchyjunk/x-7353470) (Ping timeout: 246 seconds) |
| 2023-07-28 23:17:34 +0000 | wroathe | (~wroathe@user/wroathe) (Quit: Lost terminal) |
| 2023-07-28 23:19:10 +0000 | wroathe | (~wroathe@user/wroathe) |
| 2023-07-28 23:19:15 +0000 | lyxia | (~lyxia@poisson.chat) |
| 2023-07-28 23:21:31 +0000 | [itchyjunk] | (~itchyjunk@user/itchyjunk/x-7353470) |
| 2023-07-28 23:22:09 +0000 | nate2 | (~nate@c-98-45-169-16.hsd1.ca.comcast.net) |
| 2023-07-28 23:24:05 +0000 | byte | (~byte@user/byte) (Quit: Quitting...) |
| 2023-07-28 23:24:51 +0000 | mauke_ | (~mauke@user/mauke) |
| 2023-07-28 23:25:40 +0000 | byte | (~byte@user/byte) |
| 2023-07-28 23:26:28 +0000 | mauke | (~mauke@user/mauke) (Ping timeout: 246 seconds) |
| 2023-07-28 23:26:28 +0000 | mauke_ | mauke |
| 2023-07-28 23:26:41 +0000 | nate2 | (~nate@c-98-45-169-16.hsd1.ca.comcast.net) (Ping timeout: 245 seconds) |
| 2023-07-28 23:27:27 +0000 | nick4 | (~nick@2600:8807:9084:7800:d53:c5f4:7789:80aa) |
| 2023-07-28 23:29:16 +0000 | gurkenglas | (~gurkengla@dynamic-046-114-089-015.46.114.pool.telefonica.de) (Ping timeout: 258 seconds) |
| 2023-07-28 23:30:01 +0000 | wroathe | (~wroathe@user/wroathe) (Ping timeout: 245 seconds) |
| 2023-07-28 23:31:51 +0000 | bratwurst | (~dfadsva@2604:3d09:207f:f650::c3b) |
| 2023-07-28 23:32:07 +0000 | whatsupdoc | (uid509081@id-509081.hampstead.irccloud.com) |
| 2023-07-28 23:32:47 +0000 | nick4 | (~nick@2600:8807:9084:7800:d53:c5f4:7789:80aa) (Ping timeout: 260 seconds) |
| 2023-07-28 23:38:02 +0000 | Unicorn_Princess | (~Unicorn_P@user/Unicorn-Princess/x-3540542) (Remote host closed the connection) |
| 2023-07-28 23:43:09 +0000 | arahael_ | (~arahael@115-64-199-191.tpgi.com.au) |
| 2023-07-28 23:43:41 +0000 | mvk | (~mvk@2607:fea8:5c9a:a600::1c6d) |
| 2023-07-28 23:48:54 +0000 | arahael_ | (~arahael@115-64-199-191.tpgi.com.au) (Ping timeout: 244 seconds) |
| 2023-07-28 23:57:09 +0000 | Xe | (~cadey@tailscale/xe) |