2023/05/24

2023-05-24 00:19:00 +0200mechap(~mechap@user/mechap) (Quit: WeeChat 3.8)
2023-05-24 00:21:18 +0200mncheckm(~mncheck@193.224.205.254) (Ping timeout: 250 seconds)
2023-05-24 00:26:12 +0200harveypwca(~harveypwc@2601:246:c180:a570:3828:d8:e523:3f67)
2023-05-24 00:26:52 +0200[itchyjunk](~itchyjunk@user/itchyjunk/x-7353470)
2023-05-24 00:40:26 +0200jero98772(~jero98772@2800:484:1d84:9000:8822:84bd:a4f4:947f) (Ping timeout: 265 seconds)
2023-05-24 00:45:21 +0200szkl(uid110435@id-110435.uxbridge.irccloud.com) (Quit: Connection closed for inactivity)
2023-05-24 00:46:24 +0200 <EvanR> scrolls up to see if there was an obligatory reference to "The C language is purely functional" blog post
2023-05-24 00:47:56 +0200 <EvanR> mauke, yes. Take the memory in use by the graph, and incrementally reclaim it as you use it to remember which nodes you already saw xD
2023-05-24 00:48:17 +0200acidjnk(~acidjnk@p200300d6e7072f19f418e5b952ba8eeb.dip0.t-ipconnect.de) (Ping timeout: 246 seconds)
2023-05-24 00:49:43 +0200gnalzo(~gnalzo@2a01:e0a:498:fd50:fcc6:bb5d:489a:ce8c) (Quit: WeeChat 3.8)
2023-05-24 00:51:44 +0200jero98772(~jero98772@2800:484:1d84:9000:8822:84bd:a4f4:947f)
2023-05-24 00:57:53 +0200kaskal(~kaskal@089144220013.atnat0029.highway.webapn.at) (Ping timeout: 268 seconds)
2023-05-24 00:58:01 +0200kaskal-(~kaskal@213-147-167-98.nat.highway.webapn.at)
2023-05-24 00:58:43 +0200Tuplanolla(~Tuplanoll@91-159-68-236.elisa-laajakaista.fi) (Quit: Leaving.)
2023-05-24 01:01:11 +0200euandreh(~Thunderbi@189.6.18.7) (Ping timeout: 240 seconds)
2023-05-24 01:05:20 +0200titibandit(~titibandi@user/titibandit) (Remote host closed the connection)
2023-05-24 01:13:10 +0200xameer(~xameer@144.48.224.179) (Remote host closed the connection)
2023-05-24 01:14:42 +0200xameer(~xameer@144.48.225.48)
2023-05-24 01:26:34 +0200Pickchea(~private@user/pickchea)
2023-05-24 01:26:41 +0200mauke_(~mauke@user/mauke)
2023-05-24 01:27:29 +0200Pickchea(~private@user/pickchea) (Remote host closed the connection)
2023-05-24 01:28:43 +0200mauke(~mauke@user/mauke) (Ping timeout: 268 seconds)
2023-05-24 01:28:43 +0200mauke_mauke
2023-05-24 01:35:45 +0200jmdaemon(~jmdaemon@user/jmdaemon)
2023-05-24 01:36:08 +0200quarkyalice(~alice@user/quarkyalice) (Quit: Leaving)
2023-05-24 01:36:13 +0200jargon(~jargon@184.101.78.160) (Remote host closed the connection)
2023-05-24 01:39:28 +0200quarkyalice(~alice@199.sub-97-136-32.myvzw.com)
2023-05-24 01:39:28 +0200quarkyalice(~alice@199.sub-97-136-32.myvzw.com) (Changing host)
2023-05-24 01:39:28 +0200quarkyalice(~alice@user/quarkyalice)
2023-05-24 01:40:01 +0200quarkyalice(~alice@user/quarkyalice) (Remote host closed the connection)
2023-05-24 01:40:23 +0200thegeekinside(~thegeekin@189.141.107.10) (Ping timeout: 240 seconds)
2023-05-24 01:44:16 +0200Lycurgus(~juan@user/Lycurgus)
2023-05-24 01:47:04 +0200quarkyalice(~alice@199.sub-97-136-32.myvzw.com)
2023-05-24 01:47:04 +0200quarkyalice(~alice@199.sub-97-136-32.myvzw.com) (Changing host)
2023-05-24 01:47:04 +0200quarkyalice(~alice@user/quarkyalice)
2023-05-24 01:50:20 +0200npmania(~Thunderbi@138.199.21.242) (Remote host closed the connection)
2023-05-24 01:55:03 +0200 <maralorn> So, apparently more and more packages are considering exposing their internals in an -internals package so that the exposed package can follow PvP. This is weird. Is their no better solution for this? How are other languages dealing with this?
2023-05-24 01:56:09 +0200[itchyjunk](~itchyjunk@user/itchyjunk/x-7353470) (Remote host closed the connection)
2023-05-24 01:56:22 +0200 <maralorn> I mean it kinda makes sense if you want to expose internals and version them differently. It makes less sense if you just expose internals for usage in binaries or tests.
2023-05-24 01:57:51 +0200 <hpc> some languages don't have export control, and you just rely on users to stick to the api you want them to use
2023-05-24 01:58:12 +0200 <hpc> sometimes the internals just aren't exposed at all, and a lot of closed-source libraries are that way
2023-05-24 01:58:22 +0200 <c_wraith> I think it's a perfectly good strategy to just treat .Internals modules as covered by the PVP, and update versions accordingly. I don't understand why that approach gets rejected.
2023-05-24 01:58:34 +0200 <hpc> you just get a header file and cat 'good luck' > readme.md
2023-05-24 02:01:06 +0200 <maralorn> c_wraith: I think because that would lead to to many major bumps of the public api.
2023-05-24 02:01:30 +0200 <c_wraith> there's a reason there are two fields for major.
2023-05-24 02:02:03 +0200eggplantade(~Eggplanta@2600:1700:38c5:d800:6cda:5d2c:763a:75d3)
2023-05-24 02:02:54 +0200 <maralorn> But consumer will need to pin both fields to be save.
2023-05-24 02:03:21 +0200 <c_wraith> and.. good? a package that's frequently changing it's internals isn't stable by definition.
2023-05-24 02:03:32 +0200 <c_wraith> *its
2023-05-24 02:03:48 +0200 <hpc> isn't the point of internals to change them frequently?
2023-05-24 02:04:02 +0200 <jackdk> People have conflated "version numbers as semantic information" and "version numbers as marketing information", I think.
2023-05-24 02:04:09 +0200harveypwca(~harveypwc@2601:246:c180:a570:3828:d8:e523:3f67) (Quit: Leaving)
2023-05-24 02:04:34 +0200 <c_wraith> the point of internals is that's where everything is that breaks your invariants.
2023-05-24 02:05:11 +0200vandita(~vandit@178-164-206-99.pool.digikabel.hu) (Ping timeout: 240 seconds)
2023-05-24 02:05:13 +0200 <hpc> that's probably where the problem here lies then
2023-05-24 02:05:26 +0200 <hpc> maybe it should be called unsafe instead or something
2023-05-24 02:06:10 +0200 <hpc> internal sounds like you're violating the promises of the packaging, and unsafe sounds like you're violating the promises of the api
2023-05-24 02:06:20 +0200eggplantade(~Eggplanta@2600:1700:38c5:d800:6cda:5d2c:763a:75d3) (Ping timeout: 246 seconds)
2023-05-24 02:07:05 +0200 <nitrix> I propose invariant and invarion't.
2023-05-24 02:07:07 +0200vandita(~vandit@178-164-206-56.pool.digikabel.hu)
2023-05-24 02:07:21 +0200califax(~califax@user/califx) (Remote host closed the connection)
2023-05-24 02:08:29 +0200califax(~califax@user/califx)
2023-05-24 02:08:48 +0200machinedgod(~machinedg@84-115-230-104.cable.dynamic.surfer.at) (Ping timeout: 268 seconds)
2023-05-24 02:08:57 +0200 <c_wraith> unsafe is for things that break the runtime, via memory or type unsafety
2023-05-24 02:13:20 +0200phma(~phma@host-67-44-208-203.hnremote.net) (Read error: Connection reset by peer)
2023-05-24 02:13:48 +0200phma(~phma@2001:5b0:215d:f508:c5da:3d99:1fd6:47ad)
2023-05-24 02:23:10 +0200wroathe(~wroathe@user/wroathe)
2023-05-24 02:23:59 +0200wroathe(~wroathe@user/wroathe) (Client Quit)
2023-05-24 02:24:12 +0200wroathe(~wroathe@207-153-38-140.fttp.usinternet.com)
2023-05-24 02:24:12 +0200wroathe(~wroathe@207-153-38-140.fttp.usinternet.com) (Changing host)
2023-05-24 02:24:12 +0200wroathe(~wroathe@user/wroathe)
2023-05-24 02:43:35 +0200zeenk(~zeenk@2a02:2f04:a105:f00::7fe) (Quit: Konversation terminated!)
2023-05-24 02:45:30 +0200notzmv(~zmv@user/notzmv)
2023-05-24 02:47:56 +0200quarkyalice(~alice@user/quarkyalice) (Remote host closed the connection)
2023-05-24 02:53:56 +0200 <c_wraith> oh hey. 9.6.2. and it fixes the bug I found immediately playing around in 9.6.1. (someone had reported it before it was even released, though)
2023-05-24 03:05:14 +0200Lycurgus(~juan@user/Lycurgus) (Quit: Exeunt: personae.ai-integration.biz)
2023-05-24 03:08:17 +0200xff0x(~xff0x@ai098135.d.east.v6connect.net) (Ping timeout: 246 seconds)
2023-05-24 03:09:14 +0200jmdaemon(~jmdaemon@user/jmdaemon) (Ping timeout: 268 seconds)
2023-05-24 03:10:15 +0200albet70(~xxx@2400:8902::f03c:92ff:fe60:98d8) (Remote host closed the connection)
2023-05-24 03:10:29 +0200xff0x(~xff0x@178.255.149.135)
2023-05-24 03:12:47 +0200notzmv(~zmv@user/notzmv) (Ping timeout: 264 seconds)
2023-05-24 03:15:35 +0200xff0x(~xff0x@178.255.149.135) (Ping timeout: 240 seconds)
2023-05-24 03:16:24 +0200albet70(~xxx@2400:8902::f03c:92ff:fe60:98d8)
2023-05-24 03:17:44 +0200xff0x(~xff0x@2405:6580:b080:900:6d82:a587:a8fb:8ee1)
2023-05-24 03:20:23 +0200Nosrep(~Nosrep@user/nosrep) (Remote host closed the connection)
2023-05-24 03:43:31 +0200hugo(znc@verdigris.lysator.liu.se) (Ping timeout: 240 seconds)
2023-05-24 03:54:29 +0200hugo(znc@verdigris.lysator.liu.se)
2023-05-24 03:54:38 +0200nate2(~nate@98.45.169.16)
2023-05-24 03:59:19 +0200nate2(~nate@98.45.169.16) (Ping timeout: 256 seconds)
2023-05-24 04:03:11 +0200vandita(~vandit@178-164-206-56.pool.digikabel.hu) (Ping timeout: 264 seconds)
2023-05-24 04:04:08 +0200pharonix71(~pharonix7@user/pharonix71) (Ping timeout: 240 seconds)
2023-05-24 04:04:26 +0200vandita(~vandit@84-236-3-126.pool.digikabel.hu)
2023-05-24 04:05:36 +0200pharonix71(~pharonix7@user/pharonix71)
2023-05-24 04:07:59 +0200td_(~td@i53870922.versanet.de) (Ping timeout: 240 seconds)
2023-05-24 04:08:23 +0200xff0x(~xff0x@2405:6580:b080:900:6d82:a587:a8fb:8ee1) (Ping timeout: 256 seconds)
2023-05-24 04:09:57 +0200td_(~td@i53870930.versanet.de)
2023-05-24 04:12:53 +0200eggplantade(~Eggplanta@2600:1700:38c5:d800:6cda:5d2c:763a:75d3)
2023-05-24 04:16:46 +0200bitdex(~bitdex@gateway/tor-sasl/bitdex)
2023-05-24 04:18:20 +0200nate2(~nate@98.45.169.16)
2023-05-24 04:25:08 +0200ubert(~Thunderbi@p200300ecdf18b6df36e22024a437cc27.dip0.t-ipconnect.de) (Ping timeout: 240 seconds)
2023-05-24 04:26:50 +0200werneta(~werneta@70-142-214-115.lightspeed.irvnca.sbcglobal.net)
2023-05-24 04:27:20 +0200ubert(~Thunderbi@p548c91e0.dip0.t-ipconnect.de)
2023-05-24 04:36:23 +0200mei(~mei@user/mei) (Ping timeout: 240 seconds)
2023-05-24 04:40:26 +0200mei(~mei@user/mei)
2023-05-24 04:49:46 +0200finn_elija(~finn_elij@user/finn-elija/x-0085643)
2023-05-24 04:49:46 +0200FinnElija(~finn_elij@user/finn-elija/x-0085643) (Killed (NickServ (Forcing logout FinnElija -> finn_elija)))
2023-05-24 04:49:46 +0200finn_elijaFinnElija
2023-05-24 04:55:07 +0200xff0x(~xff0x@125x103x176x34.ap125.ftth.ucom.ne.jp)
2023-05-24 04:55:48 +0200Mistyhands(~Mistyhand@217.155.19.212)
2023-05-24 04:57:54 +0200trev(~trev@user/trev)
2023-05-24 05:00:09 +0200Mistyhands(~Mistyhand@217.155.19.212) (Read error: Connection reset by peer)
2023-05-24 05:08:52 +0200wroathe(~wroathe@user/wroathe) (Ping timeout: 268 seconds)
2023-05-24 05:18:23 +0200nate2(~nate@98.45.169.16) (Ping timeout: 240 seconds)
2023-05-24 05:23:48 +0200darchitect(~darchitec@2a00:23c6:3584:df01:ef79:bcf3:d062:3079) (Ping timeout: 240 seconds)
2023-05-24 05:25:56 +0200darchitect(~darchitec@host86-157-65-148.range86-157.btcentralplus.com)
2023-05-24 05:40:29 +0200jrm(~jrm@user/jrm) (Quit: ciao)
2023-05-24 05:41:54 +0200jrm(~jrm@user/jrm)
2023-05-24 05:48:09 +0200jrm(~jrm@user/jrm) (Quit: ciao)
2023-05-24 05:49:33 +0200jrm(~jrm@user/jrm)
2023-05-24 06:06:56 +0200waleee(~waleee@2001:9b0:21c:4000:5bf9:6515:c030:57b7) (Ping timeout: 248 seconds)
2023-05-24 06:07:06 +0200_ht(~Thunderbi@28-52-174-82.ftth.glasoperator.nl)
2023-05-24 06:08:41 +0200vandita(~vandit@84-236-3-126.pool.digikabel.hu) (Ping timeout: 268 seconds)
2023-05-24 06:09:52 +0200vandita(~vandit@77-234-92-242.pool.digikabel.hu)
2023-05-24 06:10:31 +0200hugo(znc@verdigris.lysator.liu.se) (Ping timeout: 240 seconds)
2023-05-24 06:14:00 +0200coot(~coot@89-69-206-216.dynamic.chello.pl)
2023-05-24 06:17:30 +0200czy(~user@host-140-24.ilcub310.champaign.il.us.clients.pavlovmedia.net)
2023-05-24 06:18:28 +0200freeside(~mengwong@122.11.248.245)
2023-05-24 06:22:08 +0200hugo(znc@verdigris.lysator.liu.se)
2023-05-24 06:23:29 +0200freeside_(~mengwong@122.11.248.245)
2023-05-24 06:23:34 +0200freeside(~mengwong@122.11.248.245) (Read error: Connection reset by peer)
2023-05-24 06:25:46 +0200mbuf(~Shakthi@49.207.178.186)
2023-05-24 06:26:27 +0200mei(~mei@user/mei) (Remote host closed the connection)
2023-05-24 06:28:51 +0200mei(~mei@user/mei)
2023-05-24 06:30:11 +0200freeside_(~mengwong@122.11.248.245) (Ping timeout: 264 seconds)
2023-05-24 06:36:09 +0200freeside(~mengwong@122.11.248.245)
2023-05-24 06:43:31 +0200freeside(~mengwong@122.11.248.245) (Ping timeout: 240 seconds)
2023-05-24 07:00:11 +0200mei(~mei@user/mei) (Ping timeout: 264 seconds)
2023-05-24 07:04:07 +0200mei(~mei@user/mei)
2023-05-24 07:06:18 +0200freeside(~mengwong@122.11.248.245)
2023-05-24 07:10:29 +0200freeside(~mengwong@122.11.248.245) (Ping timeout: 246 seconds)
2023-05-24 07:12:18 +0200cheater_(~Username@user/cheater)
2023-05-24 07:12:45 +0200werneta(~werneta@70-142-214-115.lightspeed.irvnca.sbcglobal.net) (Ping timeout: 240 seconds)
2023-05-24 07:13:41 +0200takuan(~takuan@178-116-218-225.access.telenet.be)
2023-05-24 07:13:41 +0200thegeekinside(~thegeekin@189.141.107.10)
2023-05-24 07:14:49 +0200werneta(~werneta@70-142-214-115.lightspeed.irvnca.sbcglobal.net)
2023-05-24 07:15:12 +0200cheater(~Username@user/cheater) (Ping timeout: 248 seconds)
2023-05-24 07:15:15 +0200cheater_cheater
2023-05-24 07:19:02 +0200delYsid(~user@user/delYsid)
2023-05-24 07:22:32 +0200freeside(~mengwong@122.11.248.245)
2023-05-24 07:26:48 +0200freeside(~mengwong@122.11.248.245) (Ping timeout: 240 seconds)
2023-05-24 07:28:40 +0200cheater_(~Username@user/cheater)
2023-05-24 07:31:25 +0200freeside(~mengwong@202.161.55.11)
2023-05-24 07:31:33 +0200_ht(~Thunderbi@28-52-174-82.ftth.glasoperator.nl) (Remote host closed the connection)
2023-05-24 07:32:33 +0200cheater(~Username@user/cheater) (Ping timeout: 268 seconds)
2023-05-24 07:32:35 +0200cheater_cheater
2023-05-24 07:36:28 +0200freeside(~mengwong@202.161.55.11) (Ping timeout: 240 seconds)
2023-05-24 07:45:40 +0200michalz(~michalz@185.246.204.75)
2023-05-24 07:49:27 +0200wiosna(~karangura@c-73-93-95-154.hsd1.ca.comcast.net)
2023-05-24 07:54:26 +0200oo_miguel(~Thunderbi@77.252.47.84)
2023-05-24 07:58:07 +0200freeside(~mengwong@103.252.202.151)
2023-05-24 08:02:46 +0200freeside(~mengwong@103.252.202.151) (Ping timeout: 268 seconds)
2023-05-24 08:07:09 +0200gentauro(~gentauro@user/gentauro) (Read error: Connection reset by peer)
2023-05-24 08:10:56 +0200cheater_(~Username@user/cheater)
2023-05-24 08:12:49 +0200gentauro(~gentauro@user/gentauro)
2023-05-24 08:13:48 +0200cheater(~Username@user/cheater) (Ping timeout: 240 seconds)
2023-05-24 08:13:51 +0200cheater_cheater
2023-05-24 08:14:21 +0200mncheckm(~mncheck@193.224.205.254)
2023-05-24 08:15:28 +0200vandita(~vandit@77-234-92-242.pool.digikabel.hu) (Ping timeout: 240 seconds)
2023-05-24 08:17:23 +0200vandita(~vandit@176-241-19-16.pool.digikabel.hu)
2023-05-24 08:27:35 +0200harveypwca(~harveypwc@2601:246:c180:a570:3828:d8:e523:3f67)
2023-05-24 08:32:32 +0200wiosna(~karangura@c-73-93-95-154.hsd1.ca.comcast.net) (Ping timeout: 248 seconds)
2023-05-24 08:34:40 +0200shriekingnoise(~shrieking@186.137.175.87) (Ping timeout: 248 seconds)
2023-05-24 08:39:49 +0200echoreply(~echoreply@45.32.163.16) (Quit: WeeChat 2.8)
2023-05-24 08:40:20 +0200echoreply(~echoreply@45.32.163.16)
2023-05-24 08:41:28 +0200gurkenglas(~user@dynamic-046-114-181-020.46.114.pool.telefonica.de)
2023-05-24 08:42:20 +0200chomwitt(~chomwitt@2a02:587:7a18:d000:1ac0:4dff:fedb:a3f1)
2023-05-24 08:43:22 +0200 <maerwald[m]> maralorn: why is it weird
2023-05-24 08:44:13 +0200 <maerwald[m]> maralorn: https://nikita-volkov.github.io/internal-convention-is-a-mistake/
2023-05-24 08:49:01 +0200stallmanator(~stallmana@user/stallmanator) (Ping timeout: 268 seconds)
2023-05-24 08:52:18 +0200acidjnk(~acidjnk@p200300d6e7072f976d29b515cdbc7698.dip0.t-ipconnect.de)
2023-05-24 08:56:51 +0200stallmanator(~stallmana@user/stallmanator)
2023-05-24 09:03:20 +0200nschoe(~q@2a04:cec0:c006:1374:b365:bd25:7c09:4372)
2023-05-24 09:03:27 +0200nschoe(~q@2a04:cec0:c006:1374:b365:bd25:7c09:4372) (Client Quit)
2023-05-24 09:04:22 +0200 <[Leary]> maralorn: Internals shouldn't be exposed just for binaries or tests anyway; that's what internal libraries are for.
2023-05-24 09:09:54 +0200lortabac(~lortabac@2a01:e0a:541:b8f0:95ad:d783:3e23:6a4a)
2023-05-24 09:13:49 +0200phma(~phma@2001:5b0:215d:f508:c5da:3d99:1fd6:47ad) (Read error: Connection reset by peer)
2023-05-24 09:14:54 +0200phma(phma@2001:5b0:210f:3e28:a2ab:29ef:2389:7204)
2023-05-24 09:25:37 +0200eggplantade(~Eggplanta@2600:1700:38c5:d800:6cda:5d2c:763a:75d3) (Remote host closed the connection)
2023-05-24 09:27:48 +0200meinside(uid24933@id-24933.helmsley.irccloud.com) (Quit: Connection closed for inactivity)
2023-05-24 09:30:16 +0200alternateved(~user@77-253-195-69.adsl.inetia.pl)
2023-05-24 09:31:06 +0200 <jade[m]> I am writing an application with brick, which uses a custom state type and transition function. I need to perform IO actions depending on the state. Would I be right to assume that I need a monad transformer (maybe StateT) with IO to model this?
2023-05-24 09:31:39 +0200 <jade[m]> I don't know much about either things (State monad and monad transformers)
2023-05-24 09:31:43 +0200titibandit(~titibandi@user/titibandit)
2023-05-24 09:32:42 +0200mei(~mei@user/mei) (Remote host closed the connection)
2023-05-24 09:34:57 +0200puke(~puke@user/puke) (Quit: puke)
2023-05-24 09:35:08 +0200mei(~mei@user/mei)
2023-05-24 09:40:02 +0200 <sm> jade: IIRC brick types are a bit tricky at first but you don't need to add an extra transformer yourself. Maybe check some example apps ?
2023-05-24 09:40:19 +0200 <jade[m]> will do so, thank yoi
2023-05-24 09:40:24 +0200 <jade[m]> s/yoi/you
2023-05-24 09:43:13 +0200thegeekinside(~thegeekin@189.141.107.10) (Ping timeout: 265 seconds)
2023-05-24 09:44:43 +0200 <jade[m]> the problem is that all the example programs I read don't actually use IO-actions when changing state. The transition function is from `State -> State` and the IO is handled in the background
2023-05-24 09:45:08 +0200 <jade[m]> I somehow want to use IO as my state
2023-05-24 09:45:27 +0200 <sm> I think you can do IO in the event handlers, not the update function ?
2023-05-24 09:45:34 +0200Feuermagier(~Feuermagi@user/feuermagier) (Remote host closed the connection)
2023-05-24 09:45:59 +0200Feuermagier(~Feuermagi@user/feuermagier)
2023-05-24 09:46:34 +0200 <sm> ie in EventM you can do liftIO
2023-05-24 09:46:37 +0200 <[Leary]> jade[m]: Maybe start here <https://github.com/jtdaugherty/brick/blob/master/docs/guide.rst#the-app-type>, and note that `EventM n s` has MonadState s` and `MonadIO`.
2023-05-24 09:46:55 +0200 <jade[m]> ohh I see
2023-05-24 09:47:00 +0200 <jade[m]> thank you very much, I just saw that
2023-05-24 09:55:12 +0200gurkenglas(~user@dynamic-046-114-181-020.46.114.pool.telefonica.de) (Ping timeout: 248 seconds)
2023-05-24 09:57:03 +0200mei(~mei@user/mei) (Remote host closed the connection)
2023-05-24 09:59:28 +0200mei(~mei@user/mei)
2023-05-24 10:01:15 +0200gnalzo(~gnalzo@2a01:e0a:498:fd50:fcc6:bb5d:489a:ce8c)
2023-05-24 10:03:11 +0200ubert(~Thunderbi@p548c91e0.dip0.t-ipconnect.de) (Ping timeout: 240 seconds)
2023-05-24 10:03:14 +0200meinside(uid24933@id-24933.helmsley.irccloud.com)
2023-05-24 10:08:36 +0200 <delYsid> Yes, EventM has an MonadIO instance.
2023-05-24 10:08:56 +0200Lycurgus(~juan@user/Lycurgus)
2023-05-24 10:09:26 +0200puke(~puke@user/puke)
2023-05-24 10:16:05 +0200vandita(~vandit@176-241-19-16.pool.digikabel.hu) (Ping timeout: 265 seconds)
2023-05-24 10:17:18 +0200tzh(~tzh@c-24-21-73-154.hsd1.wa.comcast.net) (Quit: zzz)
2023-05-24 10:17:45 +0200vandita(~vandit@178-164-206-9.pool.digikabel.hu)
2023-05-24 10:17:46 +0200titibandit(~titibandi@user/titibandit) (Remote host closed the connection)
2023-05-24 10:18:07 +0200Sgeo(~Sgeo@user/sgeo) (Read error: Connection reset by peer)
2023-05-24 10:21:40 +0200MajorBiscuit(~MajorBisc@145.94.40.195)
2023-05-24 10:21:44 +0200MajorBiscuit(~MajorBisc@145.94.40.195) (Client Quit)
2023-05-24 10:23:28 +0200CiaoSen(~Jura@dynamic-046-114-220-096.46.114.pool.telefonica.de)
2023-05-24 10:23:31 +0200robobub(uid248673@id-248673.uxbridge.irccloud.com) (Quit: Connection closed for inactivity)
2023-05-24 10:23:40 +0200harveypwca(~harveypwc@2601:246:c180:a570:3828:d8:e523:3f67) (Quit: Leaving)
2023-05-24 10:24:00 +0200Lycurgus(~juan@user/Lycurgus) (Quit: Exeunt: personae.ai-integration.biz)
2023-05-24 10:24:36 +0200werneta(~werneta@70-142-214-115.lightspeed.irvnca.sbcglobal.net) (Ping timeout: 268 seconds)
2023-05-24 10:26:05 +0200eggplantade(~Eggplanta@2600:1700:38c5:d800:6cda:5d2c:763a:75d3)
2023-05-24 10:26:09 +0200werneta(~werneta@70-142-214-115.lightspeed.irvnca.sbcglobal.net)
2023-05-24 10:27:49 +0200jorwas[m](~jorwasmat@2001:470:69fc:105::3:60e7)
2023-05-24 10:30:08 +0200eggplantade(~Eggplanta@2600:1700:38c5:d800:6cda:5d2c:763a:75d3) (Ping timeout: 240 seconds)
2023-05-24 10:31:41 +0200Pickchea(~private@user/pickchea)
2023-05-24 10:34:52 +0200titibandit(~titibandi@user/titibandit)
2023-05-24 10:39:32 +0200cheater_(~Username@user/cheater)
2023-05-24 10:41:42 +0200cheater(~Username@user/cheater) (Ping timeout: 265 seconds)
2023-05-24 10:41:47 +0200cheater_cheater
2023-05-24 10:48:58 +0200cfricke(~cfricke@user/cfricke)
2023-05-24 10:50:43 +0200Lord_of_Life(~Lord@user/lord-of-life/x-2819915) (Ping timeout: 256 seconds)
2023-05-24 10:52:40 +0200Lord_of_Life(~Lord@user/lord-of-life/x-2819915)
2023-05-24 10:56:06 +0200ubert(~Thunderbi@2a02:8109:abc0:6434:50f1:64d6:2ce3:ee7c)
2023-05-24 11:11:01 +0200econo(uid147250@user/econo) (Quit: Connection closed for inactivity)
2023-05-24 11:18:47 +0200enoq(~enoq@2a05:1141:1f5:5600:b9c9:721a:599:bfe7)
2023-05-24 11:23:22 +0200elmklod(~Elm@94.25.164.115)
2023-05-24 11:35:32 +0200chomwitt(~chomwitt@2a02:587:7a18:d000:1ac0:4dff:fedb:a3f1) (Remote host closed the connection)
2023-05-24 11:56:48 +0200use-value(~Thunderbi@2a00:23c6:8a03:2f01:75c2:a71f:beaa:29bf) (Ping timeout: 248 seconds)
2023-05-24 12:05:01 +0200 <maralorn> maerwald: Yeah, I know that blogpost and I agree. Upholding the pvp is a good thing. I am just wondering whether we painted ourselves into a corner in the community if frequent package splitting is the correct solution.
2023-05-24 12:05:39 +0200eugenrh(~eugenrh@2a02:2f08:4707:3e00:454b:9ac4:8552:8de8)
2023-05-24 12:07:30 +0200dcoutts(~duncan@cpc69402-oxfd27-2-0-cust903.4-3.cable.virginm.net)
2023-05-24 12:07:59 +0200mncheckm(~mncheck@193.224.205.254) (Ping timeout: 240 seconds)
2023-05-24 12:08:34 +0200user____1(~user@dynamic-046-114-181-020.46.114.pool.telefonica.de)
2023-05-24 12:09:01 +0200vandita(~vandit@178-164-206-9.pool.digikabel.hu) (Ping timeout: 240 seconds)
2023-05-24 12:10:05 +0200hugo(znc@verdigris.lysator.liu.se) (Ping timeout: 246 seconds)
2023-05-24 12:10:58 +0200vandita(~vandit@94-21-131-107.pool.digikabel.hu)
2023-05-24 12:11:35 +0200xff0x(~xff0x@125x103x176x34.ap125.ftth.ucom.ne.jp) (Ping timeout: 264 seconds)
2023-05-24 12:13:09 +0200hugo(znc@verdigris.lysator.liu.se)
2023-05-24 12:14:44 +0200mc47(~mc47@xmonad/TheMC47)
2023-05-24 12:14:59 +0200user____1(~user@dynamic-046-114-181-020.46.114.pool.telefonica.de) (Ping timeout: 268 seconds)
2023-05-24 12:23:30 +0200mc47(~mc47@xmonad/TheMC47) (Remote host closed the connection)
2023-05-24 12:26:47 +0200mncheckm(~mncheck@193.224.205.254)
2023-05-24 12:27:58 +0200freeside(~mengwong@103.252.202.151)
2023-05-24 12:29:23 +0200wiosna(~karangura@c-73-93-95-154.hsd1.ca.comcast.net)
2023-05-24 12:32:23 +0200freeside(~mengwong@103.252.202.151) (Ping timeout: 240 seconds)
2023-05-24 12:32:32 +0200acidjnk(~acidjnk@p200300d6e7072f976d29b515cdbc7698.dip0.t-ipconnect.de) (Ping timeout: 248 seconds)
2023-05-24 12:33:36 +0200wiosna(~karangura@c-73-93-95-154.hsd1.ca.comcast.net) (Ping timeout: 248 seconds)
2023-05-24 12:33:44 +0200stiell_(~stiell@gateway/tor-sasl/stiell) (Ping timeout: 240 seconds)
2023-05-24 12:35:00 +0200stiell_(~stiell@gateway/tor-sasl/stiell)
2023-05-24 12:36:50 +0200alternateved(~user@77-253-195-69.adsl.inetia.pl) (Remote host closed the connection)
2023-05-24 12:37:03 +0200ft(~ft@p4fc2a88b.dip0.t-ipconnect.de) (Quit: leaving)
2023-05-24 12:41:04 +0200[exa](~exa@user/exa/x-3587197) (Ping timeout: 248 seconds)
2023-05-24 12:42:41 +0200abrantesasf(~abrantesa@189.115.192.139)
2023-05-24 12:43:35 +0200euandreh(~Thunderbi@189.6.18.7)
2023-05-24 12:45:22 +0200chexum(~quassel@gateway/tor-sasl/chexum) (Remote host closed the connection)
2023-05-24 12:45:48 +0200chexum(~quassel@gateway/tor-sasl/chexum)
2023-05-24 12:50:26 +0200pavonia(~user@user/siracusa) (Quit: Bye!)
2023-05-24 12:50:46 +0200freeside(~mengwong@103.252.202.151)
2023-05-24 12:52:31 +0200acidjnk(~acidjnk@p200300d6e7072f972cb35e063b39afc2.dip0.t-ipconnect.de)
2023-05-24 12:54:47 +0200freeside(~mengwong@103.252.202.151) (Ping timeout: 240 seconds)
2023-05-24 13:02:47 +0200mauke(~mauke@user/mauke) (Ping timeout: 240 seconds)
2023-05-24 13:03:02 +0200[exa](~exa@srv3n.blesmrt.net)
2023-05-24 13:09:46 +0200abrantesasf(~abrantesa@189.115.192.139) (Remote host closed the connection)
2023-05-24 13:09:47 +0200ubert(~Thunderbi@2a02:8109:abc0:6434:50f1:64d6:2ce3:ee7c) (Quit: ubert)
2023-05-24 13:10:02 +0200ubert(~Thunderbi@2a02:8109:abc0:6434:f2d8:291c:9e98:bbba)
2023-05-24 13:10:06 +0200abrantesasf(~abrantesa@177.137.232.92)
2023-05-24 13:10:47 +0200freeside(~mengwong@103.252.202.151)
2023-05-24 13:12:45 +0200mei(~mei@user/mei) (Read error: Connection reset by peer)
2023-05-24 13:15:10 +0200mei(~mei@user/mei)
2023-05-24 13:15:12 +0200freeside(~mengwong@103.252.202.151) (Ping timeout: 248 seconds)
2023-05-24 13:17:26 +0200xff0x(~xff0x@2405:6580:b080:900:129:45c2:6814:da56)
2023-05-24 13:21:47 +0200raehik(~raehik@cpc95906-rdng25-2-0-cust156.15-3.cable.virginm.net)
2023-05-24 13:32:26 +0200chomwitt(~chomwitt@2a02:587:7a18:d000:1ac0:4dff:fedb:a3f1)
2023-05-24 13:36:47 +0200raehik(~raehik@cpc95906-rdng25-2-0-cust156.15-3.cable.virginm.net) (Ping timeout: 240 seconds)
2023-05-24 13:37:37 +0200vandita(~vandit@94-21-131-107.pool.digikabel.hu) (Ping timeout: 268 seconds)
2023-05-24 13:41:31 +0200anpad(~pandeyan@user/anpad) (Quit: ZNC 1.8.2 - https://znc.in)
2023-05-24 13:42:40 +0200stiell_(~stiell@gateway/tor-sasl/stiell) (Remote host closed the connection)
2023-05-24 13:43:11 +0200vandita(~vandit@87-97-88-228.pool.digikabel.hu)
2023-05-24 13:43:13 +0200stiell_(~stiell@gateway/tor-sasl/stiell)
2023-05-24 13:43:35 +0200anpad(~pandeyan@user/anpad)
2023-05-24 13:45:46 +0200freeside(~mengwong@103.252.202.151)
2023-05-24 13:46:23 +0200xff0x(~xff0x@2405:6580:b080:900:129:45c2:6814:da56) (Ping timeout: 264 seconds)
2023-05-24 13:48:03 +0200xff0x(~xff0x@ai098135.d.east.v6connect.net)
2023-05-24 13:49:31 +0200kritzefitz(~kritzefit@debian/kritzefitz) (Ping timeout: 240 seconds)
2023-05-24 13:49:44 +0200kritzefitz(~kritzefit@debian/kritzefitz)
2023-05-24 13:50:01 +0200freeside(~mengwong@103.252.202.151) (Ping timeout: 240 seconds)
2023-05-24 13:51:29 +0200acidjnk(~acidjnk@p200300d6e7072f972cb35e063b39afc2.dip0.t-ipconnect.de) (Ping timeout: 256 seconds)
2023-05-24 13:53:06 +0200mei(~mei@user/mei) (Remote host closed the connection)
2023-05-24 13:54:59 +0200bliminse(~bliminse@user/bliminse) (Quit: leaving)
2023-05-24 13:55:31 +0200mei(~mei@user/mei)
2023-05-24 13:57:05 +0200kritzefitz(~kritzefit@debian/kritzefitz) (Ping timeout: 240 seconds)
2023-05-24 13:59:56 +0200kritzefitz(~kritzefit@debian/kritzefitz)
2023-05-24 14:04:09 +0200abrantesasf(~abrantesa@177.137.232.92) (Remote host closed the connection)
2023-05-24 14:06:48 +0200Pickchea(~private@user/pickchea) (Quit: Leaving)
2023-05-24 14:07:01 +0200stiell(~stiell@gateway/tor-sasl/stiell)
2023-05-24 14:09:44 +0200stiell_(~stiell@gateway/tor-sasl/stiell) (Ping timeout: 240 seconds)
2023-05-24 14:10:35 +0200user_____(~user@dynamic-046-114-181-020.46.114.pool.telefonica.de)
2023-05-24 14:12:26 +0200freeside(~mengwong@103.252.202.151)
2023-05-24 14:15:41 +0200notzmv(~zmv@user/notzmv)
2023-05-24 14:16:59 +0200freeside(~mengwong@103.252.202.151) (Ping timeout: 256 seconds)
2023-05-24 14:17:59 +0200kritzefitz(~kritzefit@debian/kritzefitz) (Ping timeout: 240 seconds)
2023-05-24 14:18:14 +0200kritzefitz(~kritzefit@debian/kritzefitz)
2023-05-24 14:19:01 +0200bitdex(~bitdex@gateway/tor-sasl/bitdex) (Quit: = "")
2023-05-24 14:25:14 +0200chomwitt(~chomwitt@2a02:587:7a18:d000:1ac0:4dff:fedb:a3f1) (Remote host closed the connection)
2023-05-24 14:26:45 +0200raehik(~raehik@cpc95906-rdng25-2-0-cust156.15-3.cable.virginm.net)
2023-05-24 14:30:22 +0200delYsid(~user@user/delYsid) (ERC 5.4.1 (IRC client for GNU Emacs 30.0.50))
2023-05-24 14:32:36 +0200 <zzz> ncf: did you mean Bool instead of Either?
2023-05-24 14:32:55 +0200 <zzz> ncf: did you mean Bool instead of Either?
2023-05-24 14:33:13 +0200 <ncf> when?
2023-05-24 14:33:20 +0200 <zzz> oops, i had the chat scrolled WAY up
2023-05-24 14:33:22 +0200 <zzz> sorry about that
2023-05-24 14:33:40 +0200 <ncf> for the canonical sum type? no, i meant Either
2023-05-24 14:33:58 +0200 <zzz> why is Either the canonical sum type?
2023-05-24 14:34:17 +0200 <ncf> pretty much by definition
2023-05-24 14:34:30 +0200 <ncf> check out https://ncatlab.org/nlab/show/sum+type
2023-05-24 14:34:44 +0200 <ncf> Bool is the sum of two copies of the unit type
2023-05-24 14:37:25 +0200 <jade[m]> is there a place to ask about Brick? I am facing an issue that's really annoying, and I assume that I'm simply doing something wrong in regards to the rendering
2023-05-24 14:37:39 +0200 <zzz> jade[m]: try #haskell-game
2023-05-24 14:38:38 +0200 <zzz> i'm guessing byorgey may be able to help too ^^
2023-05-24 14:40:35 +0200 <zzz> ncf: i have zero formal education in type theory, but why was i under the impression that A+B , A and B being terms of a certain type, correponded to `data T = A | B` ?
2023-05-24 14:41:31 +0200Pickchea(~private@user/pickchea)
2023-05-24 14:41:59 +0200 <ncf> i'm not sure what you mean by that
2023-05-24 14:42:14 +0200 <ncf> A | B seems to indicate that A and B are constructors, so you couldn't take their sum
2023-05-24 14:43:28 +0200 <jade[m]> I think they mean that sum types can be represented by that
2023-05-24 14:44:09 +0200 <jade[m]> outside the context of haskell
2023-05-24 14:44:15 +0200freeside(~mengwong@103.252.202.151)
2023-05-24 14:46:29 +0200eggplantade(~Eggplanta@2600:1700:38c5:d800:99bb:f82c:7f14:1d7d)
2023-05-24 14:47:44 +0200 <[Leary]> zzz: For /types/ A and B, A+B corresponds to Either A B = Left A | Right B.
2023-05-24 14:48:17 +0200freeside(~mengwong@103.252.202.151) (Ping timeout: 246 seconds)
2023-05-24 14:48:29 +0200 <zzz> ok that makes sense
2023-05-24 14:49:28 +0200kritzefitz(~kritzefit@debian/kritzefitz) (Ping timeout: 240 seconds)
2023-05-24 14:50:44 +0200eggplantade(~Eggplanta@2600:1700:38c5:d800:99bb:f82c:7f14:1d7d) (Ping timeout: 246 seconds)
2023-05-24 14:51:27 +0200 <zzz> i didn't follow the conversation, sorry about that
2023-05-24 15:01:53 +0200freeside(~mengwong@103.252.202.151)
2023-05-24 15:04:38 +0200kritzefitz(~kritzefit@debian/kritzefitz)
2023-05-24 15:06:25 +0200freeside(~mengwong@103.252.202.151) (Ping timeout: 268 seconds)
2023-05-24 15:07:10 +0200freeside(~mengwong@103.252.202.151)
2023-05-24 15:11:25 +0200freeside(~mengwong@103.252.202.151) (Ping timeout: 240 seconds)
2023-05-24 15:26:00 +0200Mistyhands(~Mistyhand@217.155.19.212)
2023-05-24 15:26:41 +0200kritzefitz(~kritzefit@debian/kritzefitz) (Ping timeout: 256 seconds)
2023-05-24 15:26:56 +0200kritzefitz(~kritzefit@debian/kritzefitz)
2023-05-24 15:28:59 +0200acidjnk(~acidjnk@p200300d6e7072f97acd2533548afd1ac.dip0.t-ipconnect.de)
2023-05-24 15:31:02 +0200Pickchea(~private@user/pickchea) (Quit: Leaving)
2023-05-24 15:33:02 +0200nadja(~dequbed@banana-new.kilobyte22.de) (Quit: bye!)
2023-05-24 15:34:13 +0200use-value(~Thunderbi@2a00:23c6:8a03:2f01:10d5:28d5:b8f3:93f9)
2023-05-24 15:34:21 +0200gnalzo(~gnalzo@2a01:e0a:498:fd50:fcc6:bb5d:489a:ce8c) (Quit: WeeChat 3.8)
2023-05-24 15:35:23 +0200use-value1(~Thunderbi@2a00:23c6:8a03:2f01:a9c6:961f:4b03:e0c)
2023-05-24 15:36:01 +0200nadja(~dequbed@banana-new.kilobyte22.de)
2023-05-24 15:36:17 +0200notzmv(~zmv@user/notzmv) (Quit: Using Circe, the loveliest of all IRC clients)
2023-05-24 15:38:35 +0200use-value(~Thunderbi@2a00:23c6:8a03:2f01:10d5:28d5:b8f3:93f9) (Ping timeout: 264 seconds)
2023-05-24 15:38:36 +0200use-value1use-value
2023-05-24 15:40:01 +0200wroathe(~wroathe@207-153-38-140.fttp.usinternet.com)
2023-05-24 15:40:01 +0200wroathe(~wroathe@207-153-38-140.fttp.usinternet.com) (Changing host)
2023-05-24 15:40:01 +0200wroathe(~wroathe@user/wroathe)
2023-05-24 15:43:41 +0200user_____(~user@dynamic-046-114-181-020.46.114.pool.telefonica.de) (Ping timeout: 256 seconds)
2023-05-24 15:49:36 +0200thegeekinside(~thegeekin@189.141.107.10)
2023-05-24 15:50:22 +0200Inst(~Inst@2601:6c4:4081:2fc0:6477:2ba8:415:e790) (Ping timeout: 250 seconds)
2023-05-24 15:57:56 +0200wroathe(~wroathe@user/wroathe) (Ping timeout: 246 seconds)
2023-05-24 16:10:10 +0200bgs(~bgs@212-85-160-171.dynamic.telemach.net)
2023-05-24 16:15:25 +0200waleee(~waleee@2001:9b0:21c:4000:5bf9:6515:c030:57b7)
2023-05-24 16:17:46 +0200eggplantade(~Eggplanta@2600:1700:38c5:d800:99bb:f82c:7f14:1d7d)
2023-05-24 16:29:51 +0200wiosna(~karangura@c-73-93-95-154.hsd1.ca.comcast.net)
2023-05-24 16:32:14 +0200 <jade[m]> I need to work with lenses now apparently and I really, really don't like it so far
2023-05-24 16:32:30 +0200 <jade[m]> it seems so abitrary and unintuitive
2023-05-24 16:32:39 +0200shriekingnoise(~shrieking@186.137.175.87)
2023-05-24 16:32:56 +0200 <probie> jade[m]: what about it feels arbitrary and unintuitive?
2023-05-24 16:34:08 +0200wiosna(~karangura@c-73-93-95-154.hsd1.ca.comcast.net) (Ping timeout: 248 seconds)
2023-05-24 16:34:13 +0200 <jade[m]> it just doesn't make sense to me how it fits in with the rest of haskell. Lenses seem to be this thing that are different to everything else ...
2023-05-24 16:36:04 +0200 <jade[m]> I suppose I'm not really sure where to start ...
2023-05-24 16:38:10 +0200 <probie> I've definitely felt like I'm writing "lens" and not Haskell before (at a previous job which used generic-lens with overloaded labels)
2023-05-24 16:39:11 +0200 <geekosaur> how does that doffer from any other EDSL?
2023-05-24 16:39:16 +0200 <geekosaur> *differ
2023-05-24 16:39:28 +0200lortabac(~lortabac@2a01:e0a:541:b8f0:95ad:d783:3e23:6a4a) (Ping timeout: 248 seconds)
2023-05-24 16:39:35 +0200 <EvanR> you can start with old functional references which might seem more motivated, and work your way to the modern lens library
2023-05-24 16:40:26 +0200eggplantade(~Eggplanta@2600:1700:38c5:d800:99bb:f82c:7f14:1d7d) (Remote host closed the connection)
2023-05-24 16:40:48 +0200 <jade[m]> I'm mainly just bummed out that I'm required to use them for a very simple bricks application
2023-05-24 16:41:04 +0200 <jade[m]> I just want to move up and down :c
2023-05-24 16:42:10 +0200 <EvanR> what specific task is requiring lens
2023-05-24 16:43:22 +0200 <EvanR> a common one is editing a field in a nested record
2023-05-24 16:43:31 +0200 <EvanR> in which case lens is not required
2023-05-24 16:44:33 +0200 <jade[m]> list wants me to use an event handler `handleListEvent :: (Foldable t, Splittable t, Ord n) => Event -> EventM n (GenericList n t e) ()`, but I need to return `Brick.EventM Name ApplicationState ()` which `zoom :: Zoom m n s t => LensLike' (Zoomed m c) t s -> m c -> n c` apparently lets me do ... provided I have a `LensLike' (Zoomed m c) t s`
2023-05-24 16:46:05 +0200 <jade[m]> I have no idea about how to create such a LensLike thing for my application state
2023-05-24 16:47:45 +0200rembo10(~rembo10@main.remulis.com) (Quit: ZNC 1.8.2 - https://znc.in)
2023-05-24 16:47:52 +0200 <probie> Where is zoom defined?
2023-05-24 16:47:53 +0200 <ncf> makeLenses and (.)
2023-05-24 16:48:13 +0200 <jade[m]> probie: https://hackage.haskell.org/package/brick-1.9/docs/Brick-Types.html#v:zoom
2023-05-24 16:48:27 +0200 <jade[m]> ncf: I have no idea what to do with that information at all
2023-05-24 16:48:35 +0200 <c_wraith> that's a re-export from lens
2023-05-24 16:48:51 +0200 <c_wraith> https://hackage.haskell.org/package/lens-5.2.2/docs/Control-Lens-Zoom.html
2023-05-24 16:48:52 +0200 <EvanR> https://hackage.haskell.org/package/lens-5.2.2/docs/Control-Lens-Zoom.html
2023-05-24 16:49:01 +0200 <EvanR> echo
2023-05-24 16:49:02 +0200 <EvanR> echo
2023-05-24 16:49:58 +0200rembo10(~rembo10@main.remulis.com)
2023-05-24 16:50:27 +0200 <probie> In the case of brick, it actually looks to be from microlens (not that it matters)
2023-05-24 16:50:39 +0200 <jade[m]> <jade[m]> "list wants me to use an event..." <- can you maybe give me the code I would need to do this for my example?
2023-05-24 16:50:39 +0200 <jade[m]> My `ApplicationState` is simply a newtype around a list of strings so far ...
2023-05-24 16:51:24 +0200 <jade[m]> I also keep seeing this ''Stuff about lenses everywhere on the top level, but it's neither a binding nor an expression which just confuses me
2023-05-24 16:51:45 +0200 <EvanR> prime prime is a naming convention, it's part of the name
2023-05-24 16:51:54 +0200Sgeo(~Sgeo@user/sgeo)
2023-05-24 16:51:56 +0200 <probie> How do you create your `GenericList` and how to do you modify it?
2023-05-24 16:52:36 +0200 <ncf> makeLenses ''Foo is a Template Haskell statement that generates the appropriate haskell code in-place
2023-05-24 16:53:31 +0200 <jade[m]> I just want to move through my list 😭
2023-05-24 16:53:57 +0200dcoutts(~duncan@cpc69402-oxfd27-2-0-cust903.4-3.cable.virginm.net) (Ping timeout: 256 seconds)
2023-05-24 16:56:02 +0200abrantesasf(~abrantesa@189.115.192.139)
2023-05-24 16:56:26 +0200 <ncf> zoom yourListLens (handleListEvent e)
2023-05-24 16:56:31 +0200 <ncf> or something like that
2023-05-24 16:57:26 +0200acidjnk(~acidjnk@p200300d6e7072f97acd2533548afd1ac.dip0.t-ipconnect.de) (Ping timeout: 246 seconds)
2023-05-24 16:59:19 +0200 <ncf> i upgraded a project to brick 1 a few months ago, you can maybe look at that for inspiration https://github.com/utdemir/nix-tree/pull/47/files#diff-ed4121bec4643d6f6c9095d96834993febb1e67fba7…
2023-05-24 17:00:21 +0200tzh(~tzh@c-24-21-73-154.hsd1.or.comcast.net)
2023-05-24 17:01:05 +0200 <EvanR> embrace the type system lego bricks xD
2023-05-24 17:01:25 +0200eggplantade(~Eggplanta@2600:1700:38c5:d800:99bb:f82c:7f14:1d7d)
2023-05-24 17:01:35 +0200 <EvanR> it might take all afternoon to put the puzzle together but at least it will look right
2023-05-24 17:01:52 +0200 <jade[m]> these are the only times where I feel like imperative languages make all of this so much easier
2023-05-24 17:02:04 +0200 <jade[m]> and I know I'll feel better when I learn about it and it all makes sense
2023-05-24 17:02:20 +0200 <jade[m]> and I'll know that this is better, but for now I have my monthly grudge against FP
2023-05-24 17:02:35 +0200 <EvanR> easier imperative language = someone doesn't explain anything and just gives a block of example code that can be pasted
2023-05-24 17:03:19 +0200 <EvanR> not easier imperative language, have you looked at how phone UIs are programmed... shudder
2023-05-24 17:03:42 +0200 <jade[m]> yes, I know I know 😄
2023-05-24 17:03:52 +0200 <jade[m]> I'll get over this phase
2023-05-24 17:06:13 +0200 <jade[m]> <ncf> "i upgraded a project to brick..." <- I'm trying to find what `B.<stuff>` means and then I see this... (full message at <https://libera.ems.host/_matrix/media/v3/download/libera.chat/447335b4faaa2254fbc03eda262a50457014…>)
2023-05-24 17:06:45 +0200cfricke(~cfricke@user/cfricke) (Ping timeout: 240 seconds)
2023-05-24 17:07:21 +0200 <ncf> anyway, when it comes to lenses i would recommend trying to keep a clear mental barrier between interface and implementation (which the lens library makes very difficult...)
2023-05-24 17:08:56 +0200 <ncf> the interface is rather simple: once you know what a lens is (hole in a data structure) and what a traversal is (0 or more holes in a data structure) and how they compose, you basically know all the theory you need
2023-05-24 17:09:33 +0200 <ncf> the implementation is another story... lens uses the so-called van Laarhoven encoding of lenses, which can be a bit daunting (this is where all the Functor and Applicative and Over and Profunctor stuff comes in)
2023-05-24 17:10:30 +0200 <ncf> but really i think in most cases you can just ignore that and use the provided basic lenses (_1, _2, ...) and let Template Haskell generate the rest for you
2023-05-24 17:11:31 +0200 <jade[m]> mhm, I'm trying to find the definition for some of the lenses and I can't find them.
2023-05-24 17:11:31 +0200 <jade[m]> Especially `modify` and `aeCurrPaneL` seem to be relevant for me?
2023-05-24 17:11:51 +0200 <jade[m]> aeCurrPaneL seems to relate to the field aeCurrPane of the state monad
2023-05-24 17:12:05 +0200 <ncf> aeCurrPaneL is specific to nix-tree, it's the lens associated with the aeCurrPane field of some data structure they use
2023-05-24 17:12:46 +0200 <ncf> the question is: how do you go from your application state to the GenericList you want to modify?
2023-05-24 17:12:48 +0200 <jade[m]> ok, what makes... (full message at <https://libera.ems.host/_matrix/media/v3/download/libera.chat/139acb91ceaa50ebfd118216c86e63ca15ec…>)
2023-05-24 17:12:49 +0200rf(~rf@2605:59c8:179c:f610:de71:b785:f508:5204)
2023-05-24 17:12:57 +0200 <jade[m]> what nakes the state type change here?
2023-05-24 17:13:14 +0200 <jade[m]> ncf: my application state carries a `[String]`
2023-05-24 17:13:17 +0200 <ncf> zoom does
2023-05-24 17:13:41 +0200 <ncf> hm, i don't know if brick can work with that
2023-05-24 17:13:41 +0200 <jade[m]> jade[m]: which I use to build the `GenericList` in the render
2023-05-24 17:13:52 +0200 <probie> With only a `[String]` how can you know where in the list you are?
2023-05-24 17:14:03 +0200 <ncf> yeah, you need to carry the GenericList around in your state
2023-05-24 17:14:09 +0200 <jade[m]> ohhhhh
2023-05-24 17:14:11 +0200 <jade[m]> OHHHHHHH
2023-05-24 17:14:14 +0200 <jade[m]> WAITTTTTATTATATAT
2023-05-24 17:14:15 +0200 <jade[m]> AAAAAAAA
2023-05-24 17:14:24 +0200 <jade[m]> I had an enlightenment
2023-05-24 17:14:59 +0200 <ncf> great!
2023-05-24 17:15:20 +0200azimut(~azimut@gateway/tor-sasl/azimut) (Ping timeout: 240 seconds)
2023-05-24 17:18:32 +0200enoq_(~enoq@194-208-133-121.lampert.tv)
2023-05-24 17:19:23 +0200enoq(~enoq@2a05:1141:1f5:5600:b9c9:721a:599:bfe7) (Ping timeout: 264 seconds)
2023-05-24 17:20:20 +0200enoq_enoq
2023-05-24 17:21:34 +0200 <jade[m]> ok, I have remodled that, back to the same issue
2023-05-24 17:21:59 +0200 <jade[m]> I need this zoom thing and I think I want to zoom on that list then
2023-05-24 17:22:09 +0200 <ncf> yes
2023-05-24 17:22:13 +0200zmt00(~zmt00@user/zmt00) (Quit: Leaving)
2023-05-24 17:23:24 +0200zmt00(~zmt00@user/zmt00)
2023-05-24 17:25:27 +0200 <jade[m]> I prefixed my field with an underscore and used $(makeLenses ''ApplicationState)
2023-05-24 17:25:48 +0200eugenrh(~eugenrh@2a02:2f08:4707:3e00:454b:9ac4:8552:8de8) (Ping timeout: 240 seconds)
2023-05-24 17:25:53 +0200gnalzo(~gnalzo@2a01:e0a:498:fd50:fcc6:bb5d:489a:ce8c)
2023-05-24 17:31:49 +0200 <jade[m]> what should I do now with zoom?
2023-05-24 17:33:19 +0200 <ncf> zoom yourField whatever
2023-05-24 17:33:31 +0200werneta(~werneta@70-142-214-115.lightspeed.irvnca.sbcglobal.net) (Remote host closed the connection)
2023-05-24 17:33:43 +0200 <jade[m]> IT WORKS
2023-05-24 17:33:46 +0200wiosna(~karangura@c-73-93-95-154.hsd1.ca.comcast.net)
2023-05-24 17:33:54 +0200 <jade[m]> aaaaaaaaaaaaa
2023-05-24 17:33:57 +0200 <jade[m]> I'm done for today
2023-05-24 17:33:59 +0200 <jade[m]> thank you very very much for the help
2023-05-24 17:34:11 +0200nyc(~nyc@2603-7000-a106-2fb5-0000-0000-0000-1f21.res6.spectrum.com)
2023-05-24 17:34:24 +0200 <jade[m]> my last bug was ... apparently now it matters where you define stuff? like I need to define the lense above where I use it ?!
2023-05-24 17:34:46 +0200 <ncf> yes, TH doesn't play well with reordering
2023-05-24 17:34:55 +0200 <jade[m]> jesus christ
2023-05-24 17:35:30 +0200nyc(~nyc@2603-7000-a106-2fb5-0000-0000-0000-1f21.res6.spectrum.com) (Changing host)
2023-05-24 17:35:30 +0200nyc(~nyc@user/nyc)
2023-05-24 17:36:31 +0200 <jade[m]> all of that for this ...
2023-05-24 17:36:37 +0200jade[m]uploaded a video: (2726KiB) < https://libera.ems.host/_matrix/media/v3/download/the-apothecary.club/csQpZmKBFijPduABdEktGEyM/202… >
2023-05-24 17:36:43 +0200 <jade[m]> please don't look at the code
2023-05-24 17:36:46 +0200bliminse(~bliminse@user/bliminse)
2023-05-24 17:37:48 +0200wiosna(~karangura@c-73-93-95-154.hsd1.ca.comcast.net) (Ping timeout: 240 seconds)
2023-05-24 17:49:49 +0200shapr(~user@76.29.230.19)
2023-05-24 17:53:18 +0200mechap(~mechap@user/mechap)
2023-05-24 18:04:03 +0200dhil(~dhil@78.45.150.83.ewm.ftth.as8758.net)
2023-05-24 18:04:26 +0200freeside(~mengwong@103.252.202.151)
2023-05-24 18:08:24 +0200nick_(~nick@wsip-174-78-110-18.pn.at.cox.net)
2023-05-24 18:08:57 +0200eggplantade(~Eggplanta@2600:1700:38c5:d800:99bb:f82c:7f14:1d7d) (Remote host closed the connection)
2023-05-24 18:09:20 +0200stiell(~stiell@gateway/tor-sasl/stiell) (Remote host closed the connection)
2023-05-24 18:09:35 +0200freeside(~mengwong@103.252.202.151) (Ping timeout: 240 seconds)
2023-05-24 18:10:16 +0200stiell(~stiell@gateway/tor-sasl/stiell)
2023-05-24 18:12:31 +0200CiaoSen(~Jura@dynamic-046-114-220-096.46.114.pool.telefonica.de) (Ping timeout: 240 seconds)
2023-05-24 18:12:34 +0200gnalzo(~gnalzo@2a01:e0a:498:fd50:fcc6:bb5d:489a:ce8c) (Quit: WeeChat 3.8)
2023-05-24 18:13:33 +0200_ht(~Thunderbi@28-52-174-82.ftth.glasoperator.nl)
2023-05-24 18:15:36 +0200econo(uid147250@user/econo)
2023-05-24 18:19:08 +0200waleee(~waleee@2001:9b0:21c:4000:5bf9:6515:c030:57b7) (Quit: 1st update reboot in weeks)
2023-05-24 18:19:47 +0200[itchyjunk](~itchyjunk@user/itchyjunk/x-7353470)
2023-05-24 18:20:28 +0200waleee(~waleee@2001:9b0:21c:4000:5bf9:6515:c030:57b7)
2023-05-24 18:23:59 +0200mc47(~mc47@xmonad/TheMC47)
2023-05-24 18:26:19 +0200freeside(~mengwong@103.252.202.151)
2023-05-24 18:28:38 +0200user_____(~user@dynamic-046-114-108-116.46.114.pool.telefonica.de)
2023-05-24 18:29:11 +0200wroathe(~wroathe@207-153-38-140.fttp.usinternet.com)
2023-05-24 18:29:12 +0200wroathe(~wroathe@207-153-38-140.fttp.usinternet.com) (Changing host)
2023-05-24 18:29:12 +0200wroathe(~wroathe@user/wroathe)
2023-05-24 18:31:01 +0200freeside(~mengwong@103.252.202.151) (Ping timeout: 265 seconds)
2023-05-24 18:31:59 +0200waleee(~waleee@2001:9b0:21c:4000:5bf9:6515:c030:57b7) (Ping timeout: 256 seconds)
2023-05-24 18:35:01 +0200raehik(~raehik@cpc95906-rdng25-2-0-cust156.15-3.cable.virginm.net) (Ping timeout: 240 seconds)
2023-05-24 18:38:16 +0200wroathe(~wroathe@user/wroathe) (Ping timeout: 265 seconds)
2023-05-24 18:46:31 +0200titibandit(~titibandi@user/titibandit) (Remote host closed the connection)
2023-05-24 18:47:19 +0200ddellacosta(~ddellacos@146.70.185.10)
2023-05-24 18:54:21 +0200eggplantade(~Eggplanta@2600:1700:38c5:d800:99bb:f82c:7f14:1d7d)
2023-05-24 18:59:11 +0200acidjnk(~acidjnk@p200300d6e7072f97b50268228b627d0d.dip0.t-ipconnect.de)
2023-05-24 19:00:23 +0200titibandit(~titibandi@user/titibandit)
2023-05-24 19:00:29 +0200Tuplanolla(~Tuplanoll@91-159-68-236.elisa-laajakaista.fi)
2023-05-24 19:02:35 +0200shapr(~user@76.29.230.19) (Ping timeout: 264 seconds)
2023-05-24 19:05:56 +0200freeside(~mengwong@103.252.202.151)
2023-05-24 19:06:28 +0200mc47(~mc47@xmonad/TheMC47) (Quit: Leaving)
2023-05-24 19:07:26 +0200ubert(~Thunderbi@2a02:8109:abc0:6434:f2d8:291c:9e98:bbba) (Remote host closed the connection)
2023-05-24 19:09:59 +0200freeside(~mengwong@103.252.202.151) (Ping timeout: 240 seconds)
2023-05-24 19:12:23 +0200dhil(~dhil@78.45.150.83.ewm.ftth.as8758.net) (Ping timeout: 240 seconds)
2023-05-24 19:20:05 +0200lyle(~lyle@104.246.145.237)
2023-05-24 19:20:38 +0200Inst(~Inst@2601:6c4:4081:2fc0:3966:9d9f:5237:b674)
2023-05-24 19:24:17 +0200 <lyle> I have some code here: https://paste.tomsmeding.com/uFyta0yy
2023-05-24 19:24:56 +0200 <lyle> I've pointed the line I don't understand in a comment. I'd like to know what the line does and what the name of the language feature is please.
2023-05-24 19:27:01 +0200 <lyle> Ok, now I get it; it's just the case where the tree is empty. I thought it was some complicated type thing. Thanks.
2023-05-24 19:27:32 +0200 <monochrom> Yeah it is no different from "f Nothing = 0; f (Just _) = 1"
2023-05-24 19:27:59 +0200 <monochrom> "defining a function by pattern matching" :)
2023-05-24 19:28:23 +0200ec(~ec@gateway/tor-sasl/ec)
2023-05-24 19:28:36 +0200 <lyle> I don't often see a function that has a pattern match and a case with guards, it threw me off a bit.
2023-05-24 19:29:15 +0200 <monochrom> As usual, that happens most often when coding up binary-search-tree algorithms :)
2023-05-24 19:29:24 +0200Inst(~Inst@2601:6c4:4081:2fc0:3966:9d9f:5237:b674) (Remote host closed the connection)
2023-05-24 19:29:25 +0200 <[exa]> it's super convenient in such cases tho
2023-05-24 19:29:46 +0200Inst(~Inst@2601:6c4:4081:2fc0:3966:9d9f:5237:b674)
2023-05-24 19:30:27 +0200 <[exa]> at the other end you can actually do patternmatches in the guards: | x == y, z <- x, ...
2023-05-24 19:30:43 +0200 <monochrom> The mind compartmentalizes "unrelated" language features and does not realize how the grammar actually allows mixing them, even nesting them inside each other.
2023-05-24 19:31:15 +0200 <monochrom> For example, few people have thought of "let { x = y where y=10 } in ..."
2023-05-24 19:32:13 +0200ec(~ec@gateway/tor-sasl/ec) (Client Quit)
2023-05-24 19:32:20 +0200 <monochrom> https://www.smbc-comics.com/comic/language :)
2023-05-24 19:32:26 +0200 <int-e> > let x | x <- x = x where x = 42 in x
2023-05-24 19:32:27 +0200 <lambdabot> 42
2023-05-24 19:32:36 +0200 <monochrom> heh
2023-05-24 19:33:01 +0200rf(~rf@2605:59c8:179c:f610:de71:b785:f508:5204) (Ping timeout: 240 seconds)
2023-05-24 19:33:12 +0200 <monochrom> Yeah I have actual code that goes "f x = ... foo ... where foo | x<0 = ..."
2023-05-24 19:33:45 +0200 <int-e> . o O ( who doesn't? )
2023-05-24 19:33:51 +0200 <monochrom> Woe to those who must pronounce code and pronounce "|" as "where" though. >:D
2023-05-24 19:33:55 +0200 <int-e> > [1 | False]
2023-05-24 19:33:56 +0200 <lambdabot> []
2023-05-24 19:34:57 +0200 <int-e> (that's silly with a literal `False` but sometimes useful with an actual condition)
2023-05-24 19:35:21 +0200 <ncf> | is obviously pronounced "when"
2023-05-24 19:35:58 +0200 <monochrom> You are ruining my point.
2023-05-24 19:36:12 +0200 <monochrom> I mean, nice. :)
2023-05-24 19:36:38 +0200 <monochrom> I now wonder what could be pronounced "whence". :)
2023-05-24 19:36:58 +0200 <ncf> =>
2023-05-24 19:37:11 +0200 <monochrom> I'm also thinking ::
2023-05-24 19:37:40 +0200 <monochrom> OK how about one of them "whence" and one of them "hence" just for fun sake >:)
2023-05-24 19:38:40 +0200abrantesasf(~abrantesa@189.115.192.139) (Remote host closed the connection)
2023-05-24 19:46:01 +0200titibandit(~titibandi@user/titibandit) (Ping timeout: 240 seconds)
2023-05-24 19:50:58 +0200 <nyc> monochrom: Cheers!
2023-05-24 19:51:18 +0200 <monochrom> oh hi long time no see
2023-05-24 19:55:35 +0200shapr(~user@2600:1700:c640:3100:3f83:2dbd:933:12fd)
2023-05-24 19:57:41 +0200machinedgod(~machinedg@84-115-230-249.cable.dynamic.surfer.at)
2023-05-24 20:04:48 +0200Guest88(~Guest88@136.226.18.211)
2023-05-24 20:05:04 +0200Guest88(~Guest88@136.226.18.211) (Client Quit)
2023-05-24 20:07:06 +0200Inst(~Inst@2601:6c4:4081:2fc0:3966:9d9f:5237:b674) (Remote host closed the connection)
2023-05-24 20:07:28 +0200Inst(~Inst@2601:6c4:4081:2fc0:3966:9d9f:5237:b674)
2023-05-24 20:15:13 +0200phma_(phma@2001:5b0:2172:dd28:7cbf:d1f6:57c5:3699)
2023-05-24 20:15:21 +0200 <nyc> What's the term for when there's a case like Ctor :: Class c => c -> t ?
2023-05-24 20:17:20 +0200phma(phma@2001:5b0:210f:3e28:a2ab:29ef:2389:7204) (Read error: Connection reset by peer)
2023-05-24 20:18:31 +0200machinedgod(~machinedg@84-115-230-249.cable.dynamic.surfer.at) (Ping timeout: 240 seconds)
2023-05-24 20:20:45 +0200mikoto-chan(~mikoto-ch@ip-213-49-58-19.dsl.scarlet.be)
2023-05-24 20:21:47 +0200 <nyc> This page says "implicit context to the data constructor": https://wiki.haskell.org/Data_declaration_with_constraint
2023-05-24 20:22:05 +0200mbuf(~Shakthi@49.207.178.186) (Quit: Leaving)
2023-05-24 20:22:40 +0200 <EvanR> basically Ctor will carry a dictionary for Class along with a function
2023-05-24 20:23:14 +0200 <nyc> EvanR: Mostly I just needed the name for the construct to drop a comment in.
2023-05-24 20:23:34 +0200 <EvanR> sometimes written as Class c *> c -> t to distinguish it as a product instead of a kind of function in itself
2023-05-24 20:23:57 +0200azimut(~azimut@gateway/tor-sasl/azimut)
2023-05-24 20:24:05 +0200 <EvanR> you might get traction calling it "an existential"
2023-05-24 20:24:16 +0200freeside(~mengwong@103.252.202.151)
2023-05-24 20:24:47 +0200ddellacosta(~ddellacos@146.70.185.10) (Ping timeout: 264 seconds)
2023-05-24 20:28:48 +0200freeside(~mengwong@103.252.202.151) (Ping timeout: 248 seconds)
2023-05-24 20:30:04 +0200 <[exa]> anyone using mustache to render stuff? I'm wondering how to (somehow easily) avoid it from expanding all substitued html to htmlentities
2023-05-24 20:31:21 +0200alexherbo2(~alexherbo@2a02-842a-8180-4601-c838-cb30-96bb-1347.rev.sfr.net)
2023-05-24 20:33:33 +0200mmhat(~mmh@p200300f1c7066879ee086bfffe095315.dip0.t-ipconnect.de)
2023-05-24 20:33:38 +0200mmhat(~mmh@p200300f1c7066879ee086bfffe095315.dip0.t-ipconnect.de) (Client Quit)
2023-05-24 20:33:45 +0200 <[exa]> (ah ok it got solved by reading the source)
2023-05-24 20:36:45 +0200ec(~ec@gateway/tor-sasl/ec)
2023-05-24 20:37:38 +0200lortabac(~lortabac@2a01:e0a:541:b8f0:fc01:1c25:ea0c:77cb)
2023-05-24 20:38:26 +0200taupiqueur1(~taupiqueu@2a02-842a-8180-4601-558f-7552-9093-6c65.rev.sfr.net)
2023-05-24 20:39:11 +0200rf(~rf@142.99.241.246)
2023-05-24 20:39:47 +0200taupiqueur(~taupiqueu@2a02-842a-8180-4601-c838-cb30-96bb-1347.rev.sfr.net) (Ping timeout: 264 seconds)
2023-05-24 20:40:13 +0200alexherbo2(~alexherbo@2a02-842a-8180-4601-c838-cb30-96bb-1347.rev.sfr.net) (Ping timeout: 245 seconds)
2023-05-24 20:40:56 +0200ec(~ec@gateway/tor-sasl/ec) (Ping timeout: 240 seconds)
2023-05-24 20:41:11 +0200coot(~coot@89-69-206-216.dynamic.chello.pl) (Quit: coot)
2023-05-24 20:41:46 +0200alexherbo2(~alexherbo@2a02-842a-8180-4601-558f-7552-9093-6c65.rev.sfr.net)
2023-05-24 20:43:28 +0200 <sm> jade: you code to that ??
2023-05-24 20:43:50 +0200 <sm> but, congrats on the brick app! :)
2023-05-24 20:43:52 +0200ec(~ec@gateway/tor-sasl/ec)
2023-05-24 20:44:44 +0200 <sm> was going to suggest hledger-ui as another one to mine for clues but I guess you figured it out. Brick is hard to get going with, I agree
2023-05-24 20:45:45 +0200 <geekosaur> `ghcup tui`?
2023-05-24 20:46:05 +0200 <geekosaur> especially since the main widget is a big list
2023-05-24 20:46:22 +0200 <geekosaur> s/main/primary
2023-05-24 20:48:08 +0200ec(~ec@gateway/tor-sasl/ec) (Ping timeout: 240 seconds)
2023-05-24 20:48:23 +0200ec(~ec@gateway/tor-sasl/ec)
2023-05-24 20:48:53 +0200 <sm> oh I was thinking that's not brick, but it is
2023-05-24 20:50:32 +0200azimut(~azimut@gateway/tor-sasl/azimut) (Ping timeout: 240 seconds)
2023-05-24 20:51:19 +0200ec(~ec@gateway/tor-sasl/ec) (Client Quit)
2023-05-24 20:51:30 +0200ec(~ec@gateway/tor-sasl/ec)
2023-05-24 20:55:59 +0200lortabac(~lortabac@2a01:e0a:541:b8f0:fc01:1c25:ea0c:77cb) (Ping timeout: 264 seconds)
2023-05-24 20:56:39 +0200 <jade[m]> <sm> "jade: you code to that ??" <- hm?
2023-05-24 20:58:12 +0200 <sm> I heard your coding music :)
2023-05-24 20:58:38 +0200 <jade[m]> ohhh, yeah
2023-05-24 20:58:47 +0200 <EvanR> sm stop accessing the surveillance net without a warrant
2023-05-24 21:00:30 +0200 <sm> well if by surveillance net you mean the chat log two screens up.. sorry :)
2023-05-24 21:02:15 +0200eggplantade(~Eggplanta@2600:1700:38c5:d800:99bb:f82c:7f14:1d7d) (Remote host closed the connection)
2023-05-24 21:02:30 +0200lortabac(~lortabac@2a01:e0a:541:b8f0:f1d3:4e32:4039:9211)
2023-05-24 21:07:35 +0200alternateved(~user@77-253-195-69.adsl.inetia.pl)
2023-05-24 21:11:42 +0200dcoutts(~duncan@cpc69402-oxfd27-2-0-cust903.4-3.cable.virginm.net)
2023-05-24 21:14:15 +0200gmg(~user@user/gehmehgeh)
2023-05-24 21:14:34 +0200freeside(~mengwong@103.252.202.151)
2023-05-24 21:15:05 +0200rf(~rf@142.99.241.246) (Remote host closed the connection)
2023-05-24 21:20:07 +0200freeside(~mengwong@103.252.202.151) (Ping timeout: 268 seconds)
2023-05-24 21:22:39 +0200boukenshaou(~Boukensha@223.178.84.76)
2023-05-24 21:23:29 +0200boukenshaou(~Boukensha@223.178.84.76) (Client Quit)
2023-05-24 21:24:05 +0200eggplantade(~Eggplanta@2600:1700:38c5:d800:99bb:f82c:7f14:1d7d)
2023-05-24 21:29:22 +0200alternateved(~user@77-253-195-69.adsl.inetia.pl) (Ping timeout: 268 seconds)
2023-05-24 21:33:09 +0200zeenk(~zeenk@2a02:2f04:a105:f00::7fe)
2023-05-24 21:36:47 +0200dcoutts(~duncan@cpc69402-oxfd27-2-0-cust903.4-3.cable.virginm.net) (Ping timeout: 264 seconds)
2023-05-24 21:37:17 +0200quarkyalice(~alice@199.sub-97-136-32.myvzw.com)
2023-05-24 21:37:17 +0200quarkyalice(~alice@199.sub-97-136-32.myvzw.com) (Changing host)
2023-05-24 21:37:17 +0200quarkyalice(~alice@user/quarkyalice)
2023-05-24 21:42:12 +0200quarkyalice(~alice@user/quarkyalice) (Remote host closed the connection)
2023-05-24 21:45:12 +0200user_____gurkenglas
2023-05-24 21:45:20 +0200mauke(~mauke@user/mauke)
2023-05-24 21:57:33 +0200freeside(~mengwong@103.252.202.151)
2023-05-24 22:00:13 +0200dcoutts(~duncan@cpc69402-oxfd27-2-0-cust903.4-3.cable.virginm.net)
2023-05-24 22:04:45 +0200ft(~ft@p4fc2a88b.dip0.t-ipconnect.de)
2023-05-24 22:04:59 +0200freeside(~mengwong@103.252.202.151) (Ping timeout: 264 seconds)
2023-05-24 22:05:25 +0200_ht(~Thunderbi@28-52-174-82.ftth.glasoperator.nl) (Remote host closed the connection)
2023-05-24 22:11:01 +0200reach(~reach@2607:fea8:4c0:990:ed57:c522:1ec0:1db4)
2023-05-24 22:11:15 +0200titibandit(~titibandi@user/titibandit)
2023-05-24 22:13:34 +0200CiaoSen(~Jura@dynamic-046-114-220-057.46.114.pool.telefonica.de)
2023-05-24 22:18:13 +0200taupiqueur1(~taupiqueu@2a02-842a-8180-4601-558f-7552-9093-6c65.rev.sfr.net) (Quit: WeeChat 3.8)
2023-05-24 22:27:18 +0200tromp(~textual@92-110-219-57.cable.dynamic.v4.ziggo.nl) (Read error: Connection reset by peer)
2023-05-24 22:27:38 +0200hgolden(~hgolden@cpe-172-251-233-141.socal.res.rr.com) (Remote host closed the connection)
2023-05-24 22:28:22 +0200freeside(~mengwong@103.252.202.151)
2023-05-24 22:29:49 +0200 <Inst> what are some good examples of EDSL monads?
2023-05-24 22:29:52 +0200 <Inst> I can think of Blaze
2023-05-24 22:30:08 +0200 <Inst> or rather, monadic DSLs, which no one uses mDSL or MDSL for
2023-05-24 22:33:30 +0200 <mauke> good old monadic parsers?
2023-05-24 22:33:34 +0200taupiqueur(~taupiqueu@2a02-842a-8180-4601-558f-7552-9093-6c65.rev.sfr.net)
2023-05-24 22:36:21 +0200waleee(~waleee@2001:9b0:21c:4000:5bf9:6515:c030:57b7)
2023-05-24 22:36:36 +0200takuan(~takuan@178-116-218-225.access.telenet.be) (Remote host closed the connection)
2023-05-24 22:37:03 +0200coot(~coot@89-69-206-216.dynamic.chello.pl)
2023-05-24 22:41:26 +0200trev(~trev@user/trev) (Quit: trev)
2023-05-24 22:41:29 +0200freeside(~mengwong@103.252.202.151) (Ping timeout: 246 seconds)
2023-05-24 22:42:43 +0200 <sm> Shake ?
2023-05-24 22:46:41 +0200ddellacosta(~ddellacos@146.70.165.234)
2023-05-24 22:51:59 +0200dcoutts(~duncan@cpc69402-oxfd27-2-0-cust903.4-3.cable.virginm.net) (Ping timeout: 240 seconds)
2023-05-24 22:54:24 +0200 <monochrom> parsec, attoparsec, megaparsec, etc. IMO anyway.
2023-05-24 22:56:19 +0200 <tomsmeding> Inst: if I'm not mistaken https://hackage.haskell.org/package/sbv also has a monad for the most generic use
2023-05-24 22:56:53 +0200 <Inst> cool
2023-05-24 22:57:16 +0200alexherbo2(~alexherbo@2a02-842a-8180-4601-558f-7552-9093-6c65.rev.sfr.net) (Remote host closed the connection)
2023-05-24 22:57:18 +0200 <Inst> thanks
2023-05-24 23:00:19 +0200lortabac(~lortabac@2a01:e0a:541:b8f0:f1d3:4e32:4039:9211) (Quit: WeeChat 2.8)
2023-05-24 23:00:22 +0200dcoutts(~duncan@cpc69402-oxfd27-2-0-cust903.4-3.cable.virginm.net)
2023-05-24 23:00:25 +0200freeside(~mengwong@103.252.202.151)
2023-05-24 23:04:36 +0200pavonia(~user@user/siracusa)
2023-05-24 23:04:59 +0200freeside(~mengwong@103.252.202.151) (Ping timeout: 264 seconds)
2023-05-24 23:05:48 +0200michalz(~michalz@185.246.204.75) (Remote host closed the connection)
2023-05-24 23:06:48 +0200gurkenglas(~user@dynamic-046-114-108-116.46.114.pool.telefonica.de) (Ping timeout: 268 seconds)
2023-05-24 23:13:51 +0200NinjaTrappeur(~ninja@user/ninjatrappeur)
2023-05-24 23:14:49 +0200nick_(~nick@wsip-174-78-110-18.pn.at.cox.net) (Ping timeout: 268 seconds)
2023-05-24 23:15:45 +0200 <[exa]> Inst: hakyll has a few build-ish monads, and I'd say scotty-like routing might count as well
2023-05-24 23:16:16 +0200 <[exa]> (also everyone's fav list comprehension is an eDSL right? :D )
2023-05-24 23:17:29 +0200 <Inst> fvorite list comprehension? you mean the list comprehension construct?
2023-05-24 23:17:44 +0200 <Inst> interestingly enough, I think wadler originally introduced monads as a generalization of list comprehensions
2023-05-24 23:17:52 +0200 <Inst> what is meant by scotty-like routing?
2023-05-24 23:18:52 +0200 <monochrom> Revisionism: E=monad because E for Eilenberg-Moore >:)
2023-05-24 23:19:28 +0200 <monochrom> And KDSL is when you use Arrow because K for Kleisli arrows. >:D
2023-05-24 23:19:39 +0200 <monochrom> Or you can say ADSL to confuse everyone
2023-05-24 23:21:27 +0200reach(~reach@2607:fea8:4c0:990:ed57:c522:1ec0:1db4) (Remote host closed the connection)
2023-05-24 23:21:51 +0200reach(~reach@2607:fea8:4c0:990:ed57:c522:1ec0:1db4)
2023-05-24 23:21:51 +0200lyle(~lyle@104.246.145.237) (Quit: WeeChat 3.8)
2023-05-24 23:22:48 +0200bgs(~bgs@212-85-160-171.dynamic.telemach.net) (Remote host closed the connection)
2023-05-24 23:24:03 +0200cheater_(~Username@user/cheater)
2023-05-24 23:24:53 +0200cheater(~Username@user/cheater) (Ping timeout: 246 seconds)
2023-05-24 23:24:58 +0200cheater_cheater
2023-05-24 23:28:45 +0200reach(~reach@2607:fea8:4c0:990:ed57:c522:1ec0:1db4) (Remote host closed the connection)
2023-05-24 23:29:07 +0200reach(~reach@2607:fea8:4c0:990:ed57:c522:1ec0:1db4)
2023-05-24 23:30:45 +0200titibandit(~titibandi@user/titibandit) (Remote host closed the connection)
2023-05-24 23:33:44 +0200mechap(~mechap@user/mechap) (Quit: WeeChat 3.8)
2023-05-24 23:34:25 +0200reach(~reach@2607:fea8:4c0:990:ed57:c522:1ec0:1db4) (Remote host closed the connection)
2023-05-24 23:34:40 +0200coot(~coot@89-69-206-216.dynamic.chello.pl) (Quit: coot)
2023-05-24 23:34:49 +0200reach(~reach@2607:fea8:4c0:990:ed57:c522:1ec0:1db4)
2023-05-24 23:38:51 +0200Nosrep(~Nosrep@user/nosrep)
2023-05-24 23:41:31 +0200reach(~reach@2607:fea8:4c0:990:ed57:c522:1ec0:1db4) (Ping timeout: 240 seconds)
2023-05-24 23:42:35 +0200abrantesasf(~abrantesa@189.115.192.139)
2023-05-24 23:48:46 +0200quarkyalice(~alice@199.sub-97-136-32.myvzw.com)
2023-05-24 23:48:46 +0200quarkyalice(~alice@199.sub-97-136-32.myvzw.com) (Changing host)
2023-05-24 23:48:46 +0200quarkyalice(~alice@user/quarkyalice)