Home liberachat/#haskell: Logs Calendar

Logs on 2021-05-28 (liberachat/#haskell)

00:00:20 <sm> too hard for me, obviously. / did not occur to me
00:00:33 <geekosaur> usual for irc clients
00:00:50 × dunham quits (~dunham@97-113-35-16.tukw.qwest.net) (Ping timeout: 264 seconds)
00:00:52 <Clint> /quit is missing, however
00:01:51 × prite quits (~pritam@user/pritambaral) (Ping timeout: 272 seconds)
00:01:58 <sm> why does the command aread show ^ and $ ?
00:02:02 <sm> area
00:02:15 <Axman6> beginning and end of line, obviously!
00:02:28 <sm> this was also upsetting. Threw me off my game.
00:02:32 <Axman6> so you can alrways remember which is which when using regexen
00:03:03 <glguy> Clint: it has /quit
00:03:09 <Clint> oh
00:03:18 <glguy> Clint: /quit is a network command
00:03:32 <Clint> i see
00:03:35 <Clint> not consistent with other clients though
00:03:57 <glguy> yeah, this was my chance to fix a lot of the "mistakes" of other clients
00:04:09 Clint grins.
00:04:26 <Clint> someone needs to fix my muscle memory
00:04:42 × eggplantade quits (~Eggplanta@2600:1700:bef1:5e10:b043:8b77:c7da:42a0) (Remote host closed the connection)
00:04:56 sm_ joins (~username@plaintextaccounting/sm)
00:04:59 <glguy> You can /disconnect, that just closes the socket
00:05:05 <glguy> and you can /quit, that tells the server you're quitting
00:05:13 <glguy> and then it disconnects you :3
00:05:31 vonfry` parts (~user@240e:688:3:1010:d165:d0b6:b436:8121) (ERC (IRC client for Emacs 27.1.91))
00:05:37 <sm> how do you scroll the main window ?
00:05:39 <Clint> right, but /quit is how i've exited clients since the '90s and i keep typing it
00:05:48 <glguy> sm: PgUp/PgDown
00:06:05 <sm> thanks
00:06:16 <glguy> sm: there is /keymap
00:06:31 <glguy> you can see all the meaningful keys, and anything there can be changed in config
00:07:14 ku joins (~ku@2601:280:c780:7ea0:bdb5:230d:40c:e48e)
00:07:54 × sszark quits (~sszark@h-85-24-213-180.A392.priv.bahnhof.se) (Ping timeout: 252 seconds)
00:07:58 <glguy> sm: ^ and $ is so I can tell if there's whitespace at the beginning or end of a command, and so I can tell the text area is smaller than the input easily
00:08:59 <glguy> In recent versions F6 by default toggles allowing the text area to grow vertically
00:09:14 <sm_> ?
00:09:21 ddellacosta joins (~ddellacos@86.106.121.100)
00:09:25 <sm_> .
00:09:38 <sm_> ack those went to channel.. ok
00:09:38 <glguy> If you write a bunch it wraps to another line, if you stage multiple lines you see each on a separate line
00:09:55 <glguy> alt-enter sends the newline to the textbox
00:10:03 × favonia quits (~favonia@user/favonia) (Ping timeout: 244 seconds)
00:10:12 <sm_> a
00:10:15 <sm_> b
00:10:23 × bfrk quits (~Thunderbi@200116b84508c2004c8614311807bd60.dip.versatel-1u1.de) (Ping timeout: 264 seconds)
00:10:33 tA joins (~thorn@121.220.36.168)
00:10:50 <glguy> I can teach you all about stuff in #glirc if you want to experiment :3
00:11:04 favonia joins (~favonia@user/favonia)
00:11:13 <Axman6> I wondered where #haskell-irc went - time to update my glirc config
00:11:40 <sm_> thanks! I am dangerous now
00:12:31 <sm_> emacs:vim = erc:glirc I feel
00:12:42 <sm_> for me at least
00:12:48 <glguy> Well, I'm certainly a vim user
00:13:22 × juhp quits (~juhp@bb219-75-40-154.singnet.com.sg) (Ping timeout: 264 seconds)
00:13:49 zzz joins (~yin@user/yin)
00:14:34 × dhil quits (~dhil@195.213.192.85) (Ping timeout: 264 seconds)
00:15:14 × ddellacosta quits (~ddellacos@86.106.121.100) (Ping timeout: 264 seconds)
00:16:59 <zzz> is the matrix link already up?
00:17:03 fizbin joins (~fizbin@c-73-33-197-160.hsd1.nj.comcast.net)
00:17:23 <sm_> zzz not reliable yet
00:17:35 eggplantade joins (~Eggplanta@2600:1700:bef1:5e10:b043:8b77:c7da:42a0)
00:18:17 yin[m] joins (~zwromatri@2001:470:69fc:105::1d4)
00:18:23 × fizbin quits (~fizbin@c-73-33-197-160.hsd1.nj.comcast.net) (Remote host closed the connection)
00:18:41 <zzz> ok thanks
00:19:09 Lycurgus joins (~juan@cpe-45-46-140-49.buffalo.res.rr.com)
00:20:09 lavaman joins (~lavaman@98.38.249.169)
00:24:14 × favonia quits (~favonia@user/favonia) (Ping timeout: 248 seconds)
00:24:33 favonia joins (~favonia@user/favonia)
00:24:46 × lavaman quits (~lavaman@98.38.249.169) (Ping timeout: 248 seconds)
00:25:16 yin[m] is now known as zzz[m]
00:25:29 × myShoggoth quits (~myShoggot@97-120-89-117.ptld.qwest.net) (Ping timeout: 252 seconds)
00:25:36 × slack1256 quits (~slack1256@181.203.105.152) (Remote host closed the connection)
00:26:34 × moet quits (~moet@172.58.38.218) (Ping timeout: 244 seconds)
00:26:39 ddellacosta joins (~ddellacos@89.46.62.79)
00:27:01 dunham joins (~dunham@97-113-35-16.tukw.qwest.net)
00:28:20 fizbin joins (~fizbin@c-73-33-197-160.hsd1.nj.comcast.net)
00:30:06 × merijn quits (~merijn@83-160-49-249.ip.xs4all.nl) (Ping timeout: 248 seconds)
00:30:27 lavaman joins (~lavaman@98.38.249.169)
00:31:10 × ddellacosta quits (~ddellacos@89.46.62.79) (Ping timeout: 248 seconds)
00:31:28 × dunham quits (~dunham@97-113-35-16.tukw.qwest.net) (Ping timeout: 264 seconds)
00:31:33 hughjfchen joins (~hughjfche@117.136.31.244)
00:33:18 × favonia quits (~favonia@user/favonia) (Ping timeout: 248 seconds)
00:34:42 favonia joins (~favonia@user/favonia)
00:36:09 × Lycurgus quits (~juan@cpe-45-46-140-49.buffalo.res.rr.com) (Quit: Exeunt)
00:36:50 <tonyday> @sm, yes, I think I'm asking whether core tools have been thought about in the context of our new haskell-language-server pipeline. core package last updated 2009.
00:36:50 <lambdabot> Source not found. Where did you learn to type?
00:38:14 dy is now known as pissnet
00:38:20 pissnet is now known as dy
00:39:08 <tonyday> In light of the new cabal-install direction, I was more generally wondering if the same basic weakness exists in ghc itself? Like, core analysis suffers because we dont have an exact parser/printer.
00:39:39 × hughjfchen quits (~hughjfche@117.136.31.244) (Quit: Quit)
00:40:22 × xwx quits (~george@user/george) (Ping timeout: 264 seconds)
00:41:33 × ku quits (~ku@2601:280:c780:7ea0:bdb5:230d:40c:e48e) (Ping timeout: 272 seconds)
00:42:17 <sm_> tonyday: I think we do have that in latest ghc, or so ? ghc-exact-print or some such
00:42:40 ddellacosta joins (~ddellacos@86.106.121.73)
00:44:25 <tonyday> wow, ok
00:44:45 sheepduck joins (~sheepduck@2607:fea8:2a60:b700::5d55)
00:45:47 gzj joins (~GZJ0X@185.212.59.97.16clouds.com)
00:45:52 × sciencentistguy quits (~sciencent@191.101.209.9) (Ping timeout: 264 seconds)
00:47:10 × ddellacosta quits (~ddellacos@86.106.121.73) (Ping timeout: 248 seconds)
00:47:35 ddellacosta joins (~ddellacos@89.46.62.51)
00:48:48 allbery_b joins (~geekosaur@069-135-003-034.biz.spectrum.com)
00:48:53 × waleee quits (~waleee@2001:9b0:216:8200:d457:9189:7843:1dbd) (Quit: WeeChat 3.1)
00:50:55 <tonyday> The ghc-exactprint package does a round trip from text to haskell source code. I was looking for a roundtrip from text to core/systemF. And haskell source code to core.
00:51:03 hmmmas joins (~chenqisu1@183.217.202.217)
00:51:09 <sm_> ah, sorry
00:51:10 × geekosaur quits (~geekosaur@069-135-003-034.biz.spectrum.com) (Ping timeout: 264 seconds)
00:51:29 allbery_b is now known as geekosaur
00:51:58 × ddellacosta quits (~ddellacos@89.46.62.51) (Ping timeout: 248 seconds)
00:52:20 <tonyday> all good, thx, saves much running around.
00:53:02 × favonia quits (~favonia@user/favonia) (Ping timeout: 248 seconds)
00:54:22 favonia joins (~favonia@user/favonia)
00:54:25 Frosky joins (~Frosky@n220246094251.netvigator.com)
00:55:07 da39a3ee5e6b4b0d joins (~textual@2403:6200:8876:ee80:d5a4:34e6:41e0:8f20)
00:55:23 <geekosaur> I think core is too notional to have an exactprint variant. (that is, core doesn't actually exist as such, you can't read it in although you can print out some semblance of it)
00:56:21 xwx joins (~george@user/george)
00:57:49 Arimja_ joins (~Arimja@45-30-22-133.lightspeed.nsvltn.sbcglobal.net)
00:58:14 × chisui quits (~chisui@200116b8663f48001b1ac13283537396.dip.versatel-1u1.de) (Quit: Client closed)
00:58:15 <tonyday> https://gitlab.haskell.org/ghc/ghc/blob/master/compiler/GHC/Core.hs#L253
00:58:33 <monochrom> There has always been a wish for GHC to read core from text files.
00:58:36 <tonyday> looks pretty concrete here
00:58:43 <monochrom> That wish has been made for like 10 years.
00:59:04 × tA quits (~thorn@121.220.36.168) (Remote host closed the connection)
00:59:14 <monochrom> Generally when something has been on a wish list for that long, I say "don't hold your breath".
00:59:43 Arimja_ parts (~Arimja@45-30-22-133.lightspeed.nsvltn.sbcglobal.net) ()
00:59:46 <monochrom> Ample example is "an IRC plugin that renders LaTeX"
00:59:48 da39a3ee_ joins (~textual@2403:6200:8876:ee80:b:ace3:c82a:b0ba)
01:00:18 Lycurgus joins (~juan@cpe-45-46-140-49.buffalo.res.rr.com)
01:01:09 hughjfchen joins (~hughjfche@vmi556545.contaboserver.net)
01:02:16 × Lycurgus quits (~juan@cpe-45-46-140-49.buffalo.res.rr.com) (Client Quit)
01:03:18 × da39a3ee5e6b4b0d quits (~textual@2403:6200:8876:ee80:d5a4:34e6:41e0:8f20) (Ping timeout: 264 seconds)
01:03:47 ddellacosta joins (~ddellacos@86.106.121.110)
01:04:30 × winter quits (~winter@2603-6011-f901-9e5b-0000-0000-0000-08cf.res6.spectrum.com) (Ping timeout: 264 seconds)
01:04:54 × raehik quits (~raehik@cpc95906-rdng25-2-0-cust156.15-3.cable.virginm.net) (Ping timeout: 265 seconds)
01:06:13 × ddellacosta quits (~ddellacos@86.106.121.110) (Read error: Connection reset by peer)
01:08:52 waleee joins (~waleee@2001:9b0:216:8200:d457:9189:7843:1dbd)
01:09:45 × waleee quits (~waleee@2001:9b0:216:8200:d457:9189:7843:1dbd) (Client Quit)
01:10:10 zzz is now known as yin
01:10:14 yin is now known as zzz
01:10:56 waleee joins (~waleee@2001:9b0:216:8200:d457:9189:7843:1dbd)
01:11:08 hjulle[m] joins (~hjullemat@2001:470:69fc:105::1dd)
01:12:14 × Robin_Jadoul quits (~Robin_Jad@152.67.64.160) (Ping timeout: 252 seconds)
01:12:15 × Frosky quits (~Frosky@n220246094251.netvigator.com) (Quit: Client closed)
01:12:27 × sm_ quits (~username@plaintextaccounting/sm) (Remote host closed the connection)
01:15:07 × gzj quits (~GZJ0X@185.212.59.97.16clouds.com) (Remote host closed the connection)
01:15:27 gzj joins (~GZJ0X@185.212.59.97.16clouds.com)
01:16:12 raehik joins (~raehik@cpc95906-rdng25-2-0-cust156.15-3.cable.virginm.net)
01:17:57 × hughjfchen quits (~hughjfche@vmi556545.contaboserver.net) (Quit: Quit)
01:21:16 × raehik quits (~raehik@cpc95906-rdng25-2-0-cust156.15-3.cable.virginm.net) (Ping timeout: 264 seconds)
01:22:06 × onion_ quits (~zzz@user/yin) (Quit: onion_)
01:22:38 onion joins (~zzz@user/yin)
01:23:42 onion parts (~zzz@user/yin) ()
01:24:49 × ukari quits (~ukari@user/ukari) (Remote host closed the connection)
01:25:52 ukari joins (~ukari@user/ukari)
01:26:41 × meb quits (~Srain@88.97.97.244) (Remote host closed the connection)
01:27:05 × Aran quits (~Aran@port-92-194-80-170.dynamic.as20676.net) (Ping timeout: 252 seconds)
01:28:08 × lavaman quits (~lavaman@98.38.249.169) (Remote host closed the connection)
01:31:15 × dunj3 quits (~dunj3@2001:16b8:3025:3200:19d0:6936:8815:415c) (Remote host closed the connection)
01:32:43 winter joins (~winter@2603-6011-f901-9e5b-0000-0000-0000-08cf.res6.spectrum.com)
01:33:08 × waleee quits (~waleee@2001:9b0:216:8200:d457:9189:7843:1dbd) (Ping timeout: 252 seconds)
01:35:32 <zzz> c
01:37:15 Pixi joins (~Pixi@user/pixi)
01:37:59 ryantrinkle joins (~ryan@static-108-30-103-121.nycmny.fios.verizon.net)
01:38:59 × geekosaur quits (~geekosaur@069-135-003-034.biz.spectrum.com) (Quit: Leaving)
01:40:19 leeb joins (~leeb@2001:268:c04f:ba65:425b:d8ff:fe03:4cd)
01:40:41 zzz
01:41:27 Guest87 joins (~Guest87@189.197.116.11)
01:41:58 <zzz> sorry about that
01:42:08 × gzj quits (~GZJ0X@185.212.59.97.16clouds.com) (Read error: Connection reset by peer)
01:42:18 × favonia quits (~favonia@user/favonia) (Ping timeout: 264 seconds)
01:42:27 gzj joins (~GZJ0X@185.212.59.97.16clouds.com)
01:43:00 mnrmnaugh joins (~mnrmnaugh@pool-96-252-87-182.bstnma.fios.verizon.net)
01:43:12 favonia joins (~favonia@user/favonia)
01:43:20 × Guest87 quits (~Guest87@189.197.116.11) (Client Quit)
01:43:26 <zzz[m]> hey bridge is up! nice
01:47:54 × GIANTWORLDKEEPER quits (~pjetcetal@2.95.204.25) (Quit: EXIT)
01:48:07 GIANTWORLDKEEPER joins (~pjetcetal@2.95.204.25)
01:50:40 × pretty_dumm_guy quits (trottel@gateway/vpn/protonvpn/prettydummguy/x-88029655) (Quit: WeeChat 3.2-dev)
01:51:39 jaevanko joins (~jaevanko@2600:1700:1330:2bef:1c80:6870:d96d:577b)
01:52:12 Aran joins (~Aran@port-92-194-80-170.dynamic.as20676.net)
01:54:08 × gzj quits (~GZJ0X@185.212.59.97.16clouds.com) (Remote host closed the connection)
01:54:27 gzj joins (~GZJ0X@185.212.59.97.16clouds.com)
01:54:36 mrufrufin joins (~dxk@108.235.170.90)
01:55:01 dunham joins (~dunham@97-113-35-16.tukw.qwest.net)
01:55:05 × Teacup quits (~teacup@user/teacup) (Remote host closed the connection)
01:56:28 juhp joins (~juhp@128.106.188.199)
01:56:34 Teacup joins (~teacup@user/teacup)
01:56:43 Lycurgus joins (~juan@cpe-45-46-140-49.buffalo.res.rr.com)
01:57:50 × ryantrinkle quits (~ryan@static-108-30-103-121.nycmny.fios.verizon.net) (Ping timeout: 264 seconds)
01:58:00 ksqsf joins (~textual@67.209.186.120.16clouds.com)
01:58:48 lavaman joins (~lavaman@98.38.249.169)
01:59:06 × xff0x quits (~xff0x@2001:1a81:53be:400:57c4:638d:15c6:fc7a) (Ping timeout: 264 seconds)
02:00:25 xff0x joins (~xff0x@2001:1a81:53e0:500:c41f:7cc:7b24:9813)
02:01:25 × ksqsf quits (~textual@67.209.186.120.16clouds.com) (Remote host closed the connection)
02:03:23 × lavaman quits (~lavaman@98.38.249.169) (Ping timeout: 265 seconds)
02:03:58 × favonia quits (~favonia@user/favonia) (Ping timeout: 248 seconds)
02:04:17 favonia joins (~favonia@user/favonia)
02:05:54 ksqsf joins (~textual@67.209.186.120.16clouds.com)
02:06:10 × oxide quits (~lambda@user/oxide) (Ping timeout: 264 seconds)
02:07:38 oxide joins (~lambda@user/oxide)
02:08:51 × spirgel quits (spirgel@gateway/vpn/protonvpn/spirgel) ()
02:09:51 × ksqsf quits (~textual@67.209.186.120.16clouds.com) (Remote host closed the connection)
02:10:22 × Jeanne-Kamikaze quits (~Jeanne-Ka@192.252.212.7) (Ping timeout: 248 seconds)
02:10:54 × Aran quits (~Aran@port-92-194-80-170.dynamic.as20676.net) (Ping timeout: 248 seconds)
02:11:05 × jassob quits (~jassob@korrob.vth.sgsnet.se) (Ping timeout: 252 seconds)
02:11:59 jassob joins (~jassob@korrob.vth.sgsnet.se)
02:14:17 ksqsf joins (~textual@67.209.186.120.16clouds.com)
02:15:06 × ukari quits (~ukari@user/ukari) (Remote host closed the connection)
02:15:10 × winter quits (~winter@2603-6011-f901-9e5b-0000-0000-0000-08cf.res6.spectrum.com) (Ping timeout: 248 seconds)
02:15:44 ukari joins (~ukari@user/ukari)
02:15:54 finn_elija is now known as Guest8538
02:15:54 FinnElija joins (~finn_elij@user/finn-elija/x-0085643)
02:15:54 × Guest8538 quits (~finn_elij@user/finn-elija/x-0085643) (Killed (strontium.libera.chat (Nickname regained by services)))
02:15:54 FinnElija is now known as finn_elija
02:17:53 × ksqsf quits (~textual@67.209.186.120.16clouds.com) (Remote host closed the connection)
02:19:51 <tonyday> or just maybe, core is expressed using the same types as haskell code, and we can already do it but just haven't tried.
02:21:14 × xwx quits (~george@user/george) (Ping timeout: 264 seconds)
02:22:10 ksqsf joins (~textual@67.209.186.120.16clouds.com)
02:23:11 xwx joins (~george@user/george)
02:24:11 × ksqsf quits (~textual@67.209.186.120.16clouds.com) (Remote host closed the connection)
02:24:47 ksqsf joins (~textual@67.209.186.120.16clouds.com)
02:25:48 × ksqsf quits (~textual@67.209.186.120.16clouds.com) (Remote host closed the connection)
02:26:34 merijn joins (~merijn@83-160-49-249.ip.xs4all.nl)
02:27:21 ksqsf joins (~textual@67.209.186.120.16clouds.com)
02:28:21 × ksqsf quits (~textual@67.209.186.120.16clouds.com) (Remote host closed the connection)
02:29:08 hiruji` joins (~hiruji@2606:6080:1001:18:8d41:9604:d435:36b6)
02:29:29 × fizbin quits (~fizbin@c-73-33-197-160.hsd1.nj.comcast.net) (Remote host closed the connection)
02:29:34 × hiruji quits (~hiruji@user/hiruji) (Ping timeout: 264 seconds)
02:29:54 ksqsf joins (~textual@67.209.186.120.16clouds.com)
02:30:38 ddellacosta joins (~ddellacos@89.46.62.78)
02:31:38 × ksqsf quits (~textual@67.209.186.120.16clouds.com) (Remote host closed the connection)
02:32:29 ksqsf joins (~textual@67.209.186.120.16clouds.com)
02:33:34 × ksqsf quits (~textual@67.209.186.120.16clouds.com) (Remote host closed the connection)
02:33:38 pe200012 joins (~pe200012@119.131.208.84)
02:33:46 × pe200012_ quits (~pe200012@218.107.17.245) (Ping timeout: 264 seconds)
02:34:29 benin7 joins (~benin@183.82.177.19)
02:34:48 × benin quits (~benin@183.82.176.197) (Ping timeout: 265 seconds)
02:34:48 benin7 is now known as benin
02:34:54 × ddellacosta quits (~ddellacos@89.46.62.78) (Ping timeout: 248 seconds)
02:34:54 × favonia quits (~favonia@user/favonia) (Ping timeout: 248 seconds)
02:35:03 ksqsf joins (~textual@67.209.186.120.16clouds.com)
02:35:17 × td_ quits (~td@94.134.91.249) (Ping timeout: 252 seconds)
02:36:05 favonia joins (~favonia@user/favonia)
02:37:05 × ksqsf quits (~textual@67.209.186.120.16clouds.com) (Remote host closed the connection)
02:37:11 td_ joins (~td@muedsl-82-207-238-082.citykom.de)
02:37:16 onion joins (~zzz@user/yin)
02:37:36 ksqsf joins (~textual@67.209.186.120.16clouds.com)
02:38:02 × jaevanko quits (~jaevanko@2600:1700:1330:2bef:1c80:6870:d96d:577b) (Quit: Leaving)
02:39:02 × ksqsf quits (~textual@67.209.186.120.16clouds.com) (Remote host closed the connection)
02:40:10 ksqsf joins (~textual@67.209.186.120.16clouds.com)
02:40:22 × wroathe quits (~wroathe@c-68-54-25-135.hsd1.mn.comcast.net) (Ping timeout: 264 seconds)
02:41:22 × ksqsf quits (~textual@67.209.186.120.16clouds.com) (Remote host closed the connection)
02:42:45 ksqsf joins (~textual@67.209.186.120.16clouds.com)
02:44:24 × ksqsf quits (~textual@67.209.186.120.16clouds.com) (Remote host closed the connection)
02:45:09 berberman joins (~berberman@user/berberman)
02:45:22 ksqsf joins (~textual@67.209.186.120.16clouds.com)
02:45:36 fizbin joins (~fizbin@c-73-33-197-160.hsd1.nj.comcast.net)
02:45:51 × hmmmas quits (~chenqisu1@183.217.202.217) (Quit: Leaving.)
02:46:08 hmmmas joins (~chenqisu1@183.217.202.217)
02:46:27 × fizbin quits (~fizbin@c-73-33-197-160.hsd1.nj.comcast.net) (Remote host closed the connection)
02:46:30 × berberman_ quits (~berberman@user/berberman) (Ping timeout: 264 seconds)
02:47:09 × Lycurgus quits (~juan@cpe-45-46-140-49.buffalo.res.rr.com) (Quit: Exeunt)
02:48:14 × Brumaire quits (~quassel@81-64-14-121.rev.numericable.fr) (Remote host closed the connection)
02:48:56 dyeplexer joins (~dyeplexer@user/dyeplexer)
02:49:00 winter joins (~winter@2603-6011-f901-9e5b-0000-0000-0000-08cf.res6.spectrum.com)
02:50:28 × ksqsf quits (~textual@67.209.186.120.16clouds.com) (Remote host closed the connection)
02:51:04 lavaman joins (~lavaman@98.38.249.169)
02:51:56 wroathe joins (~wroathe@c-68-54-25-135.hsd1.mn.comcast.net)
02:52:53 × machinedgod quits (~machinedg@135-23-192-217.cpe.pppoe.ca) (Ping timeout: 252 seconds)
02:54:46 ksqsf joins (~textual@67.209.186.120.16clouds.com)
02:55:47 × ksqsf quits (~textual@67.209.186.120.16clouds.com) (Remote host closed the connection)
02:56:40 × wroathe quits (~wroathe@c-68-54-25-135.hsd1.mn.comcast.net) (Ping timeout: 264 seconds)
02:57:19 ksqsf joins (~textual@67.209.186.120.16clouds.com)
02:57:55 jaevanko joins (~jaevanko@2600:1700:1330:2bef:1c80:6870:d96d:577b)
02:58:55 × ksqsf quits (~textual@67.209.186.120.16clouds.com) (Remote host closed the connection)
02:59:52 ksqsf joins (~textual@67.209.186.120.16clouds.com)
03:00:54 × ksqsf quits (~textual@67.209.186.120.16clouds.com) (Remote host closed the connection)
03:01:28 × merijn quits (~merijn@83-160-49-249.ip.xs4all.nl) (Ping timeout: 264 seconds)
03:02:25 ksqsf joins (~textual@67.209.186.120.16clouds.com)
03:03:27 × ksqsf quits (~textual@67.209.186.120.16clouds.com) (Remote host closed the connection)
03:04:07 sa1 joins (uid7690@id-7690.charlton.irccloud.com)
03:04:58 ksqsf joins (~textual@67.209.186.120.16clouds.com)
03:05:44 × altern quits (~Sergii@altern.corbina.com.ua) (Ping timeout: 265 seconds)
03:06:44 × ksqsf quits (~textual@67.209.186.120.16clouds.com) (Remote host closed the connection)
03:13:27 Bartosz joins (~textual@50.35.208.124)
03:14:38 × xwx quits (~george@user/george) (Ping timeout: 264 seconds)
03:15:10 × jao quits (~jao@cpc103048-sgyl39-2-0-cust502.18-2.cable.virginm.net) (Ping timeout: 264 seconds)
03:16:25 × jaevanko quits (~jaevanko@2600:1700:1330:2bef:1c80:6870:d96d:577b) (Quit: Leaving)
03:17:49 × Bartosz quits (~textual@50.35.208.124) (Client Quit)
03:19:59 fizbin joins (~fizbin@c-73-33-197-160.hsd1.nj.comcast.net)
03:20:39 Lord_of_Life_ joins (~Lord@user/lord-of-life/x-2819915)
03:21:07 × gzj quits (~GZJ0X@185.212.59.97.16clouds.com) (Remote host closed the connection)
03:21:27 gzj joins (~GZJ0X@185.212.59.97.16clouds.com)
03:22:15 otto_s_ joins (~user@p5de2fa14.dip0.t-ipconnect.de)
03:22:58 × Lord_of_Life quits (~Lord@user/lord-of-life/x-2819915) (Ping timeout: 264 seconds)
03:22:58 Lord_of_Life_ is now known as Lord_of_Life
03:23:18 × natechan quits (~nate@108-233-125-227.lightspeed.sntcca.sbcglobal.net) (Quit: WeeChat 2.9)
03:23:47 × GIANTWORLDKEEPER quits (~pjetcetal@2.95.204.25) (Ping timeout: 244 seconds)
03:23:53 × favonia quits (~favonia@user/favonia) (Ping timeout: 272 seconds)
03:24:50 × fizbin quits (~fizbin@c-73-33-197-160.hsd1.nj.comcast.net) (Ping timeout: 264 seconds)
03:25:14 favonia joins (~favonia@user/favonia)
03:25:20 × otto_s quits (~user@p5de2f722.dip0.t-ipconnect.de) (Ping timeout: 244 seconds)
03:26:12 × lavaman quits (~lavaman@98.38.249.169) ()
03:26:34 × winter quits (~winter@2603-6011-f901-9e5b-0000-0000-0000-08cf.res6.spectrum.com) (Ping timeout: 264 seconds)
03:31:49 lavaman joins (~lavaman@98.38.249.169)
03:33:44 ZucchiniZe joins (~ajb@cupid.whatbox.ca)
03:40:58 moet joins (~moet@172.58.35.21)
03:47:01 um joins (ak84ku0ger@user/um)
03:47:06 um parts (ak84ku0ger@user/um) ()
03:47:22 Bartosz joins (~textual@50.35.208.124)
03:48:24 × dy quits (~dy@user/dy) (Quit: Textual IRC Client: www.textualapp.com)
03:48:45 dy joins (~dy@user/dy)
03:49:02 ksqsf joins (~textual@67.209.186.120.16clouds.com)
03:50:20 × ksqsf quits (~textual@67.209.186.120.16clouds.com) (Remote host closed the connection)
03:50:41 × oxide quits (~lambda@user/oxide) (Read error: Connection reset by peer)
03:51:36 ksqsf joins (~textual@67.209.186.120.16clouds.com)
03:53:13 hughjfchen joins (~hughjfche@vmi556545.contaboserver.net)
03:53:29 × smitop quits (uid328768@user/smitop) (Quit: Connection closed for inactivity)
03:54:08 ZucchiniZe is now known as ajb
03:54:11 × hughjfchen quits (~hughjfche@vmi556545.contaboserver.net) (Client Quit)
03:55:11 × ksqsf quits (~textual@67.209.186.120.16clouds.com) (Remote host closed the connection)
03:56:20 × Bartosz quits (~textual@50.35.208.124) (Quit: My MacBook has gone to sleep. ZZZzzz…)
03:57:29 Bartosz joins (~textual@50.35.208.124)
03:57:42 holy_ joins (~h01y_b4z0@2400:adc1:178:c800:9e45:76a9:57f2:1665)
03:57:44 verybasic[m] joins (~verybasic@2001:470:69fc:105::c7)
03:57:58 maerwald[m] joins (~maerwaldm@2001:470:69fc:105::1ee)
03:59:32 ksqsf joins (~textual@67.209.186.120.16clouds.com)
04:01:24 × ksqsf quits (~textual@67.209.186.120.16clouds.com) (Remote host closed the connection)
04:02:25 ksqsf joins (~textual@67.209.186.120.16clouds.com)
04:03:16 twitch joins (~textual@pool-71-246-146-102.rich.east.verizon.net)
04:03:59 <twitch> hey, I'm trying to learn to use pattern matching, I'm defining a function to return me the initials given a first and last name
04:04:00 <twitch> initials :: String -> String -> String
04:04:00 <twitch> initials (f:_) (l:_) = f ++ "." ++ l ++ "."
04:04:25 <twitch> Couldn't match expected type ‘[Char]’ with actual type ‘Char’
04:04:43 <twitch> any help?
04:05:05 <Axman6> f and l are Char
04:05:31 <twitch> so maybe [f] and [l]?
04:05:35 <davean> Strings are made of chars
04:06:12 <Axman6> f : "." ++ l : "." would probably work
04:06:25 <maerwald[m]> sm: hi
04:06:33 <sm[m]> hey maerwald
04:06:45 × minoru_shiraeesh quits (~shiraeesh@5.101.59.63) (Ping timeout: 272 seconds)
04:07:22 <twitch> that totally worked
04:07:43 <twitch> thanks! is it because the ++ operator doesn't work with chars, only strings?
04:08:23 <twitch> na, can't be, just tried to use it with chars, it worked.
04:08:46 <twitch> OHHH "" is for strings, '' is for chars
04:08:57 <twitch> aha! ok, sorry for filling up the chat, thanks for the help!
04:09:03 altern joins (~Sergii@altern.corbina.com.ua)
04:09:10 × tonyday quits (~user@202-65-93-249.ip4.superloop.com) (Ping timeout: 264 seconds)
04:09:10 <Axman6> All good, we're here to help
04:09:21 <twitch> :)
04:10:21 × ksqsf quits (~textual@67.209.186.120.16clouds.com) (Remote host closed the connection)
04:10:30 × favonia quits (~favonia@user/favonia) (Ping timeout: 264 seconds)
04:10:53 favonia joins (~favonia@user/favonia)
04:12:31 <Axman6> twitch: are you sure you understand why that code works thought?
04:12:56 ksqsf joins (~textual@67.209.186.120.16clouds.com)
04:13:00 qbt joins (~edun@user/edun)
04:13:03 <twitch> I just fiddled around with it, and I think I do. the : operator adds elements to lists, creating a string
04:13:09 <twitch> the ++ operator adds strings together
04:13:21 × bilegeek quits (~bilegeek@2600:1008:b01a:69cf:a58b:76f2:71:1386) (Quit: Leaving)
04:13:54 <sm[m]> that's it
04:14:33 <twitch> the pattern matching in the arguments pops the heads off the input strings, throws away the tails, then the heads are added to the periods, creating a string, which are added together with the ++ operators
04:15:38 <Axman6> And you're happy with the fact that (:) is one of the two constructors for lists, which has type a -> [a] -> [a]?
04:16:38 × ksqsf quits (~textual@67.209.186.120.16clouds.com) (Remote host closed the connection)
04:17:00 qwerty509 joins (~qwerty259@136-27-11-121.cab.webpass.net)
04:17:00 <twitch> ah, that leads me to thinking that if I had typed :t (:) in ghci I'd have figured it out
04:17:14 ryantrinkle joins (~ryan@2600:1017:b40b:f05b:897c:6b76:a986:fb80)
04:18:01 denis_ joins (~denis@212.193.135.213)
04:18:38 <twitch> but yeah, I think I am happy with that fact. it accepts a type variable a, and a list of a, and returns a list of a + the second argument (list of a)
04:18:54 shiraeeshi joins (~shiraeesh@109.166.57.75)
04:19:01 <twitch> (that explanation also makes me understand why the notation is important, lol)
04:19:19 ksqsf joins (~textual@67.209.186.120.16clouds.com)
04:19:58 × favonia quits (~favonia@user/favonia) (Ping timeout: 248 seconds)
04:20:28 <twitch> gotta say, I'm loving haskell so far, coming from python/ruby
04:21:13 favonia joins (~favonia@user/favonia)
04:21:16 <twitch> what's the other constructor for lists, if you don't mind me asking?
04:22:25 <shachaf> [], the empty list
04:22:56 <shachaf> Lists are kind of a weird special case, but even in this case you can use ":i []" in ghci to get information.
04:23:31 <twitch> did not know about :i, thanks for that
04:24:24 <maerwald[m]> sm: have you seen https://gist.github.com/prawnsalad/4ca20da6c2295ddb06c1646791c61953
04:24:41 <sm[m]> I did
04:25:41 × ksqsf quits (~textual@67.209.186.120.16clouds.com) (Remote host closed the connection)
04:26:10 <sm[m]> that was a little before the purge, and I thought it was calming things down just a smidge
04:27:10 × qwerty509 quits (~qwerty259@136-27-11-121.cab.webpass.net) (Quit: Leaving)
04:27:17 <maerwald[m]> A good argument for OFTC though
04:27:27 kiweun joins (~sheepduck@2607:fea8:2a60:b700::5d55)
04:27:54 × sheepduck quits (~sheepduck@2607:fea8:2a60:b700::5d55) (Ping timeout: 264 seconds)
04:27:57 <twitch> seems like all that is craziness.
04:28:32 <twitch> the whole drama all around, that is
04:28:58 × favonia quits (~favonia@user/favonia) (Ping timeout: 264 seconds)
04:29:01 <sm[m]> it is. But really it's turning out well.
04:29:15 <twitch> well that's good to hear
04:29:39 <maerwald[m]> Right, which is why choosing a network that isn't involved with either party might have been a better migration path, but that's too late now
04:29:52 favonia joins (~favonia@user/favonia)
04:30:11 ksqsf joins (~textual@67.209.186.120.16clouds.com)
04:30:33 <sm[m]> maerwald, I think if you read a bit more you'll get the impression some bad elements in freenode staff are gone now
04:31:13 <sm[m]> the ones I have interacted with have always seemed good folk.. such as our own glguy
04:31:42 wallymathieu joins (~wallymath@81-234-151-21-no94.tbcn.telia.com)
04:31:46 Gurkenglas joins (~Gurkengla@dslb-088-075-022-175.088.075.pools.vodafone-ip.de)
04:31:49 ddellacosta joins (~ddellacos@89.46.62.52)
04:31:50 <sm[m]> "bad elements", excuse me, just regurgitating the gossip
04:33:02 <sm[m]> I think matrix is the future, but the excellent migration path libera has provided has pulled me back a little towards IRC
04:33:44 <sm[m]> maerwald and hey OFTC is plan D :)
04:34:04 <sm[m]> now we know how to do transitions
04:34:51 <maerwald[m]> As long as it's not slack lol (i'm looking at you, haskell foundation)
04:35:09 <sm[m]> darn straight
04:35:23 <sm[m]> but we'll bridge them in
04:36:17 × ddellacosta quits (~ddellacos@89.46.62.52) (Ping timeout: 252 seconds)
04:36:28 incertia joins (~incertia@d4-50-26-103.nap.wideopenwest.com)
04:36:53 <maerwald[m]> It seems some of the older folks (excuse me) prefer slack?
04:37:08 × gzj quits (~GZJ0X@185.212.59.97.16clouds.com) (Remote host closed the connection)
04:37:27 gzj joins (~GZJ0X@185.212.59.97.16clouds.com)
04:38:27 × ksqsf quits (~textual@67.209.186.120.16clouds.com) (Remote host closed the connection)
04:41:12 oxide joins (~lambda@user/oxide)
04:41:44 <sm[m]> people with jobs prefer slack ? something like that :)
04:41:58 <sm[m]> I think in companies, it's the form of IRC that's allowed, so people are used to it
04:42:56 ksqsf joins (~textual@67.209.186.120.16clouds.com)
04:43:29 <maerwald[m]> That's exactly why i don't like slack, because it reminds me of hostile work environments ;)
04:44:29 × ksqsf quits (~textual@67.209.186.120.16clouds.com) (Remote host closed the connection)
04:44:33 <glguy> yay, I'm good folk!
04:44:55 <sm[m]> yay glguy!!
04:45:13 <Axman6> glguy has alwats been good folk
04:45:29 ksqsf joins (~textual@67.209.186.120.16clouds.com)
04:46:00 <sm[m]> yup
04:46:07 <Axman6> always too
04:46:13 × wagle quits (~wagle@quassel.wagle.io) (Ping timeout: 272 seconds)
04:47:15 <int-e> @botsnack
04:47:15 <lambdabot> :)
04:48:05 glguy hopes for the best:
04:48:06 <glguy> @quote glguy
04:48:06 <lambdabot> glguy says: libraries@ serves an important role of stopping changes from being introduced to the libraries
04:48:26 <glguy> That one's probably going to annoy maerwald[m]
04:49:51 × ksqsf quits (~textual@67.209.186.120.16clouds.com) (Remote host closed the connection)
04:50:24 Guest42 joins (~Guest42@172.83.64.68)
04:50:26 × bitmapper quits (uid464869@id-464869.tooting.irccloud.com) (Quit: Connection closed for inactivity)
04:50:30 simendsjo joins (~user@cm-84.211.91.241.getinternet.no)
04:50:48 × Guest42 quits (~Guest42@172.83.64.68) (Client Quit)
04:50:54 × dyeplexer quits (~dyeplexer@user/dyeplexer) (Ping timeout: 248 seconds)
04:50:59 <int-e> it's a good quote because it's mostly true
04:51:34 × alx741 quits (~alx741@186.178.109.84) (Quit: alx741)
04:51:58 × xff0x quits (~xff0x@2001:1a81:53e0:500:c41f:7cc:7b24:9813) (Ping timeout: 248 seconds)
04:52:02 <maerwald[m]> Nah, MLs are ok
04:52:28 × bontaq quits (~user@ool-18e47f8d.dyn.optonline.net) (Ping timeout: 264 seconds)
04:52:36 xff0x joins (~xff0x@2001:1a81:53e0:500:fcbd:71bd:7cab:f1d4)
04:52:38 × gambpang quits (~ian@207.181.230.156) (Remote host closed the connection)
04:53:52 ksqsf joins (~textual@67.209.186.120.16clouds.com)
04:54:53 × ksqsf quits (~textual@67.209.186.120.16clouds.com) (Remote host closed the connection)
04:55:20 wagle joins (~wagle@quassel.wagle.io)
04:56:26 ksqsf joins (~textual@67.209.186.120.16clouds.com)
04:57:11 × holy_ quits (~h01y_b4z0@2400:adc1:178:c800:9e45:76a9:57f2:1665) (Ping timeout: 252 seconds)
04:57:13 merijn joins (~merijn@83-160-49-249.ip.xs4all.nl)
04:57:45 <sm[m]> @quote maerwald
04:57:45 <lambdabot> maerwald says: what do you mean it does not work
04:58:02 <sm[m]> 😄
04:58:07 <maerwald[m]> Lol
04:59:31 × ksqsf quits (~textual@67.209.186.120.16clouds.com) (Remote host closed the connection)
05:00:03 <maerwald[m]> I'm guessing that was a mac user trying to figure out PATH
05:00:09 <maerwald[m]> Soon there will be windows users trying to figure out mingw
05:01:28 × twitch quits (~textual@pool-71-246-146-102.rich.east.verizon.net) (Quit: Textual IRC Client: www.textualapp.com)
05:01:57 m_shiraeeshi joins (~shiraeesh@46.34.207.196)
05:03:13 minoru_shiraeesh joins (~shiraeesh@109.166.59.28)
05:03:39 dyeplexer joins (~dyeplexer@user/dyeplexer)
05:04:10 ksqsf joins (~textual@67.209.186.120.16clouds.com)
05:04:26 × shiraeeshi quits (~shiraeesh@109.166.57.75) (Ping timeout: 264 seconds)
05:05:53 × ksqsf quits (~textual@67.209.186.120.16clouds.com) (Remote host closed the connection)
05:06:02 <Axman6> I feel like I'm missing half a conversation here
05:06:22 × m_shiraeeshi quits (~shiraeesh@46.34.207.196) (Ping timeout: 248 seconds)
05:06:30 <siraben> @quote siraben
05:06:30 <lambdabot> No quotes match. Listen, broccoli brains, I don't have time to listen to this trash.
05:06:42 <siraben> lol
05:06:45 ksqsf joins (~textual@67.209.186.120.16clouds.com)
05:07:05 × y04nn quits (~y04nn@185.204.1.208) (Ping timeout: 252 seconds)
05:07:22 v01d4lph4 joins (~v01d4lph4@user/v01d4lph4)
05:08:12 m_shiraeeshi joins (~shiraeesh@109.166.59.23)
05:08:30 <Axman6> does lambdabot have the quote history from freenode?
05:10:12 × ksqsf quits (~textual@67.209.186.120.16clouds.com) (Remote host closed the connection)
05:10:16 bfrk joins (~Thunderbi@200116b84508c2004c8614311807bd60.dip.versatel-1u1.de)
05:10:30 <maerwald[m]> You think they purged it too?
05:11:02 × minoru_shiraeesh quits (~shiraeesh@109.166.59.28) (Ping timeout: 264 seconds)
05:11:12 gambpang joins (~ian@207.181.230.156)
05:11:17 × gambpang quits (~ian@207.181.230.156) (Remote host closed the connection)
05:12:02 hydroxonium joins (uid500654@id-500654.stonehaven.irccloud.com)
05:12:07 <Axman6> no, just not sure what happened during the move - I assume it's the same instance of lambdabot as before
05:13:55 <jackdk> @quote jackdk
05:13:56 <lambdabot> jackdk says: <jchook> aplainzetakind: if you use Linux look into the "compose" key <jackdk> jchook: instructions unclear, nose stuck in keyboard
05:14:06 <jackdk> that was a freenode-era quote
05:14:48 <Axman6> \o/
05:15:58 <sm[m]> Axman6 it's a good question. I have a repo with instructions for copying that, but didn't have time for it
05:16:28 <sm[m]> but it's quoting maerwald who just got here so I guess it has the dub
05:16:36 <sm[m]> DB
05:17:08 <sm[m]> I forgot who is the lambda tamer
05:17:16 × lbseale quits (~lbseale@ip72-194-54-201.sb.sd.cox.net) (Read error: Connection reset by peer)
05:17:32 × favonia quits (~favonia@user/favonia) (Ping timeout: 252 seconds)
05:18:28 × xkapastel quits (uid17782@id-17782.tinside.irccloud.com) (Quit: Connection closed for inactivity)
05:18:29 <sm[m]> doh, what jack said. :)
05:18:57 <int-e> Axman6: Ah, the quotes. I forgot about the quotes
05:19:18 <int-e> Axman6: I'll try to merge them, but not straight away
05:19:50 favonia joins (~favonia@user/favonia)
05:20:13 <int-e> (please remind me if it's still not done after the weekend)
05:20:56 <int-e> Axman6: and it's not the same instance... I had two instances temporarily
05:20:59 <Axman6> Can we add a @botwrangler command to remind people who to pester? I can never remember who to bug :(
05:21:27 <Axman6> fair enough - as long as it's the same person that's good neough for me
05:21:30 fizbin joins (~fizbin@c-73-33-197-160.hsd1.nj.comcast.net)
05:21:44 <int-e> And I deliberately started a fresh state with tell and seen states in mind
05:22:05 <Axman6> ah good point
05:22:19 <Axman6> Man, I'm so not used to thinking about state - state is hard
05:23:20 × fabfianda quits (~fabfianda@mob-5-90-250-59.net.vodafone.it) (Read error: Connection reset by peer)
05:23:52 <sm[m]> int-e++
05:24:14 Tomurb joins (~tom@158.194.92.121)
05:24:15 <sm[m]> @quote int-e
05:24:15 <lambdabot> int-e says: safelyDiscardIO :: IO a -> (); safelyDiscardIO _ = ()
05:24:30 × Bartosz quits (~textual@50.35.208.124) (Quit: My MacBook has gone to sleep. ZZZzzz…)
05:25:55 × z0k quits (~z0k@101.50.108.132) (Ping timeout: 272 seconds)
05:25:58 × fizbin quits (~fizbin@c-73-33-197-160.hsd1.nj.comcast.net) (Ping timeout: 264 seconds)
05:26:40 tonyday joins (~user@202-65-93-249.ip4.superloop.com)
05:27:17 z0k joins (~z0k@101.50.108.132)
05:28:13 <int-e> also if you have channels that lack lambdabot, please let me know. the channel list is all new as well and currently quite noticably shorter than before.
05:28:26 × m_shiraeeshi quits (~shiraeesh@109.166.59.23) (Ping timeout: 264 seconds)
05:30:54 × favonia quits (~favonia@user/favonia) (Ping timeout: 248 seconds)
05:31:42 <int-e> Oh I guess @where is also lacking infos.
05:32:04 <int-e> @where owner
05:32:04 <lambdabot> int-e
05:32:13 favonia joins (~favonia@user/favonia)
05:32:27 × ubikium quits (~ubikium@113x43x248x70.ap113.ftth.arteria-hikari.net) (Ping timeout: 272 seconds)
05:32:41 <int-e> sm[m]: ^^that entry existed :)
05:32:42 × merijn quits (~merijn@83-160-49-249.ip.xs4all.nl) (Ping timeout: 264 seconds)
05:33:01 <sm[m]> @where HTAC
05:33:01 <lambdabot> "Haskell Tutorial and Cookbook" by Mark Watson in 2017-09-04 at <https://leanpub.com/haskell-cookbook>
05:33:39 ubikium joins (~ubikium@2400:2200:4f6:b3a0:709f:dfb2:589d:e634)
05:35:16 verybasic[m] parts (~verybasic@2001:470:69fc:105::c7) ()
05:36:21 × Kevin578 quits (~Kevin578@pool-98-110-163-110.bstnma.fios.verizon.net) (Remote host closed the connection)
05:36:40 <int-e> (So I will merge @where data too.)
05:36:46 y04nn joins (~y04nn@185.204.1.208)
05:41:15 Bartosz joins (~textual@50.35.215.151)
05:42:14 × dunham quits (~dunham@97-113-35-16.tukw.qwest.net) (Ping timeout: 264 seconds)
05:42:37 rbernon[m] joins (~rbernonma@2001:470:69fc:105::1fd)
05:43:58 × Morrow quits (~MorrowM_@bzq-110-168-31-106.red.bezeqint.net) (Ping timeout: 264 seconds)
05:44:26 rbernon[m] parts (~rbernonma@2001:470:69fc:105::1fd) ()
05:45:05 × ubikium quits (~ubikium@2400:2200:4f6:b3a0:709f:dfb2:589d:e634) (Read error: Connection reset by peer)
05:45:20 ubikium joins (~ubikium@113x43x248x70.ap113.ftth.arteria-hikari.net)
05:48:11 coot joins (~coot@37.30.49.19.nat.umts.dynamic.t-mobile.pl)
05:51:21 ksqsf joins (~textual@67.209.186.120.16clouds.com)
05:51:38 dut joins (~dut@user/dut)
05:54:26 × ksqsf quits (~textual@67.209.186.120.16clouds.com) (Remote host closed the connection)
05:55:53 × da39a3ee_ quits (~textual@2403:6200:8876:ee80:b:ace3:c82a:b0ba) (Quit: My MacBook has gone to sleep. ZZZzzz…)
05:56:43 ksqsf joins (~textual@67.209.186.120.16clouds.com)
05:57:26 bhrgunatha joins (~bhrgunath@2001-b011-8011-6163-fde3-9a54-1125-48fe.dynamic-ip6.hinet.net)
05:57:49 da39a3ee5e6b4b0d joins (~textual@2403:6200:8876:ee80:b:ace3:c82a:b0ba)
05:57:56 × da39a3ee5e6b4b0d quits (~textual@2403:6200:8876:ee80:b:ace3:c82a:b0ba) (Client Quit)
05:59:48 × ksqsf quits (~textual@67.209.186.120.16clouds.com) (Remote host closed the connection)
06:00:13 bhrgunatha parts (~bhrgunath@2001-b011-8011-6163-fde3-9a54-1125-48fe.dynamic-ip6.hinet.net) ()
06:00:44 × v01d4lph4 quits (~v01d4lph4@user/v01d4lph4) (Remote host closed the connection)
06:01:16 × img quits (~img@2405:6580:b1c0:2500:94ef:e7f9:57a3:5892) (Quit: ZNC 1.8.1 - https://znc.in)
06:02:10 × tonyday quits (~user@202-65-93-249.ip4.superloop.com) (Remote host closed the connection)
06:02:19 ksqsf joins (~textual@67.209.186.120.16clouds.com)
06:02:55 × moet quits (~moet@172.58.35.21) (Ping timeout: 244 seconds)
06:03:31 da39a3ee5e6b4b0d joins (~textual@mx-ll-171.6.242-82.dynamic.3bb.co.th)
06:03:55 _ht joins (~quassel@82-169-194-8.biz.kpn.net)
06:05:25 × ksqsf quits (~textual@67.209.186.120.16clouds.com) (Remote host closed the connection)
06:07:26 × hmmmas quits (~chenqisu1@183.217.202.217) (Quit: Leaving.)
06:08:25 dunham joins (~dunham@97-113-35-16.tukw.qwest.net)
06:09:02 × yuglg quits (x@libera/staff/glguy) (Quit: don't need a mobile client)
06:09:44 ksqsf joins (~textual@67.209.186.120.16clouds.com)
06:10:32 wonko joins (~wjc@62.115.229.50)
06:11:12 chaosite joins (~chaosite@user/chaosite)
06:11:29 imdoor joins (~imdoor@balticom-142-78-50.balticom.lv)
06:12:30 × dunham quits (~dunham@97-113-35-16.tukw.qwest.net) (Ping timeout: 248 seconds)
06:13:01 img joins (~img@2405:6580:b1c0:2500:4534:f9f4:a819:a3c7)
06:14:01 × ksqsf quits (~textual@67.209.186.120.16clouds.com) (Remote host closed the connection)
06:15:36 happycorsair[m] joins (~happycors@2001:470:69fc:105::205)
06:16:32 ksqsf joins (~textual@67.209.186.120.16clouds.com)
06:17:54 × ksqsf quits (~textual@67.209.186.120.16clouds.com) (Remote host closed the connection)
06:18:34 happycorsair[m] parts (~happycors@2001:470:69fc:105::205) ()
06:19:00 lu joins (~lu@user/lu)
06:19:06 ksqsf joins (~textual@67.209.186.120.16clouds.com)
06:20:06 × ksqsf quits (~textual@67.209.186.120.16clouds.com) (Remote host closed the connection)
06:21:44 ksqsf joins (~textual@67.209.186.120.16clouds.com)
06:22:45 × ksqsf quits (~textual@67.209.186.120.16clouds.com) (Remote host closed the connection)
06:24:37 ksqsf joins (~textual@67.209.186.120.16clouds.com)
06:25:37 × ksqsf quits (~textual@67.209.186.120.16clouds.com) (Remote host closed the connection)
06:27:10 ksqsf joins (~textual@67.209.186.120.16clouds.com)
06:28:15 × ksqsf quits (~textual@67.209.186.120.16clouds.com) (Remote host closed the connection)
06:29:04 × img quits (~img@2405:6580:b1c0:2500:4534:f9f4:a819:a3c7) (Quit: ZNC 1.8.1 - https://znc.in)
06:29:24 img joins (~img@2405:6580:b1c0:2500:4534:f9f4:a819:a3c7)
06:29:47 ksqsf joins (~textual@67.209.186.120.16clouds.com)
06:30:48 × ksqsf quits (~textual@67.209.186.120.16clouds.com) (Remote host closed the connection)
06:32:20 ksqsf joins (~textual@67.209.186.120.16clouds.com)
06:32:36 × wagle quits (~wagle@quassel.wagle.io) (Quit: http://quassel-irc.org - Chat comfortably. Anywhere.)
06:32:50 wagle joins (~wagle@quassel.wagle.io)
06:32:55 ddellacosta joins (~ddellacos@89.46.62.58)
06:33:33 dhouthoo joins (~dhouthoo@178-117-36-167.access.telenet.be)
06:33:47 michalz joins (~user@185.246.204.50)
06:34:25 × wagle quits (~wagle@quassel.wagle.io) (Client Quit)
06:34:26 × favonia quits (~favonia@user/favonia) (Ping timeout: 244 seconds)
06:34:37 wagle joins (~wagle@quassel.wagle.io)
06:35:09 favonia joins (~favonia@user/favonia)
06:35:12 × ddellacosta quits (~ddellacos@89.46.62.58) (Read error: Connection reset by peer)
06:36:27 × ksqsf quits (~textual@67.209.186.120.16clouds.com) (Remote host closed the connection)
06:38:16 × Axman6 quits (~Axman6@user/axman6) (Remote host closed the connection)
06:38:19 lortabac joins (~lortabac@2a01:e0a:541:b8f0:fdcc:9f0a:2fc4:5c69)
06:38:33 Axman6 joins (~Axman6@user/axman6)
06:38:36 dunham joins (~dunham@97-113-35-16.tukw.qwest.net)
06:38:41 ksqsf joins (~textual@67.209.186.120.16clouds.com)
06:39:42 × wagle quits (~wagle@quassel.wagle.io) (Ping timeout: 248 seconds)
06:40:42 × ksqsf quits (~textual@67.209.186.120.16clouds.com) (Remote host closed the connection)
06:41:14 ksqsf joins (~textual@67.209.186.120.16clouds.com)
06:42:15 × ksqsf quits (~textual@67.209.186.120.16clouds.com) (Remote host closed the connection)
06:42:38 haskman joins (~haskman@223.179.148.100)
06:43:17 wagle joins (~wagle@quassel.wagle.io)
06:43:47 ksqsf joins (~textual@67.209.186.120.16clouds.com)
06:43:58 × favonia quits (~favonia@user/favonia) (Ping timeout: 248 seconds)
06:45:10 favonia joins (~favonia@user/favonia)
06:45:36 holy_ joins (~h01y_b4z0@103.244.176.36)
06:47:10 × dunham quits (~dunham@97-113-35-16.tukw.qwest.net) (Ping timeout: 248 seconds)
06:47:28 × hendursaga quits (~weechat@user/hendursaga) (Ping timeout: 252 seconds)
06:48:23 albertodvp joins (~user@2001:b07:a96:75b9:1a18:2ab4:f11b:c67a)
06:49:23 × ksqsf quits (~textual@67.209.186.120.16clouds.com) (Remote host closed the connection)
06:49:41 vicentius joins (~vicentius@user/vicentius)
06:51:53 ksqsf joins (~textual@67.209.186.120.16clouds.com)
06:52:54 × ksqsf quits (~textual@67.209.186.120.16clouds.com) (Remote host closed the connection)
06:52:58 × yumaikas- quits (~yumaikas@c-73-14-132-194.hsd1.co.comcast.net) (Ping timeout: 264 seconds)
06:56:39 × dyeplexer quits (~dyeplexer@user/dyeplexer) (Ping timeout: 244 seconds)
06:56:56 × eggplantade quits (~Eggplanta@2600:1700:bef1:5e10:b043:8b77:c7da:42a0) (Remote host closed the connection)
06:57:18 cfricke joins (~cfricke@user/cfricke)
06:57:25 ksqsf joins (~textual@67.209.186.120.16clouds.com)
06:58:26 × wagle quits (~wagle@quassel.wagle.io) (Ping timeout: 264 seconds)
06:58:54 × favonia quits (~favonia@user/favonia) (Ping timeout: 248 seconds)
06:59:06 BAD joins (~mad@user/god)
06:59:08 wei2912 joins (~wei2912@112.199.250.21)
07:00:15 favonia joins (~favonia@user/favonia)
07:00:19 GIANTWORLDKEEPER joins (~pjetcetal@2.95.204.25)
07:00:21 dunham joins (~dunham@97-113-35-16.tukw.qwest.net)
07:01:46 × ksqsf quits (~textual@67.209.186.120.16clouds.com) (Remote host closed the connection)
07:01:49 wagle joins (~wagle@quassel.wagle.io)
07:03:45 v01d4lph4 joins (~v01d4lph4@user/v01d4lph4)
07:04:17 ksqsf joins (~textual@67.209.186.120.16clouds.com)
07:06:06 × ksqsf quits (~textual@67.209.186.120.16clouds.com) (Remote host closed the connection)
07:06:51 ksqsf joins (~textual@67.209.186.120.16clouds.com)
07:06:57 × niko quits (~if@libera/staff/niko) (Remote host closed the connection)
07:07:30 × favonia quits (~favonia@user/favonia) (Ping timeout: 264 seconds)
07:07:55 favonia joins (~favonia@user/favonia)
07:08:18 dyeplexer joins (~dyeplexer@user/dyeplexer)
07:08:25 × Bartosz quits (~textual@50.35.215.151) (Quit: My MacBook has gone to sleep. ZZZzzz…)
07:08:42 × wagle quits (~wagle@quassel.wagle.io) (Ping timeout: 264 seconds)
07:09:54 × dunham quits (~dunham@97-113-35-16.tukw.qwest.net) (Ping timeout: 264 seconds)
07:10:55 × ksqsf quits (~textual@67.209.186.120.16clouds.com) (Remote host closed the connection)
07:11:30 × lavaman quits (~lavaman@98.38.249.169) (Read error: Connection reset by peer)
07:11:34 × slowButPresent quits (~slowButPr@user/slowbutpresent) (Quit: leaving)
07:11:51 × michalz quits (~user@185.246.204.50) (Remote host closed the connection)
07:11:58 wagle joins (~wagle@quassel.wagle.io)
07:12:56 michalz joins (~user@185.246.204.55)
07:13:10 lavaman joins (~lavaman@98.38.249.169)
07:13:25 ksqsf joins (~textual@67.209.186.120.16clouds.com)
07:13:59 × haskman quits (~haskman@223.179.148.100) (Quit: Going to sleep. ZZZzzz…)
07:14:00 niko joins (~niko@libera/staff/niko)
07:15:36 zmt01 joins (~zmt00@c-24-4-119-97.hsd1.ca.comcast.net)
07:16:36 × ksqsf quits (~textual@67.209.186.120.16clouds.com) (Remote host closed the connection)
07:16:45 chele joins (~chele@user/chele)
07:17:23 × holy_ quits (~h01y_b4z0@103.244.176.36) (Remote host closed the connection)
07:17:34 × qbt quits (~edun@user/edun) (Ping timeout: 248 seconds)
07:17:44 holy_ joins (~h01y_b4z0@2400:adc1:178:c800:9e45:76a9:57f2:1665)
07:18:39 × zmt00 quits (~zmt00@user/zmt00) (Ping timeout: 272 seconds)
07:19:07 ksqsf joins (~textual@67.209.186.120.16clouds.com)
07:20:32 × amk quits (~amk@176.61.106.150) (Remote host closed the connection)
07:20:43 amk joins (~amk@176.61.106.150)
07:21:53 albertodvp parts (~user@2001:b07:a96:75b9:1a18:2ab4:f11b:c67a) (ERC (IRC client for Emacs 26.3))
07:22:24 fizbin joins (~fizbin@c-73-33-197-160.hsd1.nj.comcast.net)
07:22:29 dunham joins (~dunham@97-113-35-16.tukw.qwest.net)
07:23:05 nschoe joins (~quassel@178.251.84.79)
07:23:10 qbt joins (~edun@user/edun)
07:23:46 gehmehgeh joins (~user@user/gehmehgeh)
07:24:33 × bfrk quits (~Thunderbi@200116b84508c2004c8614311807bd60.dip.versatel-1u1.de) (Ping timeout: 244 seconds)
07:25:33 × ksqsf quits (~textual@67.209.186.120.16clouds.com) (Remote host closed the connection)
07:26:34 × chexum quits (~quassel@2a02:a03f:62f9:3f00:6b71:476f:e71b:80b) (Read error: Connection reset by peer)
07:26:38 × fizbin quits (~fizbin@c-73-33-197-160.hsd1.nj.comcast.net) (Ping timeout: 248 seconds)
07:26:42 × doublex quits (~doublex@2601:542:c480:6ee0:a5a3:1270:f9ea:4275) (Ping timeout: 264 seconds)
07:26:47 × dunham quits (~dunham@97-113-35-16.tukw.qwest.net) (Ping timeout: 252 seconds)
07:26:47 × connrs quits (~connrs@mail.connolley.uk) (Quit: ZNC 1.8.2 - https://znc.in)
07:27:12 hendursaga joins (~weechat@user/hendursaga)
07:27:25 connrs joins (~connrs@s1.connrs.uk)
07:27:52 merijn joins (~merijn@83-160-49-249.ip.xs4all.nl)
07:30:01 ksqsf joins (~textual@67.209.186.120.16clouds.com)
07:31:32 mikoto-chan joins (~mikoto-ch@ip-213-49-189-31.dsl.scarlet.be)
07:32:10 hexfive joins (~eric@50.35.83.177)
07:32:30 × vicentius quits (~vicentius@user/vicentius) (Ping timeout: 248 seconds)
07:33:30 × ksqsf quits (~textual@67.209.186.120.16clouds.com) (Remote host closed the connection)
07:34:06 × favonia quits (~favonia@user/favonia) (Ping timeout: 248 seconds)
07:35:10 × holy_ quits (~h01y_b4z0@2400:adc1:178:c800:9e45:76a9:57f2:1665) (Ping timeout: 248 seconds)
07:35:16 autophagy joins (~mika@user/autophagy)
07:35:33 hmmmas joins (~chenqisu1@183.217.202.217)
07:35:54 favonia joins (~favonia@user/favonia)
07:36:02 ksqsf joins (~textual@67.209.186.120.16clouds.com)
07:37:03 × ksqsf quits (~textual@67.209.186.120.16clouds.com) (Remote host closed the connection)
07:38:42 ksqsf joins (~textual@67.209.186.120.16clouds.com)
07:39:43 × ksqsf quits (~textual@67.209.186.120.16clouds.com) (Remote host closed the connection)
07:40:23 × gehmehgeh quits (~user@user/gehmehgeh) (Quit: Leaving)
07:40:39 gehmehgeh joins (~user@user/gehmehgeh)
07:41:16 ksqsf joins (~textual@67.209.186.120.16clouds.com)
07:41:23 vicentius joins (~vicentius@user/vicentius)
07:41:52 × nerdy quits (znc@user/nerdypepper) (Quit: bye)
07:42:01 × lavaman quits (~lavaman@98.38.249.169) (Remote host closed the connection)
07:42:30 × da39a3ee5e6b4b0d quits (~textual@mx-ll-171.6.242-82.dynamic.3bb.co.th) (Quit: My MacBook has gone to sleep. ZZZzzz…)
07:42:41 nsilv-phone joins (~nsilv-pho@37.163.1.234)
07:43:37 prite joins (~pritam@user/pritambaral)
07:44:02 nerdy joins (znc@152.67.162.71)
07:45:18 × wagle quits (~wagle@quassel.wagle.io) (Ping timeout: 248 seconds)
07:45:35 × nsilv-phone-1 quits (~nsilv-pho@host-82-50-119-12.retail.telecomitalia.it) (Ping timeout: 265 seconds)
07:45:35 haskman joins (~haskman@223.179.148.100)
07:46:22 × qbt quits (~edun@user/edun) (Ping timeout: 248 seconds)
07:47:26 × favonia quits (~favonia@user/favonia) (Ping timeout: 248 seconds)
07:48:39 favonia joins (~favonia@user/favonia)
07:48:49 × vicentius quits (~vicentius@user/vicentius) (Quit: Leaving)
07:49:06 wagle joins (~wagle@quassel.wagle.io)
07:50:52 × ksqsf quits (~textual@67.209.186.120.16clouds.com) (Remote host closed the connection)
07:51:59 × econo quits (uid147250@user/econo) (Quit: Connection closed for inactivity)
07:52:17 holy_ joins (~h01y_b4z0@2400:adc1:178:c800:9e45:76a9:57f2:1665)
07:53:22 ksqsf joins (~textual@67.209.186.120.16clouds.com)
07:54:23 × ksqsf quits (~textual@67.209.186.120.16clouds.com) (Remote host closed the connection)
07:54:57 × v01d4lph4 quits (~v01d4lph4@user/v01d4lph4) (Remote host closed the connection)
07:55:55 ksqsf joins (~textual@67.209.186.120.16clouds.com)
07:56:56 × ksqsf quits (~textual@67.209.186.120.16clouds.com) (Remote host closed the connection)
07:57:22 eggplantade joins (~Eggplanta@2600:1700:bef1:5e10:9d49:4665:d75d:fdb)
07:57:24 zeenk joins (~zeenk@2a02:2f04:a310:b600:b098:bf18:df4d:4c41)
07:58:26 × wagle quits (~wagle@quassel.wagle.io) (Ping timeout: 264 seconds)
07:58:29 ksqsf joins (~textual@67.209.186.120.16clouds.com)
07:59:24 wagle joins (~wagle@quassel.wagle.io)
07:59:32 mc47 joins (~yecinem@89.246.239.190)
07:59:32 × benin quits (~benin@183.82.177.19) (Remote host closed the connection)
08:00:19 lavaman joins (~lavaman@98.38.249.169)
08:01:02 dunham joins (~dunham@97-113-35-16.tukw.qwest.net)
08:01:18 chexum joins (~chexum@2a02:a03f:62f9:3f00:6b71:476f:e71b:80b)
08:01:43 × holy_ quits (~h01y_b4z0@2400:adc1:178:c800:9e45:76a9:57f2:1665) (Ping timeout: 272 seconds)
08:01:50 × favonia quits (~favonia@user/favonia) (Ping timeout: 248 seconds)
08:02:21 × eggplantade quits (~Eggplanta@2600:1700:bef1:5e10:9d49:4665:d75d:fdb) (Ping timeout: 272 seconds)
08:02:46 favonia joins (~favonia@user/favonia)
08:03:46 × dyeplexer quits (~dyeplexer@user/dyeplexer) (Ping timeout: 264 seconds)
08:04:01 nsilv joins (~nsilv@212.103.198.210)
08:05:01 × ksqsf quits (~textual@67.209.186.120.16clouds.com) (Remote host closed the connection)
08:05:40 × dunham quits (~dunham@97-113-35-16.tukw.qwest.net) (Ping timeout: 264 seconds)
08:05:55 × TheRAt quits (~TheRAt@user/therat) (Quit: :))
08:09:06 awth13 joins (~user@193.27.14.133)
08:09:10 × dut quits (~dut@user/dut) (Quit: Leaving)
08:09:58 × hendursaga quits (~weechat@user/hendursaga) (Ping timeout: 252 seconds)
08:11:42 TheRAt joins (~TheRAt@user/therat)
08:11:58 × wagle quits (~wagle@quassel.wagle.io) (Ping timeout: 248 seconds)
08:12:13 space-shell joins (~space-she@88.98.247.38)
08:12:39 ksqsf joins (~textual@67.209.186.120.16clouds.com)
08:14:01 hendursaga joins (~weechat@user/hendursaga)
08:15:00 da39a3ee5e6b4b0d joins (~textual@2403:6200:8876:ee80:e020:f584:6e47:bcb0)
08:15:34 × img quits (~img@2405:6580:b1c0:2500:4534:f9f4:a819:a3c7) (Quit: ZNC 1.8.1 - https://znc.in)
08:15:55 img joins (~img@2405:6580:b1c0:2500:4534:f9f4:a819:a3c7)
08:16:26 aplainzetakind joins (~johndoe@captainludd.powered.by.lunarbnc.net)
08:17:09 dyeplexer joins (~dyeplexer@user/dyeplexer)
08:18:09 × ksqsf quits (~textual@67.209.186.120.16clouds.com) (Remote host closed the connection)
08:20:19 × haskman quits (~haskman@223.179.148.100) (Quit: Going to sleep. ZZZzzz…)
08:20:39 ksqsf joins (~textual@67.209.186.120.16clouds.com)
08:21:29 × tzh quits (~tzh@c-24-21-73-154.hsd1.wa.comcast.net) (Quit: zzz)
08:22:21 wagle joins (~wagle@quassel.wagle.io)
08:22:51 × lavaman quits (~lavaman@98.38.249.169) (Remote host closed the connection)
08:23:51 × ksqsf quits (~textual@67.209.186.120.16clouds.com) (Remote host closed the connection)
08:24:05 × nsilv quits (~nsilv@212.103.198.210) (Ping timeout: 272 seconds)
08:25:14 zava joins (~zava@ip5f5bdf0f.dynamic.kabel-deutschland.de)
08:25:50 sondre joins (~sondrelun@eduroam-193-157-188-96.wlan.uio.no)
08:28:02 ksqsf joins (~textual@67.209.186.120.16clouds.com)
08:28:23 Franciman joins (~francesco@host-80-180-196-134.retail.telecomitalia.it)
08:28:28 × Franciman quits (~francesco@host-80-180-196-134.retail.telecomitalia.it) (Remote host closed the connection)
08:29:28 × ksqsf quits (~textual@67.209.186.120.16clouds.com) (Remote host closed the connection)
08:30:36 ksqsf joins (~textual@67.209.186.120.16clouds.com)
08:32:00 × ksqsf quits (~textual@67.209.186.120.16clouds.com) (Remote host closed the connection)
08:32:14 × wagle quits (~wagle@quassel.wagle.io) (Ping timeout: 248 seconds)
08:33:09 ksqsf joins (~textual@67.209.186.120.16clouds.com)
08:33:31 dhil joins (~dhil@195.213.192.85)
08:34:40 × ksqsf quits (~textual@67.209.186.120.16clouds.com) (Remote host closed the connection)
08:35:43 ksqsf joins (~textual@67.209.186.120.16clouds.com)
08:36:44 × ksqsf quits (~textual@67.209.186.120.16clouds.com) (Remote host closed the connection)
08:37:02 × favonia quits (~favonia@user/favonia) (Ping timeout: 248 seconds)
08:37:17 foobrr joins (~foobrr@110-175-33-195.static.tpgi.com.au)
08:37:20 × img quits (~img@2405:6580:b1c0:2500:4534:f9f4:a819:a3c7) (Quit: ZNC 1.8.1 - https://znc.in)
08:37:44 × foobrr quits (~foobrr@110-175-33-195.static.tpgi.com.au) (Client Quit)
08:37:48 favonia joins (~favonia@user/favonia)
08:38:17 ksqsf joins (~textual@67.209.186.120.16clouds.com)
08:38:59 img joins (~img@2405:6580:b1c0:2500:6e94:ae4a:a398:5347)
08:39:18 wagle joins (~wagle@quassel.wagle.io)
08:39:42 × y04nn quits (~y04nn@185.204.1.208) (Ping timeout: 248 seconds)
08:39:42 holy_ joins (~h01y_b4z0@2400:adc1:178:c800:9e45:76a9:57f2:1665)
08:41:21 × ksqsf quits (~textual@67.209.186.120.16clouds.com) (Remote host closed the connection)
08:45:40 ksqsf joins (~textual@67.209.186.120.16clouds.com)
08:45:59 × ubert quits (~Thunderbi@p200300ecdf259d8974882ed522245916.dip0.t-ipconnect.de) (Ping timeout: 252 seconds)
08:46:59 × ksqsf quits (~textual@67.209.186.120.16clouds.com) (Remote host closed the connection)
08:48:14 × space-shell quits (~space-she@88.98.247.38) (Quit: Connection closed)
08:48:14 ksqsf joins (~textual@67.209.186.120.16clouds.com)
08:48:48 gracinet[m] joins (~gracinetm@2001:470:69fc:105::224)
08:49:26 nsilv joins (~nsilv@212.103.198.210)
08:49:28 gracinet[m] parts (~gracinetm@2001:470:69fc:105::224) ()
08:49:48 × sayola quits (~vekto@dslb-088-078-152-174.088.078.pools.vodafone-ip.de) (Ping timeout: 244 seconds)
08:52:09 × ksqsf quits (~textual@67.209.186.120.16clouds.com) (Remote host closed the connection)
08:52:25 × nsilv quits (~nsilv@212.103.198.210) (Read error: error:1408F119:SSL routines:ssl3_get_record:decryption failed or bad record mac)
08:52:47 nsilv joins (~nsilv@212.103.198.210)
08:56:38 ksqsf joins (~textual@67.209.186.120.16clouds.com)
08:57:39 × ksqsf quits (~textual@67.209.186.120.16clouds.com) (Remote host closed the connection)
08:58:54 × favonia quits (~favonia@user/favonia) (Ping timeout: 248 seconds)
08:58:59 ksqsf joins (~textual@67.209.186.120.16clouds.com)
08:59:19 favonia joins (~favonia@user/favonia)
09:00:19 × ksqsf quits (~textual@67.209.186.120.16clouds.com) (Remote host closed the connection)
09:00:47 danidiaz joins (~ESDPC@static-203-177-6-89.ipcom.comunitel.net)
09:00:48 × Kaiepi quits (~Kaiepi@nwcsnbsc03w-47-54-173-93.dhcp-dynamic.fibreop.nb.bellaliant.net) (Remote host closed the connection)
09:01:43 ksqsf joins (~textual@67.209.186.120.16clouds.com)
09:02:44 × ksqsf quits (~textual@67.209.186.120.16clouds.com) (Remote host closed the connection)
09:04:01 lavaman joins (~lavaman@98.38.249.169)
09:04:58 × nsilv quits (~nsilv@212.103.198.210) (Read error: error:1408F119:SSL routines:ssl3_get_record:decryption failed or bad record mac)
09:05:20 nsilv joins (~nsilv@212.103.198.210)
09:08:24 × lavaman quits (~lavaman@98.38.249.169) (Ping timeout: 244 seconds)
09:10:44 haskman joins (~haskman@106.201.28.184)
09:12:26 peteretep joins (sid143467@id-143467.stonehaven.irccloud.com)
09:14:06 Kaiepi joins (~Kaiepi@nwcsnbsc03w-47-54-173-93.dhcp-dynamic.fibreop.nb.bellaliant.net)
09:14:29 Torro joins (Torro@gateway/vpn/protonvpn/torro)
09:14:34 × favonia quits (~favonia@user/favonia) (Ping timeout: 264 seconds)
09:14:59 probono[m] joins (~probonopd@2001:470:69fc:105::22e)
09:16:15 probono[m] parts (~probonopd@2001:470:69fc:105::22e) ()
09:21:04 lavaman joins (~lavaman@98.38.249.169)
09:22:22 × holy_ quits (~h01y_b4z0@2400:adc1:178:c800:9e45:76a9:57f2:1665) (Ping timeout: 248 seconds)
09:22:33 spirgel joins (spirgel@gateway/vpn/protonvpn/spirgel)
09:23:04 fizbin joins (~fizbin@c-73-33-197-160.hsd1.nj.comcast.net)
09:25:35 hughjfchen joins (~hughjfche@vmi556545.contaboserver.net)
09:25:50 × lambdabot quits (~lambdabot@haskell/bot/lambdabot) (Quit: bbiab)
09:26:04 × lavaman quits (~lavaman@98.38.249.169) (Ping timeout: 264 seconds)
09:26:10 × hughjfchen quits (~hughjfche@vmi556545.contaboserver.net) (Client Quit)
09:26:23 hpd[m] joins (~hpdhpdeif@2001:470:69fc:105::230)
09:27:18 lambdabot joins (~lambdabot@silicon.int-e.eu)
09:27:18 × lambdabot quits (~lambdabot@silicon.int-e.eu) (Changing host)
09:27:18 lambdabot joins (~lambdabot@haskell/bot/lambdabot)
09:27:50 × fizbin quits (~fizbin@c-73-33-197-160.hsd1.nj.comcast.net) (Ping timeout: 264 seconds)
09:29:33 × sm2n quits (~sm2n@user/sm2n) (Read error: Connection reset by peer)
09:29:56 sm2n joins (~sm2n@user/sm2n)
09:31:05 × nf quits (~n@monade.li) (Quit: Fairfarren.)
09:31:18 nf joins (~n@monade.li)
09:31:24 aria joins (sid380617@id-380617.tooting.irccloud.com)
09:33:03 × nsilv quits (~nsilv@212.103.198.210) (Quit: WeeChat 3.0.1)
09:38:31 <int-e> @karma lambdabot
09:38:31 <lambdabot> lambdabot has a karma of 0
09:38:41 <Taneb> @botsnack
09:38:41 <lambdabot> :)
09:38:43 <int-e> mm
09:38:50 <Taneb> @karma lambdabot
09:38:50 <lambdabot> lambdabot has a karma of 0
09:38:52 <Taneb> Hmmm
09:42:31 <dminuoso> Mmm, is there a way to generate bounds for test-suites?
09:42:57 <dminuoso> `cabal gen-bounds` seems to.. I have no clue what it generates bounds for, the documentation wont say
09:43:50 <int-e> Ah karma doesn't carry over because the network name changed. Fun.
09:44:03 <merijn> aww :<
09:44:04 <int-e> @karma freenode:lambdabot
09:44:04 <lambdabot> freenode:lambdabot has a karma of 38
09:44:39 <dminuoso> Or should I use the `cabal-bounds` tool?
09:45:35 <int-e> And this is confusing because the state file doesn't mention freenode at all.
09:46:21 <int-e> https://github.com/lambdabot/lambdabot/blob/master/lambdabot-core/src/Lambdabot/Compat/FreenodeNick.hs <-- beautiful
09:46:41 BAD is now known as GOD
09:49:15 dunham joins (~dunham@97-113-35-16.tukw.qwest.net)
09:50:04 <tomsmeding> beautiful
09:50:32 × hnOsmium0001 quits (uid453710@id-453710.stonehaven.irccloud.com) (Quit: Connection closed for inactivity)
09:51:51 × haskman quits (~haskman@106.201.28.184) (Quit: Going to sleep. ZZZzzz…)
09:52:02 <int-e> Anyway, evidently I was wrong: I didn't start from a fresh state; I only deleted the tell and seen states. So I didn't have to merge any @where or @quote data.
09:52:22 holy_ joins (~h01y_b4z0@2400:adc1:178:c800:9e45:76a9:57f2:1665)
09:52:54 <int-e> And karma... well it seems we've all been reincarnated and start from scratch. But the freenode:nick data is still there. (And can probably even be modified, isn't that fun)
09:52:57 dunj3 joins (~dunj3@2001:16b8:3064:9000:3cac:ae41:dda8:223b)
09:53:19 × ozone quits (ozone@libera/bot/ozone) (Quit: new config entries, restarting)
09:53:25 <int-e> It'll just have to be good enough, I'm not going to manually match nicks.
09:53:35 ozone joins (ozone@libera/bot/ozone)
09:53:49 × dunham quits (~dunham@97-113-35-16.tukw.qwest.net) (Ping timeout: 272 seconds)
09:53:56 <int-e> Uh oh, have to stop spamming.... ozone's here.
09:55:20 <dminuoso> What's ozone's purpose?
09:55:30 <int-e> ozone is the new Sigyn
09:55:59 <dminuoso> But ozone not a Norse god, is it?
09:56:04 <dminuoso> How can it be as powerful
09:56:08 <int-e> so it's fighting spam. litharge is the new eir.
09:56:38 <int-e> I don't know why they're called that
09:56:56 ski . o O ( `@karma- @karma' )
09:57:28 <int-e> ski: you should see the actual state file
09:58:17 <int-e> it has gems like https://paste.debian.net/1199164/
09:58:47 eggplantade joins (~Eggplanta@2600:1700:bef1:5e10:9d49:4665:d75d:fdb)
09:58:57 <int-e> also a ton of brainfuck programs for some reason :)
09:59:21 <dminuoso> Question, if I have a package candidate, can I upload haddock to it without publishing to the index beforehand?
10:00:14 × sondre quits (~sondrelun@eduroam-193-157-188-96.wlan.uio.no) (Ping timeout: 264 seconds)
10:00:28 v01d4lph4 joins (~v01d4lph4@user/v01d4lph4)
10:00:41 <ski> int-e :)
10:00:45 Sinbad joins (~petrus@catv-86-101-33-147.catv.broadband.hu)
10:02:07 Sinbad parts (~petrus@catv-86-101-33-147.catv.broadband.hu) (WeeChat 3.1)
10:03:04 <int-e> @quote
10:03:04 <lambdabot> monochrom� says: Real programmers speak very focusedly to the CPU
10:03:05 a6a45081-2b83 joins (~aditya@106.212.79.20)
10:03:49 sondre joins (~sondrelun@eduroam-193-157-188-96.wlan.uio.no)
10:04:05 × eggplantade quits (~Eggplanta@2600:1700:bef1:5e10:9d49:4665:d75d:fdb) (Ping timeout: 252 seconds)
10:04:14 tomsmeding wonders about the missing unicode character?
10:04:29 aez joins (~aez@zoo-zarebski.zoo.ox.ac.uk)
10:04:40 aez is now known as zarebski
10:05:01 <tomsmeding> @tell geekosaur I removed freenode#xmonad from ircbrowse because the channel's been closed; if I should start logging freenode##xmonad or something, please say so :)
10:05:01 <lambdabot> Consider it noted.
10:05:02 × lu quits (~lu@user/lu) (Ping timeout: 264 seconds)
10:05:23 Robin_Jadoul joins (~Robin_Jad@152.67.64.160)
10:05:42 <liskin> tomsmeding: we moved #xmonad here so I don't think logging ##xmonad@freenode will be necessary
10:05:53 <tomsmeding> liskin: cool :)
10:06:22 lurker100 joins (~lurker@147.161.167.84)
10:06:51 × lurker100 quits (~lurker@147.161.167.84) (Client Quit)
10:07:11 × vicfred quits (~vicfred@user/vicfred) (Quit: Leaving)
10:10:08 <dminuoso> liskin: Oh now, almost didnt recognize you with a lower l in the nickname.
10:10:13 <dminuoso> Sneaky
10:10:54 haskman joins (~haskman@106.201.28.184)
10:11:06 <liskin> dminuoso: I decided that it's a perfect opportunity to drop the old nick that makes no sense now that I'm not 15 years old
10:13:22 × Robin_Jadoul quits (~Robin_Jad@152.67.64.160) (Ping timeout: 264 seconds)
10:13:59 × sondre quits (~sondrelun@eduroam-193-157-188-96.wlan.uio.no) (Ping timeout: 252 seconds)
10:15:50 anonPerformIO joins (~anonPerfo@broadband-188-255-16-173.ip.moscow.rt.ru)
10:15:54 <opqdonut> I'm writing a short section about phantom types for my course. I'm trying to think of a nice and simple "real world" example. I'm using currency conversions as an introductory example, with functions like `convert :: Rate from to -> Money from -> Money to`, but that's not really something I can see myself writing in a real program
10:16:25 <opqdonut> I'd like to keep it to simple tagging, so not `Expr a` or `Vector nat`
10:17:07 <dminuoso> opqdonut: My favourite example is `newtype Input (s :: SanitizationState) = Input Text`
10:17:10 <opqdonut> Any ideas? I've been toying with ideas like sanitation of input before passing it to the database, or preventing logging of secrets, but those can be easily accomplished with just a simple newtype...
10:17:13 sondre joins (~sondrelun@eduroam-193-157-188-96.wlan.uio.no)
10:17:24 <opqdonut> dminuoso: hmm yeah the wikibook has that one, I think
10:17:45 <dminuoso> opqdonut: The thing you cant simply solve with newtypes, is that you could write code polymorphic over SanState
10:18:00 <opqdonut> yeah that's the nice thing about `Money a` as well
10:18:04 smr joins (~smn@91-114-144-112.adsl.highway.telekom.at)
10:18:12 <dminuoso> Though I think, the main problem is that phantom types themselves are rarely useful
10:18:26 <opqdonut> yeah, that's my impression as well
10:18:27 <dminuoso> The desire for phantom types rather quickly leads you to singletons..
10:18:48 <opqdonut> but they're a nice thing to teach, to introduce students to their first type-level programming
10:18:59 <opqdonut> yeah, you end up in singletons, type families, and dependent haskell... :)
10:19:56 <Taneb> newtype Money (currency :: Currency) = Money Centi
10:20:13 <opqdonut> yeah that's my first example
10:20:51 <dminuoso> For type level programming, perhaps something like servant might be more motivating.
10:21:00 <opqdonut> but I can't really think of a program that would a) work with multiple currencies b) know the currencies at compile-time
10:21:00 <dminuoso> (Not full blown servant, but perhaps something more simple)
10:21:02 <Taneb> Mmm, I was thinking about servant
10:21:11 × holy_ quits (~h01y_b4z0@2400:adc1:178:c800:9e45:76a9:57f2:1665) (Remote host closed the connection)
10:21:22 <opqdonut> yeah that's a good idea, I'll skim the API and try to lift an example
10:21:33 holy_ joins (~h01y_b4z0@2400:adc1:178:c800:9e45:76a9:57f2:1665)
10:22:01 snan joins (~snan@89-253-122-95.customers.ownit.se)
10:22:35 × anonPerformIO quits (~anonPerfo@broadband-188-255-16-173.ip.moscow.rt.ru) (Quit: Connection closed)
10:23:13 python476 joins (~user@88.160.31.174)
10:23:23 <dminuoso> opqdonut: You could also look at typed-protocols, perhaps.
10:23:31 <dminuoso> I've been dying to use that library. :)
10:23:56 × mrufrufin quits (~dxk@108.235.170.90) (Quit: leaving)
10:24:59 <dminuoso> https://github.com/input-output-hk/ouroboros-network/tree/master/typed-protocols
10:25:00 <snan> Hi what does >>> mean? Or more specifically, what does hylo' f g = f >>> map (hylo' f g) >>> g mean? I know that a hylo is a fold on an unfold and I am familiar with folds and unfolds. I'm just trying to figure out how this implementation works
10:25:08 <dminuoso> % :t (>>>)
10:25:09 <yahb> dminuoso: forall {k} {cat :: k -> k -> *} {a :: k} {b :: k} {c :: k}. Category cat => cat a b -> cat b c -> cat a c
10:25:15 <dminuoso> snan: It's just a more general form of flipped (.)
10:25:30 <dminuoso> Set `cat ~ (->)` and it should be obvious
10:25:47 <opqdonut> dminuoso: thanks
10:25:52 × rusua quits (uid124537@highgate.irccloud.com) (Quit: Connection closed for inactivity)
10:26:25 <dminuoso> opqdonut: If this is interesting to you, ask dcoutts if he still has slides of material. I know he presented it on Haskell eXchange a few years ago
10:26:47 <river> hello
10:27:11 chddr joins (~Thunderbi@31.148.23.125)
10:29:08 <snan> Thank you, dminuoso. I don't know what (.) is either, I basically don't know any of the operators outside of things like +, -, and ->>
10:29:35 <dminuoso> snan: so you can just write this as `hylo' f g = g . map (hylo' f g) . f` - or as an optimization `hylo' f g = h where h = f . fmap h . g`
10:29:46 <snan> Is . function composition?
10:29:48 <dminuoso> Yes
10:30:05 raehik joins (~raehik@cpc95906-rdng25-2-0-cust156.15-3.cable.virginm.net)
10:30:57 <snan> Thank you so much, dminuoso. I'm a Lisp programmer normally
10:31:11 <ski> @src (.)
10:31:11 <lambdabot> (f . g) x = f (g x)
10:31:20 <snan> Thank you ski
10:31:31 <ski> @botsnack
10:31:32 <lambdabot> :)
10:32:31 <dminuoso> snan: If you're not familiar with Haskell, then recursion schemes might be quite an extreme introduction to haskell though.
10:32:49 <ski> hej, snan. how come you got interested in recursion schemes, this early ?
10:33:02 <snan> I'm working on implementing hylo for another language
10:33:07 <ski> ah
10:33:33 ski . o O ( Riastradh's foof-loop )
10:35:00 ddellacosta joins (~ddellacos@89.46.62.69)
10:35:02 <dminuoso> snan: keep in mind that this optimization trick I mentioned is relevant to the performance.
10:35:14 × holy_ quits (~h01y_b4z0@2400:adc1:178:c800:9e45:76a9:57f2:1665) (Remote host closed the connection)
10:35:31 <dminuoso> And the language you implement recursion schemes in might not support that trick, or have a different evaluation strategy. Just something to consider.
10:35:36 holy_ joins (~h01y_b4z0@2400:adc1:178:c800:9e45:76a9:57f2:1665)
10:35:56 <snan> dminuoso: yes, that's much appreciated. It's trivial to make a poorly performant hylo by just folding an unfolded structure. The point is to make something that's tight & nice
10:36:04 <dminuoso> (Without it, depending on your language this can quickly consume your stack space)
10:37:10 <snan> Right
10:40:03 × ddellacosta quits (~ddellacos@89.46.62.69) (Ping timeout: 272 seconds)
10:40:53 × raehik quits (~raehik@cpc95906-rdng25-2-0-cust156.15-3.cable.virginm.net) (Ping timeout: 272 seconds)
10:41:37 satai joins (~satai@ip-37-188-160-241.eurotel.cz)
10:41:56 <river> hey
10:41:59 <river> i just realized something
10:42:04 <river> you lot helped me understand yoneda lemma
10:42:11 <river> but there was absolutely nothing about ^op in it
10:42:23 <river> the real lemma has this difficult stuff about stuff being opposite
10:42:31 <river> how was it possible to avoid all tht?
10:42:51 hpd[m] parts (~hpdhpdeif@2001:470:69fc:105::230) ()
10:43:11 <snan> ski: is this what you were thinking of? https://raw.githubusercontent.com/arcfide/riastradh/master/foof-loop/foof-loop.txt that's interesting. Scheme is more familiar ground for me
10:43:23 dunham joins (~dunham@97-113-35-16.tukw.qwest.net)
10:44:44 raehik joins (~raehik@cpc95906-rdng25-2-0-cust156.15-3.cable.virginm.net)
10:45:08 × hexfive quits (~eric@50.35.83.177) (Quit: WeeChat 3.0)
10:45:59 <dminuoso> river: You have to be a bit more explicit about "stuff being opposite"
10:47:02 × Mark_ quits (uid14803@user/mark/x-9597255) (Quit: Connection closed for inactivity)
10:47:37 nsilv-phone-1 joins (~nsilv-pho@host-82-50-119-12.retail.telecomitalia.it)
10:47:42 × dunham quits (~dunham@97-113-35-16.tukw.qwest.net) (Ping timeout: 248 seconds)
10:48:55 × holy_ quits (~h01y_b4z0@2400:adc1:178:c800:9e45:76a9:57f2:1665) (Ping timeout: 272 seconds)
10:49:18 × nsilv-phone quits (~nsilv-pho@37.163.1.234) (Ping timeout: 248 seconds)
10:49:24 tose joins (~tose@ip-85-160-8-1.eurotel.cz)
10:50:08 holy_ joins (~h01y_b4z0@2400:adc1:178:c800:9e45:76a9:57f2:1665)
10:50:53 × tose quits (~tose@ip-85-160-8-1.eurotel.cz) (Remote host closed the connection)
10:51:14 tose joins (~tose@ip-85-160-8-1.eurotel.cz)
10:51:50 × merijn quits (~merijn@83-160-49-249.ip.xs4all.nl) (Ping timeout: 264 seconds)
10:52:07 × holy_ quits (~h01y_b4z0@2400:adc1:178:c800:9e45:76a9:57f2:1665) (Remote host closed the connection)
10:52:23 holy_ joins (~h01y_b4z0@2400:adc1:178:c800:9e45:76a9:57f2:1665)
10:52:40 × sa1 quits (uid7690@id-7690.charlton.irccloud.com) (Quit: Connection closed for inactivity)
10:52:56 merijn joins (~merijn@83-160-49-249.ip.xs4all.nl)
10:53:12 maralorn[m] joins (~maralornm@2001:470:69fc:105::251)
10:53:46 Sinbad joins (~Sinbad@user/sinbad)
10:54:13 × nerdy quits (znc@152.67.162.71) (Changing host)
10:54:13 nerdy joins (znc@user/nerdypepper)
10:54:15 nerdy is now known as np
10:55:15 × tose quits (~tose@ip-85-160-8-1.eurotel.cz) (Remote host closed the connection)
10:55:43 Robin_Jadoul joins (~Robin_Jad@152.67.64.160)
10:56:20 ksqsf joins (~textual@67.209.186.120.16clouds.com)
10:56:30 × Sinbad quits (~Sinbad@user/sinbad) (Quit: WeeChat 3.1)
10:58:22 × ksqsf quits (~textual@67.209.186.120.16clouds.com) (Remote host closed the connection)
10:58:28 × merijn quits (~merijn@83-160-49-249.ip.xs4all.nl) (Ping timeout: 264 seconds)
10:58:41 merijn joins (~merijn@83-160-49-249.ip.xs4all.nl)
10:58:53 ksqsf joins (~textual@67.209.186.120.16clouds.com)
10:59:20 × nf quits (~n@monade.li) (Remote host closed the connection)
10:59:38 nf joins (~n@monade.li)
11:01:34 × holy_ quits (~h01y_b4z0@2400:adc1:178:c800:9e45:76a9:57f2:1665) (Ping timeout: 248 seconds)
11:02:28 Lycurgus joins (~juan@cpe-45-46-140-49.buffalo.res.rr.com)
11:02:38 holy_ joins (~h01y_b4z0@2400:adc1:178:c800:9e45:76a9:57f2:1665)
11:03:52 × merijn quits (~merijn@83-160-49-249.ip.xs4all.nl) (Ping timeout: 264 seconds)
11:04:08 merijn joins (~merijn@83-160-49-249.ip.xs4all.nl)
11:04:23 Sinbad joins (~Sinbad@user/sinbad)
11:05:42 × maralorn[m] quits (~maralornm@2001:470:69fc:105::251) (Quit: node-irc says goodbye)
11:05:57 maralorn[m] joins (~maralorn@2001:470:69fc:105::251)
11:06:25 dustingetz joins (~textual@pool-173-49-123-198.phlapa.fios.verizon.net)
11:06:29 ccntrq joins (~ccntrq@business-90-187-183-141.pool2.vodafone-ip.de)
11:06:32 GOD parts (~mad@user/god) ()
11:06:32 <ski> snan : rather <https://mumble.net/~campbell/scheme/foof-loop.txt>,<https://mumble.net/~campbell/scheme/foof-loop.scm>
11:07:28 <ski> snan : #haskell-se finns, oxå
11:07:45 tose joins (~tose@ip-85-160-8-1.eurotel.cz)
11:09:04 × ksqsf quits (~textual@67.209.186.120.16clouds.com) (Remote host closed the connection)
11:09:09 × maralorn[m] quits (~maralorn@2001:470:69fc:105::251) (Client Quit)
11:09:16 × merijn quits (~merijn@83-160-49-249.ip.xs4all.nl) (Ping timeout: 264 seconds)
11:09:28 maralorn[m] joins (~maralorn@2001:470:69fc:105::251)
11:09:44 waleee joins (~waleee@2001:9b0:216:8200:d457:9189:7843:1dbd)
11:10:31 × holy_ quits (~h01y_b4z0@2400:adc1:178:c800:9e45:76a9:57f2:1665) (Remote host closed the connection)
11:10:38 spirgel_ joins (spirgel@gateway/vpn/protonvpn/spirgel)
11:11:01 holy_ joins (~h01y_b4z0@2400:adc1:178:c800:9e45:76a9:57f2:1665)
11:11:06 × maralorn[m] quits (~maralorn@2001:470:69fc:105::251) (Client Quit)
11:11:21 maralorn[m] joins (~maralorn@2001:470:69fc:105::251)
11:11:36 ksqsf joins (~textual@67.209.186.120.16clouds.com)
11:12:37 × ksqsf quits (~textual@67.209.186.120.16clouds.com) (Remote host closed the connection)
11:12:58 × Lycurgus quits (~juan@cpe-45-46-140-49.buffalo.res.rr.com) (Quit: Exeunt)
11:13:50 × spirgel quits (spirgel@gateway/vpn/protonvpn/spirgel) (Ping timeout: 248 seconds)
11:14:09 ksqsf joins (~textual@67.209.186.120.16clouds.com)
11:14:30 × a6a45081-2b83 quits (~aditya@106.212.79.20) (Quit: Konversation terminated!)
11:15:06 Guest31_ joins (~textual@cpc146410-hari22-2-0-cust124.20-2.cable.virginm.net)
11:15:18 × waleee quits (~waleee@2001:9b0:216:8200:d457:9189:7843:1dbd) (Ping timeout: 264 seconds)
11:15:32 merijn joins (~merijn@83-160-49-249.ip.xs4all.nl)
11:16:34 × holy_ quits (~h01y_b4z0@2400:adc1:178:c800:9e45:76a9:57f2:1665) (Remote host closed the connection)
11:17:03 × chddr quits (~Thunderbi@31.148.23.125) (Ping timeout: 244 seconds)
11:17:06 waleee joins (~waleee@h-98-128-228-119.NA.cust.bahnhof.se)
11:17:07 boxscape joins (~boxscape@user/boxscape)
11:17:09 ubert joins (~Thunderbi@2a02:8109:9880:303c:ca5b:76ff:fe29:f233)
11:17:46 holy_ joins (~h01y_b4z0@2400:adc1:178:c800:9e45:76a9:57f2:1665)
11:19:17 × ryantrinkle quits (~ryan@2600:1017:b40b:f05b:897c:6b76:a986:fb80) (Read error: Connection reset by peer)
11:19:57 × holy_ quits (~h01y_b4z0@2400:adc1:178:c800:9e45:76a9:57f2:1665) (Remote host closed the connection)
11:20:33 holy_ joins (~h01y_b4z0@2400:adc1:178:c800:9e45:76a9:57f2:1665)
11:20:46 × merijn quits (~merijn@83-160-49-249.ip.xs4all.nl) (Ping timeout: 248 seconds)
11:21:27 merijn joins (~merijn@83-160-49-249.ip.xs4all.nl)
11:22:06 machinedgod joins (~machinedg@135-23-192-217.cpe.pppoe.ca)
11:22:22 × pe200012 quits (~pe200012@119.131.208.84) (Ping timeout: 248 seconds)
11:22:42 pe200012 joins (~pe200012@119.131.208.84)
11:24:17 × ksqsf quits (~textual@67.209.186.120.16clouds.com) (Remote host closed the connection)
11:24:23 <jackdk> int-e: any chance we can get a lambdabot in #bfpg?
11:24:50 × Tomurb quits (~tom@158.194.92.121) (Ping timeout: 264 seconds)
11:28:32 ksqsf joins (~textual@67.209.186.120.16clouds.com)
11:29:33 × ksqsf quits (~textual@67.209.186.120.16clouds.com) (Remote host closed the connection)
11:30:55 × holy_ quits (~h01y_b4z0@2400:adc1:178:c800:9e45:76a9:57f2:1665) (Remote host closed the connection)
11:31:20 ksqsf joins (~textual@67.209.186.120.16clouds.com)
11:31:34 × python476 quits (~user@88.160.31.174) (Read error: Connection reset by peer)
11:31:58 × merijn quits (~merijn@83-160-49-249.ip.xs4all.nl) (Ping timeout: 264 seconds)
11:31:58 × juhp quits (~juhp@128.106.188.199) (Ping timeout: 248 seconds)
11:32:05 python476 joins (~user@88.160.31.174)
11:32:40 × smr quits (~smn@91-114-144-112.adsl.highway.telekom.at) (Ping timeout: 264 seconds)
11:33:15 × leeb quits (~leeb@2001:268:c04f:ba65:425b:d8ff:fe03:4cd) (Ping timeout: 272 seconds)
11:33:21 merijn joins (~merijn@83-160-49-249.ip.xs4all.nl)
11:33:44 × ksqsf quits (~textual@67.209.186.120.16clouds.com) (Client Quit)
11:34:35 <opqdonut> this is probably a dumb question... but can I catch a type error in template haskell?
11:34:42 <opqdonut> I'd like to write a test that a certain expression isn't well-typed
11:35:40 <dminuoso> opqdonut: Afaik no, because template haskell is ran during parsing.
11:36:15 <opqdonut> yeah that's kinda what I thought
11:36:25 kilolympus joins (~kilolympu@cpc92710-cmbg20-2-0-cust265.5-4.cable.virginm.net)
11:36:31 <opqdonut> I guess I could use a library to eval haskell at compile time
11:36:35 zzz[m] testing the matrix bridge, dont mind me
11:36:46 × nsilv-phone-1 quits (~nsilv-pho@host-82-50-119-12.retail.telecomitalia.it) (Ping timeout: 248 seconds)
11:37:06 <opqdonut> I guess I'll investigate run-time evaluation
11:37:10 winter joins (~winter@2603-6011-f901-9e5b-0000-0000-0000-08cf.res6.spectrum.com)
11:37:25 nsilv-phone joins (~nsilv-pho@37.160.131.29)
11:37:31 dunham joins (~dunham@97-113-35-16.tukw.qwest.net)
11:38:06 <kilolympus> When trying to find an instance for "m ()", GHC finds both the instances for "m ()" and "a -> b", when I want it to only match the first. Is this simply not possible, given "(->) a" is defined as a Monad in base?
11:38:11 <dminuoso> opqdonut: Well you can use ghc-lib presumably?
11:38:15 <opqdonut> hmm: https://hackage.haskell.org/package/hint
11:38:22 × merijn quits (~merijn@83-160-49-249.ip.xs4all.nl) (Ping timeout: 248 seconds)
11:38:35 <dminuoso> Or yeah, hint does the details for you
11:39:01 merijn joins (~merijn@83-160-49-249.ip.xs4all.nl)
11:39:27 <dminuoso> kilolympus: Can you elaborate what you mean by "instance for \"m ()\""? I dont see a constraint.
11:40:02 <dminuoso> Could you perhaps share the offending code as well as the diagnostic GHC produces?
11:40:58 × waleee quits (~waleee@h-98-128-228-119.NA.cust.bahnhof.se) (Ping timeout: 264 seconds)
11:41:59 × dunham quits (~dunham@97-113-35-16.tukw.qwest.net) (Ping timeout: 252 seconds)
11:42:10 × werneta quits (~werneta@70-142-214-115.lightspeed.irvnca.sbcglobal.net) (Ping timeout: 264 seconds)
11:42:19 zzz[m] is now known as zwro[m]
11:43:46 bfrk joins (~Thunderbi@200116b84508c2004c8614311807bd60.dip.versatel-1u1.de)
11:44:11 × merijn quits (~merijn@83-160-49-249.ip.xs4all.nl) (Ping timeout: 252 seconds)
11:44:57 merijn joins (~merijn@83-160-49-249.ip.xs4all.nl)
11:45:03 bhrgunatha joins (~bhrgunath@2001-b011-8011-6163-fde3-9a54-1125-48fe.dynamic-ip6.hinet.net)
11:46:22 ku joins (~ku@2601:280:c780:7ea0:bdb5:230d:40c:e48e)
11:47:32 <kilolympus> Ah never mind, I was doing something completely off-track
11:49:37 smitop joins (uid328768@user/smitop)
11:50:33 × merijn quits (~merijn@83-160-49-249.ip.xs4all.nl) (Ping timeout: 272 seconds)
11:51:12 merijn joins (~merijn@83-160-49-249.ip.xs4all.nl)
11:54:36 peddie[m] joins (~peddiemat@2001:470:69fc:105::25d)
11:55:29 × hydroxonium quits (uid500654@id-500654.stonehaven.irccloud.com) (Quit: Connection closed for inactivity)
11:56:30 × merijn quits (~merijn@83-160-49-249.ip.xs4all.nl) (Ping timeout: 248 seconds)
11:57:09 merijn joins (~merijn@83-160-49-249.ip.xs4all.nl)
11:57:14 × zava quits (~zava@ip5f5bdf0f.dynamic.kabel-deutschland.de) (Ping timeout: 264 seconds)
11:57:56 × ku quits (~ku@2601:280:c780:7ea0:bdb5:230d:40c:e48e) (Ping timeout: 252 seconds)
11:58:57 zava joins (~zava@ip5f5bdf0f.dynamic.kabel-deutschland.de)
11:59:57 mthvedt joins (uid501949@id-501949.stonehaven.irccloud.com)
12:00:11 × cfricke quits (~cfricke@user/cfricke) (Quit: WeeChat 3.1)
12:00:30 × fm quits (~fmeyer@p2e5339c6.dip0.t-ipconnect.de) (Quit: Leaving)
12:01:05 eggplantade joins (~Eggplanta@2600:1700:bef1:5e10:9d49:4665:d75d:fdb)
12:01:18 × winter quits (~winter@2603-6011-f901-9e5b-0000-0000-0000-08cf.res6.spectrum.com) (Ping timeout: 248 seconds)
12:01:56 argento joins (~argent0@168.227.96.51)
12:02:40 × merijn quits (~merijn@83-160-49-249.ip.xs4all.nl) (Ping timeout: 264 seconds)
12:02:49 merijn joins (~merijn@83-160-49-249.ip.xs4all.nl)
12:03:36 × hmmmas quits (~chenqisu1@183.217.202.217) (Quit: Leaving.)
12:05:34 × eggplantade quits (~Eggplanta@2600:1700:bef1:5e10:9d49:4665:d75d:fdb) (Ping timeout: 248 seconds)
12:06:30 sedeki joins (~textual@user/sedeki)
12:06:46 mastarija joins (~mastarija@46.188.157.7)
12:07:41 × merijn quits (~merijn@83-160-49-249.ip.xs4all.nl) (Ping timeout: 244 seconds)
12:08:26 × sedeki quits (~textual@user/sedeki) (Client Quit)
12:08:46 merijn joins (~merijn@83-160-49-249.ip.xs4all.nl)
12:10:34 Wally parts (~Wally@dragonbox/forum-staff/wally) ()
12:13:58 × merijn quits (~merijn@83-160-49-249.ip.xs4all.nl) (Ping timeout: 264 seconds)
12:14:22 × denis_ quits (~denis@212.193.135.213) (Quit: Leaving)
12:14:44 merijn joins (~merijn@83-160-49-249.ip.xs4all.nl)
12:15:34 × v01d4lph4 quits (~v01d4lph4@user/v01d4lph4) (Read error: Connection reset by peer)
12:16:01 v01d4lph4 joins (~v01d4lph4@user/v01d4lph4)
12:16:21 __monty__ joins (~toonn@user/toonn)
12:16:41 × Guest31_ quits (~textual@cpc146410-hari22-2-0-cust124.20-2.cable.virginm.net) (Quit: Textual IRC Client: www.textualapp.com)
12:17:34 × sondre quits (~sondrelun@eduroam-193-157-188-96.wlan.uio.no) (Ping timeout: 264 seconds)
12:19:00 × bhrgunatha quits (~bhrgunath@2001-b011-8011-6163-fde3-9a54-1125-48fe.dynamic-ip6.hinet.net) (Quit: Leaving)
12:20:30 sondre joins (~sondrelun@eduroam-193-157-188-96.wlan.uio.no)
12:20:40 × zava quits (~zava@ip5f5bdf0f.dynamic.kabel-deutschland.de) (Ping timeout: 264 seconds)
12:20:42 jaror[m] joins (~naughtmar@2001:470:69fc:105::265)
12:21:15 × tose quits (~tose@ip-85-160-8-1.eurotel.cz) (Remote host closed the connection)
12:21:22 lavaman joins (~lavaman@98.38.249.169)
12:22:11 × jaror[m] quits (~naughtmar@2001:470:69fc:105::265) (Client Quit)
12:22:28 jaror[m] joins (~jaror@2001:470:69fc:105::265)
12:23:10 favonia joins (~favonia@user/favonia)
12:26:05 × awth13 quits (~user@193.27.14.133) (Read error: Connection reset by peer)
12:26:06 × lavaman quits (~lavaman@98.38.249.169) (Ping timeout: 264 seconds)
12:26:39 y04nn joins (~y04nn@185.204.1.208)
12:27:31 × jaror[m] quits (~jaror@2001:470:69fc:105::265) (Quit: node-irc says goodbye)
12:27:38 × nschoe quits (~quassel@178.251.84.79) (Ping timeout: 252 seconds)
12:27:48 jaror[m] joins (~jaror@2001:470:69fc:105::265)
12:28:08 × taeaad quits (~taeaad@user/taeaad) (Quit: ZNC 1.7.5+deb4 - https://znc.in)
12:28:11 × v01d4lph4 quits (~v01d4lph4@user/v01d4lph4) (Read error: Connection reset by peer)
12:28:53 v01d4lph4 joins (~v01d4lph4@user/v01d4lph4)
12:29:14 zava joins (~zava@ip5f5bdf0f.dynamic.kabel-deutschland.de)
12:29:59 winter joins (~winter@2603-6011-f901-9e5b-0000-0000-0000-08cf.res6.spectrum.com)
12:30:47 nsilv joins (~nsilv@212.103.198.210)
12:31:13 taeaad joins (~taeaad@user/taeaad)
12:31:37 dunham joins (~dunham@97-113-35-16.tukw.qwest.net)
12:33:05 waleee joins (~waleee@2001:9b0:216:8200:d457:9189:7843:1dbd)
12:33:28 × wonko quits (~wjc@62.115.229.50) (Quit: See You Space Cowboy..)
12:33:59 Cubic joins (~hannesste@ip5f5be453.dynamic.kabel-deutschland.de)
12:34:31 tromp joins (~textual@dhcp-077-249-230-040.chello.nl)
12:36:03 Wally joins (~Wally@dragonbox/forum-staff/wally)
12:36:10 × dunham quits (~dunham@97-113-35-16.tukw.qwest.net) (Ping timeout: 264 seconds)
12:36:30 <tromp> testing 1...2...3
12:36:48 <Taneb> tromp: hello
12:37:03 <tromp> hi, Taneb, just moved to libera
12:37:34 × waleee quits (~waleee@2001:9b0:216:8200:d457:9189:7843:1dbd) (Ping timeout: 248 seconds)
12:37:50 <Taneb> Welcome :)
12:38:48 <tromp> also changed my IRC client. big change overall:)
12:42:04 <Hecate> tromp: which client is this?
12:43:57 rahguzar joins (~rahguzar@212.189.140.214)
12:45:19 <tromp> i went from LimeChat to Textual
12:46:18 × v01d4lph4 quits (~v01d4lph4@user/v01d4lph4) (Remote host closed the connection)
12:46:52 v01d4lph4 joins (~v01d4lph4@user/v01d4lph4)
12:47:33 <altern> johnw, I composed a question on StackOverflow: https://stackoverflow.com/questions/67728103/how-to-list-all-commits-with-gitlib Maybe you can help
12:47:52 <Vq> I considered upgrading from irssi to weechat or something like it, but I'm too lazy.
12:48:09 × khumba quits (~kvirc@user/khumba) (Ping timeout: 265 seconds)
12:48:25 <Vq> I've tried ERC a couple of times but it's not quite good enough.
12:51:19 <maerwald> great... I'm looking at my own lens code like a donkey at a starship factory
12:51:47 × haskman quits (~haskman@106.201.28.184) (Quit: Going to sleep. ZZZzzz…)
12:51:49 <Cubic> Sounds pretty normal and expected to me
12:52:01 <dminuoso> Since we presume a future time, who is to say the (generically modified) donkeys dont run the starship factory?
12:52:50 <dminuoso> Oh. Unless you mean the factory SpaceX makes starship. :<
12:52:58 × v01d4lph4 quits (~v01d4lph4@user/v01d4lph4) (Ping timeout: 264 seconds)
12:53:38 berberman_ joins (~berberman@user/berberman)
12:54:06 × winter quits (~winter@2603-6011-f901-9e5b-0000-0000-0000-08cf.res6.spectrum.com) (Ping timeout: 248 seconds)
12:54:06 × berberman quits (~berberman@user/berberman) (Ping timeout: 248 seconds)
12:55:04 <maerwald> Yeah, wouldn't be surprised if donkeys are smarter than me right now ;p
12:55:26 <Taneb> maerwald: how terrifying is the lens code
12:56:06 <maerwald> probably not at all, but if you forget what half of the functions do, there's no way to guess what the whole thing does
12:56:16 khumba joins (~khumba@S01066038e0ca1250.ok.shawcable.net)
12:56:20 <maerwald> too mechanical
12:57:20 <maerwald> nubOrd $ dls ^.. each %& indices (maybe (const True) (==) tool) %> each %& indices (matchTest versionRegex . T.unpack . prettyVer) % (viSourceDL % _Just `summing` viArch % each % each % each)
12:57:33 <maerwald> ^.^
12:57:46 <Taneb> Oh boy, that's a whole thing. Indexed lenses from the optics library?
12:58:01 <maerwald> yeah? ...I mean, yeah!
12:58:11 <boxscape> maerwald oh no, ^.^, yet another lens operator to learn
12:58:34 igghibu joins (~igghibu@37.120.201.94)
12:58:53 <Taneb> I don't know (%&) (I've not used optics)
12:58:56 juhp joins (~juhp@bb219-75-40-154.singnet.com.sg)
12:58:56 <dminuoso> That thing does..
12:59:05 <dminuoso> It's very clear to me, just dont know how to..
12:59:07 <dminuoso> No. Beats me.
12:59:38 <Cubic> I've been trying to run some end-to-end tests (with yesod-test) with a yesod experiment I'm running, and I've been trying to make API clients I'm using mockable for those
12:59:46 <maerwald> successfully beat my future self, yay
13:00:04 <boxscape> you mean... successfully beaten by your past-self
13:00:38 <Taneb> boxscape: either that or dminuoso is a time travelling maerwald
13:00:46 <boxscape> oh
13:00:49 <maerwald> lol
13:00:51 <boxscape> I had not considered that
13:00:53 <Cubic> things like Mockazo assume you can just add extra type parameters to your records, but if there's a way to tell yesod + yesod-test to work with extra constraints I'm not sure what it is
13:00:59 alx741 joins (~alx741@186.178.109.84)
13:01:13 xkapastel joins (uid17782@id-17782.tinside.irccloud.com)
13:02:49 <Cubic> I've also been trying to use freer for this but same problem. I've been handwriting my mocks so far to get around it, but I'm trying to sell Haskell at my company and that doesn't look good
13:05:07 × gzj quits (~GZJ0X@185.212.59.97.16clouds.com) (Remote host closed the connection)
13:05:11 jpds1 joins (~jpds@gateway/tor-sasl/jpds)
13:05:14 <maerwald> Cubic: isn't E2E basically browser tests with selenium?
13:05:27 gzj joins (~GZJ0X@185.212.59.97.16clouds.com)
13:05:29 jpds1 is now known as jpds
13:07:06 × gzj quits (~GZJ0X@185.212.59.97.16clouds.com) (Remote host closed the connection)
13:07:27 gzj joins (~GZJ0X@185.212.59.97.16clouds.com)
13:07:35 <Cubic> Maybe I'm using the wrong terminology, I'm talking about integration tests that run request->handler->output, doesn't actually involve spinning up a server or a browser
13:08:06 geekosaur joins (~geekosaur@069-135-003-034.biz.spectrum.com)
13:09:16 × argento quits (~argent0@168.227.96.51) (Ping timeout: 264 seconds)
13:10:00 × igghibu quits (~igghibu@37.120.201.94) (Quit: Textual IRC Client: www.textualapp.com)
13:10:07 × gzj quits (~GZJ0X@185.212.59.97.16clouds.com) (Read error: Connection reset by peer)
13:10:17 reumeth joins (~reumeth@2001:4652:9745:0:72c9:4eff:fea7:32ab)
13:10:27 gzj joins (~GZJ0X@185.212.59.97.16clouds.com)
13:10:38 × hiruji` quits (~hiruji@2606:6080:1001:18:8d41:9604:d435:36b6) (Read error: Connection reset by peer)
13:11:07 × gzj quits (~GZJ0X@185.212.59.97.16clouds.com) (Remote host closed the connection)
13:11:27 gzj joins (~GZJ0X@185.212.59.97.16clouds.com)
13:11:44 ddellacosta joins (~ddellacos@86.106.121.34)
13:11:56 hiruji joins (~hiruji@user/hiruji)
13:12:48 × dustingetz quits (~textual@pool-173-49-123-198.phlapa.fios.verizon.net) (Quit: My MacBook has gone to sleep. ZZZzzz…)
13:14:00 × geekosaur quits (~geekosaur@069-135-003-034.biz.spectrum.com) (Remote host closed the connection)
13:14:07 × gzj quits (~GZJ0X@185.212.59.97.16clouds.com) (Read error: Connection reset by peer)
13:14:15 geekosaur joins (~geekosaur@069-135-003-034.biz.spectrum.com)
13:14:24 Wanderer parts (~wanderer@user/wanderer) (Leaving)
13:14:27 gzj joins (~GZJ0X@185.212.59.97.16clouds.com)
13:14:39 tddpirate joins (~omer_zak@2a0d:6fc0:789:f200:a5ea:482d:1acf:8f67)
13:15:36 fizbin joins (~fizbin@c-73-33-197-160.hsd1.nj.comcast.net)
13:15:58 × ddellacosta quits (~ddellacos@86.106.121.34) (Ping timeout: 248 seconds)
13:16:59 nschoe joins (~quassel@178.251.84.79)
13:17:23 Kevin578 joins (~Kevin578@pool-98-110-163-110.bstnma.fios.verizon.net)
13:17:40 v01d4lph4 joins (~v01d4lph4@122.161.239.36)
13:17:40 × v01d4lph4 quits (~v01d4lph4@122.161.239.36) (Changing host)
13:17:40 v01d4lph4 joins (~v01d4lph4@user/v01d4lph4)
13:17:56 smr joins (~smn@91-114-144-112.adsl.highway.telekom.at)
13:18:37 werneta joins (~werneta@mobile-166-176-56-141.mycingular.net)
13:21:07 × gzj quits (~GZJ0X@185.212.59.97.16clouds.com) (Remote host closed the connection)
13:21:27 gzj joins (~GZJ0X@185.212.59.97.16clouds.com)
13:22:28 × v01d4lph4 quits (~v01d4lph4@user/v01d4lph4) (Ping timeout: 265 seconds)
13:22:37 <raehik> I have a bad memory, so I want to search for `_ -> Ordering` functions on Hoogle. How do I do that?
13:22:57 <raehik> just Ordering seems to search constructor/func names only
13:23:27 j4ck joins (~jack@net-93-151-148-49.cust.dsl.teletu.it)
13:23:44 <enicar> perhaps hoogle: a -> Ordering
13:24:22 dustingetz joins (~textual@pool-173-49-123-198.phlapa.fios.verizon.net)
13:24:36 twitch joins (~textual@pool-71-246-146-102.rich.east.verizon.net)
13:24:49 <raehik> enicar: that gives up and gives me all the a -> b funcs instead
13:25:08 × gzj quits (~GZJ0X@185.212.59.97.16clouds.com) (Remote host closed the connection)
13:25:14 <raehik> had to engage my brain and do a -> a -> Ordering but by then I'd already found it
13:25:26 <twitch> hey, I was wondering if someone could help explain why this example doesn't return the type [(a, a, a)]
13:25:28 gzj joins (~GZJ0X@185.212.59.97.16clouds.com)
13:25:28 <twitch> calcBmis :: (RealFloat a) => [(a, a)] -> [a]
13:25:28 <twitch> calcBmis xs = [bmi w h | (w, h) <- xs]
13:25:28 <twitch> where bmi weight height = weight / height ^ 2
13:25:44 dunham joins (~dunham@97-113-35-16.tukw.qwest.net)
13:25:45 <twitch> since in the comprehension, it's instructed to return bmi w h
13:26:02 <boxscape> twitch it would be [(a,a,a)] if it said (bmi, w, h)
13:26:07 × gzj quits (~GZJ0X@185.212.59.97.16clouds.com) (Read error: Connection reset by peer)
13:26:07 haskman joins (~haskman@106.201.28.184)
13:26:16 <boxscape> but with `bmi w h`, the function bmi is applied to the arguments w and h
13:26:27 gzj joins (~GZJ0X@185.212.59.97.16clouds.com)
13:26:30 <boxscape> which results in a single value, according to the definition of bmi
13:26:33 jao joins (~jao@cpc103048-sgyl39-2-0-cust502.18-2.cable.virginm.net)
13:26:40 <twitch> OH! it's a function! ha, neat
13:26:40 <boxscape> s/value/number
13:27:00 <twitch> thanks!
13:27:07 <boxscape> np
13:27:58 × cherryblossom000 quits (uid500853@stonehaven.irccloud.com) (Quit: Connection closed for inactivity)
13:28:03 alphabeta joins (~kilolympu@cpc92710-cmbg20-2-0-cust265.5-4.cable.virginm.net)
13:28:11 eggplantade joins (~Eggplanta@2600:1700:bef1:5e10:9d49:4665:d75d:fdb)
13:28:15 <enicar> raehik: bad
13:28:22 × alphabeta quits (~kilolympu@cpc92710-cmbg20-2-0-cust265.5-4.cable.virginm.net) (Remote host closed the connection)
13:28:59 <raehik> enicar: you mean engaging brain? yes ._. wont happen again
13:29:29 × zarebski quits (~aez@zoo-zarebski.zoo.ox.ac.uk) (Quit: WeeChat 3.0)
13:30:10 × dunham quits (~dunham@97-113-35-16.tukw.qwest.net) (Ping timeout: 264 seconds)
13:30:13 enicar is now known as enikar
13:31:15 × kilolympus quits (~kilolympu@cpc92710-cmbg20-2-0-cust265.5-4.cable.virginm.net) (Ping timeout: 272 seconds)
13:32:30 × eggplantade quits (~Eggplanta@2600:1700:bef1:5e10:9d49:4665:d75d:fdb) (Ping timeout: 248 seconds)
13:32:57 sedeki joins (~textual@user/sedeki)
13:33:57 egoist joins (~egoist@186.235.82.52)
13:34:59 × twitch quits (~textual@pool-71-246-146-102.rich.east.verizon.net) (Quit: Textual IRC Client: www.textualapp.com)
13:35:25 eggplantade joins (~Eggplanta@2600:1700:bef1:5e10:9d49:4665:d75d:fdb)
13:35:42 × mastarija quits (~mastarija@46.188.157.7) (Quit: Leaving)
13:37:10 × aplainzetakind quits (~johndoe@captainludd.powered.by.lunarbnc.net) (Quit: Free ZNC ~ Powered by LunarBNC: https://LunarBNC.net)
13:37:47 × sedeki quits (~textual@user/sedeki) (Quit: Textual IRC Client: www.textualapp.com)
13:39:09 v01d4lph4 joins (~v01d4lph4@user/v01d4lph4)
13:40:08 × tddpirate quits (~omer_zak@2a0d:6fc0:789:f200:a5ea:482d:1acf:8f67) (Quit: Leaving)
13:40:33 × werneta quits (~werneta@mobile-166-176-56-141.mycingular.net) (Ping timeout: 272 seconds)
13:41:22 × favonia quits (~favonia@user/favonia) (Quit: Leaving)
13:42:11 ddellacosta joins (~ddellacos@86.106.121.110)
13:43:42 × xff0x quits (~xff0x@2001:1a81:53e0:500:fcbd:71bd:7cab:f1d4) (Ping timeout: 248 seconds)
13:43:55 × v01d4lph4 quits (~v01d4lph4@user/v01d4lph4) (Ping timeout: 272 seconds)
13:44:09 tddpirate joins (~omer_zak@2a0d:6fc0:789:f200:a5ea:482d:1acf:8f67)
13:44:46 xff0x joins (~xff0x@2001:1a81:53e0:500:230:e4e3:4c7:7c57)
13:45:17 dunham joins (~dunham@97-113-35-16.tukw.qwest.net)
13:45:33 sedeki joins (~textual@user/sedeki)
13:47:25 × eightball quits (~jbrechtel@162-226-201-119.lightspeed.tukrga.sbcglobal.net) (Read error: Connection reset by peer)
13:47:36 × ddellacosta quits (~ddellacos@86.106.121.110) (Remote host closed the connection)
13:47:59 × eggplantade quits (~Eggplanta@2600:1700:bef1:5e10:9d49:4665:d75d:fdb) (Remote host closed the connection)
13:48:03 ddellacosta joins (~ddellacos@86.106.121.110)
13:48:07 tddpirate parts (~omer_zak@2a0d:6fc0:789:f200:a5ea:482d:1acf:8f67) (Leaving)
13:48:27 stackheap joins (~stackbear@pool-173-76-99-163.bstnma.fios.verizon.net)
13:48:51 × dy quits (~dy@user/dy) (Quit: Textual IRC Client: www.textualapp.com)
13:48:54 winter joins (~winter@2603-6011-f901-9e5b-0000-0000-0000-08cf.res6.spectrum.com)
13:49:09 dy joins (~dy@user/dy)
13:49:57 × stackheap quits (~stackbear@pool-173-76-99-163.bstnma.fios.verizon.net) (Remote host closed the connection)
13:51:25 stackbeard joins (~stackbear@pool-173-76-99-163.bstnma.fios.verizon.net)
13:51:28 × zzz quits (~yin@user/yin) (Ping timeout: 265 seconds)
13:51:54 × stackbeard quits (~stackbear@pool-173-76-99-163.bstnma.fios.verizon.net) (Remote host closed the connection)
13:51:54 aplainzetakind joins (~johndoe@captainludd.powered.by.lunarbnc.net)
13:52:07 × wei2912 quits (~wei2912@112.199.250.21) (Remote host closed the connection)
13:53:18 × fizbin quits (~fizbin@c-73-33-197-160.hsd1.nj.comcast.net) (Ping timeout: 248 seconds)
13:53:50 × merijn quits (~merijn@83-160-49-249.ip.xs4all.nl) (Ping timeout: 248 seconds)
13:54:54 × zava quits (~zava@ip5f5bdf0f.dynamic.kabel-deutschland.de) (Ping timeout: 264 seconds)
13:55:29 × ddellacosta quits (~ddellacos@86.106.121.110) (Remote host closed the connection)
13:55:59 ddellacosta joins (~ddellacos@86.106.121.110)
13:56:04 whiteline joins (~whiteline@c-64c6e253.54725-0-757473696b74.bbcust.telenor.se)
13:56:30 × ddellacosta quits (~ddellacos@86.106.121.110) (Remote host closed the connection)
13:56:38 ddellacosta joins (~ddellacos@86.106.121.110)
13:57:10 sayola joins (~vekto@dslb-088-078-152-150.088.078.pools.vodafone-ip.de)
13:57:44 zzz joins (~yin@user/yin)
13:57:49 aman joins (~lpyfist@user/aman)
14:00:19 social_anthrax joins (~social_an@cpc104814-sgyl39-2-0-cust79.18-2.cable.virginm.net)
14:01:07 merijn joins (~merijn@83-160-49-249.ip.xs4all.nl)
14:01:41 social_anthrax parts (~social_an@cpc104814-sgyl39-2-0-cust79.18-2.cable.virginm.net) ()
14:02:01 eggplantade joins (~Eggplanta@2600:1700:bef1:5e10:9d49:4665:d75d:fdb)
14:02:55 × winter quits (~winter@2603-6011-f901-9e5b-0000-0000-0000-08cf.res6.spectrum.com) (Ping timeout: 272 seconds)
14:03:35 ChrisSmith[m] joins (~cdsmithma@2001:470:69fc:105::284)
14:03:44 ChrisSmith[m] is now known as cdsmith
14:06:05 × dunham quits (~dunham@97-113-35-16.tukw.qwest.net) (Ping timeout: 252 seconds)
14:06:46 × python476 quits (~user@88.160.31.174) (Ping timeout: 264 seconds)
14:06:49 benin joins (~benin@183.82.177.19)
14:06:54 × eggplantade quits (~Eggplanta@2600:1700:bef1:5e10:9d49:4665:d75d:fdb) (Ping timeout: 264 seconds)
14:11:47 × tromp quits (~textual@dhcp-077-249-230-040.chello.nl) (Quit: My iMac has gone to sleep. ZZZzzz…)
14:12:51 eggplantade joins (~Eggplanta@2600:1700:bef1:5e10:9d49:4665:d75d:fdb)
14:15:50 basudev joins (~basudev@sourcehut/user/basudev)
14:16:22 × guest0123 quits (~aaron@2601:602:a080:fa0:3d68:2a1a:74b4:e9fa) (Ping timeout: 264 seconds)
14:17:18 × eggplantade quits (~Eggplanta@2600:1700:bef1:5e10:9d49:4665:d75d:fdb) (Ping timeout: 248 seconds)
14:17:47 × ddellacosta quits (~ddellacos@86.106.121.110) (Remote host closed the connection)
14:17:48 × pavonia quits (~user@user/siracusa) (Quit: Bye!)
14:18:15 ddellacosta joins (~ddellacos@86.106.121.110)
14:19:17 v01d4lph4 joins (~v01d4lph4@user/v01d4lph4)
14:20:57 ddellaco_ joins (~ddellacos@86.106.121.62)
14:23:06 × ddellacosta quits (~ddellacos@86.106.121.110) (Ping timeout: 264 seconds)
14:23:13 hughjfchen joins (~hughjfche@vmi556545.contaboserver.net)
14:23:34 × v01d4lph4 quits (~v01d4lph4@user/v01d4lph4) (Ping timeout: 244 seconds)
14:23:59 _73 joins (~user@pool-96-252-123-136.bstnma.fios.verizon.net)
14:24:09 × gzj quits (~GZJ0X@185.212.59.97.16clouds.com) (Read error: Connection reset by peer)
14:24:54 × hughjfchen quits (~hughjfche@vmi556545.contaboserver.net) (Client Quit)
14:26:48 × ddellaco_ quits (~ddellacos@86.106.121.62) (Remote host closed the connection)
14:27:17 ddellacosta joins (~ddellacos@86.106.121.62)
14:28:49 tose joins (~tose@ip-85-160-8-1.eurotel.cz)
14:29:42 tromp joins (~textual@dhcp-077-249-230-040.chello.nl)
14:31:50 × ddellacosta quits (~ddellacos@86.106.121.62) (Ping timeout: 244 seconds)
14:32:37 safinaskar joins (~user@109-252-90-89.nat.spd-mgts.ru)
14:33:33 sciencentistguy joins (~sciencent@212.102.63.133)
14:34:43 <safinaskar> hi! some time ago i asked on #haskell on freenode, why "length []" works. i got answer from geekosaur that answer is ExtendedDefaultRules. now i found that this is not true! look to ghc sources to https://github.com/ghc/ghc/blob/master/compiler/GHC/Builtin/Types.hs#L419 !
14:34:47 <safinaskar> geekosaur: ping
14:36:08 <safinaskar> length has type "Foldable t => t a -> Int"
14:36:08 <merijn> What? Why would "length []" need ExtendedDefaultrules?
14:36:29 × sedeki quits (~textual@user/sedeki) (Ping timeout: 272 seconds)
14:36:35 <safinaskar> merijn: of course, it doesn't need ExtendedDefaultrules, as i learned right now
14:36:39 <merijn> [] isn't polymorphic unless you enable extensions
14:36:53 <merijn> So it's straightforward typechecking
14:36:56 enikar thinks it was with ghci
14:36:57 <safinaskar> merijn: [] has polymorphic type "[a]"
14:36:59 × ukari quits (~ukari@user/ukari) (Remote host closed the connection)
14:37:24 <safinaskar> ghc picks type "Any" for "a" in "Foldable t => t a -> Int", not "()", not anything else
14:37:28 <merijn> safinaskar: But Foldable doesn't care about 'a', so it's not relevant
14:37:30 ukari joins (~ukari@user/ukari)
14:37:33 <safinaskar> read https://github.com/ghc/ghc/blob/master/compiler/GHC/Builtin/Types.hs#L419
14:37:45 <merijn> GHC doesn't have to pick anything for 'a'
14:38:01 ddellacosta joins (~ddellacos@89.46.62.116)
14:38:07 <safinaskar> merijn: but according to https://github.com/ghc/ghc/blob/master/compiler/GHC/Builtin/Types.hs#L419 , ghc still needs to pick something for "a", and ghc picks "Any"
14:42:17 <cdsmith> It's polymorphic in the element type.
14:42:19 nate1 joins (~nate@108-233-125-227.lightspeed.sntcca.sbcglobal.net)
14:42:37 monadlight joins (~chris@bras-vprn-nwmkon8540w-lp130-19-184-147-249-234.dsl.bell.ca)
14:42:50 <merijn> Yeah, but that's not relevant in the surface language
14:43:06 <merijn> The fact that GHC needs to pick something for it's Core IR is an implementation detail of GHC
14:43:44 <geekosaur> interesting
14:44:22 <monadlight> Hi haskellers! Newbie here. I'm trying to set up Emacs. Is haskell-language-server the way to go now? Looks like ghc-mod and dante are not updated for a while and possibly deprecated?
14:44:30 × z0k quits (~z0k@101.50.108.132) (Ping timeout: 248 seconds)
14:44:39 × ddellacosta quits (~ddellacos@89.46.62.116) (Remote host closed the connection)
14:44:50 <merijn> ghc-mod is deprecated and has been for multiple years by now (which it says in the readme)
14:45:08 ddellacosta joins (~ddellacos@89.46.62.116)
14:45:08 <merijn> dante is stack only, afaik, and no clue how maintained it is
14:45:30 <monadlight> BTW, I haven't used IRC for a loooooog time... pardon my lack of proper etiquette if I do anything newbie-ish.
14:45:34 <geekosaur> I thought dante was the doesn't-require-stack version of intero?
14:45:42 <merijn> Oh, maybe?
14:45:44 <merijn> I dunno
14:46:16 <monadlight> merijn: you use lsp in emacs?
14:46:31 <merijn> I don't use emacs :p
14:46:38 <geekosaur> but in any case hls has been getting all the work over the past several months
14:46:50 <geekosaur> ather than have N different projects all going their own directions
14:46:52 <merijn> s/months/year(s)
14:47:15 × involans quits (~alex@cpc92718-cmbg20-2-0-cust157.5-4.cable.virginm.net) (Ping timeout: 272 seconds)
14:47:24 <monadlight> merijn: vim / vscode?
14:48:01 <merijn> vim
14:48:10 <merijn> My brain is to vim addicted to use anything else
14:48:22 <monadlight> N diffrent projects all going their own directions... Is that a good thing or bad thing? LOL
14:48:39 dunham joins (~dunham@97-113-35-16.tukw.qwest.net)
14:48:43 <merijn> Any editors other than vim literally feels like missing a limb
14:48:49 <geekosaur> it means lots of duplicated or wasted effort
14:48:51 <Hafydd> My brain is, to vim, addicted.
14:48:52 <monadlight> merijn: I use Doom Emacs with vim (evil) binding
14:49:24 zava joins (~zava@ip5f5bdf0f.dynamic.kabel-deutschland.de)
14:50:11 <monadlight> Might switch to Onivim when it becomes stable and more usable.
14:50:13 × ddellacosta quits (~ddellacos@89.46.62.116) (Ping timeout: 272 seconds)
14:50:14 <merijn> monadlight: I considered it, but migrating my current setup to emacs will probably take me weeks/months
14:50:17 ddellaco_ joins (~ddellacos@86.106.121.23)
14:50:38 <enikar> merijn: I use dante, it's not stack only.
14:50:46 <monadlight> merijn: I can't live without magit. It's still the best git client
14:50:47 safinaskar parts (~user@109-252-90-89.nat.spd-mgts.ru) ()
14:50:57 <merijn> monadlight: Oh, I have a simple life-hack for that
14:50:58 <maerwald> yeah, git in vim is just bad
14:51:00 <maerwald> I use tig
14:51:08 <merijn> I just don't use git #Winning
14:51:13 <monadlight> LOL
14:51:17 <merijn> Mercurial is my git interface
14:51:17 <sciencentistguy> > /cursor
14:51:19 <lambdabot> <hint>:1:1: error: parse error on input ‘/’
14:51:24 <sciencentistguy> ah shit whoops
14:51:35 slowButPresent joins (~slowButPr@user/slowbutpresent)
14:52:03 <merijn> I'm not joking, I use actual git probably less than twice a month on average
14:52:57 × j4ck quits (~jack@net-93-151-148-49.cust.dsl.teletu.it) (Quit: Leaving)
14:54:21 <maerwald> as if mercurial was any better... it's like Go is to C... sure, maybe better, but not to the point that anyone cares
14:54:37 <monadlight> Well, anything you can elimnate in life is a good thing. If I don't have to use git, I would be happier too.
14:54:59 <maerwald> just remember: git rebase is the one magic command that includes all others
14:55:07 <monadlight> maerwald: Agree... I never care for Go. Waste of my ever shortening life... ;-)
14:55:07 <maerwald> you basically just need that one
14:55:45 <cdsmith> I always wanted darcs to win, but that hope has died...
14:56:06 <merijn> maerwald: It's better from a UI perspective
14:56:07 <maerwald> well, because GHC dropped it
14:56:17 <sciencentistguy> not a fan of Go either. Rust is by far my favourite low-level language
14:56:22 wroathe joins (~wroathe@c-68-54-25-135.hsd1.mn.comcast.net)
14:56:23 <maerwald> and they must have had goot reasons
14:56:49 <merijn> maerwald: I hope for something like darc/pijul, but neither of those are currently winning and I need to somehow interoperate with a damage world that prefers git
14:57:22 <cdsmith> Yeah, being the only user of a version control system is not useful, no matter how great the system!
14:57:38 <nsilv> the only reason i don't strongy dislike git right now is because i felt the pain of working with _Team Foundation Server_... still recovering from that
14:57:38 <maerwald> neither darcs nor pijul are simple. I don't believe in sophisticated stuff when it comes to everyday tools
14:57:44 <jrm> I just wish Rust didn't take ridiculous amounts of memory and time to build itself.
14:57:57 <maerwald> Implementation details will leak through... all the time, so you want the simplest and dumbest concept
14:57:59 <maerwald> and that is git
14:58:22 × _73 quits (~user@pool-96-252-123-136.bstnma.fios.verizon.net) (Ping timeout: 248 seconds)
14:58:24 <maerwald> the CLI interface is a different story
14:58:27 <sciencentistguy> jrm: To build rustc? yeah that is the downside of using an LLVM-based compiler
14:58:50 <cdsmith> maerwald: Not sure what you mean there. git looks far more complex than darcs ever was, to me.
14:58:57 <Hafydd> Does it take longer/more memory than GHC?
14:59:03 <monadlight> I've just gone through most of "Get Programming with Haskell" book.
14:59:08 <maerwald> cdsmith: the object model... a commit is a STATE. Period.
14:59:21 <jrm> sciencentistguy: Yes. When testing package builds, it's the only one that can take down my system if I'm not careful.
14:59:23 <maerwald> it's not a patch, because patch... what patch, compared to what?
14:59:44 <maerwald> if you can answer to me what a patch in darcs is in one simple sentence...
15:00:06 <maerwald> so 80% of users will never grok what it is
15:00:12 <siers> how do I withStrategy (parList rseq) . map f, but with traverse instead of map?
15:00:17 winter joins (~winter@2603-6011-f901-9e5b-0000-0000-0000-08cf.res6.spectrum.com)
15:00:39 × haskman quits (~haskman@106.201.28.184) (Quit: Going to sleep. ZZZzzz…)
15:00:47 <jrm> Hafydd: Fairly confident the answer is 'yes'.
15:01:33 <Hafydd> I think GHC was fairly Fat the last time I tried compiling or (or, indeed, installing a pre-made binary), so that would be impressive.
15:02:08 <cdsmith> siers: I'm not sure that makes sense. mapM cannot be parallelized, in general.
15:02:13 <cdsmith> I mean, traverse. Same thing
15:03:38 <sciencentistguy> i don't think i've ever compiled GHC myself, but compiling haskell-language-server took an age on my (pretty powerful) desktop so i can't imaging GHC is much better
15:03:47 doublex joins (~doublex@2601:542:c480:6ee0:84eb:7213:de16:e82e)
15:04:16 siers parts (~ij@user/ij) (WeeChat 2.9)
15:04:20 siers joins (~ij@user/ij)
15:04:28 × immibis quits (~immibis@62.156.144.218) (Remote host closed the connection)
15:04:35 <siers> cdsmith, well, surely it can
15:05:11 <boxscape> presumably you can parallelize the map part but not the M part?
15:05:27 <boxscape> (in general)
15:05:32 <enikar> monadlight: I loved reading this book.
15:05:34 × lortabac quits (~lortabac@2a01:e0a:541:b8f0:fdcc:9f0a:2fc4:5c69) (Quit: WeeChat 2.8)
15:05:54 × sondre quits (~sondrelun@eduroam-193-157-188-96.wlan.uio.no) (Ping timeout: 265 seconds)
15:06:03 × aman quits (~lpyfist@user/aman) (Quit: aman)
15:06:32 <siers> I guess parallel package is for pure stuff. parallel-io has parallel :: [IO a] -> IO [a]
15:06:58 × dunham quits (~dunham@97-113-35-16.tukw.qwest.net) (Ping timeout: 244 seconds)
15:07:25 _73 joins (~user@pool-96-252-123-136.bstnma.fios.verizon.net)
15:07:46 haskman joins (~haskman@106.201.28.184)
15:07:58 <cdsmith> siers: Yeah, strategies is for evaluation strategies, which don't affect the result. If you want to run IO actions in parallel, that is a change in the result, so you need to say so. (Other monads, like State, just cannot be performed in parallel at all)
15:09:13 <monadlight> enikar: the way the book explains Monad and Applicative is easier than most other explanation I've read before.
15:09:19 involans joins (~alex@cpc92718-cmbg20-2-0-cust157.5-4.cable.virginm.net)
15:09:46 × tose quits (~tose@ip-85-160-8-1.eurotel.cz) (Ping timeout: 264 seconds)
15:10:06 × dunj3 quits (~dunj3@2001:16b8:3064:9000:3cac:ae41:dda8:223b) (Ping timeout: 248 seconds)
15:10:19 <monadlight> And the fact that it's ~400 pages long instead of 1400 pages long also help trememously for newbie like me. :-)
15:11:10 Dynom joins (~niels@80-114-12-206.cable.dynamic.v4.ziggo.nl)
15:11:12 spirgel joins (spirgel@gateway/vpn/protonvpn/spirgel)
15:11:42 × reumeth quits (~reumeth@2001:4652:9745:0:72c9:4eff:fea7:32ab) (Ping timeout: 248 seconds)
15:11:54 sondre joins (~sondrelun@eduroam-193-157-188-96.wlan.uio.no)
15:12:50 × img quits (~img@2405:6580:b1c0:2500:6e94:ae4a:a398:5347) (Quit: ZNC 1.8.1 - https://znc.in)
15:13:11 img joins (~img@2405:6580:b1c0:2500:6e94:ae4a:a398:5347)
15:13:21 × connrs quits (~connrs@s1.connrs.uk) (Quit: ZNC 1.8.2 - https://znc.in)
15:13:34 <_73> I will have list of about 4 billion items that I will be updating using indexes. I will have variables holding integers that represent important indexes and I will be accessing and updating items using offsets from said indexes. I would like to use a immutable data structure. What data structure would you recommend?
15:13:35 dunham joins (~dunham@97-113-35-16.tukw.qwest.net)
15:13:42 <sciencentistguy> "Haskell programming from first principles" is the best haskell book i've read
15:14:32 doublex_ joins (~doublex@2601:542:c480:6ee0:a5a3:1270:f9ea:4275)
15:14:50 × doublex_ quits (~doublex@2601:542:c480:6ee0:a5a3:1270:f9ea:4275) (Client Quit)
15:14:54 × spirgel_ quits (spirgel@gateway/vpn/protonvpn/spirgel) (Ping timeout: 248 seconds)
15:15:08 <tomsmeding> _73: MVector (mutable vector) from https://hackage.haskell.org/package/vector-0.12.3.0/docs/Data-Vector-Mutable.html ?
15:15:29 <boxscape> tomsmeding they said "IMmutable" :)
15:15:40 <tomsmeding> facepalm
15:15:45 <tomsmeding> Data.Map
15:15:50 <tomsmeding> or I guess Data.IntMap
15:16:07 <enikar> monadlight: I agree.
15:16:12 <merijn> SQLite :p
15:16:26 platz joins (~platz@user/platz)
15:16:32 × sondre quits (~sondrelun@eduroam-193-157-188-96.wlan.uio.no) (Ping timeout: 265 seconds)
15:16:33 <_73> ill try a map and see how it goes
15:16:41 <siers> merijn, I like your answer :D
15:16:56 <merijn> The answer is always more SQLite :p
15:17:03 <tomsmeding> though I wonder if you'd be able to do some optimisation of the data structure by knowing that the indices are contiguous
15:17:11 <_73> ya a database is probably the only way to actually be efficient but I am going for simplicity
15:17:14 ku joins (~ku@2601:280:c780:7ea0:bdb5:230d:40c:e48e)
15:17:32 <tomsmeding> most probably you can save some memory by not storing all the keys redundantly
15:17:43 <tomsmeding> _73: how much data per item
15:17:50 favonia joins (~favonia@user/favonia)
15:18:03 <boxscape> 4 billion items is quite a bit of RAM
15:18:07 <_73> length 8 BitVectors from Data.BitVector.
15:18:50 <tomsmeding> okay then the overhead from the map is going to be like 16x your data
15:18:51 stackbeard joins (~stackbear@pool-173-76-99-163.bstnma.fios.verizon.net)
15:18:54 <tomsmeding> if not more
15:19:36 learner-monad joins (~ehanneken@cpe-174-105-47-100.columbus.res.rr.com)
15:19:41 <tomsmeding> also BitVector itself is not all too space-efficient if I read the definition correctly; it seems to store the bits in an Integer
15:20:09 <tomsmeding> _73: is it worth optimising the memory usage a bit? Or do you have a 128GB machine :p
15:20:38 <tomsmeding> also I would suggest reconsidering the requirement for the data structure to be immutable :p
15:21:56 <_73> it seems that I am going to have to optimise
15:22:32 × involans quits (~alex@cpc92718-cmbg20-2-0-cust157.5-4.cable.virginm.net) (Ping timeout: 252 seconds)
15:22:55 <tomsmeding> well I can think of a data structure that can store this compactly (in, like 4GB, given that there are 4 billion bytes to store) -- a mutable vector :p
15:23:10 <tomsmeding> an immutable vector will not work for updating
15:23:31 eggplantade joins (~Eggplanta@2600:1700:bef1:5e10:9d49:4665:d75d:fdb)
15:23:58 <boxscape> (not efficiently, anyway :P)
15:24:16 × merijn quits (~merijn@83-160-49-249.ip.xs4all.nl) (Ping timeout: 264 seconds)
15:24:18 <tomsmeding> updating elements of a 4GB immutable vector transcends simple "inefficient" for me
15:24:34 × zmt01 quits (~zmt00@c-24-4-119-97.hsd1.ca.comcast.net) (Changing host)
15:24:34 zmt01 joins (~zmt00@user/zmt00)
15:24:42 zmt01 is now known as zmt00
15:25:28 sondre joins (~sondrelun@eduroam-193-157-188-96.wlan.uio.no)
15:25:43 <boxscape> would MVector s Word8 be the right choice here then?
15:26:14 <tomsmeding> I would say so
15:26:19 <_73> I have never used a mutable data structure before in haskell so I don't know what problems this may cause. I have data type called `ProgramState` that is a record where one of its fields would be the MVector. All of my functions use the state type and are `f :: a -> a -> State ProgramState b`. Is this going to cause problems.
15:26:32 <tomsmeding> hm no, you need unboxed because boxed Word8 is still like 32 bytes
15:26:34 myShoggoth joins (~myShoggot@97-120-89-117.ptld.qwest.net)
15:26:39 <boxscape> ah, right
15:26:55 <tomsmeding> Data.Vector.Unboxed.Mutable it would be then
15:27:36 × oats quits (~thomas@user/oats) (Quit: until later, my friends)
15:27:38 <tomsmeding> _73: using a mutable vector would require that `f` gets type `f :: a -> a -> IO (State ProgramState b)` if you choose the IO variant
15:27:54 <tomsmeding> you can also use the ST variant, in which case the IO gets replaced with `ST s`
15:27:58 oats joins (~thomas@user/oats)
15:28:00 × sciencentistguy quits (~sciencent@212.102.63.133) (Quit: WeeChat 3.1)
15:28:09 sciencentistguy joins (~sciencent@212.102.63.133)
15:28:13 × eggplantade quits (~Eggplanta@2600:1700:bef1:5e10:9d49:4665:d75d:fdb) (Ping timeout: 272 seconds)
15:28:15 <tomsmeding> Using ST is nice in that you don't need to live in IO; there is a function `runST :: (forall s. ST s a) -> a`
15:28:19 <cdsmith> _73: That sort of state-transformer architecture with a mutable structure is dangerous. It would still work as long as you only access the state in a linear way, but if you access old versions of ProgramState, they will still have the latest contents of the vector.
15:28:43 <tomsmeding> cdsmith++
15:29:50 × sondre quits (~sondrelun@eduroam-193-157-188-96.wlan.uio.no) (Ping timeout: 248 seconds)
15:30:25 eggplantade joins (~Eggplanta@2600:1700:bef1:5e10:b043:8b77:c7da:42a0)
15:33:01 <tomsmeding> assuming I'm not making mistakes in my calculations, and assuming a ShortByteString has 16 bytes of overhead (not sure if accurate), an immutable datastructure in the form of a tree seems to always require at least 32GB of memory to store 4GB of data
15:33:25 tomsmeding 's calculations are incorrect
15:33:25 × onion quits (~zzz@user/yin) (Quit: onion)
15:33:27 sondre joins (~sondrelun@eduroam-193-157-188-96.wlan.uio.no)
15:33:59 lbseale joins (~lbseale@ip72-194-54-201.sb.sd.cox.net)
15:34:20 tomsmeding is stupid
15:34:30 holy_ joins (~h01y_b4z0@2400:adc1:178:c800:9e45:76a9:57f2:1665)
15:34:33 × smr quits (~smn@91-114-144-112.adsl.highway.telekom.at) (Quit: WeeChat 3.1)
15:36:48 <tomsmeding> okay assuming 16 bytes of overhead on a ShortByteString and 64-byte (thus 64-entry) leaves, it seems to be optimal to have a branching factor of 4, yielding 6GB of memory usage with optimal heap packing without excess space
15:37:49 <_73> I am going to totally reconsider what I am doing here
15:37:58 <tomsmeding> with 256-byte leaves (4 cache lines, perhaps a reasonable tradeoff) you need 4.5GB ram
15:38:06 <tomsmeding> _73: don't mind me going off on tangents :p
15:38:16 <tomsmeding> but this is going to require a lot of memory
15:38:44 × tromp quits (~textual@dhcp-077-249-230-040.chello.nl) (Quit: My iMac has gone to sleep. ZZZzzz…)
15:38:49 tomsmeding is going to hack this immutable thing together anyway to see how bad it is
15:38:59 <cdsmith> _73: I agree that this seems wise. Depending on 4 GB or more of state to live in memory probably means you should be changing your design, or looking into external storage
15:39:07 <boxscape> you have 6GB of memory usage but only need 4.5 GB ram?
15:39:13 <boxscape> oh wait
15:39:16 sedeki joins (~textual@user/sedeki)
15:39:19 <boxscape> those are two different options
15:39:54 <tomsmeding> yeah
15:40:54 × fjmorazan quits (~quassel@user/fjmorazan) (Quit: fjmorazan)
15:41:59 fjmorazan joins (~quassel@user/fjmorazan)
15:43:06 × basudev quits (~basudev@sourcehut/user/basudev) (Quit: basudev)
15:44:23 × ubert quits (~Thunderbi@2a02:8109:9880:303c:ca5b:76ff:fe29:f233) (Remote host closed the connection)
15:45:35 involans joins (~alex@cpc92718-cmbg20-2-0-cust157.5-4.cable.virginm.net)
15:46:14 connrs joins (~connrs@s1.connrs.uk)
15:47:09 werneta joins (~werneta@mobile-166-176-57-62.mycingular.net)
15:48:26 × ccntrq quits (~ccntrq@business-90-187-183-141.pool2.vodafone-ip.de) (Remote host closed the connection)
15:49:32 zyzzyxdonta joins (~zyzzyxdon@p54bdfeea.dip0.t-ipconnect.de)
15:49:41 root___ joins (~bwe@2a01:4f8:1c1c:4878::2)
15:49:51 root___ is now known as bwe
15:50:01 bwe is now known as register
15:50:10 fizbin joins (~fizbin@c-73-33-197-160.hsd1.nj.comcast.net)
15:50:14 register is now known as identify
15:50:28 identify is now known as bwe
15:50:43 × zyzzyxdonta quits (~zyzzyxdon@p54bdfeea.dip0.t-ipconnect.de) (Client Quit)
15:51:58 merijn joins (~merijn@83-160-49-249.ip.xs4all.nl)
15:52:09 Tomurb joins (~tom@158.194.92.121)
15:52:34 Morrow joins (~MorrowM_@bzq-110-168-31-106.red.bezeqint.net)
15:53:17 × bwe quits (~bwe@2a01:4f8:1c1c:4878::2) (Remote host closed the connection)
15:53:27 root___ joins (~bwe@2a01:4f8:1c1c:4878::2)
15:54:12 × root___ quits (~bwe@2a01:4f8:1c1c:4878::2) (Remote host closed the connection)
15:54:25 root___ joins (~bwe@2a01:4f8:1c1c:4878::2)
15:54:32 hnOsmium0001 joins (uid453710@id-453710.stonehaven.irccloud.com)
15:56:03 × monadlight quits (~chris@bras-vprn-nwmkon8540w-lp130-19-184-147-249-234.dsl.bell.ca) (Ping timeout: 244 seconds)
15:56:34 × merijn quits (~merijn@83-160-49-249.ip.xs4all.nl) (Ping timeout: 244 seconds)
15:58:41 × root___ quits (~bwe@2a01:4f8:1c1c:4878::2) (Remote host closed the connection)
15:58:47 bwe joins (~bwe@2a01:4f8:1c1c:4878::2)
15:59:10 × connrs quits (~connrs@s1.connrs.uk) (Quit: ZNC 1.8.2 - https://znc.in)
15:59:41 × bwe quits (~bwe@2a01:4f8:1c1c:4878::2) (Remote host closed the connection)
15:59:48 bwe joins (~bwe@2a01:4f8:1c1c:4878::2)
15:59:59 connrs joins (~connrs@s1.connrs.uk)
16:00:05 × nsilv quits (~nsilv@212.103.198.210) (Quit: WeeChat 3.0.1)
16:02:58 × sedeki quits (~textual@user/sedeki) (Quit: Textual IRC Client: www.textualapp.com)
16:03:58 × bfrk quits (~Thunderbi@200116b84508c2004c8614311807bd60.dip.versatel-1u1.de) (Ping timeout: 248 seconds)
16:06:08 × connrs quits (~connrs@s1.connrs.uk) (Quit: ZNC 1.8.2 - https://znc.in)
16:06:38 × ku quits (~ku@2601:280:c780:7ea0:bdb5:230d:40c:e48e) (Ping timeout: 248 seconds)
16:06:41 <Athas> Pretty funny that ony of the Haskell Foundation board members has the surname "Boardman".
16:06:48 connrs joins (~connrs@s1.connrs.uk)
16:07:03 Bartosz joins (~textual@50.35.215.151)
16:08:46 × Tomurb quits (~tom@158.194.92.121) (Ping timeout: 248 seconds)
16:09:18 × holy_ quits (~h01y_b4z0@2400:adc1:178:c800:9e45:76a9:57f2:1665) (Ping timeout: 264 seconds)
16:10:25 × ddellaco_ quits (~ddellacos@86.106.121.23) (Remote host closed the connection)
16:10:54 ddellacosta joins (~ddellacos@86.106.121.23)
16:12:50 × chaosite quits (~chaosite@user/chaosite) (Ping timeout: 264 seconds)
16:13:26 × coot quits (~coot@37.30.49.19.nat.umts.dynamic.t-mobile.pl) (Ping timeout: 264 seconds)
16:15:15 <zwro[m]> is it possible to ask ghci to evaluate a line without opening the repl?
16:16:43 ccntrq joins (~ccntrq@dynamic-077-008-029-067.77.8.pool.telefonica.de)
16:17:00 <geekosaur> are you thinking of ghc -e?
16:18:21 <geekosaur> https://downloads.haskell.org/ghc/latest/docs/html/users_guide/using.html#expression-evaluation-mode
16:18:30 <Hecate> zwro[m]: ❯ ghc -e "print \"lol\""
16:18:30 <Hecate> "lol"
16:18:46 × fizbin quits (~fizbin@c-73-33-197-160.hsd1.nj.comcast.net) (Ping timeout: 264 seconds)
16:20:11 thelounge92 joins (~thelounge@cpe-23-240-28-18.socal.res.rr.com)
16:20:30 tzh joins (~tzh@c-24-21-73-154.hsd1.or.comcast.net)
16:20:50 <zwro[m]> thats it thanks
16:20:52 yumaikas- joins (~yumaikas@2601:281:c700:4240:90f1:d2bf:b6e2:acbf)
16:23:06 nsilv-phone-1 joins (~nsilv-pho@host-82-50-119-12.retail.telecomitalia.it)
16:23:17 lavaman joins (~lavaman@98.38.249.169)
16:24:22 <doublex> > take 15 (cycle "lo")
16:24:23 <lambdabot> "lololololololol"
16:25:22 × ddellacosta quits (~ddellacos@86.106.121.23) (Remote host closed the connection)
16:25:28 a6a45081-2b83 joins (~aditya@106.212.79.20)
16:25:32 ddellacosta joins (~ddellacos@86.106.121.23)
16:25:50 <a6a45081-2b83> > let x=1:x in x
16:25:52 <lambdabot> [1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1...
16:26:03 × nsilv-phone quits (~nsilv-pho@37.160.131.29) (Ping timeout: 272 seconds)
16:26:07 <a6a45081-2b83> i thought it'd crash lambdabot
16:26:26 argento joins (~argent0@168.227.96.51)
16:26:35 <tomsmeding> _73: I have an immutable data structure that takes about 7GB of memory to store 2^30 bytes, but it's terribly slow: single-byte set operations take 22 seconds on my (fast) machine
16:26:37 <Athas> I don't know when lambdabot was first written, but I know an infinite list must have been among the first handful of expressions it ever evaluated.
16:27:07 <geekosaur> @v
16:27:07 <lambdabot> "\"\\\"\\\\\\\"\\\\\\"
16:27:38 benin8 joins (benin@gateway/vpn/protonvpn/benin)
16:27:53 <davean> a6a45081-2b83: Haskell, being a lazy language, makes it easy to deal with infinite data
16:28:04 × lavaman quits (~lavaman@98.38.249.169) (Ping timeout: 265 seconds)
16:28:06 seabass joins (~sebastian@user/seabass)
16:28:15 <seabass> davean: now we can chat here :D
16:28:26 <tomsmeding> _73: https://paste.tomsmeding.com/OHvMJ9ci
16:28:28 tomsmeding is off to dinner
16:28:32 <davean> lol
16:28:41 <hololeap> type family SomeWrapper a :: Type -> Type
16:28:46 <hololeap> data Thing a = This (SomeWrapper a a) | That
16:28:47 <davean> seabass: BTW I did figure it out, my alt-key was stuck down
16:28:53 <a6a45081-2b83> how to send a start message?
16:28:55 <seabass> davean, ah, right :D
16:29:04 × benin quits (~benin@183.82.177.19) (Ping timeout: 264 seconds)
16:29:04 <wroathe> tomsmeding: Did you just whip all of that up in the last few minutes?
16:29:05 benin8 is now known as benin
16:29:19 × connrs quits (~connrs@s1.connrs.uk) (Quit: ZNC 1.8.2 - https://znc.in)
16:29:19 <hololeap> is there a way to make a Functor instance for Thing? it seems impossible since Functor is not allowed to reference `a` and thus we can't tell if `SomeWrapper a` is a Functor
16:29:26 × boxscape quits (~boxscape@user/boxscape) (Quit: Connection closed)
16:29:45 <seabass> davean: I get the opposite: not holding the control key down and typing Emacs keybindings fills my buffer with random b, d, ws etc etc
16:29:57 <seabass> I like that GHCI has GNU-style keybidings
16:30:03 tromp joins (~textual@dhcp-077-249-230-040.chello.nl)
16:30:17 <davean> well, by default - they're configurable
16:30:18 × simendsjo quits (~user@cm-84.211.91.241.getinternet.no) (Ping timeout: 264 seconds)
16:30:21 connrs joins (~connrs@s1.connrs.uk)
16:31:32 <hololeap> I thought I had seen people get around this by making it `data Thing a a = ...`, but GHC complains about conflicting definitions of `a` when I try that
16:31:57 <seabass> davean: yes, indeed :). BTW, I've just noticed that this channel is publically logged, so please excuse me if I swim off...
16:32:22 <davean> seabass: fairwell
16:32:24 × T_S__ quits (sid501726@id-501726.highgate.irccloud.com) ()
16:32:38 <seabass> bye! :)
16:32:41 seabass parts (~sebastian@user/seabass) (Bye!)
16:34:28 × connrs quits (~connrs@s1.connrs.uk) (Client Quit)
16:34:35 <hololeap> anyone?
16:35:07 connrs joins (~connrs@s1.connrs.uk)
16:35:29 ubert joins (~Thunderbi@p200300ecdf259d8974882ed522245916.dip0.t-ipconnect.de)
16:35:47 merijn joins (~merijn@83-160-49-249.ip.xs4all.nl)
16:37:27 [Kalisto] joins (~Nico@user/kalisto/x-8968079)
16:37:42 Tuplanolla joins (~Tuplanoll@91-159-68-239.elisa-laajakaista.fi)
16:37:43 benin5 joins (~benin@183.82.177.19)
16:37:53 × nschoe quits (~quassel@178.251.84.79) (Ping timeout: 272 seconds)
16:38:21 holy_ joins (~h01y_b4z0@2400:adc1:178:c800:9e45:76a9:57f2:1665)
16:39:42 × benin quits (benin@gateway/vpn/protonvpn/benin) (Ping timeout: 248 seconds)
16:39:42 benin5 is now known as benin
16:40:56 <rahguzar> hololeap : I am confused what you are trying to do . And your trying to define `data Thing a a` makes me think you are confused too. Though I might be wrong
16:41:50 × winter quits (~winter@2603-6011-f901-9e5b-0000-0000-0000-08cf.res6.spectrum.com) (Ping timeout: 248 seconds)
16:42:44 <hololeap> that was just something I tried. I'm trying to make a Functor instance for Thing given the definitions above
16:42:58 × spirgel quits (spirgel@gateway/vpn/protonvpn/spirgel) ()
16:43:15 × da39a3ee5e6b4b0d quits (~textual@2403:6200:8876:ee80:e020:f584:6e47:bcb0) (Quit: Textual IRC Client: www.textualapp.com)
16:43:38 × Bartosz quits (~textual@50.35.215.151) (Quit: My MacBook has gone to sleep. ZZZzzz…)
16:44:32 × a6a45081-2b83 quits (~aditya@106.212.79.20) (Quit: Konversation terminated!)
16:44:55 a6a45081-2b83 joins (~aditya@106.212.79.20)
16:44:56 <rahguzar> I don't think that is generally possible. Whether or not `Thing a` can be factor depends on what `SomeWrapper a` is i.e the implementation of your type family.
16:46:20 <hololeap> right, I would have to reference `a`, so that I could use the constraint (Functor (SomeWrapper a)), but since Functor is ((* -> *) -> Constraint), it's not allowed to reference `a`
16:46:56 <hololeap> I thought there might be some way to get around this
16:47:59 <cheater> zwro[m]: there's also runhaskell which can be used in a shebang
16:49:02 Ariakenom joins (~Ariakenom@2001:9b1:efb:fc00:9b0:fc3f:488a:32da)
16:50:39 <rahguzar> I don't know what you mean by referencing `a` here. You need to implement `fmap :: (a -> b) -> Thing a -> Thing b` whether such a function exists depends on what `SomeWrapper a a` is. Maybe it is `a` , maybe it is (a,a) . In these cases a `Functor` instance is possible.
16:52:23 <tomsmeding> wroathe: well more than a few minutes, but yes
16:52:45 <hololeap> I would need to be able to say (Functor (SomeWrapper a) => ...) wouldn't I?
16:52:58 <dminuoso> hololeap: That wont work either
16:53:02 × Morrow quits (~MorrowM_@bzq-110-168-31-106.red.bezeqint.net) (Ping timeout: 248 seconds)
16:53:25 <tomsmeding> wroathe: directory created 17:38 my local time, paste sent 18:28, so took me 50 minutes :p
16:53:36 rk04 joins (~rk04@103.232.8.236)
16:53:50 <hololeap> dminuoso: why not?
16:54:05 <rahguzar> But maybe it is `SomeWrapper a a` is `Int` if `a` is `Int` and otherwise it is `Double` for that there won't be.
16:54:33 <hololeap> well, I did specify that (SomeWrapper a) has kind (Type -> Type)
16:54:51 <dminuoso> hololeap: Consider the type of fmap
16:54:57 <dminuoso> % :t fmap
16:54:57 <yahb> dminuoso: Functor f => (a -> b) -> f a -> f b
16:55:43 <dminuoso> See how the type variable must be free to change? You need some additional degree of freedom to express this in a constraint, perhaps QuantifiedConstraints?
16:56:17 v01d4lph4 joins (~v01d4lph4@user/v01d4lph4)
16:56:20 tremon joins (~tremon@217-63-61-89.cable.dynamic.v4.ziggo.nl)
16:57:04 orzo joins (joe@lasker.childrenofmay.org)
16:57:10 <dminuoso> hololeap: Presumably you dont have access to SomeWrapper's constructor, right?
16:57:10 <hololeap> cool, haven't heard of that. I will check it out
16:57:43 × xff0x quits (~xff0x@2001:1a81:53e0:500:230:e4e3:4c7:7c57) (Ping timeout: 272 seconds)
16:58:04 isovector1 joins (~isovector@172.103.216.166)
16:58:05 <hololeap> it would depend on which `a` we're talking about in (SomeWrapper a)
16:58:09 <isovector1> does anyone use the `replace _ with <e>` code actions in HLS today?
16:58:25 <isovector1> wondering if anyone will be upset if they were to disappear
16:58:33 <dminuoso> hololeap: The thing is, if you stare at the type of fmap and set `f ~ SomeWrapper a` (Im playing fast and lose with type unification here)
16:58:36 <dminuoso> then you get:
16:58:50 simendsjo joins (~user@cm-84.211.91.241.getinternet.no)
16:58:54 × wroathe quits (~wroathe@c-68-54-25-135.hsd1.mn.comcast.net) (Ping timeout: 248 seconds)
16:58:59 <hololeap> but with the Functor interface, we wouldn't need to know what constructor is used
16:59:06 xff0x joins (~xff0x@2001:1a81:53fe:8d00:3833:823b:7d79:69a2)
16:59:22 <hololeap> just that (SomeWrapper a) is a Functor
16:59:36 <dminuoso> Well, then you wont have a valid functor instance for your data type
17:00:01 <dminuoso> You could coerce your way out if the first type variable was a phantom type, maybe
17:00:16 <dminuoso> Let's make this happen real fast
17:00:26 <dminuoso> % data Pair a b = Pair a b
17:00:27 <yahb> dminuoso:
17:00:30 <dminuoso> % data Pair a b = Pair a b deriving Functor
17:00:30 <yahb> dminuoso:
17:00:49 <dminuoso> % data Foo a = Foo (Pair a a)
17:00:49 <yahb> dminuoso:
17:01:24 pe200012_ joins (~pe200012@218.107.17.245)
17:01:43 <dminuoso> Assuming you dont have access to the data constructor of Pair, then `fmap f :: Pair a Int -> Pair a Char` for the same of argument
17:01:57 × pe200012 quits (~pe200012@119.131.208.84) (Ping timeout: 272 seconds)
17:01:58 <dminuoso> See how the first type argument is fixed?
17:02:25 <dminuoso> You'd require `Bifunctor Pair` at the least
17:02:52 arjun joins (~user@user/arjun)
17:03:08 <dminuoso> such that you can write `instance Functor Foo where fmap f (Foo pair) = Foo (bimap f pair)`
17:03:49 tomferon[m] joins (~tomferon@2001:470:69fc:105::268)
17:03:52 <dminuoso> (Dont know from the top off my head whether that would satisfy functor laws, naively Id say yes but I dont have a good reason)
17:03:54 × dmwit quits (~dmwit@pool-173-66-86-32.washdc.fios.verizon.net) (Ping timeout: 264 seconds)
17:04:27 <dminuoso> oh hold on
17:04:32 <dminuoso> `instance Functor Foo where fmap f (Foo pair) = Foo (bimap f f pair)`
17:04:36 <dminuoso> forgot one argument to bimap there
17:05:19 <monochrom> :)
17:05:27 bitmapper joins (uid464869@id-464869.tooting.irccloud.com)
17:05:39 <hololeap> ok, let's nail this down to something concrete by explaining my actual problem.
17:05:44 dmwit joins (~dmwit@pool-173-66-86-32.washdc.fios.verizon.net)
17:05:46 <hololeap> data IsComplete a = Touched (ValidityWrapper a a) | Untouched
17:05:48 × v01d4lph4 quits (~v01d4lph4@user/v01d4lph4) (Remote host closed the connection)
17:06:05 <dminuoso> Is ValidityWrapper a Bifunctor?
17:06:21 <hololeap> no, ValidityWrapper has kind (Type -> Type)
17:06:33 <dminuoso> Dont lie to me.
17:06:35 Bartosz joins (~textual@50.35.215.151)
17:06:40 <dminuoso> It clearly has Type -> Type -> Type
17:06:48 v01d4lph4 joins (~v01d4lph4@user/v01d4lph4)
17:06:50 × ubikium quits (~ubikium@113x43x248x70.ap113.ftth.arteria-hikari.net) (Ping timeout: 244 seconds)
17:06:52 <hololeap> it's a type family defined in a class
17:06:55 <dminuoso> Oh.
17:06:57 <dminuoso> A tyfam
17:07:01 ubikium joins (~ubikium@113x43x248x70.ap113.ftth.arteria-hikari.net)
17:07:04 monadlight joins (~chris@bras-vprn-nwmkon8540w-lp130-19-184-147-249-234.dsl.bell.ca)
17:07:07 dminuoso scrolls up to see if he missed that bit
17:07:09 <hololeap> yeah, I mentioned that way at the top
17:07:10 <hololeap> :)
17:07:15 <monadlight> Why is <$ useful as one of the Functor methods?
17:07:39 <monochrom> That just lost a lot of functoriality and naturality and parametricity...
17:07:39 <dminuoso> monadlight: It's frequently useful for when you want to override the "result" but still gain effects, usually in applicative/monadic code.
17:07:54 × chele quits (~chele@user/chele) (Remote host closed the connection)
17:08:31 <monadlight> dminuoso: that's deep...
17:08:42 <hololeap> the idea for IsComplete is that it encodes whether or not a field has been "touched" in a form. For instance, if I have a "Text" field, then an empty value might be valid, but I want to mark whether or not the user has "touched" it
17:08:48 <dminuoso> monadlight: Consider a simple parser
17:09:14 <dminuoso> Say you have something that just wants to consume digits, but you absolutely dont care about the digits themselves.
17:09:17 <dminuoso> Then you might write:
17:09:31 <dminuoso> () <$ some digit
17:09:35 <dminuoso> i.e.
17:09:37 wroathe joins (~wroathe@c-68-54-25-135.hsd1.mn.comcast.net)
17:09:45 Guest2189 joins (~Guest21@121-75-79-99.dyn.vf.net.nz)
17:09:47 <dminuoso> consumeDigits :: Parser (); consumeDigits = () <$ some digit
17:09:58 <hololeap> The reason for (ValidityWrapper a) is that some types may need an extra wrapper that encodes if the underlying data is valid or not, for instance, with an Int, the text "abcd" needs to be stored as the user types it, but it needs to also mark it as invalid
17:10:06 <monochrom> If I want to implement "press enter to continue" I might use "fmap (\_ -> ()) getLine" which is a use case of <$
17:10:07 <dminuoso> You can of course also write `someDigit >> pure ()` or `someDigit >> return ()` - but often its useful to just start with what you return on the left side
17:10:41 <dminuoso> monadlight: Let me pull some examples from our network compiler
17:10:53 × merijn quits (~merijn@83-160-49-249.ip.xs4all.nl) (Ping timeout: 252 seconds)
17:11:20 boxscape joins (~boxscape@user/boxscape)
17:11:31 <hololeap> now, at this point I don't actually _need_ a Functor instance for IsComplete, but after trying to write a StandaloneDeriving instance I started to wonder if it was even possible in case I might need it later on
17:11:31 <monadlight> I think I understand what you mean but I'm still a newbie
17:12:09 <dminuoso> monadlight: https://gist.github.com/dminuoso/53fbd686b59a5f79adb58af773f54294
17:12:57 <dminuoso> monadlight: Here Nothing being on the left side immediately communicates "Return Nothing as the result", but on the right side I still set an error (imagine me writing this error to a log perhaps)
17:13:47 <monadlight> I can see that it's clearer and more consistent that way
17:14:04 × wroathe quits (~wroathe@c-68-54-25-135.hsd1.mn.comcast.net) (Ping timeout: 244 seconds)
17:14:29 dminuoso idly wonders why he doesnt use traverseOf instead, there.
17:15:40 <monadlight> It's a comfort for newbie to see that Haskell can be used for parsing network data :-)
17:15:44 × khumba quits (~khumba@S01066038e0ca1250.ok.shawcable.net) (Changing host)
17:15:44 khumba joins (~khumba@user/khumba)
17:16:05 × rahguzar quits (~rahguzar@212.189.140.214) (Ping timeout: 272 seconds)
17:16:08 <dminuoso> This code stack is what drives and provisions our core network at $work :)
17:16:38 <monadlight> GHC is not just a giant multi-gigabyte pure calculator. LOL
17:16:55 <monochrom> bc is.
17:17:27 <monadlight> bc is only 235K on my laptop. :-)
17:17:35 <monochrom> Yeah, apart from that.
17:18:33 <dminuoso> monadlight: Also, if you put it along side with $>, <* and *> you get a nice selection of combinators to play with
17:19:20 <hololeap> type instance ValidityWrapper Text = Identity , type instance ValidityWrapper Word8 = IsValid Text
17:19:30 × myShoggoth quits (~myShoggot@97-120-89-117.ptld.qwest.net) (Ping timeout: 264 seconds)
17:19:52 <dminuoso> hololeap: With ValidityWrapper being a tyfam, Im going to say you are not getting a Functor instance here.
17:19:53 <monadlight> Dilbert cartoon, telling evil boss he's found a bunch of combinators to play with this weekend. Hence, project is delayed. :-)
17:20:07 <hololeap> dminuoso: ok, noted :)
17:20:25 wroathe joins (~wroathe@c-68-54-25-135.hsd1.mn.comcast.net)
17:20:48 × a6a45081-2b83 quits (~aditya@106.212.79.20) (Read error: Connection reset by peer)
17:21:20 × holy_ quits (~h01y_b4z0@2400:adc1:178:c800:9e45:76a9:57f2:1665) (Ping timeout: 252 seconds)
17:21:54 × blurgy quits (~blurgy@blurgy.xyz) (Quit: WeeChat 3.1)
17:22:28 blurgy joins (~blurgy@blurgy.xyz)
17:22:38 blurgy parts (~blurgy@blurgy.xyz) ()
17:24:05 eggplant_ joins (~Eggplanta@2600:1700:bef1:5e10:2038:b31a:2642:e4ef)
17:24:08 gzj joins (~GZJ0X@185.212.59.97.16clouds.com)
17:24:20 × noddy quits (~self@user/noddy) (Quit: (λω.ωω)(λω.ωω))
17:24:42 noddy joins (~self@user/noddy)
17:25:15 <dminuoso> hololeap: Also, you still lied about the type of ValidityWrapper
17:25:22 × wroathe quits (~wroathe@c-68-54-25-135.hsd1.mn.comcast.net) (Ping timeout: 264 seconds)
17:25:28 × argento quits (~argent0@168.227.96.51) (Ping timeout: 264 seconds)
17:25:43 <dminuoso> If `ValidityWrapper :: Type -> Type`, then you simply cant have `data IsComplete a = Touched (ValidityWrapper a a) | Untouched`
17:25:46 <dminuoso> It wouldn't kind check
17:26:01 coot joins (~coot@37.30.49.19.nat.umts.dynamic.t-mobile.pl)
17:26:01 × raehik quits (~raehik@cpc95906-rdng25-2-0-cust156.15-3.cable.virginm.net) (Ping timeout: 272 seconds)
17:26:02 <dminuoso> You need `ValidityWrapper :: Type -> Type -> Type`
17:26:36 <dminuoso> Since you were quite confident about the type of ValidityWrapper, Im wondering there's a mixup here.
17:26:42 × eggplantade quits (~Eggplanta@2600:1700:bef1:5e10:b043:8b77:c7da:42a0) (Ping timeout: 264 seconds)
17:26:57 <dminuoso> % type family ValidityWrapper a = b
17:26:57 <yahb> dminuoso:
17:27:09 <dminuoso> % data IsComplete a = Touched (ValidityWrapper a a) | Untouched -- hololeap
17:27:09 <yahb> dminuoso: ; <interactive>:80:30: error:; * Expected kind `* -> *', but `ValidityWrapper a' has kind `*'; * In the type `(ValidityWrapper a a)'; In the definition of data constructor `Touched'; In the data declaration for `IsComplete'
17:27:10 × xff0x quits (~xff0x@2001:1a81:53fe:8d00:3833:823b:7d79:69a2) (Ping timeout: 248 seconds)
17:27:50 raehik joins (~raehik@cpc95906-rdng25-2-0-cust156.15-3.cable.virginm.net)
17:27:52 × sondre quits (~sondrelun@eduroam-193-157-188-96.wlan.uio.no) (Ping timeout: 264 seconds)
17:27:57 <dminuoso> % type family ValidityWrapper a = (b :: * -> *)
17:27:57 <yahb> dminuoso:
17:28:00 <dminuoso> % data IsComplete a = Touched (ValidityWrapper a a) | Untouched -- hololeap
17:28:00 <yahb> dminuoso:
17:28:04 <dminuoso> % :k ValidityWrapper
17:28:04 <yahb> dminuoso: * -> * -> *
17:28:30 × Bartosz quits (~textual@50.35.215.151) (Quit: My MacBook has gone to sleep. ZZZzzz…)
17:29:04 × gzj quits (~GZJ0X@185.212.59.97.16clouds.com) (Ping timeout: 264 seconds)
17:29:25 xff0x joins (~xff0x@2001:1a81:53ff:e00:12bf:9005:d371:65a7)
17:29:27 holy_ joins (~h01y_b4z0@2400:adc1:178:c800:9e45:76a9:57f2:1665)
17:29:44 Bartosz joins (~textual@50.35.215.151)
17:30:46 × zava quits (~zava@ip5f5bdf0f.dynamic.kabel-deutschland.de) (Ping timeout: 264 seconds)
17:32:33 × arjun quits (~user@user/arjun) (Ping timeout: 272 seconds)
17:32:33 <hololeap> um, I may have been somewhat mixed up, but the definition straight from my code is: type ValidityWrapper a :: Type -> Type
17:32:38 × mikoto-chan quits (~mikoto-ch@ip-213-49-189-31.dsl.scarlet.be) (Quit: mikoto-chan)
17:32:54 <dminuoso> Ah, yeah.
17:33:01 <dminuoso> That's the same as my definition above
17:33:12 <hololeap> so that's what I meant in any case
17:33:20 <dminuoso> Think of thit as `(ValidityWrapper a) :: Type -> Type`
17:33:38 <dminuoso> If that makes sense
17:33:43 <hololeap> Yeah that does
17:34:11 <dminuoso> Anyway, the thing is, to implement Functor here, you'd have to have magic
17:34:58 <boxscape> % :browse GHC.Magic
17:34:58 <yahb> boxscape: inline :: a -> a; GHC.Exts.lazy :: a -> a; noinline :: a -> a; oneShot :: (a -> b) -> a -> b; runRW# :: (State# RealWorld -> o) -> o
17:35:12 × rk04 quits (~rk04@103.232.8.236) (Changing host)
17:35:12 rk04 joins (~rk04@user/rajk)
17:35:30 <dminuoso> Your implementation must work for *all* choices of `a` and `b` without knowing them beforehand, but you dont even know whether you even have an `a` or how to access it.
17:35:57 <dminuoso> The reason it could be something different entirely, is because the tyfam could give you anything else back
17:36:08 <dminuoso> say `type instance ValidityWrapper T = Const Int`
17:37:05 <dminuoso> So how would `fmap (f :: T -> Bool)` function here? You can't make up a T here.
17:37:43 × Bartosz quits (~textual@50.35.215.151) (Quit: My MacBook has gone to sleep. ZZZzzz…)
17:39:05 <dminuoso> So even if we had `type instance ValidityWrapper Bool = Identity`, just for this simple choice of types `T` and `Bool`, you can only make up values of Bool
17:39:14 <dminuoso> But you couldnt even use the supplied function to fmap
17:39:28 <dminuoso> That alone breaks `fmap id = id`
17:41:52 merijn joins (~merijn@83-160-49-249.ip.xs4all.nl)
17:42:18 Bartosz joins (~textual@50.35.215.151)
17:44:06 × isovector1 quits (~isovector@172.103.216.166) (Ping timeout: 264 seconds)
17:44:31 × rk04 quits (~rk04@user/rajk) (Quit: Client closed)
17:44:59 lu joins (~lu@user/lu)
17:45:00 rk04 joins (~rk04@user/rajk)
17:46:54 × merijn quits (~merijn@83-160-49-249.ip.xs4all.nl) (Ping timeout: 248 seconds)
17:47:44 × Torro quits (Torro@gateway/vpn/protonvpn/torro) (Quit: bye)
17:49:57 × thelounge92 quits (~thelounge@cpe-23-240-28-18.socal.res.rr.com) (Quit: The Lounge - https://thelounge.chat)
17:50:15 thelounge92 joins (~thelounge@cpe-23-240-28-18.socal.res.rr.com)
17:50:55 × lu quits (~lu@user/lu) (Ping timeout: 272 seconds)
17:50:55 × simendsjo quits (~user@cm-84.211.91.241.getinternet.no) (Ping timeout: 272 seconds)
17:51:04 moet joins (~moet@172.58.27.119)
17:51:35 × haskman quits (~haskman@106.201.28.184) (Quit: Going to sleep. ZZZzzz…)
17:52:12 Lycurgus joins (~juan@cpe-45-46-140-49.buffalo.res.rr.com)
17:52:38 myShoggoth joins (~myShoggot@97-120-89-117.ptld.qwest.net)
17:52:59 rahguzar joins (~rahguzar@dynamic-adsl-84-220-228-254.clienti.tiscali.it)
17:54:16 bitdex joins (~bitdex@gateway/tor-sasl/bitdex)
17:56:01 × tromp quits (~textual@dhcp-077-249-230-040.chello.nl) (Quit: My iMac has gone to sleep. ZZZzzz…)
17:56:32 sondre joins (~sondrelun@eduroam-193-157-244-179.wlan.uio.no)
17:59:34 amahl joins (~amahl@dxv5skyy95x-mzmyd9kkt-3.rev.dnainternet.fi)
17:59:45 waleee joins (~waleee@2001:9b0:216:8200:d457:9189:7843:1dbd)
18:01:08 × ubert quits (~Thunderbi@p200300ecdf259d8974882ed522245916.dip0.t-ipconnect.de) (Remote host closed the connection)
18:01:27 ubert joins (~Thunderbi@p200300ecdf259d8974882ed522245916.dip0.t-ipconnect.de)
18:01:29 × sondre quits (~sondrelun@eduroam-193-157-244-179.wlan.uio.no) (Ping timeout: 272 seconds)
18:01:44 × connrs quits (~connrs@s1.connrs.uk) (Quit: ZNC 1.8.2 - https://znc.in)
18:03:04 × Guest2189 quits (~Guest21@121-75-79-99.dyn.vf.net.nz) (Ping timeout: 250 seconds)
18:03:53 tekul joins (~tekul@82-68-220-238.dsl.in-addr.zen.co.uk)
18:05:28 Guest31 joins (~textual@cpc146410-hari22-2-0-cust124.20-2.cable.virginm.net)
18:07:22 × raehik quits (~raehik@cpc95906-rdng25-2-0-cust156.15-3.cable.virginm.net) (Ping timeout: 264 seconds)
18:07:34 nsilv joins (~nsilv@host-82-50-119-12.retail.telecomitalia.it)
18:07:58 × rk04 quits (~rk04@user/rajk) (Quit: Client closed)
18:09:46 × sbmsr quits (~pi@212.102.61.51) (Ping timeout: 264 seconds)
18:10:22 connrs joins (~connrs@s1.connrs.uk)
18:11:30 sbmsr joins (~pi@2600:1700:63d0:4830:9670:3c44:ca85:cefd)
18:12:19 × dyeplexer quits (~dyeplexer@user/dyeplexer) (Remote host closed the connection)
18:14:01 × connrs quits (~connrs@s1.connrs.uk) (Client Quit)
18:14:40 connrs joins (~connrs@s1.connrs.uk)
18:15:16 × hiptobecubic quits (~john@c-73-55-99-95.hsd1.fl.comcast.net) (Ping timeout: 264 seconds)
18:15:39 fizbin joins (~fizbin@c-73-33-197-160.hsd1.nj.comcast.net)
18:16:38 haskman joins (~haskman@106.201.28.184)
18:17:18 × wagle quits (~wagle@quassel.wagle.io) (Ping timeout: 248 seconds)
18:19:58 × fizbin quits (~fizbin@c-73-33-197-160.hsd1.nj.comcast.net) (Ping timeout: 248 seconds)
18:20:35 × connrs quits (~connrs@s1.connrs.uk) (Quit: ZNC 1.8.2 - https://znc.in)
18:21:17 connrs joins (~connrs@s1.connrs.uk)
18:21:46 × connrs quits (~connrs@s1.connrs.uk) (Client Quit)
18:21:55 × xsperry quits (~as@user/xsperry) ()
18:22:09 × Gurkenglas quits (~Gurkengla@dslb-088-075-022-175.088.075.pools.vodafone-ip.de) (Read error: No route to host)
18:22:23 connrs joins (~connrs@s1.connrs.uk)
18:24:45 × connrs quits (~connrs@s1.connrs.uk) (Client Quit)
18:25:08 justsomeguy joins (~justsomeg@user/justsomeguy)
18:25:24 connrs joins (~connrs@s1.connrs.uk)
18:27:00 xsperry joins (~as@user/xsperry)
18:27:38 sondre joins (~sondrelun@eduroam-193-157-188-177.wlan.uio.no)
18:28:49 wagle joins (~wagle@quassel.wagle.io)
18:29:27 vicfred joins (~vicfred@user/vicfred)
18:29:56 pavonia joins (~user@user/siracusa)
18:30:24 Mark_ joins (uid14803@user/mark/x-9597255)
18:35:06 × Lycurgus quits (~juan@cpe-45-46-140-49.buffalo.res.rr.com) (Quit: Exeunt)
18:35:35 shiraeeshi joins (~shiraeesh@109.166.58.65)
18:37:02 × dunham quits (~dunham@97-113-35-16.tukw.qwest.net) (Ping timeout: 248 seconds)
18:38:26 × geekosaur quits (~geekosaur@069-135-003-034.biz.spectrum.com) (Remote host closed the connection)
18:40:14 × wagle quits (~wagle@quassel.wagle.io) (Ping timeout: 248 seconds)
18:42:23 geekosaur joins (~geekosaur@069-135-003-034.biz.spectrum.com)
18:42:52 isovector1 joins (~isovector@172.103.216.166)
18:43:17 lavaman joins (~lavaman@98.38.249.169)
18:44:45 tose joins (~tose@ip-85-160-8-1.eurotel.cz)
18:45:00 fizbin joins (~fizbin@c-73-33-197-160.hsd1.nj.comcast.net)
18:46:15 wagle joins (~wagle@quassel.wagle.io)
18:47:10 × werneta quits (~werneta@mobile-166-176-57-62.mycingular.net) (Ping timeout: 248 seconds)
18:47:57 <monochrom> Quiet Friday when there is no drama.
18:48:17 × unyu quits (~pyon@user/pyon) (Quit: WeeChat 3.1)
18:49:17 werneta joins (~werneta@70-142-214-115.lightspeed.irvnca.sbcglobal.net)
18:49:32 <sm[m]> heh, it's weird isn't it
18:49:36 <davean> monochrom: Your department, but I don't mind if you slack
18:52:12 <dminuoso> Mmm, is there a reason ApplicativeDo wont let me write `do (f,g) <- foo; ...` ?
18:52:25 <glguy> dminuoso: try: ~(f,g) <-
18:52:43 <davean> So irrifutable
18:52:44 <dminuoso> glguy: Works like a charm!
18:52:56 bfrk joins (~Thunderbi@200116b84508c2004c8614311807bd60.dip.versatel-1u1.de)
18:53:00 <dminuoso> glguy: Cheers. By the way, config-schema is making its way to my favourite library this year. :)
18:53:12 <glguy> yay!
18:53:34 <glguy> what're you up to with it?
18:54:08 <dminuoso> Just startup configuration for some services, switching all to config-schema because I get way more expressivity and free docs along the way. :)
18:55:11 Erutuon joins (~Erutuon@97-116-14-180.mpls.qwest.net)
18:55:31 <glguy> let me know if you run into rough edges
18:56:09 × wagle quits (~wagle@quassel.wagle.io) (Ping timeout: 272 seconds)
18:56:39 × fizbin quits (~fizbin@c-73-33-197-160.hsd1.nj.comcast.net) (Remote host closed the connection)
18:56:41 <dminuoso> Is there a particular reason why making the above match irrefutable helps? Or is this just one of those ApplicativeDo bugs?
18:57:18 <geekosaur> MonadFail interaction?
18:57:21 <glguy> yeah
18:57:24 <dminuoso> Ah
18:57:29 <glguy> err
18:57:41 <int-e> why though? (f,g) should be in the non-failable pattern category
18:57:50 × waleee quits (~waleee@2001:9b0:216:8200:d457:9189:7843:1dbd) (Ping timeout: 248 seconds)
18:58:02 <glguy> I think the issue is that in do-notation normally the pattern match would be forced earlier
18:58:02 fizbin joins (~fizbin@c-73-33-197-160.hsd1.nj.comcast.net)
18:58:22 <glguy> do (x,y) <- m; f x y -> m >>= \p -> case p of (x,y) -> f x y
18:58:34 × superbil quits (~superbil@1-34-176-171.HINET-IP.hinet.net) (Quit: WeeChat 3.1)
18:58:36 <shachaf> I don't think you can translate it to Applicative with the refutable pattern.
18:58:41 <glguy> but you can't do that with <*>
18:58:54 <int-e> ah, so there's a subtle difference in strictness. true.
18:59:12 <dminuoso> ah fair enough
18:59:12 <glguy> but how would you write that with <*>?
18:59:18 × danidiaz quits (~ESDPC@static-203-177-6-89.ipcom.comunitel.net) (Quit: Leaving.)
18:59:25 <glguy> wow, bad example
18:59:30 <glguy> because I used x and y
18:59:31 <int-e> and ~(f,g) expresses the difference visibly
18:59:48 <glguy> but still you'd have something like: (\(x,y) -> stuff) <$> m <*> m2
19:00:00 wagle joins (~wagle@quassel.wagle.io)
19:00:04 <glguy> where the match on (x,y) happens later/not-at-all
19:00:32 econo joins (uid147250@user/econo)
19:00:43 <shachaf> But in the monad case the m2 effects wouldn't happen if m fails.
19:00:54 <shachaf> I mean, in the refutable case.
19:01:07 <int-e> if m succeeds with a bottom result
19:01:12 × lbseale quits (~lbseale@ip72-194-54-201.sb.sd.cox.net) (Read error: Connection reset by peer)
19:01:15 <shachaf> Right.
19:01:47 × Guest31 quits (~textual@cpc146410-hari22-2-0-cust124.20-2.cable.virginm.net) (Quit: Textual IRC Client: www.textualapp.com)
19:02:22 waleee joins (~waleee@2001:9b0:216:8200:d457:9189:7843:1dbd)
19:02:39 × Bartosz quits (~textual@50.35.215.151) (Quit: My MacBook has gone to sleep. ZZZzzz…)
19:03:29 <monochrom> IIRC general "pattern <- expr" require as far as MonadFail
19:03:45 dunham joins (~dunham@97-113-35-16.tukw.qwest.net)
19:03:52 <shachaf> I guess you could test whether it works with newtype.
19:03:59 × bfrk quits (~Thunderbi@200116b84508c2004c8614311807bd60.dip.versatel-1u1.de) (Quit: bfrk)
19:04:07 bfrk1 joins (~Thunderbi@200116b84508c2004c8614311807bd60.dip.versatel-1u1.de)
19:04:21 <int-e> monochrom: (x,y) <- foo doesn't; there's an exemption for single-constructor datatypes, basically
19:04:36 <monochrom> and IIRC up to now the compiler won't walk the extra mile of "but (x,y) has only one case, this is overkill"
19:04:44 <monochrom> Oh oops sorry.
19:04:49 <shachaf> Oh, huh.
19:05:04 <shachaf> Even a newtype requires a ~.
19:05:18 <shachaf> I vaguely remember that the rules around this were complicated, but is there a reason?
19:05:26 <int-e> shachaf: okay, that is surprising (for ApplicativeDo I assume)
19:05:38 <shachaf> Yes.
19:05:47 Bartosz joins (~textual@50.35.215.151)
19:05:47 <dminuoso> shachaf: Perhaps because newtypes go through the same desugaring as data here?
19:05:52 × [Kalisto] quits (~Nico@user/kalisto/x-8968079) (Quit: The Lounge - https://thelounge.chat)
19:06:07 [Kalisto] joins (~Nico@user/kalisto/x-8968079)
19:06:16 <dminuoso> I recall a similar story when we were discussing the `undefined { getSum = 42 }` story
19:06:19 <monochrom> I guess bottomness still matters.
19:06:24 <shachaf> But I would sort of imagine that whether the match is strict wouldn't just be syntactic.
19:06:28 bfrk1 is now known as bfrk
19:06:32 <int-e> understandable maybe, because insisting on ~ for ~(x,y) <- foo is a bit artificial.
19:06:46 <shachaf> Is there a difference between ~(Identity x) and (Identity x) as patterns in this context?
19:07:15 <int-e> shachaf: there isn't supposed to be any semantic difference, no
19:07:45 <shachaf> I think the thing I'm thinking about is the difference between strict data and newtype.
19:07:54 <shachaf> But presumably newtype is the case where this should just work.
19:07:58 <shachaf> Oh well.
19:08:13 superbil joins (~superbil@1-34-176-171.HINET-IP.hinet.net)
19:08:15 ikex joins (~ash@user/ikex)
19:08:54 × justsomeguy quits (~justsomeg@user/justsomeguy) (Quit: WeeChat 3.0.1)
19:09:21 ixlun` joins (~user@109.249.184.235)
19:09:36 <int-e> shachaf: I imagine it's as simple as ApplicativeDo refusing to do *any* pattern matching except by irrefutable patterns.
19:10:01 ixlun` is now known as ixlun
19:10:15 <int-e> So you get a syntactic restriction that all patterns must have a ~.
19:10:38 <int-e> (or be variable patterns)
19:10:45 <shachaf> But a newtype pattern is irrefutable.
19:10:50 <shachaf> I guess it might just be a syntactic check.
19:11:23 [Kalisto] parts (~Nico@user/kalisto/x-8968079) (The Lounge - https://thelounge.chat)
19:11:27 <ixlun> Hi all. Quick question. If I'm in the 'ExceptT String IO ()' monad and I've got a function that returns 'IO (Either String Int)', how can I lift this function but also apply error handling to the Either?
19:12:00 <shachaf> I checked the report: «The irrefutable patterns are as follows: a variable, a wildcard, N apat where N is a constructor defined by newtype and apat is irrefutable (see Section 4.2.3), var@apat where apatis irrefutable, or of the form ~apat (whether or not apat is irrefutable). All other patterns are refutable.»
19:12:39 <shachaf> Seems like an easy enough check to do at ApplicativeDo expansion time. Presumably it should just do that.
19:13:02 <int-e> Sure, I agree.
19:13:52 <int-e> I'm just rationalizing existing behavior... basically convincing myself (and maybe others) that it's probably not a bug.
19:14:01 × ddellacosta quits (~ddellacos@86.106.121.23) (Remote host closed the connection)
19:14:30 ddellacosta joins (~ddellacos@86.106.121.23)
19:14:41 <int-e> It's still a wart that could be remedied.
19:14:47 Morrow joins (~MorrowM_@bzq-110-168-31-106.red.bezeqint.net)
19:15:26 × dunham quits (~dunham@97-113-35-16.tukw.qwest.net) (Ping timeout: 248 seconds)
19:15:42 <tomsmeding> @unmtl ExceptT String IO ()
19:15:42 <lambdabot> IO (Either String ())
19:16:08 <tomsmeding> :t ExceptT
19:16:09 <lambdabot> m (Either e a) -> ExceptT e m a
19:16:22 zan joins (~zan@user/zan)
19:16:27 <tomsmeding> ixlun: isn't the function you're looking for literally ExceptT
19:18:47 <ixlun> tomsmeding: Ah right, ineed it is!
19:19:06 wroathe joins (~wroathe@c-68-54-25-135.hsd1.mn.comcast.net)
19:19:35 × notzmv quits (~zmv@user/notzmv) (Ping timeout: 252 seconds)
19:19:45 <ixlun> I didn't know that you could construct ExceptT types
19:20:04 dunham joins (~dunham@97-113-35-16.tukw.qwest.net)
19:20:04 × connrs quits (~connrs@s1.connrs.uk) (Quit: ZNC 1.8.2 - https://znc.in)
19:20:32 × Xe quits (~cadey@user/xe) (Changing host)
19:20:32 Xe joins (~cadey@tailscale/xe)
19:20:45 connrs joins (~connrs@s1.connrs.uk)
19:22:25 mib_fqswhk joins (a0ee4a17@ircip1.mibbit.com)
19:23:13 <mib_fqswhk> 595 users only :( I remember 1900+ users
19:23:27 <mib_fqswhk> They are lazy to come here
19:24:29 <mib_fqswhk> I bet without ITC haskell is dead because noone writes haskell outside irc
19:24:42 <mib_fqswhk> irc*
19:24:58 × dunham quits (~dunham@97-113-35-16.tukw.qwest.net) (Ping timeout: 265 seconds)
19:25:34 zan parts (~zan@user/zan) (Leaving)
19:27:06 larryba joins (~bc817c21@217.29.117.252)
19:27:11 <larryba> hi. #haskell on freenode is completely gone already? I only see ##haskell
19:28:38 <boxscape> larryba yeah it was taken over by network admins after #haskell announced the move to libera
19:28:50 <larryba> boxscape, but they it back after that, no?
19:28:55 <davean> Strictly speaking #haskell didn't announce a move to libera
19:28:59 <davean> it mearly mentioned this channel existed
19:29:04 <boxscape> okay, yes
19:29:22 <boxscape> larryba I believe old #haskell ops are ops in ##haskell now, yes
19:29:25 <larryba> #python on freenode mentions libera, and it is still going strong, 1180 users
19:29:46 <larryba> boxscape, I mean, they got OP access back on #haskell. unless the channel was taken over twice
19:30:07 tromp joins (~textual@dhcp-077-249-230-040.chello.nl)
19:30:22 <boxscape> I don't know, last I saw #haskell was invite-only
19:30:29 <boxscape> on freenode
19:30:46 × bitdex quits (~bitdex@gateway/tor-sasl/bitdex) (Quit: = "")
19:31:22 × holy_ quits (~h01y_b4z0@2400:adc1:178:c800:9e45:76a9:57f2:1665) (Ping timeout: 264 seconds)
19:31:30 <larryba> aren't ## channels allowed to advertise libera? I'm afraid that many old users, or new ones, won't know what is going on
19:32:02 <larryba> and again.. #python is advertising it
19:32:15 <boxscape> larryba https://twitter.com/kmett/status/1397352729836613633
19:32:59 <mib_fqswhk> can I promote my telegram channel here?
19:33:19 × myShoggoth quits (~myShoggot@97-120-89-117.ptld.qwest.net) (Ping timeout: 272 seconds)
19:33:20 <edwardk> boxscape: #haskell on freenode points to ##haskell on freenode
19:33:28 <geekosaur> that was what I thought, but someone (int-e?) told me it was changed shortly before the crackdown to say we had moved
19:33:43 <geekosaur> instead of just mentioning libera
19:34:29 <edwardk> geekosaur: i was in the process of trying to get a declarative judgment of exactly what mention of other servers is allowed under the new reading of old policy, especially now that freenode has claimed new powers to force open any topic channel when they nuked everyone
19:34:35 × v01d4lph4 quits (~v01d4lph4@user/v01d4lph4) (Remote host closed the connection)
19:34:35 <boxscape> edwardk Ah, I see. I usually get redirected to ##haskell the first time I join and then my client tells me it's invite-only the second time, but maybe that's a client thing
19:34:41 <edwardk> i was actively in the #freenode-policy-feedback channel
19:34:50 <edwardk> boxscape: the second time you are probably already in ##haskell, which is why
19:35:03 <boxscape> yeah
19:35:09 v01d4lph4 joins (~v01d4lph4@user/v01d4lph4)
19:35:21 <edwardk> not that any of the actual feedback there was actually being filed anywhere other than /dev/null
19:36:22 <larryba> edwardk, why isn't ##haskell mentioning libera? I know there's a link that mentions it, but that requires an additional step on the users part to know about this channel
19:37:04 <mib_fqswhk> edwardk: I can feel you and I am not against you. I even dropped my freenode nickserv but tell me who is dictator? What is the difference between Ops who ban users based on their emotions and freenode that kicked the channels for promoting libera
19:37:08 <edwardk> larryba: because the advice i got from an official ircop was that any mention of libera in the topic might be bad. so i chose to solve the problem with a level of indirection
19:37:22 dunham joins (~dunham@97-113-35-16.tukw.qwest.net)
19:37:53 Deide joins (~Deide@wire.desu.ga)
19:37:53 × Deide quits (~Deide@wire.desu.ga) (Changing host)
19:37:53 Deide joins (~Deide@user/deide)
19:38:11 <edwardk> mib_fqswhk: i'm not going to get into a debate about if the sky is blue.
19:38:19 <larryba> edwardk, they may have loosen up that restriction since then, #python mentions libera in the topic and it was not taken over. best to double check though
19:39:09 <edwardk> larryba: i asked 3 times, got different answers. the guy who muted #freenode-policy-feedback and was actively trolling the crowd said it might be okay, the actual ircop who is the closest thing to an authority said it wasn't.
19:39:48 <mib_fqswhk> edwardk: me neither, what I am urging is people do mistakes and we shall learn to forgive and move on. You are wise to know that and forgive freenode and move on
19:39:51 <davean> ow we're arguing about if the sky is blue or it just makes the light that shines through it blue
19:39:54 <geekosaur> they did say something about having overapplied their bot initially and rolling back some channel forwards
19:39:55 <edwardk> so i'm choosing to stay on the server, help the few people who can't leave, and am willing to toe the line til there's no real excuse for freenode any more. the fact that there's 120 people left after all this.
19:39:56 jumper149 joins (~jumper149@80.240.31.34)
19:40:17 × v01d4lph4 quits (~v01d4lph4@user/v01d4lph4) (Ping timeout: 272 seconds)
19:40:48 <boxscape> thanks for all the work you put into this edwardk
19:41:07 <edwardk> mib_fqswhk: you know what? i'm not. its going to take a LOT to regain any trust with me here. There comes a point where you stop listening to what someone says they are doing something for and just look at the consequences of their actions. From a "POSIWID" perspective, rasengan's takeover of freenode has been a clusterfuck, and is serving to destroy the very community he claims to stand for.
19:41:22 dexterfoo joins (dexter@2a01:7e00::f03c:91ff:fe86:59ec)
19:42:10 × dunham quits (~dunham@97-113-35-16.tukw.qwest.net) (Ping timeout: 264 seconds)
19:42:47 merijn joins (~merijn@83-160-49-249.ip.xs4all.nl)
19:42:56 <mib_fqswhk> boxscape: ?? I am not talking to you. And don't know what you are saying...can we just talk about haskell which is much better than freenode vs libera. Community will eventually grow and people know how to join the community
19:43:11 <larryba> edwardk, btw, does #haskell still exist, or is it gone completely?
19:43:39 <boxscape> mib_fqswhk that's fine, what I said wasn't directed at you either.
19:43:52 <larryba> not sure what "points to ##haskell" means. was it pointed to ##haskell by you or other OPs?
19:44:00 <jumper149> Hi, I am personally a fan of the monad-control package, but due to the simplified subsumption coming with ghc-9.0.1 the function `defaultLiftWith2` doesn't work anymore.
19:44:29 <jumper149> I have already tried around quite a bit, but I can't seem to find a way to define that function using ghc-9.0.1
19:44:30 <edwardk> #haskell exists as a forward to ##haskell at this time. this is arguably a better thing from a straddling the inconsistencies of freenode policies perspective, as primary channels will get forwarded to secondary channels, and freenode has not yet claimed the ability to unilaterally claim those secondary ## channels for 60 days
19:44:35 <davean> ghc-9.0.1 has been out for ages
19:44:47 <edwardk> it was originally pointed by them. we left the forwarding in place once we gained access to ##haskell
19:45:02 <edwardk> because if we _did_ want to play those games with topics like you propose we'd have firmer grounding
19:45:20 <edwardk> we've chosen not to thus far
19:45:53 <boxscape> jumper149 hmm in most cases from what I've seen eta expanding should be enough to get things to work with simplified subsumption, though if you've tried that, I don't know
19:46:03 <cdsmith> <jumper149 "Hi, I am personally a fan of the"> I didn't look into this particular case, but the typical answer to this problem is eta expansion. Does that not work here?
19:46:37 <jumper149> This is the best I came up with: https://github.com/jumper149/blucontrol/blob/6e9ee452281afbf00783c013c268f8cf26ea8377/src/Blucontrol/Recolor/X.hs#L36
19:47:16 <jumper149> But when changing the type from the explicit transformer, it doesn't work anymore'
19:47:24 Franciman joins (~francesco@host-80-180-196-134.pool80180.interbusiness.it)
19:47:26 <Franciman> Hi all
19:47:29 Guest9 joins (~Guest9@103.240.169.6)
19:47:37 <Franciman> I am using the type level == operator
19:47:40 <edwardk> there's different reasons to consider both names. #haskell is a primary org channel, but they closed it and redirected. fine. ##haskell is a 'topic' channel. having a primary place to talk about haskell without an org affiliation? actually that sounds about like the right summary of the status quo on that server.
19:48:06 <sm[m]> +1
19:48:24 <sm[m]> how's the user count over there now edwardk, dropping at all ?
19:48:34 <boxscape> jumper149 not sure if this will work but can you try defaultLiftWith2' f = RecolorXT $ liftWith $ \run -> liftWith $ \run' -> f $ \x -> (run' . run . unRecolorXT) x
19:48:38 <edwardk> so ##haskell is a 'subtle' way of saying this isn't an official channel, its there though, and people can talk.
19:48:44 <edwardk> sm[m]: 120ish at last check.
19:48:45 ralu joins (~ralu@static.211.245.203.116.clients.your-server.de)
19:48:47 Giorgio[m] joins (~marinelli@2001:470:69fc:105::2d8)
19:48:49 <boxscape> jumper149 (the only change being the lambda at the end)
19:48:59 <Franciman> I have a problem with == at type level and types with parameters
19:49:03 <Franciman> I want to prove that
19:49:07 <edwardk> libertat suggested the current topic, which is #haskell discussion, which seems suitably meta. ;)
19:49:08 <Franciman> MyType a == MyType a
19:49:13 <Franciman> but ghc says they are different
19:49:24 <edwardk> and roughly fits the topic these days
19:49:33 <edwardk> we're down around 2-3 questions/day
19:49:33 <Franciman> how can I make it understand that they are equal?
19:49:53 nsilv-phone joins (~nsilv-pho@37.162.42.151)
19:49:56 <larryba> edwardk, ok, hope most old users come in here one way or another. IIRC #haskell had close to a thousand users before all of this started
19:50:08 marinelli joins (~marinelli@gateway/tor-sasl/marinelli)
19:50:16 <edwardk> larryba: most of them have moved over. there's ~600 people here. there were 1000 before the drama, but many of them were lurkers.
19:50:31 <edwardk> so getting 60% of the channel swapped over exceeded my wildest expectations
19:51:02 Giorgio[m] parts (~marinelli@2001:470:69fc:105::2d8) ()
19:51:15 <boxscape> Franciman can you provide a bit more context, some code maybe?
19:51:16 <edwardk> sm[m]: as for user count, its pretty stable. it crept up from 20 to 120 and stalled.
19:51:39 <Franciman> boxscape: yes, I am using servant's UVerb
19:51:49 <sm[m]> ah, right, it was small. Sorry to see that many :)
19:51:52 <Franciman> and
19:52:10 <Franciman> and I have a polymorphic data type `Response a b c`
19:52:13 <sm[m]> but that's looking like a pretty thorough move nevertheless
19:52:22 × nsilv-phone-1 quits (~nsilv-pho@host-82-50-119-12.retail.telecomitalia.it) (Ping timeout: 264 seconds)
19:52:32 <Franciman> my error is basically:
19:52:38 <jumper149> boxscape: I'll try that, nix is just giving me a hard time atm :D
19:52:45 <boxscape> ok
19:52:54 × Morrow quits (~MorrowM_@bzq-110-168-31-106.red.bezeqint.net) (Read error: Connection reset by peer)
19:53:10 <Franciman> boxscape: https://bpa.st/JLJA
19:53:52 ub joins (~Thunderbi@p200300ecdf259d1274882ed522245916.dip0.t-ipconnect.de)
19:53:55 <boxscape> hm, unfortunately I don't have experience with servant, so someone might have to help you
19:54:02 × connrs quits (~connrs@s1.connrs.uk) (Quit: ZNC 1.8.2 - https://znc.in)
19:54:25 × monadlight quits (~chris@bras-vprn-nwmkon8540w-lp130-19-184-147-249-234.dsl.bell.ca) (Ping timeout: 272 seconds)
19:54:32 <Franciman> https://bpa.st/RYFA
19:54:34 <Franciman> and this is the data type
19:54:42 <dminuoso> 21:45:53 boxscape | jumper149 hmm in most cases from what I've seen eta expanding should be enough to get things to work with simplified subsumption, though if you've tried that, I don't know
19:54:44 connrs joins (~connrs@s1.connrs.uk)
19:54:48 <dminuoso> Uh, what is simplified subsumption?
19:54:54 × ubert quits (~Thunderbi@p200300ecdf259d8974882ed522245916.dip0.t-ipconnect.de) (Ping timeout: 248 seconds)
19:54:54 ub is now known as ubert
19:55:05 <jumper149> dminuoso: https://gitlab.haskell.org/ghc/ghc/-/wikis/migration/9.0#simplified-subsumption
19:55:17 <boxscape> dminuoso https://github.com/ghc-proposals/ghc-proposals/blob/master/proposals/0287-simplify-subsumption.rst for the the proposal
19:56:47 × tromp quits (~textual@dhcp-077-249-230-040.chello.nl) (Quit: My iMac has gone to sleep. ZZZzzz…)
19:56:48 myShoggoth joins (~myShoggot@97-120-89-117.ptld.qwest.net)
19:56:59 Giorgio[m] joins (~marinelli@2001:470:69fc:105::2d8)
19:58:02 <boxscape> s/someone/someone else
19:58:24 × Kevin578 quits (~Kevin578@pool-98-110-163-110.bstnma.fios.verizon.net) (Remote host closed the connection)
19:58:29 <edwardk> larryba: see pms
19:58:52 <geekosaur> I've seen that kind of thing happen when there are version mismatches between libraries, although with modern stack or cabal that shouldn't be possible supposedly
19:59:07 × marinelli quits (~marinelli@gateway/tor-sasl/marinelli) (Quit: marinelli)
19:59:25 × ddellacosta quits (~ddellacos@86.106.121.23) (Remote host closed the connection)
19:59:34 ddellacosta joins (~ddellacos@86.106.121.23)
20:00:02 × connrs quits (~connrs@s1.connrs.uk) (Quit: ZNC 1.8.2 - https://znc.in)
20:00:09 <larryba> edwardk, I saw them, I can't reply in PM though, even though I just registered? anyway, I understand. I am also not a big fan of having two active channels, especially considering the freenode situation, and would rather push for the move in here, as much as possible, without risking getting taken over again, and then having no way to notify users about this channel
20:00:18 Giorgio[m] is now known as marinelli[m]
20:00:44 connrs joins (~connrs@s1.connrs.uk)
20:01:20 <edwardk> larryba: it is in effect one active channel, and a very unofficial place that continues to exist for legacy reasons insofar as freenode has deigned to allow us to continue to exist there.
20:01:24 marinelli[m] parts (~marinelli@2001:470:69fc:105::2d8) ()
20:01:34 <orzo> i dont understand the fuss. what would happen if channels like #haskell just ignored the take-over drama and continued on the servers they were on?
20:01:37 argento joins (~argent0@168.227.96.51)
20:02:29 × vicfred quits (~vicfred@user/vicfred) (Ping timeout: 252 seconds)
20:02:45 <dminuoso> boxscape: Mmm, a bit too thick for this late of the day.
20:02:51 <geekosaur> freenode invades and forces them onto unofficial channels, which is what happened to #haskell and a bunch of other channels
20:02:53 <boxscape> understandable
20:02:59 marinelli[m] joins (~marinelli@2001:470:69fc:105::2d8)
20:03:02 <larryba> orzo, #haskell (and hundreds of other channels) was forcefully taken over for just mentioning libera in the topic
20:03:07 <larryba> were*
20:03:59 marinelli joins (~marinelli@gateway/tor-sasl/marinelli)
20:03:59 × tose quits (~tose@ip-85-160-8-1.eurotel.cz) (Remote host closed the connection)
20:04:08 <edwardk> orzo: multiple channel ops were ircops on freenode. the ircops that left by and large got klined off the server. that comes across like "dude, he only shot your friend, not you, why don't you want to hang out someplace where he has unilateral control?"
20:05:00 <wroathe> edwardk: I imagine the pimp game operates similarly
20:05:18 <orzo> i'm not advocating anything, just learning about the situation which i wasn't following
20:05:23 <dminuoso> boxscape: And even the motivating example in SPJs proposal behaves differently on my machine. This does not terminate: let x = x; g f = f `seq` 0 in g x
20:05:26 <edwardk> i don't feel terribly comfortable going from a place where we've had a stable environment for 16 years to one where policies are being interpreted in drastically new ways whenever it suits the guy running the house.
20:06:10 <sm[m]> orzo: here you go: https://hn.algolia.com/?dateRange=pastWeek&page=0&prefix=false&query=freenode&sort=byDate&type=story
20:06:26 <edwardk> here we know who we're working with. we know how they operate. and the server ops that have been working with us all along to fight spam/bots in the channel are still here alongside us.
20:06:43 <boxscape> dminuoso huh, yeah, strange
20:07:02 <edwardk> there? we're getting days worth of work dumped on us with no notice in response to policies nobody has had time to read let alone respond to, and the policy feedback channel gets muted and ignored.
20:07:28 × _ht quits (~quassel@82-169-194-8.biz.kpn.net) (Remote host closed the connection)
20:08:15 <int-e> and that's before digging up dirt about the current owner
20:08:45 <wroathe> int-e: Someone dug up dirt on someone?
20:09:14 <int-e> some court cases. also the whole story of how freenode was sold stinks.
20:09:20 int-e shrugs
20:09:43 vicfred joins (~vicfred@user/vicfred)
20:09:49 <boxscape> dminuoso ah
20:09:51 <edwardk> add to that nonsense like https://news.ycombinator.com/item?id=27300842
20:09:53 <boxscape> dminuoso you have to use the types he uses
20:09:56 <boxscape> for g and f
20:10:12 <boxscape> f :: ∀ab.a → b → b and
20:10:13 <boxscape> g :: (∀p.p → (∀q.q → q)) → Int
20:10:19 marinelli[m] parts (~marinelli@2001:470:69fc:105::2d8) ()
20:10:42 tromp joins (~textual@dhcp-077-249-230-040.chello.nl)
20:11:41 × connrs quits (~connrs@s1.connrs.uk) (Quit: ZNC 1.8.2 - https://znc.in)
20:12:03 × Voeid quits (luke@voeid.cf) (Quit: Leaving...)
20:12:20 connrs joins (~connrs@s1.connrs.uk)
20:12:35 Voeid joins (luke@voeid.cf)
20:12:44 <dminuoso> % let f :: ∀a b. a → b → b; f = f; g :: (∀p.p → (∀q.q → q)) → Int; g f = f `seq` 0 in ()
20:12:44 <yahb> dminuoso: ; <interactive>:90:72: error:; * Couldn't match expected type `a0' with actual type `p0 -> forall q. q -> q'; Cannot instantiate unification variable `a0'; with a type involving polytypes: p0 -> forall q. q -> q; * In the first argument of `seq', namely `f'; In the expression: f `seq` 0; In an equation for `g': g f = f `seq` 0
20:12:51 <dminuoso> Mmm. I guess yahb runs on 9.0.1 or newer?
20:13:04 <boxscape> % :!ghc --version
20:13:04 <yahb> boxscape: The Glorious Glasgow Haskell Compilation System, version 9.0.1
20:13:07 <boxscape> yep
20:13:27 <dminuoso> boxscape: Alright, I grok only a portion of that proposal, but enough to get the gist of it.
20:13:35 <boxscape> same here tbh
20:13:38 <maerwald> % :!ghc --help
20:13:39 <yahb> maerwald: Usage:; ghc [command-line-options-and-input-files]; To compile and link a complete Haskell program, run the compiler like; so:; ghc Main; where the module Main is in a file named Main.hs (or Main.lhs) in the; current directory. The other modules in the program will be located; and compiled automatically, and the linked program will be placed in; the file `Main' (or `Main.exe' on Windows).; Al
20:14:10 Heffalump joins (~ganesh@urchin.earth.li)
20:14:14 Heffalump parts (~ganesh@urchin.earth.li) ()
20:14:33 Urchin[emacs] joins (~user@user/urchin)
20:16:11 × marinelli quits (~marinelli@gateway/tor-sasl/marinelli) (Quit: marinelli)
20:16:31 × fizbin quits (~fizbin@c-73-33-197-160.hsd1.nj.comcast.net) (Remote host closed the connection)
20:17:04 × brian_da_mage quits (~Neuromanc@user/briandamag) (Ping timeout: 264 seconds)
20:17:06 × merijn quits (~merijn@83-160-49-249.ip.xs4all.nl) (Ping timeout: 264 seconds)
20:18:49 Urchin[emacs] parts (~user@user/urchin) (ERC (IRC client for Emacs 26.1))
20:18:53 zebrag joins (~chris@aaubervilliers-654-1-3-253.w83-200.abo.wanadoo.fr)
20:18:53 brian_da_mage joins (~Neuromanc@37.6.199.86)
20:18:55 falafel joins (~falafel@pool-96-255-70-50.washdc.fios.verizon.net)
20:20:33 × wroathe quits (~wroathe@c-68-54-25-135.hsd1.mn.comcast.net) (Ping timeout: 265 seconds)
20:21:40 × tinwood quits (~tinwood@general.default.akavanagh.uk0.bigv.io) (Changing host)
20:21:40 tinwood joins (~tinwood@canonical/tinwood)
20:21:42 fizbin joins (~fizbin@c-73-33-197-160.hsd1.nj.comcast.net)
20:22:03 <phma> I'm thinking of using JuicyPixels to plot some data. Is there a function that takes an image, a pair of coordinates, and a color and returns the image with a point plotted at those coordinates?
20:22:52 <edwardk> phma: that'd be pretty darn slow, given you'd be building new images every time you plotted a point
20:23:54 <sm[m]> there's Chart
20:24:05 <phma> so should I make the image in a sequence of sequences?
20:24:18 × falafel quits (~falafel@pool-96-255-70-50.washdc.fios.verizon.net) (Ping timeout: 264 seconds)
20:26:52 × brian_da_mage quits (~Neuromanc@37.6.199.86) (Changing host)
20:26:52 brian_da_mage joins (~Neuromanc@user/briandamag)
20:28:51 × sondre quits (~sondrelun@eduroam-193-157-188-177.wlan.uio.no) (Ping timeout: 244 seconds)
20:29:20 <edwardk> phma: there's several ways to go about it. the easiest might be to consider taking a list of [(Int,Int)] pairs, and then internally mutably builds up the image with something that builds up a 'MutableImage s a' rather than an 'Image a', then freezes it, or building your entire work pipeline around MutableImages instead.
20:29:50 justsomeguy joins (~justsomeg@user/justsomeguy)
20:30:00 zava joins (~zava@ip5f5bdf0f.dynamic.kabel-deutschland.de)
20:30:08 allbery_b joins (~geekosaur@069-135-003-034.biz.spectrum.com)
20:31:29 dunham joins (~dunham@97-113-35-16.tukw.qwest.net)
20:32:14 × geekosaur quits (~geekosaur@069-135-003-034.biz.spectrum.com) (Ping timeout: 248 seconds)
20:32:48 allbery_b is now known as geekosaur
20:33:12 × zebrag quits (~chris@aaubervilliers-654-1-3-253.w83-200.abo.wanadoo.fr) (Quit: Konversation terminated!)
20:33:34 zebrag joins (~chris@aaubervilliers-654-1-3-253.w83-200.abo.wanadoo.fr)
20:34:39 × Dynom quits (~niels@80-114-12-206.cable.dynamic.v4.ziggo.nl) (Quit: WeeChat 3.1)
20:36:05 × dunham quits (~dunham@97-113-35-16.tukw.qwest.net) (Ping timeout: 244 seconds)
20:38:07 × zebrag quits (~chris@aaubervilliers-654-1-3-253.w83-200.abo.wanadoo.fr) (Client Quit)
20:38:20 zebrag joins (~chris@user/zebrag)
20:38:42 × zebrag quits (~chris@user/zebrag) (Client Quit)
20:39:08 × tromp quits (~textual@dhcp-077-249-230-040.chello.nl) (Quit: My iMac has gone to sleep. ZZZzzz…)
20:39:23 <Franciman> https://bpa.st/WAPQ
20:39:27 <Franciman> why isn't this evaulated to 'True ?
20:39:44 <Franciman> how can I tell ghc to shutup and listen to me
20:39:46 <Franciman> that f == f
20:39:49 <Franciman> u == u etc ?
20:40:20 <Franciman> there is no way this can be false
20:40:27 <Franciman> but ghc does not understand it
20:40:32 <Franciman> what the heck is happening ?
20:40:49 zebrag joins (~chris@user/zebrag)
20:40:54 <Franciman> when has ghc become so dumb?
20:41:04 <tomsmeding> Franciman: link to the definition of that == operator?
20:41:04 <Franciman> what's causing this uncertanity?
20:41:04 × ixlun quits (~user@109.249.184.235) (Ping timeout: 264 seconds)
20:41:14 <cdsmith> Well, "shut up and listen to me" is spelled unsafeCoerce, but you probably shouldn't do that. :(
20:41:30 <Franciman> tomsmeding: https://hackage.haskell.org/package/base-4.15.0.0/docs/Data-Type-Equality.html#t:-61--61-
20:42:21 × ikex quits (~ash@user/ikex) (Ping timeout: 272 seconds)
20:42:25 dunham joins (~dunham@97-113-35-16.tukw.qwest.net)
20:42:29 × connrs quits (~connrs@s1.connrs.uk) (Quit: ZNC 1.8.2 - https://znc.in)
20:42:40 <hololeap> wouldn't you have to do something like put it in a constraint: ((Model.Api.Modification f u r a == Model.Api.Modification f u r a) ~ 'True)
20:43:02 <boxscape> Franciman the reason it doesn't work is because GHC doesn't know if these variables will be constructors applied to something or not, and so doesn't know whether to apply the first equation of that type family or the second
20:43:09 connrs joins (~connrs@s1.connrs.uk)
20:43:16 <Franciman> boxscape: brilliant!
20:43:26 × Teacup quits (~teacup@user/teacup) (Ping timeout: 248 seconds)
20:43:30 <Franciman> is there a way I can solve this?
20:43:42 <Franciman> I should specify kinds?
20:43:53 <boxscape> hmm
20:44:23 × zebrag quits (~chris@user/zebrag) (Client Quit)
20:44:27 <boxscape> I'm not really sure how to actually solve this :/
20:44:43 zebrag joins (~chris@user/zebrag)
20:44:47 ixlun joins (~user@109.249.184.235)
20:45:09 <boxscape> specifying the kind *might* help, I'm not sure
20:45:21 <tomsmeding> specifying the kind does not help, just tried
20:45:21 mib_fqswhk parts (a0ee4a17@ircip1.mibbit.com) ()
20:45:24 <boxscape> :(
20:46:23 <tomsmeding> % :m Data.Type.Equality Data.Type.Bool Data.Kind
20:46:23 <yahb> tomsmeding:
20:46:31 <tomsmeding> % :set -XTypeOperators -XRankNTypes -XDataKinds -XQuantifiedConstraints -XGADTs -XKindSignatures
20:46:31 <yahb> tomsmeding:
20:46:38 <boxscape> Franciman though in your original problem you don't actually use the == operator, right?
20:46:41 tomsmeding . o O ( -XKitchenSink )
20:46:46 <Franciman> boxscape: it is used by UVerb
20:46:48 <tomsmeding> % foo :: forall (a :: Type) (b :: Type) (c :: Type). (A a b c == A a b c) ~ 'True => () ; foo = ()
20:46:48 <yahb> tomsmeding: ; <interactive>:95:53: error: Not in scope: type constructor or class `A'; <interactive>:95:64: error: Not in scope: type constructor or class `A'
20:46:52 tromp joins (~textual@dhcp-077-249-230-040.chello.nl)
20:46:55 <tomsmeding> % data A a b c = A a b c
20:46:55 <yahb> tomsmeding:
20:46:56 <tomsmeding> % foo :: forall (a :: Type) (b :: Type) (c :: Type). (A a b c == A a b c) ~ 'True => () ; foo = ()
20:46:56 <yahb> tomsmeding: ; <interactive>:97:8: error:; * Could not deduce: (((a0 == a0) && (b0 == b0)) && (c0 == c0)) ~ 'True; from the context: (A a b c == A a b c) ~ 'True; bound by the type signature for:; foo :: forall a b c. ((A a b c == A a b c) ~ 'True) => (); at <interactive>:97:8-85; Expected: forall a b c. ((A a b c == A a b c) ~ 'True) => (); Actual: forall a b
20:47:45 ccntrq_ joins (~ccntrq@dynamic-077-008-029-067.77.8.pool.telefonica.de)
20:47:49 <boxscape> Franciman ah, I see
20:47:51 Teacup joins (~teacup@user/teacup)
20:48:38 <tomsmeding> for concrete types ghc does prove equality here
20:48:40 × fizbin quits (~fizbin@c-73-33-197-160.hsd1.nj.comcast.net) (Remote host closed the connection)
20:48:50 <Franciman> yes
20:48:52 <boxscape> hololeap's suggestion didn't sound too bad?
20:48:52 fizbin joins (~fizbin@c-73-33-197-160.hsd1.nj.comcast.net)
20:49:16 <boxscape> then you could push the constraint resolution to the use site, far enough to the point where you do have concrete types
20:49:46 ccntrq__ joins (~ccntrq@dynamic-077-008-029-067.77.8.pool.telefonica.de)
20:49:55 pe200012 joins (~pe200012@119.131.208.84)
20:49:57 × ixlun quits (~user@109.249.184.235) (Ping timeout: 272 seconds)
20:50:05 <boxscape> i.e. adding ((Model.Api.Modification f u r a == Model.Api.Modification f u r a) ~ 'True) as constraint
20:50:09 × pe200012_ quits (~pe200012@218.107.17.245) (Ping timeout: 272 seconds)
20:50:10 × Bartosz quits (~textual@50.35.215.151) (Quit: My MacBook has gone to sleep. ZZZzzz…)
20:50:14 <tomsmeding> Franciman: see the comment at the end of the module source here https://hackage.haskell.org/package/base-4.15.0.0/docs/src/Data-Type-Equality.html#line-174
20:50:17 <Franciman> thanks a lot boxscape
20:50:22 × ccntrq quits (~ccntrq@dynamic-077-008-029-067.77.8.pool.telefonica.de) (Ping timeout: 248 seconds)
20:51:24 <tomsmeding> so indeed the reason that ghc can't simplify 'a == a' is because it doesn't yet know whether to choose the first or the second equation
20:51:25 × rahguzar quits (~rahguzar@dynamic-adsl-84-220-228-254.clienti.tiscali.it) (Ping timeout: 272 seconds)
20:51:31 Bartosz joins (~textual@50.35.215.151)
20:51:50 <boxscape> hololeap out of curiosity did you get a ping when I wrote hololeap's ? My client doesn't light up your name when I do that
20:52:01 <tomsmeding> that makes sense, even with kind applications; indeed, Int would match the second equation, while Maybe Int would match the first, but both are of kind Type
20:52:02 <Franciman> thanks tomsmeding and hololeap
20:52:22 × ccntrq_ quits (~ccntrq@dynamic-077-008-029-067.77.8.pool.telefonica.de) (Ping timeout: 264 seconds)
20:53:09 mikoto-chan joins (~mikoto-ch@ip-213-49-189-31.dsl.scarlet.be)
20:54:36 <Franciman> boxscape: hololeap it works!
20:54:38 <Franciman> thanks a lot!
20:54:41 <boxscape> oh, nice!
20:54:45 <Franciman> ^^
20:54:48 <Franciman> you saved me
20:55:18 <jackdk> int-e: I was asleep but noticed you added lambdabot to bfpg for me. thanks!
20:55:22 <jackdk> @botsnack
20:55:22 <lambdabot> :)
20:55:39 × connrs quits (~connrs@s1.connrs.uk) (Quit: ZNC 1.8.2 - https://znc.in)
20:56:18 connrs joins (~connrs@s1.connrs.uk)
20:56:30 <tomsmeding> fun corollary: you can't even define this function:
20:56:34 <tomsmeding> % magic :: forall a b proxy. a ~ b => proxy a -> proxy b -> (a == b) :~: 'True ; magic _ _ = unsafeCoerce Refl :: (a == b) :~: 'True
20:56:34 <yahb> tomsmeding: ; <interactive>:99:92: error: Variable not in scope: unsafeCoerce :: (a0 :~: a0) -> (b == b) :~: 'True
20:56:39 <tomsmeding> % import Unsafe.Coerce
20:56:39 <yahb> tomsmeding:
20:56:40 <tomsmeding> % magic :: forall a b proxy. a ~ b => proxy a -> proxy b -> (a == b) :~: 'True ; magic _ _ = unsafeCoerce Refl :: (a == b) :~: 'True
20:56:40 <yahb> tomsmeding:
20:56:42 <tomsmeding> wat
20:56:53 <tomsmeding> okay with new ghc apparently you can
20:57:53 × Guest9 quits (~Guest9@103.240.169.6) (Quit: Connection closed)
20:57:57 <hololeap> boxscape, yeah I did
20:58:00 <tomsmeding> ghc 8.10.4 can't do this because it can't figure out what type to unsafeCoerce to, since the type family is non-injective so '(a == b) :~: 'True' does not actually unambiguously pinpoint a type -- I think
20:58:06 <boxscape> hololeap okay, thanks
20:58:30 <tomsmeding> boxscape: I think whether you get a ping for those kinds of mentions depends on the client of the receiver, not the sender
20:58:37 <boxscape> yeah that makes sense
20:58:51 <tomsmeding> case in point: weechat pings me whenever someone writes 'paste.tomsmeding.com' whereas Revolution IRC on my phone doesn't
20:58:54 <boxscape> was mostly curious whether that's a convention across clients or something
20:58:58 <boxscape> I see
20:59:29 <boxscape> sounds kind of annoying when you have the paste page dedicated to a channel :)
20:59:48 <tomsmeding> meh I get to see interesting questions sometimes :)
20:59:53 <boxscape> fair enough
21:00:06 <bfrk> you: could you please change your nick? It drives me crazy that every "you" I see here is highlighted.
21:00:13 <hololeap> weechat is so configurable, I'd bet there is a way to change the regex or whatever it uses to check pings
21:00:19 <geekosaur> I get that with "so"
21:00:23 × dhouthoo quits (~dhouthoo@178-117-36-167.access.telenet.be) (Quit: WeeChat 3.1)
21:00:26 <geekosaur> well, not since we left freenode
21:00:38 <tomsmeding> hololeap: "weechat.look.highlight_regex: POSIX extended regular expression used to check if a message has highlight or not"
21:00:38 <bfrk> I am using thunderbird for irc
21:01:06 <ski> bfrk : it is registered, apparently
21:01:47 <tomsmeding> though they aren't actually online at the moment
21:02:18 isovector1 parts (~isovector@172.103.216.166) (Leaving)
21:03:25 marmulak joins (~marmulak@user/marmulak)
21:03:27 bfrk is going to watch favourite TV series now
21:03:43 × nsilv quits (~nsilv@host-82-50-119-12.retail.telecomitalia.it) (Quit: WeeChat 2.8)
21:04:15 ccntrq_ joins (~ccntrq@dynamic-077-008-029-067.77.8.pool.telefonica.de)
21:05:34 × mikoto-chan quits (~mikoto-ch@ip-213-49-189-31.dsl.scarlet.be) (Ping timeout: 264 seconds)
21:06:46 × ccntrq__ quits (~ccntrq@dynamic-077-008-029-067.77.8.pool.telefonica.de) (Ping timeout: 264 seconds)
21:07:01 bjfs joins (bart@kobayashi.com.pl)
21:07:44 marmulak parts (~marmulak@user/marmulak) ()
21:08:38 Varis[m] joins (~varismatr@2001:470:69fc:105::35b)
21:09:16 ccntrq__ joins (~ccntrq@dynamic-077-008-029-067.77.8.pool.telefonica.de)
21:09:40 Varis[m] parts (~varismatr@2001:470:69fc:105::35b) ()
21:10:25 × tromp quits (~textual@dhcp-077-249-230-040.chello.nl) (Quit: My iMac has gone to sleep. ZZZzzz…)
21:11:42 × ccntrq_ quits (~ccntrq@dynamic-077-008-029-067.77.8.pool.telefonica.de) (Ping timeout: 248 seconds)
21:12:08 sondre joins (~sondrelun@cm-84.212.100.140.getinternet.no)
21:12:50 × pfurla quits (~pfurla@ool-182ed2e2.dyn.optonline.net) (Quit: gone to sleep. ZZZzzz…)
21:13:18 × prite quits (~pritam@user/pritambaral) (Ping timeout: 248 seconds)
21:13:30 merijn joins (~merijn@83-160-49-249.ip.xs4all.nl)
21:13:43 × coot quits (~coot@37.30.49.19.nat.umts.dynamic.t-mobile.pl) (Quit: coot)
21:14:19 × Guest11 quits (~textual@146.212.240.255) (Quit: My MacBook has gone to sleep. ZZZzzz…)
21:14:43 tromp joins (~textual@dhcp-077-249-230-040.chello.nl)
21:14:45 ccntrq_ joins (~ccntrq@dynamic-077-008-029-067.77.8.pool.telefonica.de)
21:15:29 × argento quits (~argent0@168.227.96.51) (Ping timeout: 272 seconds)
21:17:27 ccntrq joins (~ccntrq@dynamic-077-008-029-067.77.8.pool.telefonica.de)
21:17:31 × tekul quits (~tekul@82-68-220-238.dsl.in-addr.zen.co.uk) (Quit: Client closed)
21:17:35 × ccntrq__ quits (~ccntrq@dynamic-077-008-029-067.77.8.pool.telefonica.de) (Ping timeout: 265 seconds)
21:17:50 × merijn quits (~merijn@83-160-49-249.ip.xs4all.nl) (Ping timeout: 252 seconds)
21:19:29 × ccntrq_ quits (~ccntrq@dynamic-077-008-029-067.77.8.pool.telefonica.de) (Ping timeout: 252 seconds)
21:19:45 ccntrq_ joins (~ccntrq@dynamic-077-008-029-067.77.8.pool.telefonica.de)
21:20:47 × justsomeguy quits (~justsomeg@user/justsomeguy) (Quit: WeeChat 3.0.1)
21:21:46 notzmv joins (~zmv@user/notzmv)
21:22:14 × ccntrq quits (~ccntrq@dynamic-077-008-029-067.77.8.pool.telefonica.de) (Ping timeout: 252 seconds)
21:25:14 × lavaman quits (~lavaman@98.38.249.169) (Remote host closed the connection)
21:26:13 rahguzar joins (~rahguzar@dynamic-adsl-84-220-228-254.clienti.tiscali.it)
21:26:34 × dy quits (~dy@user/dy) (Quit: Textual IRC Client: www.textualapp.com)
21:27:07 argento joins (~argent0@168.227.96.51)
21:28:16 ccntrq__ joins (~ccntrq@dynamic-077-008-029-067.77.8.pool.telefonica.de)
21:29:24 × dustingetz quits (~textual@pool-173-49-123-198.phlapa.fios.verizon.net) (Quit: My MacBook has gone to sleep. ZZZzzz…)
21:30:38 monochrom re-opens the debate about whether the sky is blue. There is actually an xkcd for that, too. >:)
21:30:54 × ccntrq_ quits (~ccntrq@dynamic-077-008-029-067.77.8.pool.telefonica.de) (Ping timeout: 248 seconds)
21:33:18 × ccntrq__ quits (~ccntrq@dynamic-077-008-029-067.77.8.pool.telefonica.de) (Ping timeout: 264 seconds)
21:33:34 × bfrk quits (~Thunderbi@200116b84508c2004c8614311807bd60.dip.versatel-1u1.de) (Ping timeout: 248 seconds)
21:34:15 × tromp quits (~textual@dhcp-077-249-230-040.chello.nl) (Quit: My iMac has gone to sleep. ZZZzzz…)
21:35:01 × connrs quits (~connrs@s1.connrs.uk) (Quit: ZNC 1.8.2 - https://znc.in)
21:35:40 connrs joins (~connrs@s1.connrs.uk)
21:36:26 tromp joins (~textual@dhcp-077-249-230-040.chello.nl)
21:36:53 × jumper149 quits (~jumper149@80.240.31.34) (Quit: WeeChat 3.1)
21:37:02 <int-e> monochrom: it's not, next question?
21:37:10 <myShoggoth> HF May Update: https://discourse.haskell.org/t/haskell-foundation-may-update/2567
21:37:45 <int-e> (I was outside just moments ago and it was black, well, dark grey with an orange tint)
21:38:16 <monochrom> mib_fqswhk is a known troll and was yesterday known as guriya and comradecow.
21:38:45 ChanServ sets mode +o monochrom
21:38:54 monochrom sets mode +b *!~a0ee4a*@*.mibbit.com
21:38:59 python476 joins (~user@88.160.31.174)
21:38:59 monochrom sets mode -o monochrom
21:39:15 <river> I managed to prove the yoneda lemma
21:39:16 <river> !
21:39:24 <monochrom> Nice congrats river.
21:40:11 × Bartosz quits (~textual@50.35.215.151) (Quit: My MacBook has gone to sleep. ZZZzzz…)
21:40:17 <river> thanks
21:41:19 <monochrom> Regarding text-utf8 vs text-utf16 I just have a feeling that every 10 years there will be a new benchmark that says the status quo is inefficient let's switch to the other one.
21:41:43 <monochrom> (And that is already my non-cynical prediction.)
21:42:10 <boxscape> At the current trend it'll just be a few more halvings before we reach utf-1, and who knows what'll happen after that
21:42:33 × fizbin quits (~fizbin@c-73-33-197-160.hsd1.nj.comcast.net) (Remote host closed the connection)
21:42:40 <monochrom> (My cynical prediction is there is only an ideological toggle, not even bothering to thinly veil by biased benchmark data.)
21:42:51 <monochrom> hahaha
21:43:42 × argento quits (~argent0@168.227.96.51) (Ping timeout: 248 seconds)
21:43:48 <hololeap> utf-2^-1
21:44:23 × zebrag quits (~chris@user/zebrag) (Quit: Konversation terminated!)
21:44:43 zebrag joins (~chris@user/zebrag)
21:46:56 × wallymathieu quits (~wallymath@81-234-151-21-no94.tbcn.telia.com) (Quit: My MacBook has gone to sleep. ZZZzzz…)
21:48:31 nsilv-phone-1 joins (~nsilv-pho@host-82-50-119-12.retail.telecomitalia.it)
21:48:40 ddellaco_ joins (~ddellacos@89.46.62.60)
21:49:49 × ddellaco_ quits (~ddellacos@89.46.62.60) (Remote host closed the connection)
21:50:19 ddellaco_ joins (~ddellacos@89.46.62.60)
21:51:38 jocke-l joins (jocke-l@a.x0.is)
21:51:42 × ddellacosta quits (~ddellacos@86.106.121.23) (Ping timeout: 248 seconds)
21:51:42 × nsilv-phone quits (~nsilv-pho@37.162.42.151) (Ping timeout: 248 seconds)
21:53:20 × tromp quits (~textual@dhcp-077-249-230-040.chello.nl) (Quit: My iMac has gone to sleep. ZZZzzz…)
21:54:32 × nate1 quits (~nate@108-233-125-227.lightspeed.sntcca.sbcglobal.net) (Quit: WeeChat 2.9)
21:54:52 × ddellaco_ quits (~ddellacos@89.46.62.60) (Ping timeout: 264 seconds)
21:55:38 nate1 joins (~nate@108-233-125-227.lightspeed.sntcca.sbcglobal.net)
21:55:46 lavaman joins (~lavaman@98.38.249.169)
21:56:13 × ServerStatsDisco quits (~serversta@2001:470:69fc:105::1a) (Quit: node-irc says goodbye)
21:56:13 × siraben quits (~siraben@user/siraben) (Quit: node-irc says goodbye)
21:56:13 × ac quits (~aloiscoch@2001:470:69fc:105::65) (Quit: node-irc says goodbye)
21:56:13 × MatrixTravelerbo quits (~voyagert2@2001:470:69fc:105::22) (Quit: node-irc says goodbye)
21:56:13 × psydroid quits (~psydroidm@user/psydroid) (Quit: node-irc says goodbye)
21:56:13 × peddie[m] quits (~peddiemat@2001:470:69fc:105::25d) (Quit: node-irc says goodbye)
21:56:13 × srid[m] quits (~sridmatri@2001:470:69fc:105::1c2) (Quit: node-irc says goodbye)
21:56:13 × maerwald[m] quits (~maerwaldm@2001:470:69fc:105::1ee) (Quit: node-irc says goodbye)
21:56:13 × sm[m] quits (~sm@plaintextaccounting/sm) (Quit: node-irc says goodbye)
21:56:13 × zwro[m] quits (~zwromatri@2001:470:69fc:105::1d4) (Quit: node-irc says goodbye)
21:56:13 × hjulle[m] quits (~hjullemat@2001:470:69fc:105::1dd) (Quit: node-irc says goodbye)
21:56:13 × Morrow[m] quits (~morrowmma@2001:470:69fc:105::1d0) (Quit: node-irc says goodbye)
21:56:13 × maralorn[m] quits (~maralorn@2001:470:69fc:105::251) (Quit: node-irc says goodbye)
21:56:13 × jaror[m] quits (~jaror@2001:470:69fc:105::265) (Quit: node-irc says goodbye)
21:56:13 × tomferon[m] quits (~tomferon@2001:470:69fc:105::268) (Quit: node-irc says goodbye)
21:56:13 × cdsmith quits (~cdsmithma@2001:470:69fc:105::284) (Quit: node-irc says goodbye)
21:56:36 siraben joins (~siraben@user/siraben)
21:57:26 × _73 quits (~user@pool-96-252-123-136.bstnma.fios.verizon.net) (Ping timeout: 252 seconds)
21:57:27 ac joins (~aloiscoch@2001:470:69fc:105::65)
21:57:27 psydroid joins (~psydroidm@2001:470:69fc:105::165)
21:57:27 sm[m] joins (~sm@plaintextaccounting/sm)
21:57:27 ServerStatsDisco joins (~serversta@2001:470:69fc:105::1a)
21:57:27 srid[m] joins (~sridmatri@2001:470:69fc:105::1c2)
21:57:27 MatrixTravelerbo joins (~voyagert2@2001:470:69fc:105::22)
21:57:27 hjulle[m] joins (~hjullemat@2001:470:69fc:105::1dd)
21:57:28 maralorn[m] joins (~maralorn@2001:470:69fc:105::251)
21:57:28 cdsmith joins (~cdsmithma@2001:470:69fc:105::284)
21:57:39 Morrow[m] joins (~morrowmma@2001:470:69fc:105::1d0)
21:57:39 maerwald[m] joins (~maerwaldm@2001:470:69fc:105::1ee)
21:57:40 zwro[m] joins (~zwromatri@2001:470:69fc:105::1d4)
21:57:40 tomferon[m] joins (~tomferon@2001:470:69fc:105::268)
21:57:40 peddie[m] joins (~peddiemat@2001:470:69fc:105::25d)
21:57:41 jaror[m] joins (~jaror@2001:470:69fc:105::265)
21:57:42 × Sinbad quits (~Sinbad@user/sinbad) (Ping timeout: 265 seconds)
21:58:55 smatting joins (~stefan@p200300cd7715d600c9b2f2eb3b03ae08.dip0.t-ipconnect.de)
21:59:26 × vicfred quits (~vicfred@user/vicfred) (Quit: Leaving)
22:00:00 × gehmehgeh quits (~user@user/gehmehgeh) (Quit: Leaving)
22:00:16 × lavaman quits (~lavaman@98.38.249.169) (Ping timeout: 264 seconds)
22:02:14 <boxscape> Are Data.Functor.Compose.Compose and GHC.Generics.:.: essentially the same thing?
22:03:11 <boxscape> If so, why do they both exist in base?
22:03:37 allbery_b joins (~geekosaur@069-135-003-034.biz.spectrum.com)
22:03:53 <monochrom> Yes they are equivalent.
22:04:05 <boxscape> ok
22:04:12 fizbin joins (~fizbin@c-73-33-197-160.hsd1.nj.comcast.net)
22:04:14 <monochrom> Why do both "continuation" and "callback" exist?
22:04:20 <boxscape> hmm good question
22:04:30 × geekosaur quits (~geekosaur@069-135-003-034.biz.spectrum.com) (Ping timeout: 248 seconds)
22:04:40 <boxscape> wait I don't think that's the same
22:04:49 <monochrom> Answer: Historically emerged from two disjoint cliques and no one wants to unify.
22:04:56 kradley joins (~kh@2600:4040:11e5:6200:1766:8a30:2f44:4bb6)
22:05:00 <boxscape> okay that's fair, the analogy does work in that sense
22:05:30 × larryba quits (~bc817c21@217.29.117.252) (Quit: http://www.okay.uz/)
22:05:34 × sondre quits (~sondrelun@cm-84.212.100.140.getinternet.no) (Ping timeout: 248 seconds)
22:05:45 larryba joins (~bc817c21@217.29.117.252)
22:06:31 × kradley quits (~kh@2600:4040:11e5:6200:1766:8a30:2f44:4bb6) (Client Quit)
22:06:37 × haskman quits (~haskman@106.201.28.184) (Quit: Going to sleep. ZZZzzz…)
22:07:23 tromp joins (~textual@dhcp-077-249-230-040.chello.nl)
22:08:12 <monochrom> It could also be not very nice for either of {Data.Functor.Compose, GHC.Generics} to have to import the other.
22:08:53 <boxscape> hm maybe
22:08:58 sa1 joins (uid7690@id-7690.charlton.irccloud.com)
22:09:31 × Philonous quits (~Philonous@user/philonous) (Remote host closed the connection)
22:09:50 Philonous joins (~Philonous@user/philonous)
22:10:06 <boxscape> monochrom actually it turns out Data.Functor.Compose already imports GHC.Generics to derive Generic
22:10:06 jaevanko joins (~jaevanko@2600:1700:1330:2bef:1c80:6870:d96d:577b)
22:10:31 <monochrom> Haha that's sad.
22:13:19 allbery_b is now known as geekosaur
22:13:42 × jaevanko quits (~jaevanko@2600:1700:1330:2bef:1c80:6870:d96d:577b) (Client Quit)
22:14:18 × hgolden quits (~hgolden2@cpe-172-114-84-61.socal.res.rr.com) (Quit: Konversation terminated!)
22:17:27 × fizbin quits (~fizbin@c-73-33-197-160.hsd1.nj.comcast.net) (Remote host closed the connection)
22:17:52 hgolden joins (~hgolden2@cpe-172-114-84-61.socal.res.rr.com)
22:18:21 argento joins (~argent0@168.227.96.51)
22:19:07 × michalz quits (~user@185.246.204.55) (Remote host closed the connection)
22:19:56 × __monty__ quits (~toonn@user/toonn) (Quit: leaving)
22:21:27 ddellacosta joins (~ddellacos@86.106.121.17)
22:21:40 janus joins (janus@anubis.0x90.dk)
22:22:11 × oxide quits (~lambda@user/oxide) (Ping timeout: 252 seconds)
22:22:15 <janus> how do i have ghcup install the links from ghc to ghc-8.6.5? i have to manually tell cabal which ghc to use...
22:22:33 <maerwald> janus: ghcup set ghc 8.6.5
22:22:38 × rahguzar quits (~rahguzar@dynamic-adsl-84-220-228-254.clienti.tiscali.it) (Ping timeout: 248 seconds)
22:22:41 <monochrom> or ghcup tui
22:22:45 × tromp quits (~textual@dhcp-077-249-230-040.chello.nl) (Quit: My iMac has gone to sleep. ZZZzzz…)
22:22:55 <janus> ooh ok. i tried "ghcup set" and it gave me a ParseBundleError that i couldn't understand
22:23:03 × waleee quits (~waleee@2001:9b0:216:8200:d457:9189:7843:1dbd) (Ping timeout: 272 seconds)
22:23:24 <maerwald> janus: cool, can you paste the error?
22:23:33 × dunham quits (~dunham@97-113-35-16.tukw.qwest.net) (Ping timeout: 244 seconds)
22:23:33 <maerwald> @where paste
22:23:33 <lambdabot> Help us help you: please paste full code, input and/or output at e.g. https://paste.tomsmeding.com
22:23:48 <janus> it is probably because i tried making the links myself...
22:23:58 <maerwald> not a good idea :D
22:24:15 <maerwald> but it seems to be rather frequent
22:24:20 <janus> paste.tomsmeding.com/MsDYRqM3
22:24:25 dy joins (~dy@user/dy)
22:24:29 <janus> https://paste.tomsmeding.com/MsDYRqM3
22:25:06 × smatting quits (~stefan@p200300cd7715d600c9b2f2eb3b03ae08.dip0.t-ipconnect.de) (Ping timeout: 244 seconds)
22:25:06 <maerwald> that looks like an absolute path?
22:25:12 waleee joins (~waleee@2001:9b0:216:8200:d457:9189:7843:1dbd)
22:25:48 <monochrom> :|
22:25:51 <maerwald> anyway
22:25:53 <janus> my pwd is on a separate line, that is just my shell. or are you referring to something from the error message
22:25:58 oats is now known as moats
22:26:02 moats is now known as oats
22:26:11 <maerwald> just wondering what your symlink looked like
22:26:12 <janus> i'll just try and clean up those links
22:26:13 × ddellacosta quits (~ddellacos@86.106.121.17) (Ping timeout: 265 seconds)
22:26:22 <janus> i'll tell you how they look
22:26:44 <maerwald> if it's a valid link, the parser can be adjusted to be more lax
22:27:18 skius is now known as SoF
22:27:27 × glider quits (~glider@user/glider) (Quit: ZNC 1.9.x-git-111-f2cdc3db - https://znc.in)
22:28:20 <janus> maerwald: here is the contents of .ghcup/bin : https://paste.tomsmeding.com/jIzpsN1l . i will now look in my bash history and delete all the links i made
22:29:45 <maerwald> is that before or after you ran `ghcup set ghc`?
22:30:12 <janus> i did that before you taught my about that feature :P so that is why i corrupted that
22:30:21 <maerwald> ah, I guess I know
22:30:34 <maerwald> haddock -> haddock-8.6
22:30:46 <janus> would be awesome if cabal somehow knew if it was installed from ghcup, then it could hint at that command...
22:30:57 <janus> when you do "cabal build" and it just says "can't find compiler"
22:31:07 <maerwald> janus: there was an idea to add hooks to cabal, but it was never executed
22:31:21 <janus> i think the issue is that i originally installed one compiler, installed another, and deleted the first. so maybe that's why the original ghc link was removed?
22:31:35 fizbin joins (~fizbin@2601:82:c380:87a:542e:7fe0:1120:cb8e)
22:32:05 <maerwald> you shouldn't change the symlinks manually
22:32:11 <janus> right right, i know that now
22:33:29 × mc47 quits (~yecinem@89.246.239.190) (Quit: Leaving)
22:35:46 <janus> all right, i fixed it, "ghcup set" works now
22:36:10 × fizbin quits (~fizbin@2601:82:c380:87a:542e:7fe0:1120:cb8e) (Ping timeout: 264 seconds)
22:36:17 dunham joins (~dunham@97-113-35-16.tukw.qwest.net)
22:36:37 <janus> thanks for the help maerwald and sorry for the disturbance :) i will leave the symlinks automatically managed
22:38:33 fizbin joins (~fizbin@2601:82:c380:87a:542e:7fe0:1120:cb8e)
22:38:36 ddellacosta joins (~ddellacos@86.106.121.100)
22:38:40 glider joins (~glider@user/glider)
22:42:21 <maerwald> Any good alternatives for Fedora? They just broke all packages thas use c2hs: https://bugzilla.redhat.com/show_bug.cgi?id=1957233
22:42:43 <maerwald> and they don't provide multiple gcc versions
22:43:22 × ddellacosta quits (~ddellacos@86.106.121.100) (Ping timeout: 264 seconds)
22:43:27 <maerwald> or a non-nix way to have a working gcc for haskell
22:44:13 <monochrom> dockerize? :)
22:45:02 <maerwald> I'm running a windows VM, so I already have a disk size killer
22:45:03 × imdoor quits (~imdoor@balticom-142-78-50.balticom.lv) (Quit: imdoor)
22:46:03 × fizbin quits (~fizbin@2601:82:c380:87a:542e:7fe0:1120:cb8e) (Remote host closed the connection)
22:46:08 <monochrom> yikes
22:47:26 fizbin joins (~fizbin@2601:82:c380:87a:542e:7fe0:1120:cb8e)
22:47:36 <geekosaur> well, this explains some recent arch bug reports as well
22:47:42 <maerwald> anaconda?
22:47:52 <maerwald> they seem to have a lovely team: https://fedoraproject.org/wiki/Anaconda#Anaconda_Team
22:49:13 × ubert quits (~Thunderbi@p200300ecdf259d1274882ed522245916.dip0.t-ipconnect.de) (Ping timeout: 272 seconds)
22:51:53 × fizbin quits (~fizbin@2601:82:c380:87a:542e:7fe0:1120:cb8e) (Ping timeout: 252 seconds)
22:52:34 lavaman joins (~lavaman@98.38.249.169)
22:56:00 <sclv> looks like chak needs to patch c2hs https://github.com/haskell/c2hs/issues/268
22:56:34 × argento quits (~argent0@168.227.96.51) (Quit: leaving)
22:56:46 × amahl quits (~amahl@dxv5skyy95x-mzmyd9kkt-3.rev.dnainternet.fi) (Ping timeout: 248 seconds)
22:57:15 × lavaman quits (~lavaman@98.38.249.169) (Ping timeout: 272 seconds)
22:58:57 janus parts (janus@anubis.0x90.dk) ()
22:59:00 falafel joins (~falafel@pool-96-255-70-50.washdc.fios.verizon.net)
22:59:03 × autophagy quits (~mika@user/autophagy) (Quit: WeeChat 3.1)
22:59:21 × waleee quits (~waleee@2001:9b0:216:8200:d457:9189:7843:1dbd) (Ping timeout: 272 seconds)
23:01:02 × alx741 quits (~alx741@186.178.109.84) (Ping timeout: 248 seconds)
23:01:08 winter joins (~winter@cpe-76-181-9-255.columbus.res.rr.com)
23:01:13 waleee joins (~waleee@h-98-128-228-119.NA.cust.bahnhof.se)
23:02:46 × boxscape quits (~boxscape@user/boxscape) (Quit: Connection closed)
23:03:09 boxscape joins (~boxscape@user/boxscape)
23:03:22 × zeenk quits (~zeenk@2a02:2f04:a310:b600:b098:bf18:df4d:4c41) (Quit: Konversation terminated!)
23:10:57 wroathe joins (~wroathe@c-68-54-25-135.hsd1.mn.comcast.net)
23:12:45 × winter quits (~winter@cpe-76-181-9-255.columbus.res.rr.com) (Quit: WeeChat 3.1)
23:12:48 × Tuplanolla quits (~Tuplanoll@91-159-68-239.elisa-laajakaista.fi) (Quit: Leaving.)
23:13:40 merijn joins (~merijn@83-160-49-249.ip.xs4all.nl)
23:13:50 × td_ quits (~td@muedsl-82-207-238-082.citykom.de) (Ping timeout: 248 seconds)
23:14:15 alx741 joins (~alx741@181.196.68.165)
23:14:37 td_ joins (~td@muedsl-82-207-238-082.citykom.de)
23:15:04 × noddy quits (~self@user/noddy) (Quit: ⌨ ︵└(՞▃՞ └))
23:17:59 bfrk joins (~Thunderbi@200116b84508c2004c8614311807bd60.dip.versatel-1u1.de)
23:24:41 bfrk1 joins (~Thunderbi@200116b8456a1f00d8d08c49fac857df.dip.versatel-1u1.de)
23:26:35 × bfrk quits (~Thunderbi@200116b84508c2004c8614311807bd60.dip.versatel-1u1.de) (Ping timeout: 272 seconds)
23:26:35 bfrk1 is now known as bfrk
23:27:03 × boxscape quits (~boxscape@user/boxscape) (Quit: Connection closed)
23:27:57 × Franciman quits (~francesco@host-80-180-196-134.pool80180.interbusiness.it) (Quit: WeeChat 2.3)
23:28:10 × wroathe quits (~wroathe@c-68-54-25-135.hsd1.mn.comcast.net) (Quit: leaving)
23:28:24 wroathe joins (~wroathe@c-68-54-25-135.hsd1.mn.comcast.net)
23:30:48 × jao quits (~jao@cpc103048-sgyl39-2-0-cust502.18-2.cable.virginm.net) (Remote host closed the connection)
23:31:51 bitdex joins (~bitdex@gateway/tor-sasl/bitdex)
23:31:56 Goblin17 joins (~Goblin@141.70.40.93)
23:32:16 bilegeek joins (~bilegeek@2600:1008:b01a:69cf:a58b:76f2:71:1386)
23:32:23 jao joins (~jao@cpc103048-sgyl39-2-0-cust502.18-2.cable.virginm.net)
23:35:56 × zava quits (~zava@ip5f5bdf0f.dynamic.kabel-deutschland.de) (Remote host closed the connection)
23:38:31 Goblin17 parts (~Goblin@141.70.40.93) ()
23:39:30 × stackbeard quits (~stackbear@pool-173-76-99-163.bstnma.fios.verizon.net) (Remote host closed the connection)
23:40:03 vicfred joins (~vicfred@user/vicfred)
23:40:52 × tremon quits (~tremon@217-63-61-89.cable.dynamic.v4.ziggo.nl) (Quit: getting boxed in)
23:43:13 × egoist quits (~egoist@186.235.82.52) (Quit: WeeChat 3.1)
23:47:40 × merijn quits (~merijn@83-160-49-249.ip.xs4all.nl) (Ping timeout: 264 seconds)
23:48:46 × waleee quits (~waleee@h-98-128-228-119.NA.cust.bahnhof.se) (Ping timeout: 264 seconds)
23:49:19 ddellacosta joins (~ddellacos@89.46.62.82)
23:49:49 × falafel quits (~falafel@pool-96-255-70-50.washdc.fios.verizon.net) (Ping timeout: 272 seconds)
23:51:10 × dunham quits (~dunham@97-113-35-16.tukw.qwest.net) (Ping timeout: 264 seconds)
23:51:54 × sbmsr quits (~pi@2600:1700:63d0:4830:9670:3c44:ca85:cefd) (Ping timeout: 264 seconds)
23:54:18 × ddellacosta quits (~ddellacos@89.46.62.82) (Ping timeout: 264 seconds)
23:55:13 waleee joins (~waleee@2001:9b0:216:8200:d457:9189:7843:1dbd)
23:59:08 allbery_b joins (~geekosaur@069-135-003-034.biz.spectrum.com)

All times are in UTC on 2021-05-28.