Home liberachat/#haskell: Logs Calendar

Logs on 2024-07-10 (liberachat/#haskell)

00:18:23 <Axman6> there was something about this on the well-typed blog
00:18:53 <Axman6> https://www.well-typed.com/blog/2020/09/nothunks/
00:32:23 <jackdk> Axman6: neat, that's probably worth a look
00:33:54 × dysthesis quits (~dysthesis@user/dysthesis) (Ping timeout: 260 seconds)
00:48:41 gmg joins (~user@user/gehmehgeh)
00:57:46 × euleritian quits (~euleritia@dynamic-176-000-200-190.176.0.pool.telefonica.de) (Ping timeout: 246 seconds)
00:58:09 euleritian joins (~euleritia@dynamic-176-001-220-133.176.1.pool.telefonica.de)
00:58:13 <jle`> yeah if it exists it's probably at well-typed lol
01:03:38 × pointlessslippe1 quits (~pointless@212.82.82.3) (Ping timeout: 268 seconds)
01:06:13 <haskellbridge> <iqubic (she/her)> Is there a way to take a point free expression and make it not point free?
01:06:43 <haskellbridge> <iqubic (she/her)> I'm looking at the function "f = (!! .) . iterate"
01:07:01 <geekosaur> @unpl f = (!! .) . iterate
01:07:01 <lambdabot> <unknown>.hs:1:3:Parse error: =
01:07:07 <geekosaur> @unpl (!! .) . iterate
01:07:07 <lambdabot> <unknown>.hs:1:5:Parse error: .
01:07:07 <haskellbridge> <iqubic (she/her)> Erm... "f = ((!!) . ) . iterate"
01:07:19 <haskellbridge> <iqubic (she/her)> It needs the extra brackets.
01:07:22 <geekosaur> @unpl ((!!) .) . iterate
01:07:22 <lambdabot> (\ x x0 -> (!!) (iterate x x0))
01:07:35 pointlessslippe1 joins (~pointless@212.82.82.3)
01:07:59 <geekosaur> I believe lambdabot is using a utility you can install locally from Hackage
01:08:13 <haskellbridge> <iqubic (she/her)> I would like that.
01:08:22 <geekosaur> https://hackage.haskell.org/package/pointfree
01:09:36 JuanDaugherty joins (~juan@user/JuanDaugherty)
01:11:45 <geekosaur> hm, not for pointful, though
01:11:55 <geekosaur> https://hackage.haskell.org/package/lambdabot-haskell-plugins-5.3.1/docs/src/Lambdabot.Plugin.Haskell.Pointful.html#pointful
01:12:32 <Leary> I mean, it /is/ the trivial direction. Basically just inline (.)?
01:15:21 Square2 joins (~Square4@user/square)
01:15:26 <haskellbridge> <iqubic (she/her)> What does calling a function as infix do when it has three arguments?
01:16:08 <geekosaur> same as calling a prefix function that way does: it's partially applied
01:16:15 × nicole quits (ilbelkyr@libera/staff/ilbelkyr) (Read error: Software caused connection abort)
01:16:38 <haskellbridge> <iqubic (she/her)> Wait... a -> b -> c -> d = a -> b ->( c -> d)
01:17:19 nicole joins (ilbelkyr@libera/staff/ilbelkyr)
01:18:25 × FinnElija quits (~finn_elij@user/finn-elija/x-0085643) (Remote host closed the connection)
01:18:56 <Axman6> a -> b -> c -> d === a -> (b -> (c -> d))
01:20:22 <geekosaur> contemplate
01:20:25 <geekosaur> :t on
01:20:26 <lambdabot> (b -> b -> c) -> (a -> b) -> a -> a -> c
01:20:36 × mikess quits (~mikess@user/mikess) (Ping timeout: 268 seconds)
01:20:53 <Axman6> > let (!!!) :: a -> b -> c -> (a,b,c); (a !!! b) c = (a,b,c) in (1 !!! True) "wow"
01:20:54 <lambdabot> (1,True,"wow")
01:21:36 <geekosaur> recalling that it's usually used as e.g. `` compare `on` snd ``
01:25:25 × aforemny_ quits (~aforemny@i59F516F8.versanet.de) (Ping timeout: 246 seconds)
01:25:42 aforemny joins (~aforemny@2001:9e8:6cdc:fe00:c401:62ea:26d2:61dd)
01:27:46 × Tuplanolla quits (~Tuplanoll@91-159-69-59.elisa-laajakaista.fi) (Quit: Leaving.)
01:29:30 FinnElija joins (~finn_elij@user/finn-elija/x-0085643)
01:31:10 × waleee quits (~waleee@h-176-10-144-38.NA.cust.bahnhof.se) (Ping timeout: 264 seconds)
01:34:05 × xff0x quits (~xff0x@2405:6580:b080:900:d43c:fb27:30d6:fcc3) (Ping timeout: 240 seconds)
01:36:56 <haskellbridge> <thirdofmay18081814goya> what are some open-source web frontends (actual frontends, not frameworks) written in haskell?
01:37:07 × biberu quits (~biberu@user/biberu) (Server closed connection)
01:37:29 biberu joins (~biberu@user/biberu)
01:40:12 × emmanuelux quits (~emmanuelu@user/emmanuelux) (Quit: au revoir)
01:44:22 bitdex joins (~bitdex@gateway/tor-sasl/bitdex)
01:44:57 czy joins (~user@fortigate.wolfson.cam.ac.uk)
01:47:24 mikess joins (~mikess@user/mikess)
01:48:01 <jackdk> Does a web search turn up any promising candidates? I'm not really in that space
01:52:17 machinedgod joins (~machinedg@173.183.246.216)
01:52:56 <yin> is it me or lambdabot needs to update its dependencies?
01:54:10 <geekosaur> if you were looking at the page I pasted earlier, it's for an old version because there's no docs for the newer ones
01:54:34 <geekosaur> that said, there is one dependency that hasn't been updated and lambdabot's current maintainer is trying to get them to update it
01:55:28 <geekosaur> and hasn't updated past that point yet
01:55:42 <geekosaur> I don't really know the current status though
01:56:05 × ystael quits (~ystael@user/ystael) (Ping timeout: 240 seconds)
01:56:46 <geekosaur> aside from the updated documentation PR based on the docs I wrote back when I ran it in the early-mid 2000s, I haven't touched it since
02:02:31 rosco joins (~rosco@175.136.155.137)
02:08:07 × acidsys quits (~crameleon@openSUSE/member/crameleon) (Server closed connection)
02:08:23 acidsys joins (~crameleon@openSUSE/member/crameleon)
02:10:02 <yin> i just tried to install it a while ago with cabal install and was unable due to oeis i think
02:12:34 × euleritian quits (~euleritia@dynamic-176-001-220-133.176.1.pool.telefonica.de) (Ping timeout: 264 seconds)
02:12:48 euleritian joins (~euleritia@dynamic-176-002-137-117.176.2.pool.telefonica.de)
02:15:50 dysthesis joins (~dysthesis@user/dysthesis)
02:20:34 × Moyst quits (~moyst@user/moyst) (Ping timeout: 256 seconds)
02:21:05 xff0x joins (~xff0x@125x103x176x34.ap125.ftth.ucom.ne.jp)
02:27:12 × euleritian quits (~euleritia@dynamic-176-002-137-117.176.2.pool.telefonica.de) (Ping timeout: 268 seconds)
02:27:32 euleritian joins (~euleritia@dynamic-176-001-133-022.176.1.pool.telefonica.de)
02:32:22 × td_ quits (~td@i53870918.versanet.de) (Ping timeout: 264 seconds)
02:33:57 td_ joins (~td@i5387093F.versanet.de)
02:37:10 × machinedgod quits (~machinedg@173.183.246.216) (Ping timeout: 264 seconds)
02:38:21 × euleritian quits (~euleritia@dynamic-176-001-133-022.176.1.pool.telefonica.de) (Ping timeout: 252 seconds)
02:39:17 euleritian joins (~euleritia@dynamic-176-000-197-069.176.0.pool.telefonica.de)
02:40:53 <Axman6> @where pcph
02:40:53 <lambdabot> "Parallel and Concurrent Programming in Haskell" by Simon Marlow in 2013 at <http://community.haskell.org/~simonmar/pcph/>,<http://chimera.labs.oreilly.com/books/1230000000929/>,<https://web.archive.
02:40:53 <lambdabot> org/web/20180117194842/http://chimera.labs.oreilly.com/books/1230000000929>,<https://www.oreilly.com/library/view/parallel-and-concurrent/9781449335939/>
02:44:26 × gmg quits (~user@user/gehmehgeh) (Quit: Leaving)
02:46:52 × Batzy quits (~quassel@user/batzy) (Server closed connection)
02:47:08 Batzy joins (~quassel@user/batzy)
03:12:39 × dsrt^ quits (dnfh@c-98-242-74-66.hsd1.ga.comcast.net) (Remote host closed the connection)
03:16:30 × rosco quits (~rosco@175.136.155.137) (Quit: Lost terminal)
03:22:42 × tabaqui quits (~root@87.200.123.114) (Ping timeout: 268 seconds)
03:27:21 × tcard__ quits (~tcard@2400:4051:5801:7500:cf17:befc:ff82:5303) (Quit: Leaving)
03:32:42 tcard__ joins (~tcard@2400:4051:5801:7500:1e90:74c3:2754:ce8a)
03:36:34 tabaqui joins (~root@87.200.123.114)
03:42:54 × segfaultfizzbuzz quits (~segfaultf@23-93-79-84.fiber.dynamic.sonic.net) (Quit: segfaultfizzbuzz)
03:45:17 × yin quits (~yin@user/zero) (Ping timeout: 240 seconds)
03:52:36 yin joins (~yin@user/zero)
03:55:48 × Xe quits (~cadey@perl/impostor/xe) (Ping timeout: 255 seconds)
03:57:00 × yin quits (~yin@user/zero) (Ping timeout: 252 seconds)
03:59:39 × euleritian quits (~euleritia@dynamic-176-000-197-069.176.0.pool.telefonica.de) (Read error: Connection reset by peer)
03:59:56 euleritian joins (~euleritia@77.22.252.56)
04:01:44 aforemny_ joins (~aforemny@i59F516EB.versanet.de)
04:02:34 × aforemny quits (~aforemny@2001:9e8:6cdc:fe00:c401:62ea:26d2:61dd) (Ping timeout: 246 seconds)
04:04:41 × mauke quits (~mauke@user/mauke) (Server closed connection)
04:04:50 mauke joins (~mauke@user/mauke)
04:13:24 × biberu quits (~biberu@user/biberu) (Read error: Connection reset by peer)
04:23:27 biberu joins (~biberu@user/biberu)
04:29:45 × cln_ quits (cln@wtf.cx) (Server closed connection)
04:30:02 cln_ joins (cln@wtf.cx)
04:39:05 × arkeet quits (~arkeet@moriya.ca) (Quit: ZNC 1.8.2 - https://znc.in)
04:42:09 × landonf quits (landonf@mac68k.info) (Server closed connection)
04:42:17 landonf joins (landonf@mac68k.info)
04:46:33 Moyst joins (~moyst@user/moyst)
04:52:25 × mulk quits (~mulk@p5b2dc1a2.dip0.t-ipconnect.de) (Ping timeout: 256 seconds)
04:58:56 × barrucadu quits (~barrucadu@carcosa.barrucadu.co.uk) (Server closed connection)
04:59:11 barrucadu joins (~barrucadu@carcosa.barrucadu.co.uk)
05:03:26 arkeet joins (~arkeet@moriya.ca)
05:05:12 × rvalue quits (~rvalue@user/rvalue) (Read error: Connection reset by peer)
05:05:29 Square joins (~Square@user/square)
05:05:51 rvalue joins (~rvalue@user/rvalue)
05:07:46 × Square2 quits (~Square4@user/square) (Ping timeout: 256 seconds)
05:10:37 × euleritian quits (~euleritia@77.22.252.56) (Ping timeout: 268 seconds)
05:10:49 euleritian joins (~euleritia@dynamic-176-000-197-069.176.0.pool.telefonica.de)
05:13:37 × euleritian quits (~euleritia@dynamic-176-000-197-069.176.0.pool.telefonica.de) (Read error: Connection reset by peer)
05:13:54 euleritian joins (~euleritia@ip4d16fc38.dynamic.kabel-deutschland.de)
05:16:19 mulk joins (~mulk@p5b2dc1a2.dip0.t-ipconnect.de)
05:21:34 acidjnk_new joins (~acidjnk@p200300d6e72cfb08c14fbc96bb9a0d8c.dip0.t-ipconnect.de)
05:22:46 × dysthesis quits (~dysthesis@user/dysthesis) (Ping timeout: 260 seconds)
05:44:01 peterbecich joins (~Thunderbi@syn-047-229-123-186.res.spectrum.com)
05:53:14 × Sgeo quits (~Sgeo@user/sgeo) (Read error: Connection reset by peer)
06:00:27 × forell quits (~forell@user/forell) (Ping timeout: 255 seconds)
06:03:55 × JuanDaugherty quits (~juan@user/JuanDaugherty) (Ping timeout: 272 seconds)
06:18:27 × euleritian quits (~euleritia@ip4d16fc38.dynamic.kabel-deutschland.de) (Read error: Connection reset by peer)
06:19:19 euleritian joins (~euleritia@77.22.252.56)
06:19:25 × Natch quits (~natch@c-9e07225c.038-60-73746f7.bbcust.telenor.se) (Ping timeout: 246 seconds)
06:21:58 tromp joins (~textual@92-110-219-57.cable.dynamic.v4.ziggo.nl)
06:31:33 × euleritian quits (~euleritia@77.22.252.56) (Read error: Connection reset by peer)
06:31:40 euleritian joins (~euleritia@ip4d16fc38.dynamic.kabel-deutschland.de)
06:34:05 takuan joins (~takuan@178-116-218-225.access.telenet.be)
06:42:10 × euleritian quits (~euleritia@ip4d16fc38.dynamic.kabel-deutschland.de) (Read error: Connection reset by peer)
06:42:53 × Square quits (~Square@user/square) (Ping timeout: 240 seconds)
06:42:53 euleritian joins (~euleritia@ip4d16fc38.dynamic.kabel-deutschland.de)
06:43:46 Square joins (~Square@user/square)
06:48:03 × mikess quits (~mikess@user/mikess) (Ping timeout: 260 seconds)
06:48:59 rosco joins (~rosco@175.136.155.137)
06:49:09 × czy quits (~user@fortigate.wolfson.cam.ac.uk) (Ping timeout: 252 seconds)
06:50:11 mikess joins (~mikess@user/mikess)
06:52:09 × phma quits (phma@2001:5b0:212a:e8b8:9807:a029:7b5e:a865) (Read error: Connection reset by peer)
06:52:17 × rosco quits (~rosco@175.136.155.137) (Client Quit)
06:52:53 phma joins (~phma@host-67-44-208-42.hnremote.net)
06:53:42 × peterbecich quits (~Thunderbi@syn-047-229-123-186.res.spectrum.com) (Ping timeout: 256 seconds)
06:56:07 czy joins (~user@fortigate.wolfson.cam.ac.uk)
06:56:44 × polux quits (~polux@51-15-169-172.rev.poneytelecom.eu) (Server closed connection)
06:56:57 polux joins (~polux@51-15-169-172.rev.poneytelecom.eu)
06:59:22 × euleritian quits (~euleritia@ip4d16fc38.dynamic.kabel-deutschland.de) (Ping timeout: 264 seconds)
07:00:22 euleritian joins (~euleritia@dynamic-176-000-197-069.176.0.pool.telefonica.de)
07:01:04 × czy quits (~user@fortigate.wolfson.cam.ac.uk) (Ping timeout: 256 seconds)
07:04:27 × comonad quits (~comonad@p200300d027032c0082816d0f21936a9a.dip0.t-ipconnect.de) (Ping timeout: 264 seconds)
07:05:19 × mud quits (~mud@user/kadoban) (Ping timeout: 268 seconds)
07:05:57 comonad joins (~comonad@p200300d027307200d9dc300e6085cadf.dip0.t-ipconnect.de)
07:06:43 × Square quits (~Square@user/square) (Ping timeout: 260 seconds)
07:11:40 sord937 joins (~sord937@gateway/tor-sasl/sord937)
07:12:21 czy joins (~user@fortigate.wolfson.cam.ac.uk)
07:12:32 × euleritian quits (~euleritia@dynamic-176-000-197-069.176.0.pool.telefonica.de) (Read error: Connection reset by peer)
07:12:50 euleritian joins (~euleritia@ip4d16fc38.dynamic.kabel-deutschland.de)
07:17:22 × czy quits (~user@fortigate.wolfson.cam.ac.uk) (Ping timeout: 264 seconds)
07:22:54 <haskellbridge> <sss1222> good morning and hello :) hope y'all doing well
07:23:56 <Axman6> We* are so well (*for some subset of 'We')
07:28:31 <haskellbridge> <sss1222> can the we-subset include itself?
07:29:17 × fernando-basso quits (~fernando-@2a01:4f9:c012:63d3::1) (Server closed connection)
07:29:35 fernando-basso joins (~fernando-@2a01:4f9:c012:63d3::1)
07:30:35 czy joins (~user@fortigate.wolfson.cam.ac.uk)
07:31:06 × cross quits (~cross@spitfire.i.gajendra.net) (Server closed connection)
07:31:39 cross joins (~cross@spitfire.i.gajendra.net)
07:33:15 × euleritian quits (~euleritia@ip4d16fc38.dynamic.kabel-deutschland.de) (Read error: Connection reset by peer)
07:33:59 euleritian joins (~euleritia@ip4d16fc38.dynamic.kabel-deutschland.de)
07:34:12 × kritzefitz quits (~kritzefit@debian/kritzefitz) (Server closed connection)
07:34:27 kritzefitz joins (~kritzefit@debian/kritzefitz)
07:35:21 × czy quits (~user@fortigate.wolfson.cam.ac.uk) (Ping timeout: 252 seconds)
07:35:46 czy joins (~user@fortigate.wolfson.cam.ac.uk)
07:35:52 × bliminse quits (~bliminse@user/bliminse) (Quit: leaving)
07:37:18 × kronicmage quits (~kronicmag@neotame.csclub.uwaterloo.ca) (Server closed connection)
07:37:41 kronicmage joins (~kronicmag@neotame.csclub.uwaterloo.ca)
07:41:26 × tomku quits (~tomku@user/tomku) (Remote host closed the connection)
07:41:40 tomku joins (~tomku@user/tomku)
07:51:42 mreh joins (~matthew@host86-160-168-12.range86-160.btcentralplus.com)
07:52:06 × econo_ quits (uid147250@id-147250.tinside.irccloud.com) (Quit: Connection closed for inactivity)
07:52:25 × YoungFrog quits (~youngfrog@2a02:a03f:c9db:fc00:d00c:2e8b:63d8:afbe) (Quit: ZNC 1.7.x-git-3-96481995 - https://znc.in)
07:52:46 YoungFrog joins (~youngfrog@39.129-180-91.adsl-dyn.isp.belgacom.be)
07:53:04 × ft quits (~ft@p4fc2ab80.dip0.t-ipconnect.de) (Quit: leaving)
07:56:40 yin joins (~yin@user/zero)
07:57:35 machinedgod joins (~machinedg@d173-183-246-216.abhsia.telus.net)
08:03:04 rosco joins (~rosco@175.136.155.137)
08:07:08 michalz joins (~michalz@185.246.207.217)
08:09:03 Tuplanolla joins (~Tuplanoll@91-159-69-59.elisa-laajakaista.fi)
08:10:09 danse-prigionier joins (~danse-pri@93-34-6-146.ip47.fastwebnet.it)
08:11:22 danse-prigionier is now known as danse-prisonnier
08:11:26 kuribas joins (~user@2a02:1808:8:dbfe:ec2a:b9af:7d30:2ea3)
08:12:57 × APic quits (apic@apic.name) (Server closed connection)
08:13:09 APic joins (apic@apic.name)
08:13:15 × tromp quits (~textual@92-110-219-57.cable.dynamic.v4.ziggo.nl) (Quit: My iMac has gone to sleep. ZZZzzz…)
08:13:26 danse-prisonnier is now known as danse-prison
08:14:36 kraftwerk28 joins (~kraftwerk@164.92.219.160)
08:14:45 × kraftwerk28 quits (~kraftwerk@164.92.219.160) (Remote host closed the connection)
08:15:26 chele joins (~chele@user/chele)
08:17:43 bliminse joins (~bliminse@user/bliminse)
08:27:42 × tomsmeding quits (~tomsmedin@static.21.109.88.23.clients.your-server.de) (Quit: ZNC 1.9.0 - https://znc.in)
08:28:48 <kuribas> I don't understand test fetishes. I get you want a few integration tests, maybe some unit tests on code that has complicated logic, or a difficult (highly optimized) implementation. But it looks to me that full coverage testing is mostly an artifact of the frailty of most programming languages.
08:28:59 <kuribas> Especially dynamic languages.
08:29:50 <danse-prison> "full test coverage" is something like an unicorn. Of course the extreme case makes little sense to most of us
08:30:22 <kuribas> IMO real full coverage means a formal proof.
08:30:37 <kuribas> But the reason for "full test coverage" is just how easy it is to break dynamic programs.
08:31:02 <danse-prison> if you mean that correctness can be achieved in better ways, i agree. But tests provide something else than correctness as a side effect, good interfaces
08:31:06 tomsmeding joins (~tomsmedin@static.21.109.88.23.clients.your-server.de)
08:32:04 dhil joins (~dhil@2001:8e0:2014:3100:d824:2bdc:f538:dd26)
08:32:15 <danse-prison> and are more accessible to newcomers than other means. Considering that stuff like .* is frowned upon because "too abstract"... i don't think many arguments stand
08:36:45 × rosco quits (~rosco@175.136.155.137) (Quit: Lost terminal)
08:43:11 × mikess quits (~mikess@user/mikess) (Ping timeout: 256 seconds)
08:45:21 mikess joins (~mikess@user/mikess)
08:48:36 × opqdonut quits (opqdonut@pseudo.fixme.fi) (Server closed connection)
08:48:46 opqdonut joins (opqdonut@pseudo.fixme.fi)
08:50:03 ircbrowse_tom joins (~ircbrowse@user/tomsmeding/bot/ircbrowse-tom)
08:50:04 Server sets mode +Cnt
08:50:20 cfricke joins (~cfricke@user/cfricke)
08:50:22 × yahb2 quits (~yahb2@user/tomsmeding/bot/yahb2) (Remote host closed the connection)
08:50:47 yahb2 joins (~yahb2@user/tomsmeding/bot/yahb2)
08:50:47 ChanServ sets mode +v yahb2
08:52:59 × bsima1 quits (9d7e39c8ad@2a03:6000:1812:100::dd) (Server closed connection)
08:53:05 bsima1 joins (9d7e39c8ad@2a03:6000:1812:100::dd)
08:59:27 × finsternis quits (~X@23.226.237.192) (Server closed connection)
08:59:48 finsternis joins (~X@23.226.237.192)
09:01:34 gehmehgeh joins (~user@user/gehmehgeh)
09:01:47 gehmehgeh is now known as gmg
09:05:23 × euleritian quits (~euleritia@ip4d16fc38.dynamic.kabel-deutschland.de) (Read error: Connection reset by peer)
09:05:30 euleritian joins (~euleritia@ip4d16fc38.dynamic.kabel-deutschland.de)
09:08:25 waleee joins (~waleee@h-176-10-144-38.NA.cust.bahnhof.se)
09:10:44 lxsameer joins (~lxsameer@Serene/lxsameer)
09:17:28 zmt01 joins (~zmt00@user/zmt00)
09:20:39 × zmt00 quits (~zmt00@user/zmt00) (Ping timeout: 260 seconds)
09:21:35 <kuribas> True, sometimes tests can serve as documentation on how to use the API.
09:22:13 × euleritian quits (~euleritia@ip4d16fc38.dynamic.kabel-deutschland.de) (Ping timeout: 268 seconds)
09:23:01 euleritian joins (~euleritia@dynamic-176-000-197-069.176.0.pool.telefonica.de)
09:23:25 × euleritian quits (~euleritia@dynamic-176-000-197-069.176.0.pool.telefonica.de) (Read error: Connection reset by peer)
09:23:44 euleritian joins (~euleritia@ip4d16fc38.dynamic.kabel-deutschland.de)
09:26:32 ubert joins (~Thunderbi@2a02:8109:ab8a:5a00:c640:cbb1:10f1:eac6)
09:29:38 × gmg quits (~user@user/gehmehgeh) (Ping timeout: 260 seconds)
09:30:04 <haskellbridge> <sm> They sometimes help force a good API and good internal structure, as types sometimes do
09:30:46 <haskellbridge> <sm> And sometimes they're just cost effective when types/proofs aren't
09:31:06 <haskellbridge> <sm> They're a tool in the software engineer's toolbox
09:34:40 <mreh> unfortunately most developers don't see it that way
09:36:11 gmg joins (~user@user/gehmehgeh)
09:37:35 <kuribas> haskellbridge: yeah, tests are a good engineering tool, they are not the catch-all of quality control IMO.
09:38:38 <mreh> > Stack failed to create project-level YAML configuration, as it was unable to download the index of available snapshots.
09:38:39 <lambdabot> <hint>:1:56: error: parse error on input ‘,’
09:38:42 <mreh> hmm
09:39:39 <kuribas> You have (in no particular order): tests, static types, manual testing, code reviews, just wel structured and readable codebases, good documentation, etc...
09:39:53 <kuribas> But in so many places all the effort seems to go to tests.
09:40:06 <danse-prison> those are not the worst places in my opinion
09:40:20 <danse-prison> is there any similar project you can mention?
09:40:33 <mreh> where can I report stackage outages?
09:40:53 <danse-prison> first you should verify it's their outage probably
09:40:56 <mreh> https://haddock.stackage.org/snapshots.json = 404
09:41:04 <kuribas> danse-prison: you mean "extreme go horse" places?
09:41:08 <mreh> Connection time out
09:41:15 <danse-prison> huh?
09:41:18 × danse-prison quits (~danse-pri@93-34-6-146.ip47.fastwebnet.it) (Quit: Client closed)
09:41:25 <kuribas> https://medium.com/@dekaah/22-axioms-of-the-extreme-go-horse-methodology-xgh-9fa739ab55b4
09:41:31 danse-prigionier joins (~danse-pri@93-34-6-146.ip47.fastwebnet.it)
09:41:44 tromp joins (~textual@92-110-219-57.cable.dynamic.v4.ziggo.nl)
09:41:59 × mikess quits (~mikess@user/mikess) (Ping timeout: 256 seconds)
09:43:07 danse-prigionier is now known as danse-prison
09:43:13 <mreh> I'm pretty sure stackage is having some kind of outage
09:44:22 <mreh> their reverse proxy sez so
09:45:59 <kuribas> this works for me: https://www.stackage.org/snapshots
09:46:00 forell joins (~forell@user/forell)
09:46:32 <mreh> okay, but the command line tool `stack` doesn't use that
09:46:52 <mreh> It's trying to fetch this https://haddock.stackage.org/snapshots.json
09:46:52 <danse-prison> >> XGH is a fictional methodology that mocks the worst practices of Agile development. It involves doing the first thing that comes to mind, ignoring quality, schedules, tests, and refactoring, and blaming others when things go wrong.
09:46:59 <danse-prison> "ignoring tests"
09:47:04 <danse-prison> no, i did not mean that
09:48:34 <mreh> I always test, every time I run my programs
09:48:48 <mreh> (not parodying you)
09:49:03 × czy quits (~user@fortigate.wolfson.cam.ac.uk) (Remote host closed the connection)
09:49:18 czy joins (~user@fortigate.wolfson.cam.ac.uk)
09:50:36 × krjst quits (~krjst@2604:a880:800:c1::16b:8001) (Server closed connection)
09:50:36 <danse-prison> and you let your users test for you as well! That's the rule nowadays
09:51:03 × cfricke quits (~cfricke@user/cfricke) (Ping timeout: 256 seconds)
09:51:15 <danse-prison> (parodying you)
09:51:44 krjst joins (~krjst@2604:a880:800:c1::16b:8001)
09:52:16 <mreh> I make user interfaces, it's natural fit!
09:53:12 <danse-prison> yeah, there is so much into a test than just catching errors
09:55:32 <haskellbridge> <sm> mreh: you can report in the #haskell-stack:matrix.org (https://matrix.to/#/#haskell-stack:matrix.org) matrix room or in https://github.com/commercialhaskell/stack/issues or comment on threads like https://discourse.haskell.org/t/ann-stack-2-15-3-and-earliers-default-source-for-list-of-stackage-snapshots-not-up-to-date/9023 and...
09:55:36 <haskellbridge> ... https://discourse.haskell.org/t/solved-stack-new-and-stack-init-failing-missing-aws-asset-nosuchbucket/9902 (if it's the same issue). There's a recent rash of failures due to infrastructure migration breaking urls
09:55:52 <mreh> sm: thank you
09:56:01 <haskellbridge> <sm> well "rash" is overstating it, but there's a bit of a problem not yet resolved
09:58:54 × waleee quits (~waleee@h-176-10-144-38.NA.cust.bahnhof.se) (Ping timeout: 268 seconds)
10:00:56 × czy quits (~user@fortigate.wolfson.cam.ac.uk) (Remote host closed the connection)
10:02:06 czy joins (~user@fortigate.wolfson.cam.ac.uk)
10:02:06 × euleritian quits (~euleritia@ip4d16fc38.dynamic.kabel-deutschland.de) (Read error: Connection reset by peer)
10:02:39 euleritian joins (~euleritia@ip4d16fc38.dynamic.kabel-deutschland.de)
10:04:58 mud joins (~mud@user/kadoban)
10:06:24 × xff0x quits (~xff0x@125x103x176x34.ap125.ftth.ucom.ne.jp) (Ping timeout: 256 seconds)
10:06:30 × czy quits (~user@fortigate.wolfson.cam.ac.uk) (Remote host closed the connection)
10:07:58 × kmein quits (~weechat@user/kmein) (Ping timeout: 246 seconds)
10:09:47 × danse-prison quits (~danse-pri@93-34-6-146.ip47.fastwebnet.it) (Quit: Client closed)
10:10:09 danse-prison joins (~danse-pri@93-34-6-146.ip47.fastwebnet.it)
10:11:32 × euleritian quits (~euleritia@ip4d16fc38.dynamic.kabel-deutschland.de) (Ping timeout: 252 seconds)
10:12:26 euleritian joins (~euleritia@dynamic-176-000-197-069.176.0.pool.telefonica.de)
10:12:49 Xe joins (~cadey@perl/impostor/xe)
10:14:00 × euleritian quits (~euleritia@dynamic-176-000-197-069.176.0.pool.telefonica.de) (Read error: Connection reset by peer)
10:14:17 euleritian joins (~euleritia@ip4d16fc38.dynamic.kabel-deutschland.de)
10:14:38 × tcard__ quits (~tcard@2400:4051:5801:7500:1e90:74c3:2754:ce8a) (Quit: Leaving)
10:16:21 czy joins (~user@fortigate.wolfson.cam.ac.uk)
10:17:36 × bah quits (~bah@l1.tel) (Quit: leaving)
10:19:47 × ggb quits (a62ffbaf4f@2a03:6000:1812:100::3ac) (Server closed connection)
10:19:55 ggb joins (a62ffbaf4f@2a03:6000:1812:100::3ac)
10:21:19 × czy quits (~user@fortigate.wolfson.cam.ac.uk) (Ping timeout: 260 seconds)
10:24:31 cfricke joins (~cfricke@user/cfricke)
10:25:40 × euleritian quits (~euleritia@ip4d16fc38.dynamic.kabel-deutschland.de) (Ping timeout: 256 seconds)
10:26:27 euleritian joins (~euleritia@dynamic-176-000-197-069.176.0.pool.telefonica.de)
10:27:24 JuanDaugherty joins (~juan@user/JuanDaugherty)
10:29:10 × euleritian quits (~euleritia@dynamic-176-000-197-069.176.0.pool.telefonica.de) (Read error: Connection reset by peer)
10:29:29 euleritian joins (~euleritia@ip4d16fc38.dynamic.kabel-deutschland.de)
10:36:25 <danse-prison> hmm does this https://vaibhavsagar.com/blog/2024/07/03/ghci-in-the-browser/ work for you? It does not seem to work for me
10:38:36 <haskellbridge> <vaibhavsagar> what browser are you using?
10:39:39 <haskellbridge> <vaibhavsagar> and how long did you give it to boot up etc.?
10:40:59 <davean> danse-prison: It works for me, its just so slow that I only noticed it infact worked because I walked away and came back.
10:41:19 <davean> danse-prison: I can't even type in it effectively.
10:41:55 <davean> danse-prison: Talking 30 seconds to register a keypress
10:43:05 <haskellbridge> <vaibhavsagar> davean: is that on every keypress or is it erratic?
10:43:25 <haskellbridge> <vaibhavsagar> because I'm trying it right now and it's inconsistent for me
10:44:46 <danse-prison> i'll try opening the page and leaving it sitting for a while then
10:45:00 <haskellbridge> <vaibhavsagar> very open to suggestions to make it perform better if you have any, it's more of a proof-of-concept than anything else
10:45:07 × cfricke quits (~cfricke@user/cfricke) (Ping timeout: 260 seconds)
10:45:24 cpressey joins (~weechat@176.254.71.203)
10:45:38 <haskellbridge> <vaibhavsagar> while GHCi.js is being worked on
10:45:44 <danse-prison> yeah it's an hack with great potentialities, thanks for that!
10:46:52 <danse-prison> which type of "container" is this?
10:47:33 <davean> vaibhavsagar: Not every keypress, but most?
10:48:46 <haskellbridge> <vaibhavsagar> danse-prison: it's a Docker image compiled to WASM using "container2wasm"
10:49:17 <danse-prison> huh why do you need to compile a whole docker image?
10:49:17 <haskellbridge> <vaibhavsagar> here's the source if you're curious: https://github.com/vaibhavsagar/amd64-ghc-wasi-demo
10:50:10 <haskellbridge> <vaibhavsagar> my understanding is that GHCi assumes that it is installed on an operating system, otherwise it can't import anything
10:50:23 <danse-prison> i see
10:50:42 <danse-prison> that's how this works then. Maybe i will not download the ~1G
10:50:53 <haskellbridge> <vaibhavsagar> it's more like 220MB
10:50:59 <haskellbridge> <vaibhavsagar> but that's fair enough
10:51:05 <danse-prison> said 700M in the intro
10:51:15 <haskellbridge> <vaibhavsagar> I have since updated it
10:51:40 <haskellbridge> <vaibhavsagar> it's ~700MB uncompressed
10:51:48 <danse-prison> nice. I didn't know my browser could download a full docker image nowadays
10:52:20 × lukec quits (9dfd4d094e@2a03:6000:1812:100::10e) (Server closed connection)
10:52:26 lukec joins (9dfd4d094e@2a03:6000:1812:100::10e)
10:52:33 <haskellbridge> <vaibhavsagar> it can download arbitrarily large bundles of WASM, so pretty much the same thing
10:53:04 <danse-prison> yeah but didn't know a docker image would be small enough and virtualisable that way
10:53:43 <danse-prison> what do you use for an incremental download of "arbitrary" sizes? Websockets?
10:53:54 <haskellbridge> <vaibhavsagar> you might enjoy the other demos: https://ktock.github.io/container2wasm-demo
10:54:18 <danse-prison> hmm i'm curious but not sure i "enjoy" dockers in my browser just yet ;)
10:54:36 <haskellbridge> <vaibhavsagar> it's fun to think of the possibilities
10:54:41 <haskellbridge> <vaibhavsagar> I'm more of a Nix guy myself
10:55:17 <haskellbridge> <vaibhavsagar> danse-prison: I meant in the same way that you'd download a large .iso, you can download a large file that happens to be WASM
10:55:19 <danse-prison> i find lightweight solutions more fun by yeah, i see your points. Having an interpreter in hackage pages is a brilliant idea
10:55:33 <haskellbridge> <vaibhavsagar> also in blog posts
10:56:02 <haskellbridge> <vaibhavsagar> or academic papers
10:56:06 <danse-prison> haskell's blogs don't even have engagement logic nowadays so the hackage one seems more likely to happen
10:56:14 <danse-prison> academics hate javascript
10:56:25 <haskellbridge> <vaibhavsagar> ah but my blog does have nonzero engagement
10:56:36 <haskellbridge> <vaibhavsagar> as evidenced by us having this conversation :)
10:57:01 xff0x joins (~xff0x@ai068022.d.east.v6connect.net)
10:57:04 <danse-prison> it's just because i like to hack dead community infrastructure
10:57:33 <haskellbridge> <vaibhavsagar> not sure what you mean by that, but it sounds interesting
10:57:46 × tromp quits (~textual@92-110-219-57.cable.dynamic.v4.ziggo.nl) (Quit: My iMac has gone to sleep. ZZZzzz…)
10:58:02 <danse-prison> speaking of which...
10:59:00 <davean> vaibhavsagar: I mean GHCJS is pretty fast, and there are the microinterpriters. Probably more work, but if it did work it would be a lot faster.
10:59:14 <davean> Like the thing lambdabot runs off, etc, I forget their names
11:00:05 <haskellbridge> <vaibhavsagar> davean: I'd be over the moon if we got GHCi.js working so I could have a Haskell interpreter in the browser
11:00:39 <haskellbridge> <vaibhavsagar> but IMHO that's a long way away, and I'm not aware of anyone who is actively working on it right now
11:01:41 <haskellbridge> <vaibhavsagar> I've gotten some pretty dismissive answers when I've asked about this exact thing on IRC in the past
11:01:52 <haskellbridge> <vaibhavsagar> people telling me it's not possible
11:02:08 <haskellbridge> <vaibhavsagar> hence my demonstration that it is
11:02:22 <tomsmeding> everything is possible if you will badly enough, and you don't care much about the size of the bundle
11:02:33 <tomsmeding> whether it's _practical_ is another matter
11:02:49 <tomsmeding> was the idea of GHCi.js that GHCi would be compiled to JS via ghcjs/the JS backend/whatever ?
11:03:21 tromp joins (~textual@92-110-219-57.cable.dynamic.v4.ziggo.nl)
11:03:39 <tomsmeding> I mean, one could even imagine extending an alternative implementation like microhaskell enough that it can compile GHC and associated libraries, and then interpreting the resulting combinators in JS
11:03:48 <tomsmeding> nobody said anything about _performance_, after all
11:05:06 <haskellbridge> <vaibhavsagar> the roadmap explicitly says "haskell code interpreter in the browser" https://gitlab.haskell.org/ghc/ghc/-/wikis/javascript-backend/#roadmap
11:05:09 × euleritian quits (~euleritia@ip4d16fc38.dynamic.kabel-deutschland.de) (Read error: Connection reset by peer)
11:05:24 euleritian joins (~euleritia@ip4d16fc38.dynamic.kabel-deutschland.de)
11:06:43 × danse-prison quits (~danse-pri@93-34-6-146.ip47.fastwebnet.it) (Ping timeout: 250 seconds)
11:07:53 <davean> vaibhavsagar: ghcjs has been working for years. Its just a fork of GHC. Its used to staticize some of my stuff by moving all the logic to the frontend without code updates.
11:07:57 Inst_ joins (~Inst@user/Inst)
11:08:44 × Moyst quits (~moyst@user/moyst) (Ping timeout: 252 seconds)
11:08:46 <davean> now, if it supports enough to make any of the haskell sandbox libs turn over is a different matter.
11:08:53 <davean> GHC is very much not standard Haskell code.
11:10:32 CiaoSen joins (~Jura@2a05:5800:2b5:3f00:e6b9:7aff:fe80:3d03)
11:11:42 <Axman6> vaibhavsagar: I haven't read back through all the chat above on GHCi in the browser, but on Safari I get "Promise Rejection: RangeError: Maximum call stack size exceeded."
11:12:50 <haskellbridge> <vaibhavsagar> davean: I've used GHCJS a bunch myself, I'm familiar with it. What it does _not_ provide is an interpreter I can run in the browser
11:15:03 <Inst_> EvanR: There's the QQ chat, which I can't seem to get in because my QQ keeps on getting "awaiting verification"
11:15:15 <Inst_> the Wechat for Chinese Haskell apparently popcorns every time Anduril gets brought up
11:19:12 <davean> vaibhavsagar: Correct, hence all the other stuff I was saying about how you'd have to use it
11:20:33 rosco joins (~rosco@175.136.155.137)
11:24:51 × rosco quits (~rosco@175.136.155.137) (Client Quit)
11:25:53 <haskellbridge> <vaibhavsagar> oh, I see
11:26:28 <haskellbridge> <vaibhavsagar> I wasn't sure what you meant by "sandbox libs"
11:26:39 <davean> like hint, etc
11:26:47 <davean> There are a number of them
11:26:58 <haskellbridge> <vaibhavsagar> yeah, I maintain IHaskell, which also qualifies
11:27:48 <davean> Does it? I don't know about its internals
11:28:03 <davean> Most of the ones I've seen relie on ghc-lib which is where the challenges would start
11:28:21 <haskellbridge> <vaibhavsagar> yup, IHaskell shares a lot of code with GHCi
11:28:34 <davean> Never looked at it.
11:28:40 <haskellbridge> <vaibhavsagar> and also uses the GHC API directly
11:31:56 <davean> Well IIRC GHCJS contains a modified GHC library that runs in JS
11:32:20 <davean> SO *if* one could link against *that* well ... but I don't know how cleanly it would work, or if it would be a lot
11:32:31 <davean> Its been many years since I looked closely
11:40:45 kuribas` joins (~user@ip-188-118-57-242.reverse.destiny.be)
11:41:04 × kuribas quits (~user@2a02:1808:8:dbfe:ec2a:b9af:7d30:2ea3) (Ping timeout: 246 seconds)
11:43:29 × whereiseveryone quits (206ba86c98@2a03:6000:1812:100::2e4) (Server closed connection)
11:43:36 whereiseveryone joins (206ba86c98@2a03:6000:1812:100::2e4)
11:47:08 × [exa] quits (~exa@user/exa/x-3587197) (Ping timeout: 268 seconds)
11:54:57 simendsjo joins (~user@c-cd76e253.197152-0-69706f6e6c79.bbcust.telenor.se)
11:58:23 × tomku quits (~tomku@user/tomku) (Ping timeout: 260 seconds)
11:59:51 tomku joins (~tomku@user/tomku)
12:04:12 laxmik joins (~user@pc192b.fzu.cz)
12:07:11 × cpressey quits (~weechat@176.254.71.203) (Ping timeout: 256 seconds)
12:15:30 × rvalue quits (~rvalue@user/rvalue) (Ping timeout: 268 seconds)
12:15:32 rvalue- joins (~rvalue@user/rvalue)
12:16:11 × lxsameer quits (~lxsameer@Serene/lxsameer) (Quit: WeeChat 4.2.2)
12:19:31 rvalue- is now known as rvalue
12:33:21 × hololeap quits (~quassel@user/hololeap) (Server closed connection)
12:33:36 hololeap joins (~quassel@user/hololeap)
12:34:32 phaazon is now known as hadronized
12:39:44 × JuanDaugherty quits (~juan@user/JuanDaugherty) (Quit: JuanDaugherty)
12:41:08 × euleritian quits (~euleritia@ip4d16fc38.dynamic.kabel-deutschland.de) (Ping timeout: 252 seconds)
12:43:51 [exa] joins (~exa@user/exa/x-3587197)
12:44:51 euleritian joins (~euleritia@dynamic-176-000-197-069.176.0.pool.telefonica.de)
12:48:35 × jmcantrell quits (644f1bed9a@user/jmcantrell) (Server closed connection)
12:48:45 jmcantrell joins (644f1bed9a@user/jmcantrell)
12:49:32 × JimL quits (~quassel@89.162.16.26) (Quit: https://quassel-irc.org - Chat comfortably. Anywhere.)
12:49:49 JimL joins (~quassel@89.162.16.26)
12:52:32 <bwe> does hpack support referencing git refs as dependency? I can't find anything on the docs of it.
12:54:50 <bwe> like https://cabal.readthedocs.io/en/3.4/cabal-project.html?highlight=github#specifying-packages-from-remote-version-control-locations
12:54:56 <tomsmeding> bwe: doesn't hpack simply compile to a .cabal file? .cabal files don't support git dependencies
12:55:05 <tomsmeding> the link you pasted is for a cabal.project, which is like stack.yaml
12:55:13 <tomsmeding> and, indeed, stack.yaml does support git dependencies
12:55:21 <bwe> it's a mess
12:55:34 <bwe> tooling, tooling, tooling…
12:55:42 <tomsmeding> a .cabal file defines the build configuration and the names of the dependencies for the package
12:55:51 <tomsmeding> the cabal.project / stack.yaml file defines where to get all of that _from_
12:56:20 × sus quits (1b7af6299f@user/zeromomentum) (Server closed connection)
12:56:29 sus joins (1b7af6299f@user/zeromomentum)
12:56:38 <tomsmeding> it is indeed a bit complicated if you're new to this tooling
12:57:02 <tomsmeding> the naming (*.cabal vs "cabal.project") doesn't help :p
12:57:38 <tomsmeding> something like "package.cabal" + "configuration.cabal" might have been clearer in retrospect
12:58:02 × bitdex quits (~bitdex@gateway/tor-sasl/bitdex) (Quit: = "")
12:58:07 <tomsmeding> bwe: are you using stack, or are you using hpack with cabal?
12:58:18 <bwe> hpack with cabal
12:58:25 <tomsmeding> that is... unusual :)
12:58:49 <tomsmeding> but yes, a source-repository-package stanza in a cabal.project is what you're looking for
13:00:17 <tomsmeding> bwe: a way to think about this is perhaps that the *.cabal file is the thing that Hackage reads; Hackage does not read cabal.project files
13:00:41 <tomsmeding> and packages on Hackage must refer to other Hackage packages only (and external system dependencies); they cannot refer to git dependencies
13:01:10 <tomsmeding> thus if you want to do that, you'll need to specify such git dependencies in an additional configuration file that cabal interprets on top of the normal package description
13:01:16 <tomsmeding> and that file is cabal.project
13:01:28 <bwe> ah that makes sense to me now, thanks for explaining this
13:01:36 <tomsmeding> yay!
13:01:43 <tomsmeding> I learnt this by osmosis
13:01:57 <tomsmeding> *learned?
13:02:03 <haskellbridge> <mauke> ... and, unlike in Perl, you cannot depend on modules, only packages
13:02:23 cpressey joins (~weechat@176.254.71.203)
13:02:40 <tomsmeding> ah no, learnt is fine
13:03:51 × euleritian quits (~euleritia@dynamic-176-000-197-069.176.0.pool.telefonica.de) (Read error: Connection reset by peer)
13:04:09 euleritian joins (~euleritia@ip4d16fc38.dynamic.kabel-deutschland.de)
13:05:41 <bwe> it fetches the repo now fine on `cabal repl`; however the mess is now in version conflicts that are unresolvable :*
13:06:05 <tomsmeding> the tooling is not quite clever enough to do that automatically :)
13:07:11 × jleightcap quits (7bc4014b62@user/jleightcap) (Server closed connection)
13:07:19 jleightcap joins (7bc4014b62@user/jleightcap)
13:07:24 × cpressey quits (~weechat@176.254.71.203) (Quit: WeeChat 4.3.0)
13:07:48 × JimL quits (~quassel@89.162.16.26) (Quit: https://quassel-irc.org - Chat comfortably. Anywhere.)
13:08:06 JimL joins (~quassel@89.162.16.26)
13:09:23 soverysour joins (~soverysou@81.196.150.219)
13:09:23 × soverysour quits (~soverysou@81.196.150.219) (Changing host)
13:09:23 soverysour joins (~soverysou@user/soverysour)
13:11:15 × JimL quits (~quassel@89.162.16.26) (Client Quit)
13:11:34 JimL joins (~quassel@89.162.16.26)
13:13:28 × euleritian quits (~euleritia@ip4d16fc38.dynamic.kabel-deutschland.de) (Ping timeout: 268 seconds)
13:14:23 × soverysour quits (~soverysou@user/soverysour) (Ping timeout: 268 seconds)
13:14:38 × JimL quits (~quassel@89.162.16.26) (Client Quit)
13:14:49 euleritian joins (~euleritia@dynamic-176-000-197-069.176.0.pool.telefonica.de)
13:15:00 JimL joins (~quassel@89.162.16.26)
13:15:02 cfricke joins (~cfricke@user/cfricke)
13:18:18 danse-nr3 joins (~danse-nr3@host-95-230-160-3.business.telecomitalia.it)
13:29:43 kmein joins (~weechat@user/kmein)
13:35:59 × euleritian quits (~euleritia@dynamic-176-000-197-069.176.0.pool.telefonica.de) (Ping timeout: 264 seconds)
13:36:39 euleritian joins (~euleritia@dynamic-176-006-176-108.176.6.pool.telefonica.de)
13:38:15 <bwe> ok, I've resolved the conflict now. only missing bit seems to be that repl can't find the module itself. I've removed the package names from .cabal file since it tries to get them from hackage then. what's the right approach then?
13:40:31 <bwe> nvm, I needed to add them to .cabal file; it pulls them from the local path I've specified in the cabal.project file! wow, it works!
13:41:27 × laxmik quits (~user@pc192b.fzu.cz) (Quit: ERC 5.5.0.29.1 (IRC client for GNU Emacs 29.4))
13:50:29 <tomsmeding> right, the packages need to be in the .cabal file as usual; the cabal.project file just overrides where they come from
13:51:01 <tomsmeding> I hope you never run into this, but this overriding does _not_ work for dependencies of `build-tool` dependencies of your package
13:51:24 <tomsmeding> finding this out cost me a bit of time recently
13:52:51 noumenon joins (~noumenon@113.51-175-156.customer.lyse.net)
13:59:49 ystael joins (~ystael@user/ystael)
14:00:55 × noumenon quits (~noumenon@113.51-175-156.customer.lyse.net) (Quit: Leaving)
14:06:19 × cfricke quits (~cfricke@user/cfricke) (Ping timeout: 246 seconds)
14:09:34 Moyst joins (~moyst@user/moyst)
14:18:29 × fn_lumi quits (3d621153a5@2a03:6000:1812:100::df7) (Server closed connection)
14:18:36 fn_lumi joins (3d621153a5@2a03:6000:1812:100::df7)
14:21:58 × machinedgod quits (~machinedg@d173-183-246-216.abhsia.telus.net) (Ping timeout: 256 seconds)
14:32:49 × ubert quits (~Thunderbi@2a02:8109:ab8a:5a00:c640:cbb1:10f1:eac6) (Quit: ubert)
14:40:40 × danse-nr3 quits (~danse-nr3@host-95-230-160-3.business.telecomitalia.it) (Quit: Leaving)
14:49:04 soverysour joins (~soverysou@user/soverysour)
14:51:02 × arcadewise quits (52968ed80d@2a03:6000:1812:100::3df) (Server closed connection)
14:51:09 arcadewise joins (52968ed80d@2a03:6000:1812:100::3df)
14:53:59 × soverysour quits (~soverysou@user/soverysour) (Ping timeout: 264 seconds)
15:05:36 × infinity0 quits (~infinity0@pwned.gg) (Ping timeout: 256 seconds)
15:07:35 Inst_ is now known as Inst
15:08:05 infinity0 joins (~infinity0@pwned.gg)
15:08:51 × tromp quits (~textual@92-110-219-57.cable.dynamic.v4.ziggo.nl) (Quit: My iMac has gone to sleep. ZZZzzz…)
15:10:31 cfricke joins (~cfricke@user/cfricke)
15:15:31 soverysour joins (~soverysou@user/soverysour)
15:17:23 JuanDaugherty joins (~juan@user/JuanDaugherty)
15:24:22 <cheater> how are you, fellow cult members?
15:24:47 cheater puts on a spiky pink hat with a green ponpon
15:33:04 <int-e> Nono, you want Rust. This here is a cabal.
15:34:01 <int-e> (In this picture, Rust is the cargo cult.)
15:37:47 mikess joins (~mikess@user/mikess)
15:40:15 × CiaoSen quits (~Jura@2a05:5800:2b5:3f00:e6b9:7aff:fe80:3d03) (Ping timeout: 272 seconds)
15:40:28 × soverysour quits (~soverysou@user/soverysour) (Ping timeout: 246 seconds)
15:42:01 tromp joins (~textual@92-110-219-57.cable.dynamic.v4.ziggo.nl)
15:43:21 JuanDaugherty is just a rank opportunist
15:48:45 × hugo quits (znc@quicksilver.lysator.liu.se) (Ping timeout: 256 seconds)
15:50:37 × _0xa_ quits (~user@2001:19f0:5001:2ba8:5400:1ff:feda:88fc) (Server closed connection)
15:50:48 _0xa joins (~user@2001:19f0:5001:2ba8:5400:1ff:feda:88fc)
15:50:48 × _0xa quits (~user@2001:19f0:5001:2ba8:5400:1ff:feda:88fc) (Changing host)
15:50:48 _0xa joins (~user@user/0xa/x-3134607)
15:52:25 ubert joins (~Thunderbi@2a02:8109:ab8a:5a00:c640:cbb1:10f1:eac6)
15:55:27 × kuribas` quits (~user@ip-188-118-57-242.reverse.destiny.be) (Remote host closed the connection)
15:56:23 × simendsjo quits (~user@c-cd76e253.197152-0-69706f6e6c79.bbcust.telenor.se) (Ping timeout: 264 seconds)
15:58:37 <EvanR> time to rewrite cabal in rust
15:59:11 <EvanR> hell rewrite GHC in rust!
16:00:21 <int-e> glhf
16:00:39 × cfricke quits (~cfricke@user/cfricke) (Quit: WeeChat 4.2.2)
16:05:16 <mauke> hell: rewrite ghc in rust
16:08:57 <cheater> int-e: oh, you missed the wired article?
16:10:38 <cheater> https://www.wired.com/story/inside-the-cult-of-the-haskell-programmer/
16:11:01 <int-e> cheater: I did but I'd maintain my stance regardless. Words matter.
16:11:26 <cheater> oh, you're of the "WORDS have MEANING" bent?
16:11:41 <int-e> ...why is the code on the title image cut off
16:12:19 <cheater> i'm more of the "surfaces and essences by hofstadter" bent. words have no meaning. words have multiple meanings. the meaning depends on the context.
16:12:20 <int-e> it's offensive because it's like 6 more characters.
16:12:30 <cheater> maybe he copypasted wrong
16:12:30 <systemfault> They really don't want us to read the article.... Do you also have that awful neon yellow background on that page?
16:13:02 <int-e> I do. I'm about to disable CSS
16:13:16 <cheater> it's meant for your average gophers, they're famously color blind
16:13:34 <mauke> that reminds me. brb, listening to https://www.youtube.com/watch?v=Tv2l0nrBQ74&list=PL5coPQ2CQKeHq6nZRgLsLMeSbN089wrCa
16:13:52 <int-e> and it does not do the thing where you have to scroll down half a mile to skip over the social media icons that are scaled to 100% of the viewport width. yay.
16:14:51 <cheater> i love it when that happens
16:16:50 <int-e> Hmm no mention of Miranda.
16:18:07 econo_ joins (uid147250@id-147250.tinside.irccloud.com)
16:20:33 <int-e> This is so shallow, I thought we were going to dive inside the cabal?
16:22:53 __monty__ joins (~toonn@user/toonn)
16:24:33 <int-e> This is like a deep dive on Scientology that gives a bunch of third party opinions and concludes with "people find Elron Hubbub's theories appealing."
16:26:19 × mechap quits (~mechap@user/mechap) (Ping timeout: 246 seconds)
16:27:10 mechap joins (~mechap@user/mechap)
16:27:25 <int-e> cheater: Anyway, I don't think I had missed anything at all. :-P
16:36:26 × duncan quits (c6181279e3@user/meow/duncan) (Server closed connection)
16:36:38 duncan joins (c6181279e3@user/meow/duncan)
16:38:56 <cheater> speaking of cults
16:39:18 <cheater> one of the mods on the sub just quit because the other mods are turning it into a welcoming party for trolls
16:39:35 <EvanR> words have no meaning, only consequences
16:39:41 <cheater> lol
16:39:53 <cheater> you forgot to crack the whip at the end of that sentence
16:40:00 <EvanR> lol
16:40:10 Moyst_ joins (~moyst@user/moyst)
16:41:03 <EvanR> orwellian wittgenstein
16:41:27 <cheater> thinking more of that old german ad that goes "RUF! MICH! AN!"
16:41:32 × ubert quits (~Thunderbi@2a02:8109:ab8a:5a00:c640:cbb1:10f1:eac6) (Remote host closed the connection)
16:43:42 × Moyst quits (~moyst@user/moyst) (Ping timeout: 252 seconds)
16:49:16 Natch joins (~natch@c-9e07225c.038-60-73746f7.bbcust.telenor.se)
16:58:08 × akspecs quits (00cc8321af@sourcehut/user/akspecs) (Server closed connection)
16:58:16 akspecs joins (00cc8321af@sourcehut/user/akspecs)
16:59:22 × chele quits (~chele@user/chele) (Remote host closed the connection)
17:07:26 × samhh_ quits (7569f027cf@2a03:6000:1812:100::e4) (Server closed connection)
17:07:36 samhh_ joins (7569f027cf@2a03:6000:1812:100::e4)
17:12:21 × xstill_ quits (xstill@fimu/xstill) (Server closed connection)
17:12:40 xstill_ joins (xstill@fimu/xstill)
17:20:51 × pavonia quits (~user@user/siracusa) (Quit: Bye!)
17:31:37 cpressey joins (~weechat@176.254.71.203)
17:38:21 × __monty__ quits (~toonn@user/toonn) (Quit: leaving)
17:41:11 jpyamamoto joins (~jpyamamot@2806:2f0:92e5:a4e7:7db3:fca:c65b:c605)
17:42:00 × euleritian quits (~euleritia@dynamic-176-006-176-108.176.6.pool.telefonica.de) (Ping timeout: 256 seconds)
17:43:00 euleritian joins (~euleritia@dynamic-176-001-136-166.176.1.pool.telefonica.de)
17:43:25 <jpyamamoto> Hey, I had a question regarding linear haskell. Do you know how it interacts with list comprehensions?
17:43:25 <jpyamamoto> I have the following code, which to my understanding shouldn't compile, since I'm using the argument non-linearly, but it does compile. So I'm not entirely sure what's going on behind the scenes.
17:43:26 <jpyamamoto> ```haskell
17:43:26 <jpyamamoto> weird :: Int %1 -> [Int]
17:43:27 <jpyamamoto> weird x = [x | _ <- [(1 :: Integer) .. 5]]
17:43:27 <jpyamamoto> ```
17:44:42 peterbecich joins (~Thunderbi@syn-047-229-123-186.res.spectrum.com)
17:45:48 × tromp quits (~textual@92-110-219-57.cable.dynamic.v4.ziggo.nl) (Quit: My iMac has gone to sleep. ZZZzzz…)
17:48:30 <EvanR> list comprehension syntax is translated to core haskell through a set of rules https://www.haskell.org/onlinereport/exps.html#sect3.11
17:48:55 × euleritian quits (~euleritia@dynamic-176-001-136-166.176.1.pool.telefonica.de) (Read error: Connection reset by peer)
17:49:13 euleritian joins (~euleritia@77.22.252.56)
17:52:00 <mauke> @undo [x | _ <- [(1 :: Integer) .. 5]]
17:52:00 <lambdabot> concatMap (\ _ -> [x]) [(1 :: Integer) .. 5]
17:52:21 <EvanR> undo undoes list comprehensions, cool
17:52:45 <jpyamamoto> Whoah that undo command is nice, didn't know about it
17:53:59 × peterbecich quits (~Thunderbi@syn-047-229-123-186.res.spectrum.com) (Ping timeout: 260 seconds)
17:54:07 <jpyamamoto> That's weird, because when I actually use concatMap, it no longer typechecks
17:54:08 <jpyamamoto> ```
17:54:08 <jpyamamoto> weird' :: Int %1 -> [Int]
17:54:09 <jpyamamoto> weird' x = concatMap (\_ -> [x]) [(1 :: Integer) .. 5]
17:54:09 <jpyamamoto> ```
17:55:58 <jle`> that does seem like a bug then
17:56:53 <EvanR> maybe list comprehensions do something else in the face of linear types
17:57:01 <jle`> what if you moved the let back out like in the direct desugaring
17:57:22 <jle`> weird' x = let f _ = [x] in concatMap f [1..5]
18:02:52 Square joins (~Square@user/square)
18:02:59 <jpyamamoto> It doesn't typecheck, though the problem seems to be because of the function `f`, it is inferred to be non-linear
18:04:07 <cheater> i had no idea undo did that
18:04:11 <cheater> does hls have undo?
18:07:22 <jpyamamoto> `f` does not typecheck when using concatMap from base-linear. If I use concatMap from prelude, `x` is not used linearly and doesn't typecheck
18:10:50 tromp joins (~textual@92-110-219-57.cable.dynamic.v4.ziggo.nl)
18:10:59 × zlqrvx quits (~zlqrvx@user/zlqrvx) (Server closed connection)
18:11:20 zlqrvx joins (~zlqrvx@user/zlqrvx)
18:12:32 × tessier quits (~treed@ec2-184-72-149-67.compute-1.amazonaws.com) (Server closed connection)
18:12:56 tessier joins (~treed@ec2-184-72-149-67.compute-1.amazonaws.com)
18:14:12 <cheater> jpyamamoto: what is the type of concatMap from base-linear?
18:16:24 <cheater> ugh. whytf doesn't hackage have linear-base
18:17:06 <cheater> you have to select it from the dropdown
18:17:07 <cheater> that's stupid
18:17:14 <cheater> concatMap :: (a % 1 -> [b]) -> [a] % 1 -> [b]
18:17:25 <cheater> :t concatMap
18:17:26 <lambdabot> Foldable t => (a -> [b]) -> t a -> [b]
18:18:46 <cheater> jpyamamoto: so when you compile that list comprehension, what core output do you get?
18:18:52 dyniec joins (~dyniec@dybiec.info)
18:22:08 × Lord_of_Life quits (~Lord@user/lord-of-life/x-2819915) (Ping timeout: 252 seconds)
18:23:06 Lord_of_Life joins (~Lord@user/lord-of-life/x-2819915)
18:23:59 × cpressey quits (~weechat@176.254.71.203) (Ping timeout: 264 seconds)
18:24:59 × Square quits (~Square@user/square) (Read error: Connection reset by peer)
18:26:17 × motherfsck quits (~motherfsc@user/motherfsck) (Ping timeout: 256 seconds)
18:28:17 tzh joins (~tzh@c-76-115-131-146.hsd1.or.comcast.net)
18:30:04 Square joins (~Square@user/square)
18:32:13 target_i joins (~target_i@user/target-i/x-6023099)
18:35:28 × sord937 quits (~sord937@gateway/tor-sasl/sord937) (Quit: sord937)
18:36:02 × superbil quits (~superbil@114-32-231-70.hinet-ip.hinet.net) (Quit: WeeChat 4.3.3)
18:38:51 superbil joins (~superbil@114-32-231-70.hinet-ip.hinet.net)
18:42:12 <jpyamamoto> cheater Took me a while, didn't know how to compile to core. But here is the output:
18:42:12 <jpyamamoto> weird :: Int %1 -> [Int]
18:42:13 <jpyamamoto> [GblId,
18:42:13 <jpyamamoto>  Arity=1,
18:42:14 <jpyamamoto>  Str=<L>,
18:42:14 <jpyamamoto>  Unf=Unf{Src=<vanilla>, TopLvl=True,
18:42:15 <jpyamamoto>          Value=True, ConLike=True, WorkFree=True, Expandable=True,
18:42:15 <jpyamamoto>          Guidance=IF_ARGS [0] 211 0}]
18:42:16 <jpyamamoto> weird
18:42:16 <jpyamamoto>   = \ (x1_a1gj :: Int) ->
18:42:17 <jpyamamoto>       letrec {
18:42:17 <jpyamamoto>         go3_X1E [Occ=LoopBreaker, Dmd=SCS(L)] :: Integer -> [Int]
18:42:18 <jpyamamoto>         [LclId, Arity=1, Str=<1L>, Unf=OtherCon []]
18:42:18 <jpyamamoto>         go3_X1E
18:42:19 <jpyamamoto>           = \ (x2_a2te :: Integer) ->
18:42:19 <jpyamamoto>               case x2_a2te of wild_a2tk {
18:42:20 <jpyamamoto>                 GHC.Num.Integer.IS x3_a2tl ->
18:42:20 <jpyamamoto>                   case ghc-prim:GHC.Prim.># x3_a2tl 5# of {
18:42:28 <cheater> homie don't paste shit in here
18:42:33 <cheater> use a pastebin pleeeease
18:43:06 <EvanR> esp since it's incomplete and the suspense is killing me
18:43:07 <cheater> look in the topic for one: /topic
18:43:34 <cheater> EvanR: i'm holding my breath and my face is turning purple
18:44:22 <jpyamamoto> Sorry, here's the pastebin: https://pastebin.com/FVbH5Abm
18:44:43 <cheater> no worries lol
18:46:28 × mreh quits (~matthew@host86-160-168-12.range86-160.btcentralplus.com) (Ping timeout: 268 seconds)
18:48:32 <cheater> i suggest translating that back to haskell and seeing how that fails if at all
18:53:32 <cheater> honestly it sounds like a bug
18:53:36 <cheater> i'd report it on haskell-cafe
18:56:01 × yin quits (~yin@user/zero) (Ping timeout: 268 seconds)
18:56:05 × dhil quits (~dhil@2001:8e0:2014:3100:d824:2bdc:f538:dd26) (Ping timeout: 240 seconds)
18:59:19 <jpyamamoto> yeah, at first I thought it was because Int implements the Dupable typeclass, but i just tried using a type that does not implement Dupable, and still works. I think it's a bug
19:01:01 emmanuelux joins (~emmanuelu@user/emmanuelux)
19:04:27 <jle`> congrats
19:12:29 × mechap quits (~mechap@user/mechap) (Ping timeout: 240 seconds)
19:22:45 <int-e> desugaring list comprehensions doesn't actually use concatMap... instead it generates ad-hoch recursive functions
19:22:53 <int-e> -h
19:24:09 <int-e> Or direct foldr/build things if optimization is enabled.
19:27:56 machinedgod joins (~machinedg@d173-183-246-216.abhsia.telus.net)
19:38:44 <int-e> So instead of that you get ad-hoc generation of constraints for list comprehension here, and evidently that doesn't account for loss of linearity. No clue how that would work :). https://gitlab.haskell.org/ghc/ghc/-/blob/master/compiler/GHC/Tc/Gen/Match.hs?ref_type=heads#L493-617
19:38:54 mreh joins (~matthew@host86-160-168-12.range86-160.btcentralplus.com)
19:51:54 bilegeek joins (~bilegeek@2600:1008:b019:7537:8fbb:bca3:6ac1:6fb0)
19:58:38 × smalltalkman quits (uid545680@id-545680.hampstead.irccloud.com) (Quit: Connection closed for inactivity)
20:09:07 × jpyamamoto quits (~jpyamamot@2806:2f0:92e5:a4e7:7db3:fca:c65b:c605) (Quit: Client closed)
20:11:40 × tromp quits (~textual@92-110-219-57.cable.dynamic.v4.ziggo.nl) (Quit: My iMac has gone to sleep. ZZZzzz…)
20:14:09 tromp joins (~textual@92-110-219-57.cable.dynamic.v4.ziggo.nl)
20:15:04 soverysour joins (~soverysou@81.196.150.219)
20:15:04 × soverysour quits (~soverysou@81.196.150.219) (Changing host)
20:15:04 soverysour joins (~soverysou@user/soverysour)
20:22:15 yin joins (~yin@user/zero)
20:27:23 × tmr quits (~tamer@5.2.74.82) (Server closed connection)
20:27:40 tmr joins (~tamer@5.2.74.82)
20:33:35 × andrea_r quits (~user@93-49-96-212.ip366.fastwebnet.it) (Server closed connection)
20:33:53 andrea_r joins (~user@93-49-96-212.ip366.fastwebnet.it)
20:36:47 waleee joins (~waleee@h-176-10-144-38.NA.cust.bahnhof.se)
20:49:05 × machinedgod quits (~machinedg@d173-183-246-216.abhsia.telus.net) (Ping timeout: 256 seconds)
20:55:44 cpressey joins (~weechat@176.254.71.203)
21:00:32 × cpressey quits (~weechat@176.254.71.203) (Ping timeout: 252 seconds)
21:05:16 × yin quits (~yin@user/zero) (Ping timeout: 246 seconds)
21:19:41 × euleritian quits (~euleritia@77.22.252.56) (Read error: Connection reset by peer)
21:20:25 euleritian joins (~euleritia@ip4d16fc38.dynamic.kabel-deutschland.de)
21:20:51 × takuan quits (~takuan@178-116-218-225.access.telenet.be) (Remote host closed the connection)
21:21:54 × JuanDaugherty quits (~juan@user/JuanDaugherty) (Quit: JuanDaugherty)
21:23:14 cpressey joins (~weechat@176.254.71.203)
21:23:24 × tomku quits (~tomku@user/tomku) (Ping timeout: 268 seconds)
21:23:38 tomku joins (~tomku@user/tomku)
21:25:09 × tromp quits (~textual@92-110-219-57.cable.dynamic.v4.ziggo.nl) (Quit: My iMac has gone to sleep. ZZZzzz…)
21:25:13 × soverysour quits (~soverysou@user/soverysour) (Ping timeout: 256 seconds)
21:25:16 ft joins (~ft@p4fc2ab80.dip0.t-ipconnect.de)
21:25:46 × visilii quits (~visilii@213.24.125.33) (Quit: ZNC - https://znc.in)
21:28:02 tromp joins (~textual@92-110-219-57.cable.dynamic.v4.ziggo.nl)
21:31:27 pavonia joins (~user@user/siracusa)
21:32:02 jpyamamoto joins (~jpyamamot@2806:2f0:92e5:a4e7:7db3:fca:c65b:c605)
21:32:47 × michalz quits (~michalz@185.246.207.217) (Quit: ZNC 1.9.0 - https://znc.in)
21:33:31 × jpyamamoto quits (~jpyamamot@2806:2f0:92e5:a4e7:7db3:fca:c65b:c605) (Client Quit)
21:36:14 × cpressey quits (~weechat@176.254.71.203) (Quit: WeeChat 4.3.0)
21:40:39 CiaoSen joins (~Jura@2a05:5800:2b5:3f00:e6b9:7aff:fe80:3d03)
21:42:11 × erisco quits (~erisco@d24-141-66-165.home.cgocable.net) (Quit: ZNC 1.8.2+cygwin2 - https://znc.in)
21:43:03 erisco joins (~erisco@d24-141-66-165.home.cgocable.net)
21:45:45 × target_i quits (~target_i@user/target-i/x-6023099) (Quit: leaving)
21:49:39 dysthesis joins (~dysthesis@user/dysthesis)
21:50:48 yin joins (~yin@user/zero)
21:58:47 × mreh quits (~matthew@host86-160-168-12.range86-160.btcentralplus.com) (Ping timeout: 264 seconds)
22:01:07 × tromp quits (~textual@92-110-219-57.cable.dynamic.v4.ziggo.nl) (Quit: My iMac has gone to sleep. ZZZzzz…)
22:07:05 × mikess quits (~mikess@user/mikess) (Ping timeout: 252 seconds)
22:10:18 mikess joins (~mikess@user/mikess)
22:16:43 × cawfee quits (~root@2406:3003:2077:1c50::babe) (Ping timeout: 272 seconds)
22:17:03 × ystael quits (~ystael@user/ystael) (Ping timeout: 268 seconds)
22:25:44 × hueso quits (~root@user/hueso) (Quit: hueso)
22:28:03 × bilegeek quits (~bilegeek@2600:1008:b019:7537:8fbb:bca3:6ac1:6fb0) (Quit: Leaving)
22:31:17 × acidjnk_new quits (~acidjnk@p200300d6e72cfb08c14fbc96bb9a0d8c.dip0.t-ipconnect.de) (Ping timeout: 272 seconds)
22:35:09 × pavonia quits (~user@user/siracusa) (Quit: Bye!)
22:37:55 peterbecich joins (~Thunderbi@syn-047-229-123-186.res.spectrum.com)
22:38:47 hueso joins (~root@user/hueso)
22:42:17 × yin quits (~yin@user/zero) (Ping timeout: 252 seconds)
22:47:21 jpyamamoto joins (~jpyamamot@2806:2f0:92e5:a4e7:3345:671a:9ae:11a0)
22:48:53 yin joins (~yin@user/zero)
22:49:39 jpyamamoto49 joins (~jpyamamot@2806:2f0:92e5:a4e7:3345:671a:9ae:11a0)
22:50:21 × jpyamamoto49 quits (~jpyamamot@2806:2f0:92e5:a4e7:3345:671a:9ae:11a0) (Client Quit)
22:52:37 Sgeo joins (~Sgeo@user/sgeo)
22:55:33 <jpyamamoto> /msg NickServ REGISTER dev@irc0928 jpyamamoto@ciencias.unam.mx
22:55:50 <jpyamamoto> whoops
22:55:55 <sprout> good call
22:56:54 <Rembane> jpyamamoto: You wanna know my habit around interacting with NickServ?
22:57:56 <EvanR> use the server window or dedicated nickserv query window
22:58:11 madeleine-sydney joins (~madeleine@c-71-229-185-228.hsd1.co.comcast.net)
23:00:39 × jpyamamoto quits (~jpyamamot@2806:2f0:92e5:a4e7:3345:671a:9ae:11a0) (Changing host)
23:00:39 jpyamamoto joins (~jpyamamot@user/jpyamamoto)
23:01:31 pavonia joins (~user@user/siracusa)
23:02:24 jpyamamoto46 joins (~jpyamamot@user/jpyamamoto)
23:03:01 × jpyamamoto46 quits (~jpyamamot@user/jpyamamoto) (Client Quit)
23:08:29 × peterbecich quits (~Thunderbi@syn-047-229-123-186.res.spectrum.com) (Ping timeout: 240 seconds)
23:08:31 × gmg quits (~user@user/gehmehgeh) (Quit: Leaving)
23:11:38 × CiaoSen quits (~Jura@2a05:5800:2b5:3f00:e6b9:7aff:fe80:3d03) (Ping timeout: 268 seconds)
23:14:34 × jpyamamoto quits (~jpyamamot@user/jpyamamoto) (Remote host closed the connection)
23:14:52 jpyamamoto joins (~jpyamamot@2806:2f0:92e5:a4e7:7db3:fca:c65b:c605)
23:20:57 × YuutaW quits (~YuutaW@2404:f4c0:f9c3:502::100:17b7) (Server closed connection)
23:21:07 × yin quits (~yin@user/zero) (Ping timeout: 260 seconds)
23:21:20 YuutaW joins (~YuutaW@mail.yuuta.moe)
23:27:23 × drlkf quits (~drlkf@192.184.163.34.bc.googleusercontent.com) (Server closed connection)
23:27:48 drlkf joins (~drlkf@192.184.163.34.bc.googleusercontent.com)
23:32:00 × jpyamamoto quits (~jpyamamot@2806:2f0:92e5:a4e7:7db3:fca:c65b:c605) (Remote host closed the connection)
23:32:36 × davetapley quits (sid666@id-666.uxbridge.irccloud.com) (Quit: Connection closed for inactivity)
23:49:07 × Pozyomka quits (~pyon@user/pyon) (Ping timeout: 260 seconds)
23:52:06 Pozyomka joins (~pyon@user/pyon)

All times are in UTC on 2024-07-10.