2022/10/25

2022-10-25 00:00:10 +0000kimjetwav(~user@2607:fea8:235e:b600:b115:f56:940e:2252) (Remote host closed the connection)
2022-10-25 00:01:19 +0000ec(~ec@gateway/tor-sasl/ec) (Ping timeout: 258 seconds)
2022-10-25 00:04:50 +0000wonko(~wjc@user/wonko) (Ping timeout: 250 seconds)
2022-10-25 00:05:06 +0000ec(~ec@gateway/tor-sasl/ec)
2022-10-25 00:26:03 +0000jmorris(uid537181@id-537181.uxbridge.irccloud.com)
2022-10-25 00:39:12 +0000wroathe(~wroathe@207-153-38-140.fttp.usinternet.com)
2022-10-25 00:39:12 +0000wroathe(~wroathe@207-153-38-140.fttp.usinternet.com) (Changing host)
2022-10-25 00:39:12 +0000wroathe(~wroathe@user/wroathe)
2022-10-25 00:41:55 +0000Kaipei(~Kaiepi@108.175.84.104) (Ping timeout: 272 seconds)
2022-10-25 00:42:02 +0000beteigeuze1(~Thunderbi@a79-169-109-107.cpe.netcabo.pt)
2022-10-25 00:42:32 +0000beteigeuze(~Thunderbi@89.187.168.47) (Ping timeout: 250 seconds)
2022-10-25 00:42:32 +0000beteigeuze1beteigeuze
2022-10-25 00:51:03 +0000beteigeuze(~Thunderbi@a79-169-109-107.cpe.netcabo.pt) (Remote host closed the connection)
2022-10-25 00:51:21 +0000beteigeuze(~Thunderbi@a79-169-109-107.cpe.netcabo.pt)
2022-10-25 00:52:34 +0000eggplantade(~Eggplanta@2600:1700:38c5:d800:9df4:2304:ddb0:d61a)
2022-10-25 00:53:34 +0000causal(~user@50.35.83.177)
2022-10-25 00:56:50 +0000eggplantade(~Eggplanta@2600:1700:38c5:d800:9df4:2304:ddb0:d61a) (Ping timeout: 250 seconds)
2022-10-25 00:59:10 +0000Peerin(~Peerin@154.3.36.102)
2022-10-25 01:00:27 +0000 <j4cc3b> Anyone ever get this error message using Cabal on M1 MBP? Cannot specify -O# and --passes=/--foo-pass, use -passes='default<O#>,other-pass'. opt' failed in phase `LLVM Optimiser'
2022-10-25 01:00:51 +0000 <j4cc3b> it happened for an older package, and its happening now for a newly updated package (AES)
2022-10-25 01:06:31 +0000Lycurgus(~juan@user/Lycurgus)
2022-10-25 01:07:13 +0000caryhartline(~caryhartl@2600:1700:2d0:8d30:7075:e274:b18d:7a76)
2022-10-25 01:08:42 +0000[itchyjunk](~itchyjunk@user/itchyjunk/x-7353470)
2022-10-25 01:08:47 +0000 <geekosaur> that's a too-new llvm opt, iirc
2022-10-25 01:10:28 +0000albet70(~xxx@2400:8902::f03c:92ff:fe60:98d8) (Remote host closed the connection)
2022-10-25 01:10:43 +0000madnight(~madnight@static.59.103.201.195.clients.your-server.de) (K-Lined)
2022-10-25 01:10:43 +0000edi(~edi@user/edi) (K-Lined)
2022-10-25 01:10:43 +0000Profpatsch(~Profpatsc@static.88-198-193-255.clients.your-server.de) (K-Lined)
2022-10-25 01:10:43 +0000tomsmeding(~tomsmedin@static.21.109.88.23.clients.your-server.de) (K-Lined)
2022-10-25 01:10:43 +0000red-snail(~snail@static.151.210.203.116.clients.your-server.de) (K-Lined)
2022-10-25 01:10:43 +0000Philonous(~Philonous@user/philonous) (K-Lined)
2022-10-25 01:10:43 +0000dminuoso(~dminuoso@user/dminuoso) (K-Lined)
2022-10-25 01:10:43 +0000kawen(~quassel@static.208.191.216.95.clients.your-server.de) (K-Lined)
2022-10-25 01:10:44 +0000auri(~auri@fsf/member/auri) (K-Lined)
2022-10-25 01:10:44 +0000hexology(~hexology@user/hexology) (K-Lined)
2022-10-25 01:10:44 +0000lambdap237(~lambdap@static.167.190.119.168.clients.your-server.de) (K-Lined)
2022-10-25 01:10:44 +0000mcfrdy(~mcfrdy@user/mcfrdy) (K-Lined)
2022-10-25 01:10:44 +0000wz1000(~zubin@static.11.113.47.78.clients.your-server.de) (K-Lined)
2022-10-25 01:10:44 +0000aforemny(~aforemny@static.248.158.34.188.clients.your-server.de) (K-Lined)
2022-10-25 01:11:02 +0000hexology(~hexology@user/hexology)
2022-10-25 01:11:04 +0000 <j4cc3b> Ah, alright. I'll see if I can find an older llvm version. Thanks
2022-10-25 01:11:28 +0000 <geekosaur> https://gitlab.haskell.org/ghc/ghc/-/issues/21936
2022-10-25 01:11:35 +0000mcfrdy(~mcfrdy@user/mcfrdy)
2022-10-25 01:11:55 +0000kawen(~quassel@static.208.191.216.95.clients.your-server.de)
2022-10-25 01:11:57 +0000auri(~auri@fsf/member/auri)
2022-10-25 01:12:00 +0000madnight(~madnight@static.59.103.201.195.clients.your-server.de)
2022-10-25 01:12:01 +0000tomsmeding(~tomsmedin@2a01:4f8:c0c:5e5e::2)
2022-10-25 01:12:01 +0000wz1000(~zubin@static.11.113.47.78.clients.your-server.de)
2022-10-25 01:12:06 +0000Philonous(~Philonous@user/philonous)
2022-10-25 01:12:06 +0000dminuoso(~dminuoso@user/dminuoso)
2022-10-25 01:12:09 +0000aforemny(~aforemny@static.248.158.34.188.clients.your-server.de)
2022-10-25 01:12:22 +0000Profpatsch(~Profpatsc@static.88-198-193-255.clients.your-server.de)
2022-10-25 01:14:37 +0000red-snail(~snail@static.151.210.203.116.clients.your-server.de)
2022-10-25 01:16:07 +0000Lord_of_Life(~Lord@user/lord-of-life/x-2819915) (Ping timeout: 272 seconds)
2022-10-25 01:16:20 +0000Maeda(~Maeda@91-161-10-149.subs.proxad.net) (Ping timeout: 250 seconds)
2022-10-25 01:16:34 +0000albet70(~xxx@2400:8902::f03c:92ff:fe60:98d8)
2022-10-25 01:16:56 +0000FragByte(~christian@user/fragbyte) (Ping timeout: 276 seconds)
2022-10-25 01:18:25 +0000Lord_of_Life(~Lord@user/lord-of-life/x-2819915)
2022-10-25 01:18:39 +0000slack1256(~slack1256@191.125.99.71) (Ping timeout: 272 seconds)
2022-10-25 01:26:52 +0000andreas303(andreas303@ip227.orange.bnc4free.com) (Quit: fBNC - https://bnc4free.com)
2022-10-25 01:26:52 +0000xacktm(~xacktm@user/xacktm) (Quit: fBNC - https://bnc4free.com)
2022-10-25 01:28:13 +0000 <j4cc3b> geekosaur Thanks, I downgraded to llvm 14 and got cabal to work
2022-10-25 01:39:10 +0000xff0x(~xff0x@2405:6580:b080:900:274f:8858:84b:2f95) (Ping timeout: 272 seconds)
2022-10-25 01:41:41 +0000beteigeuze(~Thunderbi@a79-169-109-107.cpe.netcabo.pt) (Remote host closed the connection)
2022-10-25 01:42:04 +0000beteigeuze(~Thunderbi@a79-169-109-107.cpe.netcabo.pt)
2022-10-25 01:43:24 +0000Guest395(~textual@pool-100-11-18-203.phlapa.fios.verizon.net)
2022-10-25 01:43:45 +0000Guest395(~textual@pool-100-11-18-203.phlapa.fios.verizon.net) (Changing host)
2022-10-25 01:43:45 +0000Guest395(~textual@user/polo)
2022-10-25 01:43:49 +0000andreas303(andreas303@ip227.orange.bnc4free.com)
2022-10-25 01:45:48 +0000Guest395(~textual@user/polo) (Client Quit)
2022-10-25 01:49:41 +0000polo_(~polo@user/polo)
2022-10-25 01:52:22 +0000j4cc3b(~j4cc3b@pool-74-105-2-138.nwrknj.fios.verizon.net) (Quit: Client closed)
2022-10-25 01:53:23 +0000biberu\(~biberu@user/biberu)
2022-10-25 01:55:41 +0000xacktm(~xacktm@user/xacktm)
2022-10-25 01:57:17 +0000biberu(~biberu@user/biberu) (Ping timeout: 272 seconds)
2022-10-25 01:57:17 +0000biberu\biberu
2022-10-25 01:59:11 +0000beteigeuze(~Thunderbi@a79-169-109-107.cpe.netcabo.pt) (Ping timeout: 272 seconds)
2022-10-25 02:00:12 +0000micahcantor(~micahcant@132.161.188.118)
2022-10-25 02:02:00 +0000Guest17(~Guest17@132.161.188.57)
2022-10-25 02:02:16 +0000raehik(~raehik@cpc95906-rdng25-2-0-cust156.15-3.cable.virginm.net) (Ping timeout: 250 seconds)
2022-10-25 02:03:39 +0000frost75(~frost@user/frost)
2022-10-25 02:03:56 +0000Guest17(~Guest17@132.161.188.57) (Client Quit)
2022-10-25 02:06:09 +0000eggplantade(~Eggplanta@2600:1700:38c5:d800:9df4:2304:ddb0:d61a)
2022-10-25 02:08:17 +0000polo_(~polo@user/polo) (Ping timeout: 276 seconds)
2022-10-25 02:12:47 +0000td_(~td@83.135.9.20) (Ping timeout: 260 seconds)
2022-10-25 02:14:16 +0000td_(~td@83.135.9.24)
2022-10-25 02:19:05 +0000nate2(~nate@98.45.169.16)
2022-10-25 02:19:16 +0000[itchyjunk](~itchyjunk@user/itchyjunk/x-7353470) (Remote host closed the connection)
2022-10-25 02:22:15 +0000Feuermagier_(~Feuermagi@213.149.82.60)
2022-10-25 02:23:08 +0000zaquest(~notzaques@5.130.79.72) (Remote host closed the connection)
2022-10-25 02:24:54 +0000FinnElija(~finn_elij@user/finn-elija/x-0085643) (Killed (NickServ (Forcing logout FinnElija -> finn_elija)))
2022-10-25 02:24:54 +0000finn_elija(~finn_elij@user/finn-elija/x-0085643)
2022-10-25 02:24:54 +0000finn_elijaFinnElija
2022-10-25 02:25:02 +0000Feuermagier(~Feuermagi@user/feuermagier) (Ping timeout: 260 seconds)
2022-10-25 02:26:00 +0000Feuermagier_(~Feuermagi@213.149.82.60) (Read error: Connection reset by peer)
2022-10-25 02:26:53 +0000FragByte(~christian@user/fragbyte)
2022-10-25 02:29:12 +0000mvk(~mvk@2607:fea8:5ce3:8500::a80f) (Ping timeout: 272 seconds)
2022-10-25 02:29:19 +0000xff0x(~xff0x@125x103x176x34.ap125.ftth.ucom.ne.jp)
2022-10-25 02:30:17 +0000freeside(~mengwong@103.252.202.193) (Ping timeout: 260 seconds)
2022-10-25 02:31:13 +0000meooow(~meooow@165.232.184.169)
2022-10-25 02:33:17 +0000wroathe(~wroathe@user/wroathe) (Ping timeout: 240 seconds)
2022-10-25 02:35:24 +0000freeside(~mengwong@103.252.202.193)
2022-10-25 02:35:55 +0000machinedgod(~machinedg@d198-53-218-113.abhsia.telus.net) (Ping timeout: 272 seconds)
2022-10-25 02:38:54 +0000frost75(~frost@user/frost) (Quit: Client closed)
2022-10-25 02:40:09 +0000micahcantor(~micahcant@132.161.188.118) (Ping timeout: 244 seconds)
2022-10-25 02:40:12 +0000freeside(~mengwong@103.252.202.193) (Ping timeout: 260 seconds)
2022-10-25 02:42:49 +0000terrorjack(~terrorjac@2a01:4f8:1c1e:509a::1) (Quit: The Lounge - https://thelounge.chat)
2022-10-25 02:43:52 +0000terrorjack(~terrorjac@2a01:4f8:1c1e:509a::1)
2022-10-25 02:55:15 +0000j4cc3b(~j4cc3b@pool-74-105-2-138.nwrknj.fios.verizon.net)
2022-10-25 02:55:18 +0000polo(~polo@user/polo)
2022-10-25 02:58:52 +0000Lycurgus(~juan@user/Lycurgus) (Quit: Exeunt juan@acm.org)
2022-10-25 03:00:36 +0000freeside(~mengwong@103.252.202.193)
2022-10-25 03:08:19 +0000micahcantor(~micahcant@132.161.188.118)
2022-10-25 03:09:07 +0000waleee(~waleee@2001:9b0:213:7200:cc36:a556:b1e8:b340) (Ping timeout: 272 seconds)
2022-10-25 03:11:59 +0000polo(~polo@user/polo) (Ping timeout: 276 seconds)
2022-10-25 03:20:45 +0000king_gs(~Thunderbi@2806:103e:29:c5:4fb1:a8c9:906f:c6e0)
2022-10-25 03:20:55 +0000king_gs(~Thunderbi@2806:103e:29:c5:4fb1:a8c9:906f:c6e0) (Client Quit)
2022-10-25 03:22:35 +0000mixfix41(~sdeny9ee@user/mixfix41)
2022-10-25 03:29:45 +0000nate2(~nate@98.45.169.16) (Ping timeout: 272 seconds)
2022-10-25 03:41:44 +0000birdgoose(~birdgoose@2406:e003:1d87:6601:ad3a:1d2e:9fb1:dfac) (Quit: Konversation terminated!)
2022-10-25 03:43:47 +0000birdgoose(~jesse@151.210.175.160)
2022-10-25 03:45:42 +0000polo(~polo@user/polo)
2022-10-25 03:46:42 +0000chronon(~chronon@user/chronon)
2022-10-25 03:50:25 +0000micahcantor(~micahcant@132.161.188.118) (Ping timeout: 244 seconds)
2022-10-25 03:52:56 +0000polo(~polo@user/polo) (Ping timeout: 276 seconds)
2022-10-25 03:56:17 +0000danza(~francesco@ge-19-125-62.service.infuturo.it) (Ping timeout: 240 seconds)
2022-10-25 03:57:55 +0000nate2(~nate@98.45.169.16)
2022-10-25 03:58:13 +0000azimut(~azimut@gateway/tor-sasl/azimut) (Ping timeout: 258 seconds)
2022-10-25 04:03:02 +0000nate2(~nate@98.45.169.16) (Ping timeout: 260 seconds)
2022-10-25 04:04:37 +0000freeside(~mengwong@103.252.202.193) (Ping timeout: 240 seconds)
2022-10-25 04:06:21 +0000birdgoose(~jesse@151.210.175.160) (Quit: Konversation terminated!)
2022-10-25 04:06:34 +0000birdgoose(~jesse@2406:e003:1d87:6601:e725:b6b4:ace8:4ebe)
2022-10-25 04:07:13 +0000freeside(~mengwong@103.252.202.193)
2022-10-25 04:09:22 +0000danza(~francesco@151.68.249.142)
2022-10-25 04:11:36 +0000j4cc3b(~j4cc3b@pool-74-105-2-138.nwrknj.fios.verizon.net) (Ping timeout: 244 seconds)
2022-10-25 04:14:05 +0000freeside(~mengwong@103.252.202.193) (Ping timeout: 272 seconds)
2022-10-25 04:14:19 +0000freeside(~mengwong@103.252.202.193)
2022-10-25 04:17:27 +0000zaquest(~notzaques@5.130.79.72)
2022-10-25 04:18:32 +0000ski(~ski@remote11.chalmers.se)
2022-10-25 04:19:56 +0000Unicorn_Princess(~Unicorn_P@user/Unicorn-Princess/x-3540542) (Remote host closed the connection)
2022-10-25 04:33:56 +0000wroathe(~wroathe@user/wroathe)
2022-10-25 04:35:23 +0000nate2(~nate@98.45.169.16)
2022-10-25 04:36:37 +0000freeside(~mengwong@103.252.202.193) (Ping timeout: 240 seconds)
2022-10-25 04:38:37 +0000AkechiShiro(~licht@user/akechishiro)
2022-10-25 04:39:44 +0000qrpnxz(~qrpnxz@fsf/member/qrpnxz) (Ping timeout: 276 seconds)
2022-10-25 04:40:22 +0000nate2(~nate@98.45.169.16) (Ping timeout: 260 seconds)
2022-10-25 04:40:56 +0000qrpnxz(~qrpnxz@fsf/member/qrpnxz)
2022-10-25 04:45:00 +0000mbuf(~Shakthi@49.204.140.84)
2022-10-25 04:49:13 +0000freeside(~mengwong@103.252.202.193)
2022-10-25 04:55:00 +0000zebrag(~chris@user/zebrag) (Quit: Konversation terminated!)
2022-10-25 04:56:32 +0000kenran(~user@user/kenran)
2022-10-25 04:58:44 +0000ckiorrrrrrrrrrrs(~ckiorrrrr@c-76-17-6-165.hsd1.ga.comcast.net) (Remote host closed the connection)
2022-10-25 04:59:30 +0000wroathe(~wroathe@user/wroathe) (Ping timeout: 250 seconds)
2022-10-25 05:01:29 +0000birdgoose(~jesse@2406:e003:1d87:6601:e725:b6b4:ace8:4ebe) (Quit: Konversation terminated!)
2022-10-25 05:01:44 +0000birdgoose(~jesse@2406:e003:1d87:6601:e725:b6b4:ace8:4ebe)
2022-10-25 05:08:25 +0000Maeda(~Maeda@91-161-10-149.subs.proxad.net)
2022-10-25 05:10:22 +0000Guest5366money
2022-10-25 05:12:02 +0000boxscape_(~boxscape_@81.191.27.107) (Remote host closed the connection)
2022-10-25 05:12:10 +0000takuan(~takuan@178-116-218-225.access.telenet.be)
2022-10-25 05:13:57 +0000bgs(~bgs@212-85-160-171.dynamic.telemach.net)
2022-10-25 05:14:15 +0000jao(~jao@cpc103048-sgyl39-2-0-cust502.18-2.cable.virginm.net) (Ping timeout: 272 seconds)
2022-10-25 05:15:45 +0000boxscape_(~boxscape_@81.191.27.107)
2022-10-25 05:17:48 +0000boxscape_(~boxscape_@81.191.27.107) (Remote host closed the connection)
2022-10-25 05:21:26 +0000fjMSX(~hypni2p@2.92.213.55) (Remote host closed the connection)
2022-10-25 05:29:27 +0000ec(~ec@gateway/tor-sasl/ec) (Ping timeout: 258 seconds)
2022-10-25 05:30:03 +0000Peerin(~Peerin@154.3.36.102) (Remote host closed the connection)
2022-10-25 05:30:55 +0000ec(~ec@gateway/tor-sasl/ec)
2022-10-25 05:34:43 +0000nate2(~nate@98.45.169.16)
2022-10-25 05:36:20 +0000birdgoose(~jesse@2406:e003:1d87:6601:e725:b6b4:ace8:4ebe) (Ping timeout: 250 seconds)
2022-10-25 05:38:50 +0000birdgoose(~jesse@151.210.175.160)
2022-10-25 05:39:01 +0000P1RATEZ(piratez@user/p1ratez) (Remote host closed the connection)
2022-10-25 05:39:22 +0000nate2(~nate@98.45.169.16) (Ping timeout: 250 seconds)
2022-10-25 05:40:51 +0000jle`(~jle`@cpe-23-240-75-236.socal.res.rr.com) (Ping timeout: 272 seconds)
2022-10-25 05:49:02 +0000birdgoose(~jesse@151.210.175.160) (Quit: Konversation terminated!)
2022-10-25 05:49:12 +0000raym(~ray@user/raym) (Ping timeout: 260 seconds)
2022-10-25 05:49:25 +0000birdgoose(~jesse@2406:e003:1d87:6601:e725:b6b4:ace8:4ebe)
2022-10-25 05:51:56 +0000sameer(~sameer@2409:4070:6e10:74c0::81c8:d301) (Ping timeout: 250 seconds)
2022-10-25 05:52:25 +0000bgs(~bgs@212-85-160-171.dynamic.telemach.net) (Remote host closed the connection)
2022-10-25 05:52:32 +0000sameer(~sameer@2409:4070:2db0:cb01::c089:7411)
2022-10-25 05:56:05 +0000raym(~ray@user/raym)
2022-10-25 05:56:07 +0000 <Clinton[m]> As silly as this may seem, are these instances law abiding?... (full message at <https://libera.ems.host/_matrix/media/v3/download/libera.chat/f8298a10f2170a4f89c99acce653599b4976…>)
2022-10-25 05:56:58 +0000 <Clinton[m]> (this is a cut down example which doesn't really demonstrate what I'm trying to achieve)
2022-10-25 05:58:23 +0000 <jackdk> Clinton[m]: looks like `Blah ~ Const [Int]`
2022-10-25 05:59:00 +0000 <jackdk> @info Const
2022-10-25 05:59:00 +0000 <lambdabot> Const
2022-10-25 05:59:03 +0000gurkenglas(~gurkengla@p548ac72e.dip0.t-ipconnect.de)
2022-10-25 05:59:08 +0000 <jackdk> :i Const
2022-10-25 05:59:13 +0000 <jackdk> % :i Const
2022-10-25 05:59:13 +0000 <yahb2> <interactive>:1:1: error: Not in scope: ‘Const’
2022-10-25 05:59:19 +0000 <Clinton[m]> Oh wow.
2022-10-25 05:59:39 +0000 <Clinton[m]> I love Haskell
2022-10-25 05:59:39 +0000 <jackdk> Anyway, `instance Monoid r => Applicative (Const r)`
2022-10-25 06:09:44 +0000lisbeths(uid135845@id-135845.lymington.irccloud.com) (Quit: Connection closed for inactivity)
2022-10-25 06:18:37 +0000jargon(~jargon@184.101.208.112) (Remote host closed the connection)
2022-10-25 06:20:39 +0000mmhat(~mmh@p200300f1c730762dee086bfffe095315.dip0.t-ipconnect.de)
2022-10-25 06:26:57 +0000jpds(~jpds@gateway/tor-sasl/jpds) (Ping timeout: 258 seconds)
2022-10-25 06:27:35 +0000gmg(~user@user/gehmehgeh)
2022-10-25 06:29:38 +0000jpds(~jpds@gateway/tor-sasl/jpds)
2022-10-25 06:36:34 +0000jonathanx_(~jonathan@h-178-174-176-109.A357.priv.bahnhof.se) (Ping timeout: 250 seconds)
2022-10-25 06:38:01 +0000mncheck(~mncheck@193.224.205.254)
2022-10-25 06:48:48 +0000Sgeo(~Sgeo@user/sgeo) (Read error: Connection reset by peer)
2022-10-25 06:49:46 +0000jonathanx(~jonathan@h-98-128-168-222.NA.cust.bahnhof.se)
2022-10-25 06:52:31 +0000EvanR_(~EvanR@user/evanr)
2022-10-25 06:53:19 +0000EvanR(~EvanR@user/evanr) (Ping timeout: 272 seconds)
2022-10-25 06:58:13 +0000coot(~coot@2a02:a310:e241:1b00:ec1a:e9df:79ac:66ba)
2022-10-25 06:59:48 +0000jonathanx(~jonathan@h-98-128-168-222.NA.cust.bahnhof.se) (Remote host closed the connection)
2022-10-25 07:00:05 +0000jonathanx(~jonathan@h-98-128-168-222.NA.cust.bahnhof.se)
2022-10-25 07:01:27 +0000michalz(~michalz@185.246.207.200)
2022-10-25 07:02:05 +0000yangby(~secret@115.197.21.96)
2022-10-25 07:09:30 +0000chele(~chele@user/chele)
2022-10-25 07:10:06 +0000yangby(~secret@115.197.21.96) (Quit: Go out for a walk and buy a drink.)
2022-10-25 07:11:50 +0000werneta(~werneta@70-142-214-115.lightspeed.irvnca.sbcglobal.net) (Ping timeout: 276 seconds)
2022-10-25 07:13:22 +0000werneta(~werneta@70-142-214-115.lightspeed.irvnca.sbcglobal.net)
2022-10-25 07:20:47 +0000werneta(~werneta@70-142-214-115.lightspeed.irvnca.sbcglobal.net) (Ping timeout: 260 seconds)
2022-10-25 07:22:39 +0000werneta(~werneta@70-142-214-115.lightspeed.irvnca.sbcglobal.net)
2022-10-25 07:24:32 +0000tromp(~textual@92-110-219-57.cable.dynamic.v4.ziggo.nl)
2022-10-25 07:24:37 +0000talismanick(~talismani@76.133.152.122) (Ping timeout: 240 seconds)
2022-10-25 07:26:53 +0000merijn(~merijn@c-001-001-002.client.esciencecenter.eduvpn.nl)
2022-10-25 07:27:16 +0000werneta(~werneta@70-142-214-115.lightspeed.irvnca.sbcglobal.net) (Ping timeout: 250 seconds)
2022-10-25 07:28:56 +0000werneta(~werneta@70-142-214-115.lightspeed.irvnca.sbcglobal.net)
2022-10-25 07:29:09 +0000cytokine_storm(~cytokine_@user/cytokine-storm/x-1083107) (Ping timeout: 272 seconds)
2022-10-25 07:30:06 +0000cytokine_storm(~cytokine_@user/cytokine-storm/x-1083107)
2022-10-25 07:34:12 +0000sameer(~sameer@2409:4070:2db0:cb01::c089:7411) (Ping timeout: 250 seconds)
2022-10-25 07:34:26 +0000sameer(~sameer@2409:4070:2db0:cb01::c089:7411)
2022-10-25 07:35:41 +0000jmorris(uid537181@id-537181.uxbridge.irccloud.com) (Quit: Connection closed for inactivity)
2022-10-25 07:37:15 +0000jco(~jco@90-228-194-139-no542.tbcn.telia.com)
2022-10-25 07:39:17 +0000danza(~francesco@151.68.249.142) (Read error: Connection reset by peer)
2022-10-25 07:40:26 +0000 <jco> Hi, I'm being temporarily (hopefully) stupid. Is there a general way in which you can rewrite a fold, where you don't use the element (only the accumulator), to something "simpler"? Small (but somewhat ugly) snippet at: https://paste.tomsmeding.com/V9lcJMde. Here you see that I don't really use `_i`.
2022-10-25 07:41:03 +0000lortabac(~lortabac@2a01:e0a:541:b8f0:e245:517d:6b8a:16f8)
2022-10-25 07:42:16 +0000 <dminuoso> You could write that as a replicateM I suppose
2022-10-25 07:42:33 +0000 <lyxia> or iterate
2022-10-25 07:44:49 +0000henrytill(e0180937c3@2604:bf00:561:2000::e8c)
2022-10-25 07:44:51 +0000 <dminuoso> Personally I would probably write it as just a handrolled loop.
2022-10-25 07:45:21 +0000 <dminuoso> Lets you write it in curred form as well
2022-10-25 07:47:11 +0000acidjnk(~acidjnk@p200300d6e7137a282ddda09dd97b606e.dip0.t-ipconnect.de)
2022-10-25 07:47:38 +0000 <dminuoso> jco: Along these lines https://gist.github.com/dminuoso/1e76c685d5168d8fe8881de0230a5208
2022-10-25 07:48:23 +0000 <dminuoso> Oh, actually the `zeroGroupCount - 1` is silly, can just use `n`
2022-10-25 07:48:31 +0000 <dminuoso> Updated gist
2022-10-25 07:48:33 +0000 <jco> dminuoso: Thanks, I'll take a look!
2022-10-25 07:48:50 +0000Kaipei(~Kaiepi@108.175.84.104)
2022-10-25 07:49:17 +0000fserucas|eod(~fserucas|@2001:818:e376:a400:fb92:70c1:dd88:c7d7)
2022-10-25 07:49:43 +0000chomwitt(~chomwitt@2a02:587:dc10:8200:1ac0:4dff:fedb:a3f1)
2022-10-25 07:49:59 +0000fserucas|eod(~fserucas|@2001:818:e376:a400:fb92:70c1:dd88:c7d7) (Client Quit)
2022-10-25 07:50:15 +0000fserucas|eod(~fserucas|@2001:818:e376:a400:fb92:70c1:dd88:c7d7)
2022-10-25 07:52:17 +0000werneta(~werneta@70-142-214-115.lightspeed.irvnca.sbcglobal.net) (Ping timeout: 240 seconds)
2022-10-25 07:54:48 +0000machinedgod(~machinedg@d198-53-218-113.abhsia.telus.net)
2022-10-25 07:59:29 +0000werneta(~werneta@70-142-214-115.lightspeed.irvnca.sbcglobal.net)
2022-10-25 08:01:19 +0000nschoe(~q@2a01:e0a:8e:a190:6b6f:b6f8:7b03:5cf7)
2022-10-25 08:03:15 +0000FinnElija(~finn_elij@user/finn-elija/x-0085643) (Remote host closed the connection)
2022-10-25 08:05:39 +0000jonathanx(~jonathan@h-98-128-168-222.NA.cust.bahnhof.se) (Remote host closed the connection)
2022-10-25 08:05:56 +0000jonathanx(~jonathan@h-98-128-168-222.NA.cust.bahnhof.se)
2022-10-25 08:07:08 +0000birdgoose(~jesse@2406:e003:1d87:6601:e725:b6b4:ace8:4ebe) (Ping timeout: 250 seconds)
2022-10-25 08:07:27 +0000nate2(~nate@98.45.169.16)
2022-10-25 08:08:19 +0000jakalx(~jakalx@base.jakalx.net) ()
2022-10-25 08:11:06 +0000econo(uid147250@user/econo) (Quit: Connection closed for inactivity)
2022-10-25 08:12:42 +0000nate2(~nate@98.45.169.16) (Ping timeout: 260 seconds)
2022-10-25 08:16:04 +0000tromp(~textual@92-110-219-57.cable.dynamic.v4.ziggo.nl) (Quit: My iMac has gone to sleep. ZZZzzz…)
2022-10-25 08:19:49 +0000FinnElija(~finn_elij@user/finn-elija/x-0085643)
2022-10-25 08:30:19 +0000shriekingnoise(~shrieking@186.137.167.202) (Quit: Quit)
2022-10-25 08:32:44 +0000eggplantade(~Eggplanta@2600:1700:38c5:d800:9df4:2304:ddb0:d61a) (Remote host closed the connection)
2022-10-25 08:41:34 +0000birdgoose(~jesse@2406:e003:1d87:6601:e725:b6b4:ace8:4ebe)
2022-10-25 08:42:29 +0000jakalx(~jakalx@base.jakalx.net)
2022-10-25 08:47:13 +0000cfricke(~cfricke@user/cfricke)
2022-10-25 09:01:41 +0000__monty__(~toonn@user/toonn)
2022-10-25 09:02:36 +0000KaitoDaumoto(~asdf@user/kaitodaumoto) (Remote host closed the connection)
2022-10-25 09:03:37 +0000shapr(~user@net-5-88-239-29.cust.vodafonedsl.it)
2022-10-25 09:21:37 +0000gurkenglas(~gurkengla@p548ac72e.dip0.t-ipconnect.de) (Ping timeout: 240 seconds)
2022-10-25 09:32:56 +0000tromp(~textual@92-110-219-57.cable.dynamic.v4.ziggo.nl)
2022-10-25 09:33:13 +0000eggplantade(~Eggplanta@2600:1700:38c5:d800:9df4:2304:ddb0:d61a)
2022-10-25 09:34:23 +0000tzh(~tzh@c-24-21-73-154.hsd1.or.comcast.net) (Quit: zzz)
2022-10-25 09:34:24 +0000FinnElija(~finn_elij@user/finn-elija/x-0085643) (Ping timeout: 258 seconds)
2022-10-25 09:37:42 +0000eggplantade(~Eggplanta@2600:1700:38c5:d800:9df4:2304:ddb0:d61a) (Ping timeout: 250 seconds)
2022-10-25 09:39:12 +0000random-jellyfish(~random-je@user/random-jellyfish)
2022-10-25 09:42:22 +0000random-jellyfish(~random-je@user/random-jellyfish) (Client Quit)
2022-10-25 09:43:42 +0000darkstardevx(~darkstard@50.126.124.156) (Ping timeout: 260 seconds)
2022-10-25 09:45:32 +0000raehik(~raehik@cpc95906-rdng25-2-0-cust156.15-3.cable.virginm.net)
2022-10-25 09:51:04 +0000nilradical(~nilradica@user/naso)
2022-10-25 09:52:05 +0000FinnElija(~finn_elij@user/finn-elija/x-0085643)
2022-10-25 09:53:00 +0000nilradical(~nilradica@user/naso) (Client Quit)
2022-10-25 09:54:46 +0000nilradical(~nilradica@user/naso)
2022-10-25 09:58:11 +0000ft(~ft@p3e9bc845.dip0.t-ipconnect.de) (Quit: leaving)
2022-10-25 10:03:42 +0000birdgoose(~jesse@2406:e003:1d87:6601:e725:b6b4:ace8:4ebe) (Ping timeout: 250 seconds)
2022-10-25 10:05:26 +0000lortabac(~lortabac@2a01:e0a:541:b8f0:e245:517d:6b8a:16f8) (Ping timeout: 250 seconds)
2022-10-25 10:06:37 +0000darkstardevx(~darkstard@50.126.124.156)
2022-10-25 10:07:37 +0000xff0x(~xff0x@125x103x176x34.ap125.ftth.ucom.ne.jp) (Ping timeout: 260 seconds)
2022-10-25 10:07:37 +0000tomboy64(~tomboy64@user/tomboy64) (Ping timeout: 260 seconds)
2022-10-25 10:07:52 +0000darkstardevx(~darkstard@50.126.124.156) (Remote host closed the connection)
2022-10-25 10:08:16 +0000darkstardevx(~darkstard@50.126.124.156)
2022-10-25 10:18:29 +0000cfricke(~cfricke@user/cfricke) (Quit: WeeChat 3.7)
2022-10-25 10:22:21 +0000tomboy64(~tomboy64@user/tomboy64)
2022-10-25 10:23:54 +0000beteigeuze(~Thunderbi@a79-169-109-107.cpe.netcabo.pt)
2022-10-25 10:27:07 +0000cytokine_storm(~cytokine_@user/cytokine-storm/x-1083107) (Ping timeout: 272 seconds)
2022-10-25 10:27:48 +0000cytokine_storm(~cytokine_@user/cytokine-storm/x-1083107)
2022-10-25 10:29:31 +0000nilradical(~nilradica@user/naso) ()
2022-10-25 10:34:57 +0000Kaipei(~Kaiepi@108.175.84.104) (Ping timeout: 240 seconds)
2022-10-25 10:43:50 +0000axeman(~quassel@2a02:8109:a380:78:6c88:f7de:5432:98cd)
2022-10-25 10:45:42 +0000gmg(~user@user/gehmehgeh) (Ping timeout: 258 seconds)
2022-10-25 10:46:05 +0000ec(~ec@gateway/tor-sasl/ec) (Ping timeout: 258 seconds)
2022-10-25 10:46:05 +0000stiell_(~stiell@gateway/tor-sasl/stiell) (Ping timeout: 258 seconds)
2022-10-25 10:46:28 +0000bitdex(~bitdex@gateway/tor-sasl/bitdex) (Ping timeout: 258 seconds)
2022-10-25 10:48:23 +0000vglfr(~vglfr@145.224.100.190) (Remote host closed the connection)
2022-10-25 10:49:16 +0000vglfr(~vglfr@145.224.100.190)
2022-10-25 10:50:04 +0000axeman(~quassel@2a02:8109:a380:78:6c88:f7de:5432:98cd) (Ping timeout: 250 seconds)
2022-10-25 10:53:57 +0000stiell_(~stiell@gateway/tor-sasl/stiell)
2022-10-25 10:55:54 +0000bitdex(~bitdex@gateway/tor-sasl/bitdex)
2022-10-25 10:56:20 +0000Kaipei(~Kaiepi@108.175.84.104)
2022-10-25 10:56:52 +0000ec(~ec@gateway/tor-sasl/ec)
2022-10-25 10:57:19 +0000gmg(~user@user/gehmehgeh)
2022-10-25 10:58:40 +0000wonko(~wjc@user/wonko)
2022-10-25 10:59:32 +0000causal(~user@50.35.83.177) (Quit: WeeChat 3.6)
2022-10-25 11:02:05 +0000causal(~user@50.35.83.177)
2022-10-25 11:05:29 +0000jmorris(uid537181@id-537181.uxbridge.irccloud.com)
2022-10-25 11:08:00 +0000xff0x(~xff0x@2405:6580:b080:900:ca36:cc78:fa79:2e35)
2022-10-25 11:12:56 +0000califax(~califax@user/califx) (Remote host closed the connection)
2022-10-25 11:12:56 +0000chexum(~quassel@gateway/tor-sasl/chexum) (Remote host closed the connection)
2022-10-25 11:12:56 +0000ChaiTRex(~ChaiTRex@user/chaitrex) (Remote host closed the connection)
2022-10-25 11:14:07 +0000chexum(~quassel@gateway/tor-sasl/chexum)
2022-10-25 11:14:08 +0000ChaiTRex(~ChaiTRex@user/chaitrex)
2022-10-25 11:14:55 +0000califax(~califax@user/califx)
2022-10-25 11:17:22 +0000zmt00(~zmt00@user/zmt00) (Ping timeout: 250 seconds)
2022-10-25 11:18:10 +0000jakalx(~jakalx@base.jakalx.net) ()
2022-10-25 11:19:11 +0000argento(~argent0@168-227-97-23.ptr.westnet.com.ar)
2022-10-25 11:20:30 +0000ajb(~ajb@mimas.whatbox.ca) (Quit: bye)
2022-10-25 11:20:40 +0000ajb(~ajb@mimas.whatbox.ca)
2022-10-25 11:21:50 +0000jakalx(~jakalx@base.jakalx.net)
2022-10-25 11:23:17 +0000schweers(~user@p200300e5773c9a00c23ebafffe9bd9c9.dip0.t-ipconnect.de)
2022-10-25 11:25:46 +0000lyle(~lyle@104.246.145.85)
2022-10-25 11:27:55 +0000koz(~koz@121.99.240.58) (Ping timeout: 252 seconds)
2022-10-25 11:32:00 +0000axeman(~quassel@2a02:8109:a380:78:eda1:cd6d:3994:f202)
2022-10-25 11:35:04 +0000eggplantade(~Eggplanta@2600:1700:38c5:d800:9df4:2304:ddb0:d61a)
2022-10-25 11:35:49 +0000koz(~koz@121.99.240.58)
2022-10-25 11:36:08 +0000lortabac(~lortabac@2a01:e0a:541:b8f0:ac5b:f1ab:700:d86f)
2022-10-25 11:39:28 +0000cytokine_storm(~cytokine_@user/cytokine-storm/x-1083107) (Ping timeout: 250 seconds)
2022-10-25 11:39:59 +0000cytokine_storm(~cytokine_@user/cytokine-storm/x-1083107)
2022-10-25 11:40:13 +0000eggplantade(~Eggplanta@2600:1700:38c5:d800:9df4:2304:ddb0:d61a) (Ping timeout: 272 seconds)
2022-10-25 11:41:08 +0000 <lyle> Here's a code snippit: https://paste.tomsmeding.com/KpZq9ht3
2022-10-25 11:41:52 +0000 <lyle> If I have a constructor that takes a Text, and call it with {}, what is happening. Is there a name for this language feature?
2022-10-25 11:44:18 +0000ec(~ec@gateway/tor-sasl/ec) (Remote host closed the connection)
2022-10-25 11:45:07 +0000ec(~ec@gateway/tor-sasl/ec)
2022-10-25 11:46:57 +0000 <int-e> It's part of the record syntax, but without specifying any fields, which somehow makes this work for non-record constructors.
2022-10-25 11:48:05 +0000 <int-e> It was already that way with Haskell 98, "The pattern F {} matches any value built with constructor F, whether or not F was declared with record syntax."
2022-10-25 11:49:17 +0000vglfr(~vglfr@145.224.100.190) (Remote host closed the connection)
2022-10-25 11:49:31 +0000 <int-e> (The space is not mandatory. I personally like omitting it (as done in the snippet) because it ties the {} block to the constructor rather than making it look like a braced expression.)
2022-10-25 11:49:43 +0000cytokine_storm(~cytokine_@user/cytokine-storm/x-1083107) (Ping timeout: 272 seconds)
2022-10-25 11:49:50 +0000cytokine_storm(~cytokine_@user/cytokine-storm/x-1083107)
2022-10-25 11:49:52 +0000vglfr(~vglfr@145.224.100.190)
2022-10-25 11:51:32 +0000kuribas(~user@silversquare.silversquare.eu)
2022-10-25 11:53:39 +0000cytokine_storm(~cytokine_@user/cytokine-storm/x-1083107) (Client Quit)
2022-10-25 11:53:48 +0000 <dminuoso> Ohh! With the space it suddenly makes sense why it looks the way it looks.
2022-10-25 11:53:57 +0000cytokine_storm(~cytokine_@user/cytokine-storm/x-1083107)
2022-10-25 11:53:57 +0000 <dminuoso> I've actually wondered about this myself before.
2022-10-25 11:54:09 +0000jmdaemon(~jmdaemon@user/jmdaemon) (Ping timeout: 272 seconds)
2022-10-25 11:54:53 +0000 <lyle> Ok, I understand now--thanks!
2022-10-25 11:55:19 +0000 <lyle> It's about the matching, I was looking at the {} as a argument.
2022-10-25 11:55:45 +0000 <dminuoso> lyle: well you can sort of think of it along the sides of an argument.
2022-10-25 11:56:04 +0000 <dminuoso> Foo { field1 = 1, field2 = 'b' }
2022-10-25 11:56:07 +0000 <dminuoso> Foo { field1 = 1 }
2022-10-25 11:56:10 +0000 <dminuoso> Foo {}
2022-10-25 11:57:00 +0000 <dminuoso> % data Foo = Foo { f1 :: Int, f2 :: Char }
2022-10-25 11:57:00 +0000 <yahb2> <no output>
2022-10-25 11:57:06 +0000 <dminuoso> % x = Foo {}
2022-10-25 11:57:06 +0000 <yahb2> <interactive>:14:5: warning: [-Wmissing-fields] ; • Fields of ‘Foo’ not initialised: ; f1 :: Int ; f2 :: Char ; • In the expression: Foo {} ; In an equation for ‘x’: x...
2022-10-25 11:57:15 +0000 <dminuoso> So this *is* valid.
2022-10-25 11:59:50 +0000wonko(~wjc@user/wonko) (Ping timeout: 250 seconds)
2022-10-25 12:00:05 +0000 <merijn> It's a nice way to match specific constructors without needing to care about the number of arguments it has
2022-10-25 12:00:16 +0000axeman(~quassel@2a02:8109:a380:78:eda1:cd6d:3994:f202) (Ping timeout: 250 seconds)
2022-10-25 12:00:29 +0000 <merijn> So if you refactor and change the fields later, you don't have to fix the pattern except where it matters
2022-10-25 12:00:42 +0000vglfr(~vglfr@145.224.100.190) (Remote host closed the connection)
2022-10-25 12:01:19 +0000cfricke(~cfricke@user/cfricke)
2022-10-25 12:01:19 +0000 <lyle> Ok, thanks everyone. This has been very helpful.
2022-10-25 12:01:43 +0000 <int-e> :t Nothing{}
2022-10-25 12:01:44 +0000 <lambdabot> Maybe a
2022-10-25 12:01:59 +0000vglfr(~vglfr@145.224.100.190)
2022-10-25 12:02:37 +0000 <dminuoso> :t Nothing{}{}
2022-10-25 12:02:38 +0000 <lambdabot> error: Empty record update
2022-10-25 12:02:50 +0000vglfr(~vglfr@145.224.100.190) (Remote host closed the connection)
2022-10-25 12:03:04 +0000 <dminuoso> I feel like an empty record update should be valid!
2022-10-25 12:03:34 +0000vglfr(~vglfr@145.224.100.190)
2022-10-25 12:03:34 +0000 <dminuoso> It's just like allowing a typeclass without type variables
2022-10-25 12:03:37 +0000 <int-e> I kind of agree... though your example might convince me otherwise
2022-10-25 12:04:32 +0000 <int-e> But I've had the `default{ ... }` case, where ... are options that I was playing around with, and it's annoying that the code breaks when the `...` is all commented out.
2022-10-25 12:05:14 +0000 <int-e> But not allowing Nothing{}{}{}{}{}{}{} might be a boon.
2022-10-25 12:05:37 +0000 <dminuoso> It just feels an arbitrary restriction
2022-10-25 12:06:05 +0000 <dminuoso> `flip . flip . flip . flip` is not illegal either
2022-10-25 12:06:23 +0000 <dminuoso> It might be silly and redudant, but I dont need GHC to hold my hands here
2022-10-25 12:06:37 +0000 <dminuoso> % data Foo = Foo { f1 :: Int, f2 :: Char }
2022-10-25 12:06:37 +0000 <yahb2> <no output>
2022-10-25 12:06:41 +0000 <dminuoso> % Foo { f1 }
2022-10-25 12:06:41 +0000 <yahb2> <interactive>:32:7: error: ; • Couldn't match expected type ‘Int’ with actual type ‘Foo -> Int’ ; • Probable cause: ‘f1’ is applied to too few arguments ; In the ‘f1’ field of a recor...
2022-10-25 12:06:44 +0000 <dminuoso> How is this syntactically valid?
2022-10-25 12:07:00 +0000 <merijn> dminuoso: NamedFieldPuns?
2022-10-25 12:07:04 +0000 <dminuoso> Ohh
2022-10-25 12:07:21 +0000 <int-e> % let f1 = 2 in Foo { f1 } -- let's check
2022-10-25 12:07:21 +0000 <yahb2> <interactive>:34:1: error: ; • No instance for (Show Foo) ; arising from a use of ‘Yahb2Defs.limitedPrint’ ; • In a stmt of an interactive GHCi command: ; Yahb2Defs.limitedP...
2022-10-25 12:07:30 +0000 <int-e> oh.
2022-10-25 12:08:05 +0000 <int-e> % deriving instance Show Foo
2022-10-25 12:08:05 +0000 <yahb2> <no output>
2022-10-25 12:08:14 +0000 <int-e> % let f1 = 2 in Foo { f1 }
2022-10-25 12:08:14 +0000 <yahb2> <interactive>:38:15: warning: [-Wmissing-fields] ; • Fields of ‘Foo’ not initialised: ; f2 :: Char ; • In the expression: Foo {f1} ; In the expression: let f1 = 2 in Foo {f1} ...
2022-10-25 12:08:29 +0000 <int-e> % let f1 = 2 in Foo { f1, f2 = 3 }
2022-10-25 12:08:29 +0000 <yahb2> <interactive>:40:30: error: ; • No instance for (Num Char) arising from the literal ‘3’ ; • In the ‘f2’ field of a record ; In the expression: Foo {f1, f2 = 3} ; In the expressi...
2022-10-25 12:08:41 +0000 <int-e> % let f1 = 2 in Foo { f1, f2 = '3' }
2022-10-25 12:08:41 +0000 <yahb2> Foo {f1 = 2, f2 = '3'}
2022-10-25 12:08:49 +0000 <int-e> urgh, should've tested privately
2022-10-25 12:08:56 +0000nate2(~nate@98.45.169.16)
2022-10-25 12:08:59 +0000 <dminuoso> merijn: I prefer RecordWildCards for this job.
2022-10-25 12:09:38 +0000 <dminuoso> It's an extension I flip on liberally, even though I wish the unhygenic macro (on pattern matching) part was a separate extension
2022-10-25 12:09:45 +0000 <int-e> % let f1 = 2 in Foo { f1 } { f2 = '3' } -- should this warn? :P
2022-10-25 12:09:45 +0000 <yahb2> <interactive>:46:15: warning: [-Wmissing-fields] ; • Fields of ‘Foo’ not initialised: ; f2 :: Char ; • In the expression: Foo {f1} ; In the expression: Foo {f1} {f2 = '3'} ; ...
2022-10-25 12:10:18 +0000ajb(~ajb@mimas.whatbox.ca) (Quit: bye)
2022-10-25 12:10:44 +0000 <dminuoso> int-e: Presumably the pattern match coverage checker could be twisted around for this. But the second functions are in the mix, like `let f1 = 2 in Foo { f1 } $ { f2 = '3' }` this would no longer work.
2022-10-25 12:12:38 +0000ajb(~ajb@mimas.whatbox.ca)
2022-10-25 12:14:12 +0000nate2(~nate@98.45.169.16) (Ping timeout: 260 seconds)
2022-10-25 12:15:27 +0000 <int-e> % data Bar a = Bar { x :: a, y :: a } deriving Show
2022-10-25 12:15:27 +0000 <yahb2> <no output>
2022-10-25 12:15:38 +0000ajb(~ajb@mimas.whatbox.ca) (Client Quit)
2022-10-25 12:15:59 +0000 <int-e> % Bar () () { x = 1 } { y = 1 } -- I guess the idea of updating fields one by one is doomed anyway
2022-10-25 12:15:59 +0000 <yahb2> <interactive>:50:8: error: ; • Constructor ‘()’ does not have field ‘x’ ; • In the expression: () {x = 1} ; In the second argument of ‘Bar’, namely ‘() {x = 1} {y = 1}’ ; In the...
2022-10-25 12:15:59 +0000 <kuribas> Why do OOP or lisp researchers need to pick on static types? I saw the talk by Sussman, who's work I greatly admire, then he states "we should focus on flexibility and expressiveness, not on type systems". Why do they think their work invalidates type theory?
2022-10-25 12:17:52 +0000 <int-e> ...maybe if all your code is perfect on the first try...
2022-10-25 12:17:52 +0000 <dminuoso> kuribas: For one, type systems dont just rule out bad programs, they also have a false positive rate.
2022-10-25 12:18:17 +0000 <dminuoso> Good and expressive type systems that dont filter out too many good programs (without inconveniencing the user) are rare.
2022-10-25 12:19:02 +0000 <kuribas> even then, you are not obliged to use the type system for everything.
2022-10-25 12:19:20 +0000 <dminuoso> The value of a type system rapidly decreases if you offer escape hatches
2022-10-25 12:19:33 +0000 <dminuoso> You can observe this in typescript
2022-10-25 12:19:41 +0000Unicorn_Princess(~Unicorn_P@user/Unicorn-Princess/x-3540542)
2022-10-25 12:20:21 +0000 <kuribas> the python static type checker has a "strict" mode, which forces you to put a type on all inputs.
2022-10-25 12:20:24 +0000 <dminuoso> And bolting on a type system after the fact tends to be extremely hard for a language that has had semantics and additions for potentially decades without the worry of a type system.
2022-10-25 12:20:31 +0000 <kuribas> You can still use "Any" of course.
2022-10-25 12:21:05 +0000argento(~argent0@168-227-97-23.ptr.westnet.com.ar) (Quit: Lost terminal)
2022-10-25 12:25:17 +0000 <kuribas> int-e: also, his book is mostly on numerical techniques, or interesting algorithms.
2022-10-25 12:25:49 +0000 <kuribas> int-e: a type system has diminishing returns there, however for structure heavy data (REST apis), I find it indespensible.
2022-10-25 12:26:04 +0000 <int-e> ah, the world where everything is a number
2022-10-25 12:26:21 +0000 <int-e> (except for NaN)
2022-10-25 12:26:33 +0000 <kuribas> These techniques seem orthogonal to typesystems to me, they don't invalidate the work of type theorists.
2022-10-25 12:27:04 +0000 <dminuoso> One thing that is definitely incompatible with convenience, is type systems around numbers.
2022-10-25 12:27:15 +0000 <int-e> . o O ( "god is real, unless declared to be an integer" )
2022-10-25 12:27:26 +0000ajb(~ajb@mimas.whatbox.ca)
2022-10-25 12:27:35 +0000 <dminuoso> Consider the number of numeric types we have, and how often you realToFrac or fromInteger you way from a to b
2022-10-25 12:27:41 +0000 <dminuoso> Probably losing information along the way. silently.
2022-10-25 12:27:54 +0000 <dminuoso> The type system causes inconvenience and *still* doesnt prevent information loss
2022-10-25 12:28:23 +0000bitdex(~bitdex@gateway/tor-sasl/bitdex) (Quit: = "")
2022-10-25 12:29:16 +0000 <dminuoso> Similar story with floating point numbers, though IEEE754 does allow for exception mechanisms, we just dont have this.
2022-10-25 12:30:26 +0000ajb(~ajb@mimas.whatbox.ca) (Client Quit)
2022-10-25 12:30:56 +0000ajb_(~ajb@mimas.whatbox.ca)
2022-10-25 12:31:06 +0000 <dminuoso> We could of course wrap every computation that could overflow/underflow/narrow a type in some `Either NumericError`, making it doubly inconvenient and relying on magic deforestation to not dunk performance entirely
2022-10-25 12:32:01 +0000 <dminuoso> Though for what its worth, I think `int-cast` solves the `fromIntegral` problem mostly nicely
2022-10-25 12:32:06 +0000 <raehik> oh reminds me dminuoso , if I want an efficient `Word16 -> Int16`, is `fromIntegral` good enough? will it be turned into some efficient primop
2022-10-25 12:32:18 +0000 <dminuoso> raehik: Yes, it will internally be a noop
2022-10-25 12:32:41 +0000Kaipei(~Kaiepi@108.175.84.104) (Read error: Connection reset by peer)
2022-10-25 12:32:44 +0000 <dminuoso> raehik: But for flatparse, I would just use the underlying primop manually
2022-10-25 12:33:01 +0000 <raehik> lovely. there's a nice explicit `word16ToInt16 :: Word16# -> Int16#` exported on 9.4 and maybe 9.2, but not prior
2022-10-25 12:33:08 +0000 <raehik> make that `word16ToInt16#`
2022-10-25 12:33:15 +0000 <dminuoso> raehik: let us talk about that subject
2022-10-25 12:33:37 +0000 <dminuoso> Ive come to the conclusion, that supporting sized primtypes before 9.2 is a fools errand, even internally
2022-10-25 12:33:48 +0000 <dminuoso> before 9.2 you can just unsafeCoerce# between them
2022-10-25 12:33:56 +0000ajb_(~ajb@mimas.whatbox.ca) (Client Quit)
2022-10-25 12:34:09 +0000 <dminuoso> but the reality is, you really cant do anything with sized primops except unsafeCoerce# them to Word# -> and then use them
2022-10-25 12:34:50 +0000 <raehik> OK. Learning that due to our heavy inlining and GHC's reliable unboxing (apparently?), I'm happy to agree
2022-10-25 12:35:39 +0000 <dminuoso> but keeping Word# internally is unfeasible for two reasons: a) it busts 32 bit compatibility (which requires Word64# prims - for which there are primops on 32 bit systems on GHC <= 9.0)
2022-10-25 12:36:01 +0000 <dminuoso> And b) it pins us to a legacy framework that will eventually lead to worse code generation
2022-10-25 12:36:40 +0000 <dminuoso> For instance: post 9.2/9.4 a `data Foo = Foo Word8# Word8# Word8# Word8#` can be packed into a single Word32#
2022-10-25 12:37:06 +0000 <dminuoso> But if we fling around a Word# that eventually gets narrowed, I can see it impacting cmm generation slightly
2022-10-25 12:37:45 +0000 <dminuoso> raehik: so what we have, is what we should stick to. except the Word64# part, that needs fixing pre 9.0
2022-10-25 12:37:51 +0000xff0x(~xff0x@2405:6580:b080:900:ca36:cc78:fa79:2e35) (Ping timeout: 272 seconds)
2022-10-25 12:38:23 +0000 <dminuoso> Presumably its the way it is, because haddock doesnt reflect well enough the CPP switched shenanigans in ghc-prim that happens when word size is less than 64.
2022-10-25 12:38:54 +0000 <dminuoso> you cant even see the Word64# primops on hackage for older GHCs, because that haddock gets executed on a 64 bit machine
2022-10-25 12:40:27 +0000xff0x(~xff0x@2405:6580:b080:900:ca36:cc78:fa79:2e35)
2022-10-25 12:41:02 +0000koz(~koz@121.99.240.58) (Ping timeout: 260 seconds)
2022-10-25 12:41:09 +0000Kaiepi(~Kaiepi@108.175.84.104)
2022-10-25 12:41:47 +0000juri__(~juri@79.140.114.58)
2022-10-25 12:42:12 +0000raehik(~raehik@cpc95906-rdng25-2-0-cust156.15-3.cable.virginm.net) (Ping timeout: 260 seconds)
2022-10-25 12:43:41 +0000kenran(~user@user/kenran) (Remote host closed the connection)
2022-10-25 12:44:37 +0000raehik(~raehik@cpc95906-rdng25-2-0-cust156.15-3.cable.virginm.net)
2022-10-25 12:44:56 +0000ajb(~ajb@mimas.whatbox.ca)
2022-10-25 12:44:58 +0000 <raehik> dminuoso: oops I dropped connection. last msg 7min ago
2022-10-25 12:45:13 +0000 <raehik> I wrote: If we use Word64 and the "Word64" prims (e.g. `indexWord64OffAddr#`), are we OK for 32-bit support and performance?
2022-10-25 12:46:13 +0000 <raehik> W64# and the various related primops use Word64# on 9.4, Word# on 64-bit pre-9.4, Word32# on 32-bit pre-9.4. is that correct?
2022-10-25 12:46:27 +0000juri_(~juri@84-19-175-179.pool.ovpn.com) (Ping timeout: 272 seconds)
2022-10-25 12:47:40 +0000 <raehik> so we can always wrap one of the output of such a primop into `W64# :: x -> Word64` then rely on GHC unboxing later
2022-10-25 12:47:51 +0000ajb(~ajb@mimas.whatbox.ca) (Client Quit)
2022-10-25 12:47:58 +0000 <raehik> s/one of the output/the output
2022-10-25 12:48:22 +0000koz(~koz@121.99.240.58)
2022-10-25 12:48:58 +0000 <raehik> Wait I got that wrong. On 32-bit, the Word64 primops should return Word64#.
2022-10-25 12:49:01 +0000 <raehik> https://downloads.haskell.org/ghc/latest/docs/users_guide/9.4.1-notes.html
2022-10-25 12:49:23 +0000causal(~user@50.35.83.177) (Quit: WeeChat 3.6)
2022-10-25 12:56:17 +0000ubert(~Thunderbi@178.165.171.4.wireless.dyn.drei.com) (Ping timeout: 240 seconds)
2022-10-25 12:56:18 +0000 <dminuoso> raehik: Correct, and more to the point on pre 9.0 there's a bunch of Word64# primops too.
2022-10-25 12:57:15 +0000ubert(~Thunderbi@178.165.171.4.wireless.dyn.drei.com)
2022-10-25 12:57:27 +0000 <dminuoso> In simple terms: at <= 9.0 there's only two effective prim types: Word# and Word64#, but the latter is turned off - along with all 64-bit sized primops - on 64 bit systems
2022-10-25 12:57:36 +0000 <raehik> dminuoso: do you want to use the primops that explicitly work on Word64# s, rather than the ones with Word64 in the name but actually working on Word# s (on 64-bit)?
2022-10-25 12:57:40 +0000tromp(~textual@92-110-219-57.cable.dynamic.v4.ziggo.nl) (Quit: My iMac has gone to sleep. ZZZzzz…)
2022-10-25 12:58:08 +0000 <dminuoso> Yes!
2022-10-25 12:58:37 +0000 <kuribas> int-e: btw, this book:https://mitpress.mit.edu/9780262045490/software-design-for-flexibility/
2022-10-25 12:58:53 +0000 <dminuoso> raehik: Or rather, on 32 bit they tend to do work on Word64#
2022-10-25 12:59:01 +0000 <dminuoso> raehik: the primops themselves are CPP switched.
2022-10-25 12:59:17 +0000freeside(~mengwong@103.252.202.193) (Ping timeout: 240 seconds)
2022-10-25 12:59:18 +0000 <dminuoso> a fact you cannot easily observe via hackage, because there is no actual haskell source code to see this
2022-10-25 12:59:32 +0000 <dminuoso> (that is, even haddock doesnt help with view source, because there is no source)
2022-10-25 12:59:32 +0000 <raehik> Right, but they must be in the primops pp file or whatever
2022-10-25 12:59:41 +0000cfricke(~cfricke@user/cfricke) (Quit: WeeChat 3.7)
2022-10-25 12:59:45 +0000 <dminuoso> They are, but here comes the next big catch
2022-10-25 12:59:49 +0000 <dminuoso> not all of them are exposed
2022-10-25 13:00:07 +0000 <dminuoso> some are exposed only via ghc-prim (which we can just depend upon, its just part of ghc), but not all
2022-10-25 13:00:23 +0000 <dminuoso> I have not yet been able to figure out which primops are exported and which ones are not
2022-10-25 13:00:35 +0000 <dminuoso> Furthermore GHC.Exts from base has only a subset of what GHC.Prim has
2022-10-25 13:00:47 +0000 <dminuoso> And GHC.Prim is a subset from what is defined in the primops pp file
2022-10-25 13:01:43 +0000 <raehik> hmmm! I see
2022-10-25 13:02:14 +0000tromp(~textual@92-110-219-57.cable.dynamic.v4.ziggo.nl)
2022-10-25 13:02:28 +0000 <raehik> why do you want the explicit Word64# primops? easier compatibility going forward, less CPP confusing things (behind the scenes or in flatparse)?
2022-10-25 13:02:50 +0000 <dminuoso> 32 bit compatibility.
2022-10-25 13:03:21 +0000ajb(~ajb@mimas.whatbox.ca)
2022-10-25 13:04:10 +0000 <raehik> provided we're using Word64s which should use Word64# on 32-bit (pre-9.4), what's the difference in compatibility?
2022-10-25 13:04:21 +0000 <dminuoso> raehik: Ah and for the Word64# some arent even primops, so for example you would only find eqWord64# in GHC.Word on 32 bits
2022-10-25 13:04:52 +0000 <dminuoso> raehik: Well, the W64 combinators become safe to use on 32 bit systems. Without it, they are not.
2022-10-25 13:04:53 +0000 <raehik> yeah, I found that -- had to box instead
2022-10-25 13:04:56 +0000 <dminuoso> And not just that
2022-10-25 13:05:04 +0000 <dminuoso> Anything that transitively uses them, which is essentially everything
2022-10-25 13:05:16 +0000 <dminuoso> say `string` relies on scan64# for example
2022-10-25 13:05:40 +0000 <dminuoso> which means the usability of the entire library hinges on this
2022-10-25 13:05:51 +0000 <dminuoso> (or we introduce flags to just work in 32 bit sized chunks)
2022-10-25 13:06:03 +0000 <dminuoso> and mark Word64 bit combinators as incompatible on 32 bit systems
2022-10-25 13:06:14 +0000 <int-e> kuribas: Hmm I see. Sounds interesting. Shouldn't types be largely independent from that though?
2022-10-25 13:06:18 +0000 <dminuoso> The benefit of that approach is that its much much faster
2022-10-25 13:06:33 +0000 <dminuoso> because much of the Word64# machine is implemented via FFI
2022-10-25 13:06:38 +0000 <dminuoso> (in older GHC on 32 bit)
2022-10-25 13:07:00 +0000troydm(~troydm@host-176-37-124-197.b025.la.net.ua) (Ping timeout: 250 seconds)
2022-10-25 13:07:08 +0000 <kuribas> int-e: yes, that's my thought.
2022-10-25 13:07:45 +0000 <dminuoso> raehik: I dont know, maybe ultimately the answer is to just disable all the 64 bit machinery entirely if WORD_SIZE_IN_BITS < 64
2022-10-25 13:08:17 +0000 <dminuoso> but it requires a bit of additional CPP switcheroo, byteString of string both need to work with either scan64# or scan32# for the large chunks
2022-10-25 13:08:28 +0000 <dminuoso> *byteString or string
2022-10-25 13:08:44 +0000freeside(~mengwong@103.252.202.193)
2022-10-25 13:09:21 +0000 <raehik> dminuoso: I'm confused. As I understand Word64,Word64# are still there and still 8-bytes on 32-bit, just probably lots slower due to the machine word size mismatch. Why would the W64 combinators be unsafe?
2022-10-25 13:09:33 +0000cfricke(~cfricke@user/cfricke)
2022-10-25 13:10:16 +0000 <dminuoso> raehik: So consider `byteString` for instance. It starts in Word64# chunks until there's just Word8#'s left.
2022-10-25 13:11:02 +0000 <dminuoso> If we correctly map scan64# to 32 bit, then we will for a bunch of (what is now) primops instead go through ffi.
2022-10-25 13:11:02 +0000teddyc(theodorc@cassarossa.samfundet.no) (Quit: WeeChat 3.0)
2022-10-25 13:11:37 +0000 <dminuoso> So two scan32# will likely be faster than scan64# on 32 bit systems
2022-10-25 13:12:28 +0000 <dminuoso> One way to address this, is to rebuild `byteString` to start with Word32# (that is Word#) chunks, until there's just Word8#'s left. The presence of 64 bit primitives would just enable someone to use them, but they are inherently slow.
2022-10-25 13:13:02 +0000 <dminuoso> So in that scenario they are not unsafe, just slow to the point that its better to not provide them.
2022-10-25 13:13:41 +0000freeside(~mengwong@103.252.202.193) (Ping timeout: 272 seconds)
2022-10-25 13:14:40 +0000 <raehik> ah! so you want to retain good 32-bit performance
2022-10-25 13:15:26 +0000 <dminuoso> Its additional work and ultimately baggage we will carry on. We already have most combinators duplicated across Basic and Stateful, providing 32 bit versions for each is not helping.
2022-10-25 13:15:40 +0000kuribas(~user@silversquare.silversquare.eu) (Read error: Connection reset by peer)
2022-10-25 13:15:43 +0000 <dminuoso> I dont have good answers honestly, every time I look at it I dont like my previous perspective
2022-10-25 13:15:52 +0000 <MangoIV[m]> Does anybody here use the `hls-eval-plugin` with a different editor than vscode? Thanks in advance.
2022-10-25 13:16:09 +0000 <raehik> I wasn't really bothered if we forwent decent 32-bit performance. And I agree with your point above checking WORD_SIZE_IN_BITS
2022-10-25 13:16:17 +0000zmt00(~zmt00@user/zmt00)
2022-10-25 13:16:36 +0000 <dminuoso> Lets at the very least include an `#if WORD_SIZE_IN_BITS < 32; error "32 bit not supported"; #endif` then
2022-10-25 13:16:49 +0000 <dminuoso> Oh, `WORD_SIZE_IN_BITS < 64` of course
2022-10-25 13:16:52 +0000kuribas(~user@silversquare.silversquare.eu)
2022-10-25 13:17:09 +0000 <dminuoso> If we do that, then the Word64# story becomes easier for GHC 9.4
2022-10-25 13:17:20 +0000 <raehik> dminuoso: why would 32-bit not be supported? I thought the problem was just it would perform poorly
2022-10-25 13:17:43 +0000 <dminuoso> Mmm fair
2022-10-25 13:17:45 +0000 <raehik> Maybe I was missing sth on the 9.4 side, if primops don't align the same way
2022-10-25 13:18:34 +0000 <dminuoso> Well, if we do want 32 bit support, we have to map out all the 64bit primops and see if there's any roundtripping through Word#
2022-10-25 13:19:08 +0000 <dminuoso> Either way, the compatibility shims we have so far is exactly what we need, and we need to keep on doing this.
2022-10-25 13:19:09 +0000 <raehik> Ah, that's true. I was working on cleaning up Word(#) vs. Word64(#) usage in my branch
2022-10-25 13:19:12 +0000 <dminuoso> (I dont see a way to refactor this)
2022-10-25 13:21:46 +0000nilradical(~nilradica@user/naso)
2022-10-25 13:22:17 +0000cytokine_storm(~cytokine_@user/cytokine-storm/x-1083107) (Ping timeout: 240 seconds)
2022-10-25 13:23:19 +0000cytokine_storm(~cytokine_@user/cytokine-storm/x-1083107)
2022-10-25 13:24:13 +0000 <nilradical> after upgrading to macos 13, my tests do not compile: "Bad interface file: .... x.hi mismatched interface file profile tag (wanted "", got "dyn")"
2022-10-25 13:24:31 +0000kuribas(~user@silversquare.silversquare.eu) (ERC (IRC client for Emacs 27.1))
2022-10-25 13:26:43 +0000freeside(~mengwong@103.252.202.193)
2022-10-25 13:27:50 +0000 <nilradical> false alarm, i did a cabal clean and rebuild and now it works. i do get some warnings though:
2022-10-25 13:27:55 +0000 <nilradical> ld: warning: directory not found for option '-L/opt/local/lib/'
2022-10-25 13:27:55 +0000 <nilradical> ld: warning: directory not found for option '-L/usr/local/lib/'
2022-10-25 13:27:55 +0000 <nilradical> ld: warning: -undefined dynamic_lookup may not work with chained fixups
2022-10-25 13:30:02 +0000teddyc(theodorc@cassarossa.samfundet.no)
2022-10-25 13:30:06 +0000 <dminuoso> raehik: By the way, here's my newest addition to the flatparse zoo: refocus :: BS.ByteString -> Parser e a -> Parser e a
2022-10-25 13:30:14 +0000 <dminuoso> Temporarily switches out the internal buffer. :)
2022-10-25 13:30:34 +0000azimut(~azimut@gateway/tor-sasl/azimut)
2022-10-25 13:30:48 +0000 <int-e> ...useful for implementing #include...
2022-10-25 13:30:52 +0000 <dminuoso> Indeed. :)
2022-10-25 13:31:12 +0000 <raehik> oh, nice! neat indeed
2022-10-25 13:34:51 +0000Sgeo(~Sgeo@user/sgeo)
2022-10-25 13:35:14 +0000enoq(~enoq@2a05:1141:1f5:5600:b9c9:721a:599:bfe7)
2022-10-25 13:42:27 +0000kuribas(~user@silversquare.silversquare.eu)
2022-10-25 13:45:33 +0000kayvank(~user@52-119-115-185.PUBLIC.monkeybrains.net)
2022-10-25 13:46:20 +0000haritz(~hrtz@82-69-11-11.dsl.in-addr.zen.co.uk)
2022-10-25 13:46:20 +0000haritz(~hrtz@82-69-11-11.dsl.in-addr.zen.co.uk) (Changing host)
2022-10-25 13:46:20 +0000haritz(~hrtz@user/haritz)
2022-10-25 13:47:17 +0000tromp(~textual@92-110-219-57.cable.dynamic.v4.ziggo.nl) (Quit: My iMac has gone to sleep. ZZZzzz…)
2022-10-25 13:50:31 +0000pavonia(~user@user/siracusa) (Quit: Bye!)
2022-10-25 13:52:52 +0000jmorris(uid537181@id-537181.uxbridge.irccloud.com) (Quit: Connection closed for inactivity)
2022-10-25 13:53:16 +0000L29Ah(~L29Ah@wikipedia/L29Ah) ()
2022-10-25 13:53:37 +0000wroathe(~wroathe@207-153-38-140.fttp.usinternet.com)
2022-10-25 13:53:37 +0000wroathe(~wroathe@207-153-38-140.fttp.usinternet.com) (Changing host)
2022-10-25 13:53:37 +0000wroathe(~wroathe@user/wroathe)
2022-10-25 13:54:08 +0000tromp(~textual@92-110-219-57.cable.dynamic.v4.ziggo.nl)
2022-10-25 13:57:01 +0000shriekingnoise(~shrieking@186.137.167.202)
2022-10-25 13:59:17 +0000wroathe(~wroathe@user/wroathe) (Ping timeout: 272 seconds)
2022-10-25 14:03:26 +0000Tuplanolla(~Tuplanoll@91-159-69-240.elisa-laajakaista.fi)
2022-10-25 14:04:57 +0000schweers(~user@p200300e5773c9a00c23ebafffe9bd9c9.dip0.t-ipconnect.de) (Ping timeout: 240 seconds)
2022-10-25 14:07:14 +0000cytokine_storm(~cytokine_@user/cytokine-storm/x-1083107) (Ping timeout: 250 seconds)
2022-10-25 14:07:20 +0000ChaiTRex(~ChaiTRex@user/chaitrex) (Ping timeout: 258 seconds)
2022-10-25 14:07:29 +0000cytokine_storm(~cytokine_@user/cytokine-storm/x-1083107)
2022-10-25 14:08:43 +0000ChaiTRex(~ChaiTRex@user/chaitrex)
2022-10-25 14:10:37 +0000juri__(~juri@79.140.114.58) (Read error: Connection reset by peer)
2022-10-25 14:15:02 +0000wonko(~wjc@user/wonko)
2022-10-25 14:15:37 +0000raehik(~raehik@cpc95906-rdng25-2-0-cust156.15-3.cable.virginm.net) (Ping timeout: 240 seconds)
2022-10-25 14:16:46 +0000juri_(~juri@79.140.120.117)
2022-10-25 14:18:10 +0000raehik(~raehik@cpc95906-rdng25-2-0-cust156.15-3.cable.virginm.net)
2022-10-25 14:18:22 +0000juri_(~juri@79.140.120.117) (Read error: Connection reset by peer)
2022-10-25 14:21:48 +0000juri_(~juri@79.140.120.117)
2022-10-25 14:22:37 +0000juri_(~juri@79.140.120.117) (Read error: Connection reset by peer)
2022-10-25 14:24:17 +0000qrpnxz(~qrpnxz@fsf/member/qrpnxz) (Ping timeout: 260 seconds)
2022-10-25 14:24:42 +0000qrpnxz(~qrpnxz@fsf/member/qrpnxz)
2022-10-25 14:26:48 +0000juri_(~juri@84-19-175-179.pool.ovpn.com)
2022-10-25 14:30:42 +0000ajb(~ajb@mimas.whatbox.ca) (Quit: bye)
2022-10-25 14:36:26 +0000ahrat(~ahrat@user/ahrat)
2022-10-25 14:37:10 +0000waleee(~waleee@2001:9b0:213:7200:cc36:a556:b1e8:b340)
2022-10-25 14:37:36 +0000eggplantade(~Eggplanta@2600:1700:38c5:d800:9df4:2304:ddb0:d61a)
2022-10-25 14:41:08 +0000micahcantor(~micahcant@132.161.188.118)
2022-10-25 14:41:39 +0000micahcantor(~micahcant@132.161.188.118) (Client Quit)
2022-10-25 14:41:54 +0000eggplantade(~Eggplanta@2600:1700:38c5:d800:9df4:2304:ddb0:d61a) (Ping timeout: 250 seconds)
2022-10-25 14:43:09 +0000phma(phma@2001:5b0:211b:8ac8:bff1:e65f:43d1:3dd5) (Read error: Connection reset by peer)
2022-10-25 14:44:00 +0000phma(~phma@2001:5b0:211f:f528:7435:f7cd:de72:7162)
2022-10-25 14:44:39 +0000zebrag(~chris@user/zebrag)
2022-10-25 14:52:57 +0000ChaiTRex(~ChaiTRex@user/chaitrex) (Ping timeout: 258 seconds)
2022-10-25 14:53:53 +0000ChaiTRex(~ChaiTRex@user/chaitrex)
2022-10-25 15:08:21 +0000bgs(~bgs@212-85-160-171.dynamic.telemach.net)
2022-10-25 15:13:30 +0000dextaa(~DV@user/dextaa) (Quit: Leaving)
2022-10-25 15:14:26 +0000dextaa(~DV@user/dextaa)
2022-10-25 15:16:32 +0000 <Profpatsch> kinda annoying that the default instance of <|> for IO is `catchException`
2022-10-25 15:16:43 +0000azimut(~azimut@gateway/tor-sasl/azimut) (Ping timeout: 258 seconds)
2022-10-25 15:16:43 +0000 <Profpatsch> Instead of passing through the Alternative instance of the inner type
2022-10-25 15:17:02 +0000dextaa4(~DV@user/dextaa)
2022-10-25 15:17:09 +0000 <Profpatsch> But I can use Monoid I guess
2022-10-25 15:19:10 +0000dextaa(~DV@user/dextaa) (Ping timeout: 250 seconds)
2022-10-25 15:19:10 +0000dextaa4dextaa
2022-10-25 15:20:48 +0000nilradical(~nilradica@user/naso) ()
2022-10-25 15:22:47 +0000ajb(~ajb@mimas.whatbox.ca)
2022-10-25 15:25:25 +0000dextaa(~DV@user/dextaa) (Ping timeout: 272 seconds)
2022-10-25 15:26:34 +0000ajb(~ajb@mimas.whatbox.ca) (Client Quit)
2022-10-25 15:28:27 +0000jonathanx(~jonathan@h-98-128-168-222.NA.cust.bahnhof.se) (Ping timeout: 260 seconds)
2022-10-25 15:29:14 +0000jco(~jco@90-228-194-139-no542.tbcn.telia.com) (Remote host closed the connection)
2022-10-25 15:30:21 +0000tromp(~textual@92-110-219-57.cable.dynamic.v4.ziggo.nl) (Quit: My iMac has gone to sleep. ZZZzzz…)
2022-10-25 15:30:28 +0000dextaa(~DV@user/dextaa)
2022-10-25 15:31:43 +0000ajb(~ajb@mimas.whatbox.ca)
2022-10-25 15:31:49 +0000dextaa(~DV@user/dextaa) (Client Quit)
2022-10-25 15:32:55 +0000dextaa(~DV@user/dextaa)
2022-10-25 15:32:57 +0000ChaiTRex(~ChaiTRex@user/chaitrex) (Remote host closed the connection)
2022-10-25 15:33:29 +0000ChaiTRex(~ChaiTRex@user/chaitrex)
2022-10-25 15:34:43 +0000ajb(~ajb@mimas.whatbox.ca) (Client Quit)
2022-10-25 15:35:47 +0000kuribas`(~user@silversquare.silversquare.eu)
2022-10-25 15:36:34 +0000kuribas(~user@silversquare.silversquare.eu) (Read error: Connection reset by peer)
2022-10-25 15:39:26 +0000ajb(~ajb@mimas.whatbox.ca)
2022-10-25 15:41:13 +0000 <davean> Profpatsch: You can of course use applicative to Alternative the interiors of the IO actions, but the IO actions themselves have to be Alternative because they also encode failing.
2022-10-25 15:43:10 +0000ajb(~ajb@mimas.whatbox.ca) (Client Quit)
2022-10-25 15:43:30 +0000quintasan_(~quassel@quintasan.pl) ()
2022-10-25 15:43:41 +0000quintasan(~quassel@quintasan.pl)
2022-10-25 15:45:46 +0000boxscape_(~boxscape_@81.191.27.107)
2022-10-25 15:47:22 +0000kuribas`(~user@silversquare.silversquare.eu) (Remote host closed the connection)
2022-10-25 15:49:29 +0000ahrat(~ahrat@user/ahrat) (Ping timeout: 272 seconds)
2022-10-25 15:49:50 +0000dextaa(~DV@user/dextaa) (Quit: Leaving)
2022-10-25 15:49:51 +0000eggplantade(~Eggplanta@2600:1700:38c5:d800:9df4:2304:ddb0:d61a)
2022-10-25 15:50:27 +0000ahrat(~ahrat@user/ahrat)
2022-10-25 15:50:50 +0000dextaa(~DV@user/dextaa)
2022-10-25 15:54:03 +0000ajb(~ajb@mimas.whatbox.ca)
2022-10-25 15:56:30 +0000jonathanx(~jonathan@h-178-174-176-109.A357.priv.bahnhof.se)
2022-10-25 15:56:57 +0000ajb(~ajb@mimas.whatbox.ca) (Client Quit)
2022-10-25 15:57:57 +0000tromp(~textual@92-110-219-57.cable.dynamic.v4.ziggo.nl)
2022-10-25 15:58:36 +0000Tuplanolla(~Tuplanoll@91-159-69-240.elisa-laajakaista.fi) (Ping timeout: 250 seconds)
2022-10-25 15:59:20 +0000ajb(~ajb@mimas.whatbox.ca)
2022-10-25 16:00:05 +0000eggplantade(~Eggplanta@2600:1700:38c5:d800:9df4:2304:ddb0:d61a) (Remote host closed the connection)
2022-10-25 16:00:06 +0000aaronv(~aaronv@user/aaronv) (Quit: You have been kicked for being idle)
2022-10-25 16:00:35 +0000 <jonathanx> when I store data in a TVar (though newTVar/writeTVar), is the data evaluated fully?
2022-10-25 16:00:48 +0000eggplantade(~Eggplanta@2600:1700:38c5:d800:9df4:2304:ddb0:d61a)
2022-10-25 16:01:08 +0000 <jonathanx> or can data in a TVar be in the form of unevaluated thunks?
2022-10-25 16:02:15 +0000ajb(~ajb@mimas.whatbox.ca) (Client Quit)
2022-10-25 16:03:11 +0000Kaiepi(~Kaiepi@108.175.84.104) (Quit: Leaving)
2022-10-25 16:04:24 +0000 <geekosaur> pretty sure it's like any other *ref/*var and can hold thunks. consider using $!
2022-10-25 16:04:24 +0000cfricke(~cfricke@user/cfricke) (Quit: WeeChat 3.7.1)
2022-10-25 16:04:34 +0000o-90(~o-90@gateway/tor-sasl/o-90)
2022-10-25 16:08:08 +0000Kaiepi(~Kaiepi@108.175.84.104)
2022-10-25 16:09:56 +0000ajb(~ajb@mimas.whatbox.ca)
2022-10-25 16:10:27 +0000nate2(~nate@98.45.169.16)
2022-10-25 16:10:32 +0000o-90(~o-90@gateway/tor-sasl/o-90) (Remote host closed the connection)
2022-10-25 16:11:17 +0000eggplantade(~Eggplanta@2600:1700:38c5:d800:9df4:2304:ddb0:d61a) (Remote host closed the connection)
2022-10-25 16:12:20 +0000azimut(~azimut@gateway/tor-sasl/azimut)
2022-10-25 16:12:48 +0000tzh(~tzh@c-24-21-73-154.hsd1.or.comcast.net)
2022-10-25 16:12:56 +0000ajb(~ajb@mimas.whatbox.ca) (Quit: bye)
2022-10-25 16:14:12 +0000Tuplanolla(~Tuplanoll@91-159-68-111.elisa-laajakaista.fi)
2022-10-25 16:15:42 +0000nate2(~nate@98.45.169.16) (Ping timeout: 260 seconds)
2022-10-25 16:16:08 +0000enoq(~enoq@2a05:1141:1f5:5600:b9c9:721a:599:bfe7) (Quit: enoq)
2022-10-25 16:17:57 +0000nschoe(~q@2a01:e0a:8e:a190:6b6f:b6f8:7b03:5cf7) (Ping timeout: 240 seconds)
2022-10-25 16:22:19 +0000eggplantade(~Eggplanta@2600:1700:38c5:d800:9df4:2304:ddb0:d61a)
2022-10-25 16:23:56 +0000econo(uid147250@user/econo)
2022-10-25 16:28:12 +0000Guest47(~Guest47@106.203.214.117)
2022-10-25 16:32:22 +0000Guest47(~Guest47@106.203.214.117) (Client Quit)
2022-10-25 16:33:38 +0000detuneattune(~detuneatt@user/detuneattune) (Quit: The Lounge - https://thelounge.chat)
2022-10-25 16:38:12 +0000redmp(~redmp@mobile-166-137-178-135.mycingular.net)
2022-10-25 16:38:17 +0000merijn(~merijn@c-001-001-002.client.esciencecenter.eduvpn.nl) (Ping timeout: 240 seconds)
2022-10-25 16:38:58 +0000WzC(~Frank@77-162-168-71.fixed.kpn.net)
2022-10-25 16:39:12 +0000coldtom4(~coldtom@coldrick.cc)
2022-10-25 16:39:13 +0000caubert_(~caubert@user/caubert)
2022-10-25 16:39:13 +0000Square(~a@user/square) (Ping timeout: 252 seconds)
2022-10-25 16:39:13 +0000x88x88x(~x88x88x@149.28.53.172) (Ping timeout: 252 seconds)
2022-10-25 16:39:16 +0000coot(~coot@2a02:a310:e241:1b00:ec1a:e9df:79ac:66ba) (Quit: coot)
2022-10-25 16:39:20 +0000L29Ah(~L29Ah@wikipedia/L29Ah)
2022-10-25 16:39:34 +0000lortabac(~lortabac@2a01:e0a:541:b8f0:ac5b:f1ab:700:d86f) (Quit: WeeChat 2.8)
2022-10-25 16:39:57 +0000mjs2600(~mjs2600@c-24-91-3-49.hsd1.vt.comcast.net) (Ping timeout: 252 seconds)
2022-10-25 16:39:57 +0000tstat(~tstat@user/tstat) (Ping timeout: 252 seconds)
2022-10-25 16:39:57 +0000Trattue(~Trattue@152.70.182.158) (Ping timeout: 252 seconds)
2022-10-25 16:40:16 +0000justache(~justache@user/justache)
2022-10-25 16:40:19 +0000orcus-(~orcus@user/brprice)
2022-10-25 16:40:19 +0000mjs2600(~mjs2600@c-24-91-3-49.hsd1.vt.comcast.net)
2022-10-25 16:40:19 +0000Logio(em@kapsi.fi) (Ping timeout: 252 seconds)
2022-10-25 16:40:19 +0000orcus(~orcus@user/brprice) (Ping timeout: 252 seconds)
2022-10-25 16:40:19 +0000dfordivam1(~dfordivam@tk2-219-19469.vs.sakura.ne.jp) (Ping timeout: 252 seconds)
2022-10-25 16:40:19 +0000Maxdamantus(~Maxdamant@user/maxdamantus) (Ping timeout: 252 seconds)
2022-10-25 16:40:20 +0000Hecate(~mariposa@user/hecate) (Ping timeout: 252 seconds)
2022-10-25 16:40:26 +0000drewolson0(~drewolson@user/drewolson)
2022-10-25 16:40:29 +0000polux3(~polux@51-15-169-172.rev.poneytelecom.eu)
2022-10-25 16:40:41 +0000Natch(~natch@c-9e07225c.038-60-73746f7.bbcust.telenor.se) (Ping timeout: 252 seconds)
2022-10-25 16:40:41 +0000WarzoneCommand(~Frank@77-162-168-71.fixed.kpn.net) (Ping timeout: 252 seconds)
2022-10-25 16:40:41 +0000gabiruh_(~gabiruh@vps19177.publiccloud.com.br) (Ping timeout: 252 seconds)
2022-10-25 16:40:41 +0000heath(~heath@user/heath) (Ping timeout: 252 seconds)
2022-10-25 16:40:41 +0000maerwald(~maerwald@user/maerwald) (Ping timeout: 252 seconds)
2022-10-25 16:40:41 +0000c_wraith(~c_wraith@adjoint.us) (Ping timeout: 252 seconds)
2022-10-25 16:40:41 +0000tolt(~weechat-h@li219-154.members.linode.com) (Ping timeout: 252 seconds)
2022-10-25 16:40:41 +0000int-e(~noone@int-e.eu) (Ping timeout: 252 seconds)
2022-10-25 16:40:42 +0000alp(~alp@user/alp) (Ping timeout: 252 seconds)
2022-10-25 16:40:42 +0000hippoid(~idris@user/hippoid) (Ping timeout: 252 seconds)
2022-10-25 16:40:42 +0000polux(~polux@51-15-169-172.rev.poneytelecom.eu) (Ping timeout: 252 seconds)
2022-10-25 16:40:42 +0000koala_man(~vidar@157.146.251.23.bc.googleusercontent.com) (Ping timeout: 252 seconds)
2022-10-25 16:40:42 +0000maerwald_(~maerwald@mail.hasufell.de)
2022-10-25 16:40:42 +0000polux3polux
2022-10-25 16:40:51 +0000gabiruh(~gabiruh@vps19177.publiccloud.com.br)
2022-10-25 16:40:56 +0000YoungFrawg(~youngfrog@2a02:a03f:ca07:f900:79d4:df1f:2403:242a)
2022-10-25 16:41:03 +0000Unode(~Unode@194.94.44.220) (Ping timeout: 252 seconds)
2022-10-25 16:41:03 +0000rodental(~rodental@38.146.5.222) (Ping timeout: 252 seconds)
2022-10-25 16:41:03 +0000shane(~shane@ana.rch.ist) (Ping timeout: 252 seconds)
2022-10-25 16:41:03 +0000foul_owl(~kerry@23.82.194.107) (Ping timeout: 252 seconds)
2022-10-25 16:41:03 +0000mmaruseacph2(~mihai@198.199.98.239) (Ping timeout: 252 seconds)
2022-10-25 16:41:03 +0000kjak(~kjak@pool-108-31-114-135.washdc.fios.verizon.net) (Ping timeout: 252 seconds)
2022-10-25 16:41:03 +0000chymera(~chymera@ns1000526.ip-51-81-46.us) (Ping timeout: 252 seconds)
2022-10-25 16:41:03 +0000YoungFrog(~youngfrog@39.129-180-91.adsl-dyn.isp.belgacom.be) (Ping timeout: 252 seconds)
2022-10-25 16:41:04 +0000SIben(~SIben@ns3106586.ip-5-135-191.eu) (Ping timeout: 252 seconds)
2022-10-25 16:41:04 +0000kosmikus(~kosmikus@nullzig.kosmikus.org) (Ping timeout: 252 seconds)
2022-10-25 16:41:04 +0000fryguybob(~fryguybob@cpe-74-67-169-145.rochester.res.rr.com) (Ping timeout: 252 seconds)
2022-10-25 16:41:04 +0000Techcable(~Techcable@user/Techcable) (Ping timeout: 252 seconds)
2022-10-25 16:41:04 +0000caubert(~caubert@user/caubert) (Ping timeout: 252 seconds)
2022-10-25 16:41:04 +0000barrucadu(~barrucadu@carcosa.barrucadu.co.uk) (Ping timeout: 252 seconds)
2022-10-25 16:41:04 +0000akhesacaro(~caro@212-83-144-58.rev.poneytelecom.eu) (Ping timeout: 252 seconds)
2022-10-25 16:41:04 +0000telser_(~quassel@user/telser) (Ping timeout: 252 seconds)
2022-10-25 16:41:04 +0000drewolson(~drewolson@user/drewolson) (Ping timeout: 252 seconds)
2022-10-25 16:41:04 +0000coldtom(~coldtom@coldrick.cc) (Ping timeout: 252 seconds)
2022-10-25 16:41:04 +0000_________(~nobody@user/noodly) (Ping timeout: 252 seconds)
2022-10-25 16:41:05 +0000drewolson0drewolson
2022-10-25 16:41:05 +0000coldtom4coldtom
2022-10-25 16:41:16 +0000Unode(~Unode@194.94.44.220)
2022-10-25 16:41:20 +0000Trattue(~Trattue@152.70.182.158)
2022-10-25 16:41:25 +0000koolazer(~koo@user/koolazer) (Ping timeout: 252 seconds)
2022-10-25 16:41:25 +0000bcoppens(~bartcopp@vpn2.bartcoppens.be) (Ping timeout: 252 seconds)
2022-10-25 16:41:25 +0000isamiamsam(~d@zukertort.childrenofmay.org) (Ping timeout: 252 seconds)
2022-10-25 16:41:25 +0000hexeme(~hexeme@user/hexeme) (Ping timeout: 252 seconds)
2022-10-25 16:41:25 +0000tdammers(~tdammers@77.109.72.118.res.static.edpnet.net) (Ping timeout: 252 seconds)
2022-10-25 16:41:25 +0000davean(~davean@davean.sciesnet.net) (Ping timeout: 252 seconds)
2022-10-25 16:41:25 +0000piele(~piele@tbonesteak.creativeserver.net) (Ping timeout: 252 seconds)
2022-10-25 16:41:25 +0000justHaunted(~justache@user/justache) (Ping timeout: 252 seconds)
2022-10-25 16:41:25 +0000pie_(~pie_bnc@user/pie/x-2818909) (Ping timeout: 252 seconds)
2022-10-25 16:41:26 +0000sm[i](~user@plaintextaccounting/sm) (Ping timeout: 252 seconds)
2022-10-25 16:41:26 +0000Rembane(~Rembane@li346-36.members.linode.com) (Ping timeout: 252 seconds)
2022-10-25 16:41:27 +0000hexeme_(~hexeme@user/hexeme)
2022-10-25 16:41:47 +0000fjmorazan(~quassel@user/fjmorazan) (Ping timeout: 252 seconds)
2022-10-25 16:41:47 +0000Zemyla(~ec2-user@ec2-54-80-174-150.compute-1.amazonaws.com) (Ping timeout: 252 seconds)
2022-10-25 16:41:47 +0000cross(~cross@spitfire.i.gajendra.net) (Ping timeout: 252 seconds)
2022-10-25 16:41:47 +0000tessier(~treed@98.171.210.130) (Ping timeout: 252 seconds)
2022-10-25 16:41:47 +0000robbert-vdh(~robbert@robbertvanderhelm.nl) (Ping timeout: 252 seconds)
2022-10-25 16:41:47 +0000carbolymer(~carbolyme@dropacid.net) (Ping timeout: 252 seconds)
2022-10-25 16:41:49 +0000pie_(~pie_bnc@user/pie/x-2818909)
2022-10-25 16:41:49 +0000piele(~piele@tbonesteak.creativeserver.net)
2022-10-25 16:41:55 +0000telser(~quassel@user/telser)
2022-10-25 16:41:57 +0000YoungFrawgYoungFrog
2022-10-25 16:42:03 +0000carbolymer(~carbolyme@dropacid.net)
2022-10-25 16:42:03 +0000fjmorazan(~quassel@user/fjmorazan)
2022-10-25 16:42:12 +0000Logio(em@kapsi.fi)
2022-10-25 16:42:12 +0000chymera(~chymera@ns1000526.ip-51-81-46.us)
2022-10-25 16:42:15 +0000Hecate(~mariposa@user/hecate)
2022-10-25 16:42:24 +0000Maxdamantus(~Maxdamant@user/maxdamantus)
2022-10-25 16:42:25 +0000kosmikus(~kosmikus@nullzig.kosmikus.org)
2022-10-25 16:42:36 +0000heath(~heath@user/heath)
2022-10-25 16:42:37 +0000int-e(~noone@int-e.eu)
2022-10-25 16:42:37 +0000dfordivam1(~dfordivam@tk2-219-19469.vs.sakura.ne.jp)
2022-10-25 16:42:38 +0000koala_man(~vidar@157.146.251.23.bc.googleusercontent.com)
2022-10-25 16:42:38 +0000hippoid(~idris@user/hippoid)
2022-10-25 16:42:42 +0000tolt(~weechat-h@li219-154.members.linode.com)
2022-10-25 16:42:43 +0000alpm(~alp@user/alp)
2022-10-25 16:42:49 +0000shane(~shane@ana.rch.ist)
2022-10-25 16:42:51 +0000barrucadu(~barrucadu@carcosa.barrucadu.co.uk)
2022-10-25 16:42:56 +0000SIben(~SIben@ns3106586.ip-5-135-191.eu)
2022-10-25 16:42:56 +0000kjak(~kjak@pool-108-31-114-135.washdc.fios.verizon.net)
2022-10-25 16:42:58 +0000mmaruseacph2(~mihai@198.199.98.239)
2022-10-25 16:43:01 +0000Zemyla(~ec2-user@ec2-54-80-174-150.compute-1.amazonaws.com)
2022-10-25 16:43:04 +0000_________(~nobody@user/noodly)
2022-10-25 16:43:07 +0000fryguybob(~fryguybob@cpe-74-67-169-145.rochester.res.rr.com)
2022-10-25 16:43:07 +0000Techcable(~Techcable@user/Techcable)
2022-10-25 16:43:08 +0000bcoppens(~bartcopp@vpn2.bartcoppens.be)
2022-10-25 16:43:19 +0000Rembane(~Rembane@li346-36.members.linode.com)
2022-10-25 16:43:21 +0000isamiamsam(~d@zukertort.childrenofmay.org)
2022-10-25 16:43:27 +0000koolazer(~koo@user/koolazer)
2022-10-25 16:43:35 +0000tessier(~treed@98.171.210.130)
2022-10-25 16:43:39 +0000robbert-vdh(~robbert@robbertvanderhelm.nl)
2022-10-25 16:43:52 +0000cross(~cross@spitfire.i.gajendra.net)
2022-10-25 16:43:59 +0000tstat(~tstat@user/tstat)
2022-10-25 16:44:00 +0000Natch(~natch@c-9e07225c.038-60-73746f7.bbcust.telenor.se)
2022-10-25 16:45:50 +0000x88x88x(~x88x88x@2001:19f0:5:39a8:5400:3ff:feb6:73cb)
2022-10-25 16:46:11 +0000niko(niko@libera/staff/niko) (Ping timeout: 608 seconds)
2022-10-25 16:47:18 +0000Square(~a@user/square)
2022-10-25 16:47:24 +0000c_wraith(~c_wraith@adjoint.us)
2022-10-25 16:48:07 +0000sm[i](~user@plaintextaccounting/sm)
2022-10-25 16:48:50 +0000nschoe(~q@2a01:e0a:8e:a190:8a5e:a72c:c353:f747)
2022-10-25 16:51:46 +0000ajb(~ajb@mimas.whatbox.ca)
2022-10-25 16:52:29 +0000ajb(~ajb@mimas.whatbox.ca) (Read error: Connection timed out)
2022-10-25 16:53:23 +0000niko(niko@libera/staff/niko)
2022-10-25 16:53:33 +0000rodental(~rodental@38.146.5.222)
2022-10-25 16:54:12 +0000davean(~davean@davean.sciesnet.net)
2022-10-25 16:54:12 +0000tdammers(~tdammers@77.109.72.118.res.static.edpnet.net)
2022-10-25 16:54:54 +0000foul_owl(~kerry@23.82.194.107)
2022-10-25 16:56:24 +0000mjs2600(~mjs2600@c-24-91-3-49.hsd1.vt.comcast.net) (Quit: ZNC 1.8.2 - https://znc.in)
2022-10-25 16:56:39 +0000mjs2600(~mjs2600@c-24-91-3-49.hsd1.vt.comcast.net)
2022-10-25 16:58:03 +0000justachejustHaunted
2022-10-25 16:58:25 +0000titibandit(~titibandi@xdsl-87-78-36-34.nc.de)
2022-10-25 16:58:52 +0000thyriaen(~thyriaen@2a01:aea0:dd4:470d:6245:cbff:fe9f:48b1)
2022-10-25 17:00:08 +0000wonko(~wjc@user/wonko) (Ping timeout: 250 seconds)
2022-10-25 17:01:28 +0000tromp(~textual@92-110-219-57.cable.dynamic.v4.ziggo.nl) (Quit: My iMac has gone to sleep. ZZZzzz…)
2022-10-25 17:02:40 +0000EvanR_EvanR
2022-10-25 17:05:24 +0000merijn(~merijn@c-001-001-002.client.esciencecenter.eduvpn.nl)
2022-10-25 17:06:21 +0000akhesacaro(~caro@212-83-144-58.rev.poneytelecom.eu)
2022-10-25 17:08:21 +0000segfaultfizzbuzz(~segfaultf@23-93-74-212.fiber.dynamic.sonic.net)
2022-10-25 17:10:18 +0000titibandit(~titibandi@xdsl-87-78-36-34.nc.de) (Remote host closed the connection)
2022-10-25 17:22:12 +0000beteigeuze(~Thunderbi@a79-169-109-107.cpe.netcabo.pt) (Ping timeout: 260 seconds)
2022-10-25 17:25:30 +0000Midjak(~Midjak@82.66.147.146) (Quit: This computer has gone to sleep)
2022-10-25 17:28:51 +0000beteigeuze(~Thunderbi@89.187.168.55)
2022-10-25 17:29:43 +0000finsternis(~X@23.226.237.192)
2022-10-25 17:30:22 +0000shapr(~user@net-5-88-239-29.cust.vodafonedsl.it) (Ping timeout: 260 seconds)
2022-10-25 17:33:04 +0000beteigeuze(~Thunderbi@89.187.168.55) (Ping timeout: 250 seconds)
2022-10-25 17:34:37 +0000raym(~ray@user/raym) (Ping timeout: 240 seconds)
2022-10-25 17:36:45 +0000raym(~ray@user/raym)
2022-10-25 17:38:57 +0000mixfix41(~sdeny9ee@user/mixfix41) (Ping timeout: 240 seconds)
2022-10-25 17:46:38 +0000ajb(~ajb@mimas.whatbox.ca)
2022-10-25 17:49:00 +0000tromp(~textual@92-110-219-57.cable.dynamic.v4.ziggo.nl)
2022-10-25 17:49:21 +0000ajb(~ajb@mimas.whatbox.ca) (Read error: Connection timed out)
2022-10-25 17:51:32 +0000eggplantade(~Eggplanta@2600:1700:38c5:d800:9df4:2304:ddb0:d61a) (Remote host closed the connection)
2022-10-25 17:53:58 +0000ajb(~ajb@mimas.whatbox.ca)
2022-10-25 17:54:11 +0000Sciencentistguy(~sciencent@hacksoc/ordinary-member)
2022-10-25 17:55:26 +0000jao(~jao@cpc103048-sgyl39-2-0-cust502.18-2.cable.virginm.net)
2022-10-25 17:56:59 +0000ajb(~ajb@mimas.whatbox.ca) (Client Quit)
2022-10-25 17:57:11 +0000ajb(~ajb@mimas.whatbox.ca)
2022-10-25 18:00:16 +0000ajb(~ajb@mimas.whatbox.ca) (Client Quit)
2022-10-25 18:00:16 +0000Vajb(~Vajb@2001:999:504:1841:9e47:1ec7:a52e:1d57) (Read error: Connection reset by peer)
2022-10-25 18:00:33 +0000Vajb(~Vajb@hag-jnsbng11-58c3a5-27.dhcp.inet.fi)
2022-10-25 18:00:41 +0000boxscape_(~boxscape_@81.191.27.107) (Remote host closed the connection)
2022-10-25 18:00:58 +0000boxscape_(~boxscape_@81.191.27.107)
2022-10-25 18:04:51 +0000chele(~chele@user/chele) (Remote host closed the connection)
2022-10-25 18:05:40 +0000ft(~ft@p3e9bc845.dip0.t-ipconnect.de)
2022-10-25 18:06:43 +0000eggplantade(~Eggplanta@2600:1700:38c5:d800:9df4:2304:ddb0:d61a)
2022-10-25 18:06:54 +0000alpmalp
2022-10-25 18:09:49 +0000mvk(~mvk@2607:fea8:5ce3:8500::a80f)
2022-10-25 18:10:49 +0000mbuf(~Shakthi@49.204.140.84) (Quit: Leaving)
2022-10-25 18:17:28 +0000Vajb(~Vajb@hag-jnsbng11-58c3a5-27.dhcp.inet.fi) (Read error: Connection reset by peer)
2022-10-25 18:19:02 +0000Vajb(~Vajb@2001:999:504:1841:9e47:1ec7:a52e:1d57)
2022-10-25 18:20:54 +0000koz(~koz@121.99.240.58) (Quit: ZNC 1.8.2 - https://znc.in)
2022-10-25 18:21:39 +0000koz(~koz@121.99.240.58)
2022-10-25 18:25:23 +0000ajb(~ajb@mimas.whatbox.ca)
2022-10-25 18:28:25 +0000ajb(~ajb@mimas.whatbox.ca) (Client Quit)
2022-10-25 18:30:00 +0000SethTisue(sid14912@id-14912.ilkley.irccloud.com) ()
2022-10-25 18:30:10 +0000SethTisue(sid14912@id-14912.ilkley.irccloud.com)
2022-10-25 18:30:35 +0000ajb(~ajb@mimas.whatbox.ca)
2022-10-25 18:31:05 +0000segfaultfizzbuzz(~segfaultf@23-93-74-212.fiber.dynamic.sonic.net) (Ping timeout: 276 seconds)
2022-10-25 18:31:07 +0000zeenk(~zeenk@2a02:2f04:a105:5d00:c862:f190:2ea:d494)
2022-10-25 18:33:31 +0000ajb(~ajb@mimas.whatbox.ca) (Client Quit)
2022-10-25 18:35:36 +0000gmg(~user@user/gehmehgeh) (Quit: Leaving)
2022-10-25 18:36:57 +0000nschoe(~q@2a01:e0a:8e:a190:8a5e:a72c:c353:f747) (Quit: Switching off)
2022-10-25 18:45:42 +0000lyle(~lyle@104.246.145.85) (Quit: WeeChat 3.7.1)
2022-10-25 18:46:22 +0000ajb(~ajb@mimas.whatbox.ca)
2022-10-25 18:46:35 +0000troydm(~troydm@host-176-37-124-197.b025.la.net.ua)
2022-10-25 18:49:22 +0000ajb(~ajb@mimas.whatbox.ca) (Quit: bye)
2022-10-25 18:54:06 +0000hnOsmium0001(uid453710@user/hnOsmium0001) (Ping timeout: 264 seconds)
2022-10-25 18:57:41 +0000hnOsmium0001(uid453710@user/hnOsmium0001)
2022-10-25 18:59:00 +0000danza(~francesco@151.43.89.78)
2022-10-25 18:59:12 +0000talismanick(~talismani@76.133.152.122)
2022-10-25 19:05:40 +0000phma_(phma@2001:5b0:211f:f528:7435:f7cd:de72:7162)
2022-10-25 19:05:48 +0000fserucas|eod(~fserucas|@2001:818:e376:a400:fb92:70c1:dd88:c7d7) (Quit: Leaving)
2022-10-25 19:07:24 +0000coot(~coot@213.134.171.3)
2022-10-25 19:09:26 +0000phma(~phma@2001:5b0:211f:f528:7435:f7cd:de72:7162) (Ping timeout: 276 seconds)
2022-10-25 19:16:33 +0000eggplantade(~Eggplanta@2600:1700:38c5:d800:9df4:2304:ddb0:d61a) (Remote host closed the connection)
2022-10-25 19:25:45 +0000dextaa2(~DV@user/dextaa)
2022-10-25 19:27:57 +0000dextaa(~DV@user/dextaa) (Ping timeout: 240 seconds)
2022-10-25 19:27:57 +0000dextaa2dextaa
2022-10-25 19:30:57 +0000redmp(~redmp@mobile-166-137-178-135.mycingular.net) (Ping timeout: 240 seconds)
2022-10-25 19:31:22 +0000danza(~francesco@151.43.89.78) (Ping timeout: 255 seconds)
2022-10-25 19:41:13 +0000redmp(~redmp@mobile-166-137-178-135.mycingular.net)
2022-10-25 19:43:45 +0000boxscape_(~boxscape_@81.191.27.107) (Remote host closed the connection)
2022-10-25 19:44:08 +0000danza(~francesco@ca-18-217-177.service.infuturo.it)
2022-10-25 20:00:43 +0000redmp(~redmp@mobile-166-137-178-135.mycingular.net) (Ping timeout: 246 seconds)
2022-10-25 20:02:48 +0000redmp(~redmp@mobile-166-177-249-89.mycingular.net)
2022-10-25 20:06:02 +0000zebrag(~chris@user/zebrag) (Ping timeout: 250 seconds)
2022-10-25 20:11:19 +0000redmp(~redmp@mobile-166-177-249-89.mycingular.net) (Ping timeout: 272 seconds)
2022-10-25 20:11:57 +0000nate2(~nate@98.45.169.16)
2022-10-25 20:13:09 +0000kuribas(~user@ptr-17d51epif3m378oeqcg.18120a2.ip6.access.telenet.be)
2022-10-25 20:14:45 +0000noctux1noctuks
2022-10-25 20:15:39 +0000 <kuribas> dynamic types are so intuitive! The types don't get in the way!
2022-10-25 20:15:44 +0000 <kuribas> "TypeError: only integer scalar arrays can be converted to a scalar index"
2022-10-25 20:16:52 +0000nate2(~nate@98.45.169.16) (Ping timeout: 250 seconds)
2022-10-25 20:17:03 +0000eggplantade(~Eggplanta@2600:1700:38c5:d800:9df4:2304:ddb0:d61a)
2022-10-25 20:17:06 +0000phma_phma
2022-10-25 20:17:28 +0000redmp(~redmp@mobile-166-177-249-89.mycingular.net)
2022-10-25 20:18:13 +0000bgs(~bgs@212-85-160-171.dynamic.telemach.net) (Remote host closed the connection)
2022-10-25 20:20:52 +0000caubert_(~caubert@user/caubert) (Remote host closed the connection)
2022-10-25 20:21:04 +0000caubert(~caubert@user/caubert)
2022-10-25 20:21:38 +0000eggplantade(~Eggplanta@2600:1700:38c5:d800:9df4:2304:ddb0:d61a) (Ping timeout: 250 seconds)
2022-10-25 20:24:30 +0000tromp(~textual@92-110-219-57.cable.dynamic.v4.ziggo.nl) (Quit: My iMac has gone to sleep. ZZZzzz…)
2022-10-25 20:24:45 +0000 <EvanR> were you trying to use a double array as an index
2022-10-25 20:25:06 +0000 <kuribas> should be in #haskell-offtopic, sorry
2022-10-25 20:25:08 +0000 <EvanR> if so, a dynamic typicist might say that should work
2022-10-25 20:25:25 +0000 <kuribas> I was just concatenating an three arrays in python
2022-10-25 20:26:44 +0000 <EvanR> I went to see if I could reproduce that and realized ubuntu encouraged me to uninstall python last week
2022-10-25 20:26:56 +0000 <EvanR> so I did lol
2022-10-25 20:27:24 +0000 <kuribas> numpy.concatenate(numpy.repeat(0.0, 30), irfft([0 if x < 10 else x - 10 for x in range(20)]))
2022-10-25 20:28:49 +0000 <kuribas> ah, the first argument is a list
2022-10-25 20:35:18 +0000__monty__(~toonn@user/toonn) (Quit: leaving)
2022-10-25 20:39:18 +0000 <EvanR> yeah I vaguely remember working in languages X and Y where no one seemed to know what the arguments were supposed to be, it was something you just had to feel
2022-10-25 20:39:34 +0000gurkenglas(~gurkengla@p548ac72e.dip0.t-ipconnect.de)
2022-10-25 20:39:53 +0000 <EvanR> sometimes attempts were made at documentation
2022-10-25 20:40:41 +0000 <EvanR> arguments and return type(s)
2022-10-25 20:40:42 +0000 <kuribas> EvanRI guess looking at the source code?
2022-10-25 20:41:22 +0000 <EvanR> for return types yeah a lot of looking at source because that was more rarely documented
2022-10-25 20:46:37 +0000terrorjack(~terrorjac@2a01:4f8:1c1e:509a::1) (Ping timeout: 240 seconds)
2022-10-25 20:47:24 +0000mmhat(~mmh@p200300f1c730762dee086bfffe095315.dip0.t-ipconnect.de) (Ping timeout: 272 seconds)
2022-10-25 20:49:14 +0000tromp(~textual@92-110-219-57.cable.dynamic.v4.ziggo.nl)
2022-10-25 20:53:24 +0000dkeohane(~dkeohane@csm-wl-dhcp-207-224.mines.edu)
2022-10-25 20:54:00 +0000terrorjack(~terrorjac@2a01:4f8:1c1e:509a::1)
2022-10-25 20:56:02 +0000mastarija(~mastarija@188.252.197.165)
2022-10-25 20:56:33 +0000 <mastarija> is there a way to see some intermediate representation code of a haskell program
2022-10-25 20:56:54 +0000 <mastarija> For example, code that is a result of a tail call optimization?
2022-10-25 20:57:05 +0000 <mastarija> *elimination
2022-10-25 20:57:32 +0000polo(~polo@user/polo)
2022-10-25 20:57:45 +0000 <geekosaur> -ddump-ds to the compiler
2022-10-25 20:58:19 +0000 <geekosaur> although tail call elimination isn't reallly a thing: all calls are tail calls and CPS
2022-10-25 20:58:38 +0000merijn(~merijn@c-001-001-002.client.esciencecenter.eduvpn.nl) (Ping timeout: 276 seconds)
2022-10-25 20:59:09 +0000coot(~coot@213.134.171.3) (Quit: coot)
2022-10-25 21:00:15 +0000 <mastarija> Ok, that's the flag I was looking for
2022-10-25 21:00:17 +0000 <mastarija> Thanks!
2022-10-25 21:01:09 +0000mmhat(~mmh@p200300f1c73076dbee086bfffe095315.dip0.t-ipconnect.de)
2022-10-25 21:02:20 +0000 <monochrom> Most of the intermediate representations (ds, core, stg) will not disambiguate it because they are all still functional languages.
2022-10-25 21:02:33 +0000 <geekosaur> also most of the optimizations happen to the core representation, and ds is the first core stage, not the last
2022-10-25 21:02:52 +0000 <monochrom> The first intermediate form that actually says "allocate heap" or "push stack" is Cmm.
2022-10-25 21:03:24 +0000 <monochrom> Alternatively the black box observation is benchmarking and possibily profiling.
2022-10-25 21:04:30 +0000 <mastarija> So, -ddump-opt-cmm is also something to look at.
2022-10-25 21:04:40 +0000 <mastarija> I'm not really optimizing anything, just exploring a little
2022-10-25 21:04:57 +0000chexum(~quassel@gateway/tor-sasl/chexum) (Remote host closed the connection)
2022-10-25 21:05:28 +0000thyriaen(~thyriaen@2a01:aea0:dd4:470d:6245:cbff:fe9f:48b1) (Ping timeout: 246 seconds)
2022-10-25 21:05:44 +0000 <geekosaur> be aware that the code is already CPS-transformed at that point, so will be harder to follow than imperative-style code
2022-10-25 21:07:07 +0000 <monochrom> When it's my turn to look at these things, I use the full suite -ddump-simpl -ddump-prep -ddump-final-stg -ddump-<one of the cmms> -ddump-asm so I have all the stepping stones I need to connect Haskell to asm.
2022-10-25 21:07:26 +0000chexum(~quassel@gateway/tor-sasl/chexum)
2022-10-25 21:07:51 +0000 <monochrom> Plus https://github.com/takenobu-hs/haskell-ghc-illustrated for background knowledge.
2022-10-25 21:07:57 +0000raehik(~raehik@cpc95906-rdng25-2-0-cust156.15-3.cable.virginm.net) (Ping timeout: 260 seconds)
2022-10-25 21:09:35 +0000raehik(~raehik@cpc95906-rdng25-2-0-cust156.15-3.cable.virginm.net)
2022-10-25 21:10:08 +0000ajb(~ajb@mimas.whatbox.ca)
2022-10-25 21:10:21 +0000 <monochrom> My view is that once you desugar "jsr xxx ... ret" to "push foo, jmp xxx ... pop bx, jmp bx" you no longer see a difference between "call - return" and CPS.
2022-10-25 21:10:37 +0000danza(~francesco@ca-18-217-177.service.infuturo.it) (Ping timeout: 240 seconds)
2022-10-25 21:11:25 +0000ajb(~ajb@mimas.whatbox.ca) (Read error: Connection timed out)
2022-10-25 21:11:31 +0000 <monochrom> because the latter is CPS but it's call-return desugared.
2022-10-25 21:12:09 +0000 <monochrom> Corollary: Unpopular opinion: RISC does hardware CPS transform >:)
2022-10-25 21:12:50 +0000 <geekosaur> https://play-haskell.tomsmeding.com/ may also be of interest
2022-10-25 21:13:09 +0000 <geekosaur> note the buttons at top left to request various kinds of dumps
2022-10-25 21:13:58 +0000 <mastarija> Nice resources. Thanks.
2022-10-25 21:14:11 +0000 <mastarija> I didn't know about the ghc illustrated :)
2022-10-25 21:14:38 +0000polo(~polo@user/polo) (Quit: My MacBook has gone to sleep. ZZZzzz…)
2022-10-25 21:15:53 +0000 <mastarija> what would be a good flag to check if rewrite rules have been applied?
2022-10-25 21:16:08 +0000ajb(~ajb@mimas.whatbox.ca)
2022-10-25 21:16:25 +0000 <geekosaur> -ddump-rule-firings
2022-10-25 21:17:22 +0000 <geekosaur> note that this only tells you that a rule fired, not what it did; I don't recall off the top of my head how you get that
2022-10-25 21:18:29 +0000eggplantade(~Eggplanta@2600:1700:38c5:d800:c48:38cf:dc4d:4fed)
2022-10-25 21:19:08 +0000ajb(~ajb@mimas.whatbox.ca) (Client Quit)
2022-10-25 21:22:44 +0000eggplantade(~Eggplanta@2600:1700:38c5:d800:c48:38cf:dc4d:4fed) (Ping timeout: 250 seconds)
2022-10-25 21:23:25 +0000takuan(~takuan@178-116-218-225.access.telenet.be) (Remote host closed the connection)
2022-10-25 21:24:07 +0000polo(~polo@user/polo)
2022-10-25 21:24:10 +0000merijn(~merijn@c-001-001-002.client.esciencecenter.eduvpn.nl)
2022-10-25 21:28:09 +0000 <mastarija> Does haskell do any optimisations to a code like this? `sum (x:xs) = x + sum xs`
2022-10-25 21:29:40 +0000 <mastarija> I don't quite understand if rewrite rules can be used to rewrite patterns like `f (x:xs) = x `op` f xs` in terms of `foldr` or something.
2022-10-25 21:34:57 +0000freeside(~mengwong@103.252.202.193) (Ping timeout: 240 seconds)
2022-10-25 21:36:12 +0000tromp(~textual@92-110-219-57.cable.dynamic.v4.ziggo.nl) (Quit: My iMac has gone to sleep. ZZZzzz…)
2022-10-25 21:36:25 +0000mastarija(~mastarija@188.252.197.165) (Quit: Leaving)
2022-10-25 21:37:39 +0000segfaultfizzbuzz(~segfaultf@23-93-74-212.fiber.dynamic.sonic.net)
2022-10-25 21:40:00 +0000 <geekosaur> @tell mastarija no, because it would have different strictness (pattern matches are strict unless using ~, folds are usually lazy)
2022-10-25 21:40:00 +0000 <lambdabot> Consider it noted.
2022-10-25 21:40:38 +0000 <geekosaur> @tell mastarija rewrite rules are generally very careful to maintain the strictness guarantees of the original code
2022-10-25 21:40:38 +0000 <lambdabot> Consider it noted.
2022-10-25 21:43:19 +0000tromp(~textual@92-110-219-57.cable.dynamic.v4.ziggo.nl)
2022-10-25 21:43:57 +0000polo(~polo@user/polo) (Quit: My MacBook has gone to sleep. ZZZzzz…)
2022-10-25 21:44:31 +0000polo(~polo@user/polo)
2022-10-25 21:47:18 +0000polo(~polo@user/polo) (Client Quit)
2022-10-25 21:47:25 +0000freeside(~mengwong@103.252.202.193)
2022-10-25 21:51:57 +0000acidjnk(~acidjnk@p200300d6e7137a282ddda09dd97b606e.dip0.t-ipconnect.de) (Ping timeout: 240 seconds)
2022-10-25 21:53:50 +0000whatsupdoc(uid509081@id-509081.hampstead.irccloud.com)
2022-10-25 21:58:17 +0000merijn(~merijn@c-001-001-002.client.esciencecenter.eduvpn.nl) (Ping timeout: 240 seconds)
2022-10-25 22:00:12 +0000dfee(~dfee@162-227-164-101.lightspeed.sntcca.sbcglobal.net)
2022-10-25 22:00:31 +0000 <dfee> how accurate are download counts on hackage?
2022-10-25 22:02:07 +0000ajb(~ajb@mimas.whatbox.ca)
2022-10-25 22:04:30 +0000tromp(~textual@92-110-219-57.cable.dynamic.v4.ziggo.nl) (Quit: My iMac has gone to sleep. ZZZzzz…)
2022-10-25 22:05:02 +0000ajb(~ajb@mimas.whatbox.ca) (Client Quit)
2022-10-25 22:05:36 +0000 <geekosaur> not sure "accurate" is meaningful without other information (like, is it per month or what?)
2022-10-25 22:05:55 +0000ajb(~ajb@mimas.whatbox.ca)
2022-10-25 22:06:14 +0000 <geekosaur> not information from you, to be clear. I'm not sure it's even meaningful much less accurate…
2022-10-25 22:06:56 +0000 <geekosaur> might be a question for #haskell-infrastructure, I think (#hackage is more for the cabal side of it)
2022-10-25 22:06:56 +0000chomwitt(~chomwitt@2a02:587:dc10:8200:1ac0:4dff:fedb:a3f1) (Ping timeout: 250 seconds)
2022-10-25 22:07:07 +0000 <dfee> i'm trying to understand the size of the haskell community. i see that the most popular package is `aeson` and it has 1314 downloads in the last 30 days.
2022-10-25 22:08:14 +0000 <geekosaur> well, it's not the largest community out there. and download counts will be fuzzed by caching (possibly including server side)
2022-10-25 22:08:55 +0000ajb(~ajb@mimas.whatbox.ca) (Client Quit)
2022-10-25 22:09:15 +0000 <geekosaur> that said, aeson is pretty commonly used, but only by programs for web dev. there's more than that out there, and in fact I've never written a web server or client in haskell
2022-10-25 22:09:17 +0000adanwan(~adanwan@gateway/tor-sasl/adanwan) (Remote host closed the connection)
2022-10-25 22:09:26 +0000 <dfee> i don't know too much about haskell – though i like the FP nature of it – but am kinda wondering if i should build a product in it, or dedicate that time to another language; e.g. scala or rust.
2022-10-25 22:09:56 +0000beteigeuze(~Thunderbi@bl14-81-220.dsl.telepac.pt)
2022-10-25 22:10:07 +0000 <dfee> most of the work i do is web dev. a lot of python, java, typescript (node and web), etc.
2022-10-25 22:10:14 +0000adanwan(~adanwan@gateway/tor-sasl/adanwan)
2022-10-25 22:11:51 +0000 <dfee> a fairly typical web dev concept is GraphQL; this is a sort of bellwether for $webdev in any language. but it's surprising that Haskell doesn't have a very strong/straightforward story here.
2022-10-25 22:12:47 +0000 <dfee> i've identified both morpheus and mu-haskell, but haven't found significant buy-in anywhere i've looked (e.g. r/haskell or HN)
2022-10-25 22:13:23 +0000 <dfee> but as to "why haskell?", there's something about it that just feels... kinda beautiful.
2022-10-25 22:23:56 +0000Midjak(~Midjak@82.66.147.146)
2022-10-25 22:29:21 +0000q0r(~user@162.255.84.96)
2022-10-25 22:30:52 +0000gurkenglas(~gurkengla@p548ac72e.dip0.t-ipconnect.de) (Ping timeout: 246 seconds)
2022-10-25 22:31:24 +0000polo(~polo@user/polo)
2022-10-25 22:38:29 +0000kuribas(~user@ptr-17d51epif3m378oeqcg.18120a2.ip6.access.telenet.be) (Remote host closed the connection)
2022-10-25 22:39:27 +0000jmdaemon(~jmdaemon@user/jmdaemon)
2022-10-25 22:39:31 +0000michalz(~michalz@185.246.207.200) (Remote host closed the connection)
2022-10-25 22:39:47 +0000mmhat(~mmh@p200300f1c73076dbee086bfffe095315.dip0.t-ipconnect.de) (Quit: WeeChat 3.7.1)
2022-10-25 22:40:32 +0000 <sm> isn't there a bunch of graphql stuff in haskell ?
2022-10-25 22:40:50 +0000Tuplanolla(~Tuplanoll@91-159-68-111.elisa-laajakaista.fi) (Quit: Leaving.)
2022-10-25 22:41:12 +0000 <sm> https://hasura.io being the most prominent
2022-10-25 22:42:23 +0000 <sm> ah, you found two. If it's not straightforward, that would certainly be not too unusual
2022-10-25 22:42:46 +0000dkeohane(~dkeohane@csm-wl-dhcp-207-224.mines.edu) (Ping timeout: 246 seconds)
2022-10-25 22:43:40 +0000merijn(~merijn@c-001-001-002.client.esciencecenter.eduvpn.nl)
2022-10-25 22:45:13 +0000 <sm> straightfoward is not always our forté..
2022-10-25 22:48:32 +0000merijn(~merijn@c-001-001-002.client.esciencecenter.eduvpn.nl) (Ping timeout: 250 seconds)
2022-10-25 22:50:54 +0000freeside(~mengwong@103.252.202.193) (Ping timeout: 272 seconds)
2022-10-25 22:53:21 +0000zebrag(~chris@user/zebrag)
2022-10-25 22:54:56 +0000jmorris(uid537181@id-537181.uxbridge.irccloud.com)
2022-10-25 22:55:48 +0000 <dfee> sm my concern with hasura is that it's almost to much of a behemoth. maybe that's a good thing (i should think), but my concern is that i'm not starting with my project in mind.
2022-10-25 22:55:54 +0000 <dfee> *"product" in mind
2022-10-25 22:57:00 +0000 <dfee> alas, sm another question for you – how did you get started. i've been reading "from first principles", and it's been generally good, but i'm not really doing anything of merit. i need to get my hands dirty *and* read that book.
2022-10-25 22:57:45 +0000 <dfee> to be honest, i think the "quickstart" of haskell leaves some confusion. there's stack, cabal, nix, etc. where should i even start?
2022-10-25 23:01:21 +0000 <sm> dfee, you're not alone, it's a daily FAQ. Recently community consensus and haskell.org's download page have converged on ghcup, check that
2022-10-25 23:01:42 +0000 <sm> previously, and even still today, "just stack" is also a fine answer
2022-10-25 23:01:53 +0000ajb(~ajb@mimas.whatbox.ca)
2022-10-25 23:02:22 +0000 <dfee> + bazel, as i saw tweag had an article on it the other day: https://www.tweag.io/blog/2022-10-20-bazel-example-servant-elm-1/
2022-10-25 23:02:38 +0000 <sm> I forget what resources worked for me, it took time and several attempts. Tons more resources now, eg
2022-10-25 23:02:38 +0000 <sm> @where books
2022-10-25 23:02:38 +0000 <lambdabot> See `LYAH',`RWH',`YAHT',`SOE',`HR',`PIH',`TFwH',`wikibook',`PCPH',`HPFFP',`FSAF',`HftVB',`HTAC',`TwT',`FoP',`PFAD',`WYAH',`non-haskell-books'. Also https://www.extrema.is/articles/haskell-books,
2022-10-25 23:02:38 +0000 <lambdabot> https://www.vex.net/~trebla/haskell/learn-sources
2022-10-25 23:02:45 +0000 <sm> @where links
2022-10-25 23:02:45 +0000 <lambdabot> https://haskell-links.org collected Haskell links and search tools, including @where links
2022-10-25 23:04:54 +0000ajb(~ajb@mimas.whatbox.ca) (Quit: bye)
2022-10-25 23:08:53 +0000 <sm> well, among other things I read all manuals and survival guides for ghc, ghc-pkg, cabal, stack, .... which maybe wasn't quick but certainly helped
2022-10-25 23:09:11 +0000ubert1(~Thunderbi@77.119.201.227.wireless.dyn.drei.com)
2022-10-25 23:10:37 +0000ubert(~Thunderbi@178.165.171.4.wireless.dyn.drei.com) (Ping timeout: 240 seconds)
2022-10-25 23:10:37 +0000ubert1ubert
2022-10-25 23:11:20 +0000 <sm> lots of ways to get your hands dirty, depending on what you want to master
2022-10-25 23:11:37 +0000mncheck(~mncheck@193.224.205.254) (Ping timeout: 240 seconds)
2022-10-25 23:12:48 +0000 <sm> "building random haskell sh*t" is a good one
2022-10-25 23:16:31 +0000 <Axman6> dfee: I would strongly recommend against deciding on Scala above Haskell, I've been using it in my dfay job and I've been shocked how awful it is as a language. They've somehow managed tot ake all the worst parts of Java and Haskell, and glue them together in ways that feel completely inconsistent. I'm so strongly convinced it's an awful choice that I've updated my linkedin profile to specifically tell recruiters to not bother me with Scala jobs. Haskell is a
2022-10-25 23:16:31 +0000 <Axman6> simepl language, with unlimited abstraction; Scala is a language you're always having tofight to get it to do what should be simple.
2022-10-25 23:16:48 +0000segfaultfizzbuzz(~segfaultf@23-93-74-212.fiber.dynamic.sonic.net) (Ping timeout: 255 seconds)
2022-10-25 23:18:10 +0000freeside(~mengwong@103.252.202.193)
2022-10-25 23:18:12 +0000 <sm> go and rust are both nice for a little contrast to complement haskell
2022-10-25 23:18:32 +0000polo(~polo@user/polo) (Quit: My MacBook has gone to sleep. ZZZzzz…)
2022-10-25 23:19:08 +0000 <Axman6> dfee: Hasura provides one of the best GraphQL servers around, which can sit in front of several RDBMSs, all written in Haskell. I'm not sure what the client side of GraphQL looks like, but I'm sure there must be a few options
2022-10-25 23:19:22 +0000ajb(~ajb@mimas.whatbox.ca)
2022-10-25 23:20:07 +0000 <Axman6> sm: eh, Rust is fine, but Go has always felt like it was intentionally designed to be insulting to software engineers; "You're too dumb to use the 'advanced' features like Generics, or concurrency in any other form than the one we think is cute"
2022-10-25 23:20:28 +0000eggplantade(~Eggplanta@2600:1700:38c5:d800:5107:bda4:d7f3:6fa)
2022-10-25 23:21:01 +0000 <sm> Axman6: I hear you, but I spent some time with it the other day, and dropped that mindset; it's not competing with haskell/rust, it's more like a really great scripting language
2022-10-25 23:21:16 +0000 <sm> with strengths of its own, like being straightforward
2022-10-25 23:21:16 +0000 <hpc> a compiled scripting language?
2022-10-25 23:21:21 +0000 <sm> yup
2022-10-25 23:21:59 +0000 <jackdk> It seems to attract a lot of people who became fed up with Python for various reasons
2022-10-25 23:22:11 +0000segfaultfizzbuzz(~segfaultf@23-93-74-212.fiber.dynamic.sonic.net)
2022-10-25 23:22:17 +0000ajb(~ajb@mimas.whatbox.ca) (Client Quit)
2022-10-25 23:22:46 +0000freeside(~mengwong@103.252.202.193) (Ping timeout: 250 seconds)
2022-10-25 23:24:40 +0000ajb(~ajb@mimas.whatbox.ca)
2022-10-25 23:24:56 +0000eggplantade(~Eggplanta@2600:1700:38c5:d800:5107:bda4:d7f3:6fa) (Ping timeout: 250 seconds)
2022-10-25 23:25:29 +0000albet70(~xxx@2400:8902::f03c:92ff:fe60:98d8) (Remote host closed the connection)
2022-10-25 23:25:34 +0000 <Axman6> I struggle to see it as a better python too, python provides much more to the developer, and the benefits of faster execution really don't outweigh the costs of having to copy and paste the same code again and again because 'developers are too dumb to need abstraction'
2022-10-25 23:26:15 +0000 <sm> go's much better at packaging/cross compilation/easy deployment I'd say
2022-10-25 23:26:25 +0000 <hpc> go has since added templating
2022-10-25 23:26:51 +0000 <hpc> i guess developers are too stupid for java-style generics, but they are smart enough for c++ style templating?
2022-10-25 23:27:06 +0000 <Axman6> which is notiously simple...
2022-10-25 23:27:20 +0000pavonia(~user@user/siracusa)
2022-10-25 23:27:35 +0000ajb(~ajb@mimas.whatbox.ca) (Client Quit)
2022-10-25 23:28:35 +0000 <hpc> although, maybe the trend isn't to go from python to a language that lets them do more, but the opposite
2022-10-25 23:28:41 +0000 <sm> go is limiting but the strong KISS aesthetic is a refreshing feature
2022-10-25 23:29:07 +0000 <hpc> because if you look back instead, the migration to python was from perl, which is one of the most expressive languages ever
2022-10-25 23:29:43 +0000 <hpc> maybe people really do just want to phone it in for $300k+options
2022-10-25 23:29:52 +0000 <geekosaur> sm, imo you just explained why it's a replacement for python 🙂
2022-10-25 23:31:11 +0000 <dolio> I don't think I'd really describe perl as very expressive.
2022-10-25 23:31:37 +0000albet70(~xxx@2400:8902::f03c:92ff:fe60:98d8)
2022-10-25 23:33:12 +0000 <dolio> It might be very concise for certain jobs, but it's not great at various things outside those jobs.
2022-10-25 23:33:40 +0000bitdex(~bitdex@gateway/tor-sasl/bitdex)
2022-10-25 23:33:47 +0000 <hpc> it has first-class functions, a better version of python's f-strings, a flexible function calling syntax with named arguments, varargs, and all sorts of things
2022-10-25 23:33:59 +0000 <hpc> cpan was the first language-specific package manager
2022-10-25 23:34:32 +0000 <Axman6> I listened to a podcast recently about cpan and it being the origin of package management
2022-10-25 23:34:36 +0000 <hpc> all sorts of array slice syntax, the best string manipulation syntax of any language even to date
2022-10-25 23:35:00 +0000 <geekosaur> I'd argue about that, actually
2022-10-25 23:35:02 +0000 <hpc> it has the easiest way to execute other commands
2022-10-25 23:35:08 +0000smtoo, nice history
2022-10-25 23:35:25 +0000 <hpc> all of this back in the early 90s
2022-10-25 23:35:31 +0000 <geekosaur> snobol/icon has as good string manipulation and it's way more readable
2022-10-25 23:35:42 +0000 <dolio> I had to implement Turing machines in perl, and I had to fake multi-dimensional arrays as map lookups of strings "$i,$j".
2022-10-25 23:35:45 +0000 <sm> CPAN has no central package repository, right ?
2022-10-25 23:35:48 +0000 <geekosaur> and I say this as someone who loved perl
2022-10-25 23:36:17 +0000son0p(~ff@181.136.122.143) (Ping timeout: 240 seconds)
2022-10-25 23:36:37 +0000 <hpc> dolio: whaaaaaaat? perl totally could do that
2022-10-25 23:37:49 +0000 <hpc> you can literally write $foo = [[1, 2, 3], [4, 5, 6]];
2022-10-25 23:38:03 +0000freeside(~mengwong@103.252.202.193)
2022-10-25 23:38:18 +0000 <hpc> $foo[1][2] == 6
2022-10-25 23:41:49 +0000 <jackdk> Axman6: Python is a very difficult language for me to understand, because I have to imagine "how would a rushed C programmer implement this?" to predict the behaviour of its runtime. Only then does its scoping rules, mutable default arguments, etc make sense to me.
2022-10-25 23:46:00 +0000mvk(~mvk@2607:fea8:5ce3:8500::a80f) (Ping timeout: 272 seconds)
2022-10-25 23:46:28 +0000 <yushyin> hpc: afair this only works since perl5, if dolio meant perl<5, it probably didn't work yet
2022-10-25 23:46:37 +0000crns(~netcrns@user/crns) (Ping timeout: 260 seconds)
2022-10-25 23:46:39 +0000ajb(~ajb@mimas.whatbox.ca)
2022-10-25 23:46:47 +0000 <dolio> I don't really recall.
2022-10-25 23:47:54 +0000crns(~netcrns@p5dc33e65.dip0.t-ipconnect.de)
2022-10-25 23:47:54 +0000crns(~netcrns@p5dc33e65.dip0.t-ipconnect.de) (Changing host)
2022-10-25 23:47:54 +0000crns(~netcrns@user/crns)
2022-10-25 23:48:13 +0000 <monochrom> hpc: In "$foo = [[1, 2, 3], [4, 5, 6]];", should it really be $? @?
2022-10-25 23:48:26 +0000 <monochrom> which is my beef with Perl.
2022-10-25 23:48:27 +0000caryhartline(~caryhartl@2600:1700:2d0:8d30:7075:e274:b18d:7a76) (Quit: caryhartline)
2022-10-25 23:49:42 +0000 <jackdk> I think that sets `$foo` to an array reference, which is a scalar value
2022-10-25 23:49:49 +0000 <jackdk> but I haven't written any perl for a long long time
2022-10-25 23:50:20 +0000 <Axman6> The only perl I ever wrote was an irssi plugin... I think it was to share what you were listenting to in iTunes, when that was a thing people did
2022-10-25 23:50:31 +0000 <Axman6> might have been a system info thing actually
2022-10-25 23:51:55 +0000 <Axman6> ah, it was a Growl notification thing (the precursor to proper notification on Mac OS X - someone stuck it on github ten years ago: https://github.com/kfdm/irssi-growl)
2022-10-25 23:52:13 +0000 <hpc> jackdk is right
2022-10-25 23:52:26 +0000 <geekosaur[m]> Right, for that it would have needed to be $foo->[1][2]
2022-10-25 23:52:29 +0000 <yushyin> $ is correct, it's a arrayref of arrayrefs. but you need $foo->[1][2]
2022-10-25 23:52:55 +0000 <hpc> ah, right
2022-10-25 23:53:07 +0000 <monochrom> SML's "foo = ref [[1,2,3], [4,5,6]]" would be much clearer.
2022-10-25 23:53:14 +0000 <hpc> also, () denotes arrays/hashes, and []/{} denote references to arrays/hashes
2022-10-25 23:53:35 +0000 <geekosaur[m]> Biggest problem with perl
2022-10-25 23:53:37 +0000 <hpc> because of list flattening
2022-10-25 23:53:46 +0000 <monochrom> So basically although Perl is unambiguous, it requires the reader to reverse engineer "how can $ make sense in this context?".
2022-10-25 23:54:11 +0000 <yushyin> () denotes 'lists'
2022-10-25 23:54:25 +0000 <hpc> it's like pointers
2022-10-25 23:54:38 +0000 <hpc> (for better and worse)
2022-10-25 23:54:57 +0000merijn(~merijn@c-001-001-002.client.esciencecenter.eduvpn.nl)
2022-10-25 23:55:30 +0000albet70(~xxx@2400:8902::f03c:92ff:fe60:98d8) (Remote host closed the connection)
2022-10-25 23:56:21 +0000 <monochrom> No. It's like I don't tell you I'm 53 years old, I tell you my age mod 3 is 2, my age mod 5 is 3, my age mod 7 is 4, and I'm under 104.
2022-10-25 23:58:00 +0000 <monochrom> It's like I don't use ADTs, I turn on RankNTypes and use System F and Church encoding all the time.
2022-10-25 23:58:42 +0000 <monochrom> It's like I load an always-on ROT13 plugin into my IRC client.
2022-10-25 23:59:06 +0000 <hpc> it's like they're not even monoids in the category of endofunctors, they're actually monads in the 2-category of monads
2022-10-25 23:59:49 +0000 <dolio> You've got to use ADTs to define the non-strictly positive types that allow asymptotically more efficient operations on Church encodings. :þ