2023-05-24 00:19:00 +0200 | mechap | (~mechap@user/mechap) (Quit: WeeChat 3.8) |
2023-05-24 00:21:18 +0200 | mncheckm | (~mncheck@193.224.205.254) (Ping timeout: 250 seconds) |
2023-05-24 00:26:12 +0200 | harveypwca | (~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 +0200 | jero98772 | (~jero98772@2800:484:1d84:9000:8822:84bd:a4f4:947f) (Ping timeout: 265 seconds) |
2023-05-24 00:45:21 +0200 | szkl | (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 +0200 | acidjnk | (~acidjnk@p200300d6e7072f19f418e5b952ba8eeb.dip0.t-ipconnect.de) (Ping timeout: 246 seconds) |
2023-05-24 00:49:43 +0200 | gnalzo | (~gnalzo@2a01:e0a:498:fd50:fcc6:bb5d:489a:ce8c) (Quit: WeeChat 3.8) |
2023-05-24 00:51:44 +0200 | jero98772 | (~jero98772@2800:484:1d84:9000:8822:84bd:a4f4:947f) |
2023-05-24 00:57:53 +0200 | kaskal | (~kaskal@089144220013.atnat0029.highway.webapn.at) (Ping timeout: 268 seconds) |
2023-05-24 00:58:01 +0200 | kaskal- | (~kaskal@213-147-167-98.nat.highway.webapn.at) |
2023-05-24 00:58:43 +0200 | Tuplanolla | (~Tuplanoll@91-159-68-236.elisa-laajakaista.fi) (Quit: Leaving.) |
2023-05-24 01:01:11 +0200 | euandreh | (~Thunderbi@189.6.18.7) (Ping timeout: 240 seconds) |
2023-05-24 01:05:20 +0200 | titibandit | (~titibandi@user/titibandit) (Remote host closed the connection) |
2023-05-24 01:13:10 +0200 | xameer | (~xameer@144.48.224.179) (Remote host closed the connection) |
2023-05-24 01:14:42 +0200 | xameer | (~xameer@144.48.225.48) |
2023-05-24 01:26:34 +0200 | Pickchea | (~private@user/pickchea) |
2023-05-24 01:26:41 +0200 | mauke_ | (~mauke@user/mauke) |
2023-05-24 01:27:29 +0200 | Pickchea | (~private@user/pickchea) (Remote host closed the connection) |
2023-05-24 01:28:43 +0200 | mauke | (~mauke@user/mauke) (Ping timeout: 268 seconds) |
2023-05-24 01:28:43 +0200 | mauke_ | mauke |
2023-05-24 01:35:45 +0200 | jmdaemon | (~jmdaemon@user/jmdaemon) |
2023-05-24 01:36:08 +0200 | quarkyalice | (~alice@user/quarkyalice) (Quit: Leaving) |
2023-05-24 01:36:13 +0200 | jargon | (~jargon@184.101.78.160) (Remote host closed the connection) |
2023-05-24 01:39:28 +0200 | quarkyalice | (~alice@199.sub-97-136-32.myvzw.com) |
2023-05-24 01:39:28 +0200 | quarkyalice | (~alice@199.sub-97-136-32.myvzw.com) (Changing host) |
2023-05-24 01:39:28 +0200 | quarkyalice | (~alice@user/quarkyalice) |
2023-05-24 01:40:01 +0200 | quarkyalice | (~alice@user/quarkyalice) (Remote host closed the connection) |
2023-05-24 01:40:23 +0200 | thegeekinside | (~thegeekin@189.141.107.10) (Ping timeout: 240 seconds) |
2023-05-24 01:44:16 +0200 | Lycurgus | (~juan@user/Lycurgus) |
2023-05-24 01:47:04 +0200 | quarkyalice | (~alice@199.sub-97-136-32.myvzw.com) |
2023-05-24 01:47:04 +0200 | quarkyalice | (~alice@199.sub-97-136-32.myvzw.com) (Changing host) |
2023-05-24 01:47:04 +0200 | quarkyalice | (~alice@user/quarkyalice) |
2023-05-24 01:50:20 +0200 | npmania | (~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 +0200 | eggplantade | (~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 +0200 | harveypwca | (~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 +0200 | vandita | (~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 +0200 | eggplantade | (~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 +0200 | vandita | (~vandit@178-164-206-56.pool.digikabel.hu) |
2023-05-24 02:07:21 +0200 | califax | (~califax@user/califx) (Remote host closed the connection) |
2023-05-24 02:08:29 +0200 | califax | (~califax@user/califx) |
2023-05-24 02:08:48 +0200 | machinedgod | (~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 +0200 | phma | (~phma@host-67-44-208-203.hnremote.net) (Read error: Connection reset by peer) |
2023-05-24 02:13:48 +0200 | phma | (~phma@2001:5b0:215d:f508:c5da:3d99:1fd6:47ad) |
2023-05-24 02:23:10 +0200 | wroathe | (~wroathe@user/wroathe) |
2023-05-24 02:23:59 +0200 | wroathe | (~wroathe@user/wroathe) (Client Quit) |
2023-05-24 02:24:12 +0200 | wroathe | (~wroathe@207-153-38-140.fttp.usinternet.com) |
2023-05-24 02:24:12 +0200 | wroathe | (~wroathe@207-153-38-140.fttp.usinternet.com) (Changing host) |
2023-05-24 02:24:12 +0200 | wroathe | (~wroathe@user/wroathe) |
2023-05-24 02:43:35 +0200 | zeenk | (~zeenk@2a02:2f04:a105:f00::7fe) (Quit: Konversation terminated!) |
2023-05-24 02:45:30 +0200 | notzmv | (~zmv@user/notzmv) |
2023-05-24 02:47:56 +0200 | quarkyalice | (~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 +0200 | Lycurgus | (~juan@user/Lycurgus) (Quit: Exeunt: personae.ai-integration.biz) |
2023-05-24 03:08:17 +0200 | xff0x | (~xff0x@ai098135.d.east.v6connect.net) (Ping timeout: 246 seconds) |
2023-05-24 03:09:14 +0200 | jmdaemon | (~jmdaemon@user/jmdaemon) (Ping timeout: 268 seconds) |
2023-05-24 03:10:15 +0200 | albet70 | (~xxx@2400:8902::f03c:92ff:fe60:98d8) (Remote host closed the connection) |
2023-05-24 03:10:29 +0200 | xff0x | (~xff0x@178.255.149.135) |
2023-05-24 03:12:47 +0200 | notzmv | (~zmv@user/notzmv) (Ping timeout: 264 seconds) |
2023-05-24 03:15:35 +0200 | xff0x | (~xff0x@178.255.149.135) (Ping timeout: 240 seconds) |
2023-05-24 03:16:24 +0200 | albet70 | (~xxx@2400:8902::f03c:92ff:fe60:98d8) |
2023-05-24 03:17:44 +0200 | xff0x | (~xff0x@2405:6580:b080:900:6d82:a587:a8fb:8ee1) |
2023-05-24 03:20:23 +0200 | Nosrep | (~Nosrep@user/nosrep) (Remote host closed the connection) |
2023-05-24 03:43:31 +0200 | hugo | (znc@verdigris.lysator.liu.se) (Ping timeout: 240 seconds) |
2023-05-24 03:54:29 +0200 | hugo | (znc@verdigris.lysator.liu.se) |
2023-05-24 03:54:38 +0200 | nate2 | (~nate@98.45.169.16) |
2023-05-24 03:59:19 +0200 | nate2 | (~nate@98.45.169.16) (Ping timeout: 256 seconds) |
2023-05-24 04:03:11 +0200 | vandita | (~vandit@178-164-206-56.pool.digikabel.hu) (Ping timeout: 264 seconds) |
2023-05-24 04:04:08 +0200 | pharonix71 | (~pharonix7@user/pharonix71) (Ping timeout: 240 seconds) |
2023-05-24 04:04:26 +0200 | vandita | (~vandit@84-236-3-126.pool.digikabel.hu) |
2023-05-24 04:05:36 +0200 | pharonix71 | (~pharonix7@user/pharonix71) |
2023-05-24 04:07:59 +0200 | td_ | (~td@i53870922.versanet.de) (Ping timeout: 240 seconds) |
2023-05-24 04:08:23 +0200 | xff0x | (~xff0x@2405:6580:b080:900:6d82:a587:a8fb:8ee1) (Ping timeout: 256 seconds) |
2023-05-24 04:09:57 +0200 | td_ | (~td@i53870930.versanet.de) |
2023-05-24 04:12:53 +0200 | eggplantade | (~Eggplanta@2600:1700:38c5:d800:6cda:5d2c:763a:75d3) |
2023-05-24 04:16:46 +0200 | bitdex | (~bitdex@gateway/tor-sasl/bitdex) |
2023-05-24 04:18:20 +0200 | nate2 | (~nate@98.45.169.16) |
2023-05-24 04:25:08 +0200 | ubert | (~Thunderbi@p200300ecdf18b6df36e22024a437cc27.dip0.t-ipconnect.de) (Ping timeout: 240 seconds) |
2023-05-24 04:26:50 +0200 | werneta | (~werneta@70-142-214-115.lightspeed.irvnca.sbcglobal.net) |
2023-05-24 04:27:20 +0200 | ubert | (~Thunderbi@p548c91e0.dip0.t-ipconnect.de) |
2023-05-24 04:36:23 +0200 | mei | (~mei@user/mei) (Ping timeout: 240 seconds) |
2023-05-24 04:40:26 +0200 | mei | (~mei@user/mei) |
2023-05-24 04:49:46 +0200 | finn_elija | (~finn_elij@user/finn-elija/x-0085643) |
2023-05-24 04:49:46 +0200 | FinnElija | (~finn_elij@user/finn-elija/x-0085643) (Killed (NickServ (Forcing logout FinnElija -> finn_elija))) |
2023-05-24 04:49:46 +0200 | finn_elija | FinnElija |
2023-05-24 04:55:07 +0200 | xff0x | (~xff0x@125x103x176x34.ap125.ftth.ucom.ne.jp) |
2023-05-24 04:55:48 +0200 | Mistyhands | (~Mistyhand@217.155.19.212) |
2023-05-24 04:57:54 +0200 | trev | (~trev@user/trev) |
2023-05-24 05:00:09 +0200 | Mistyhands | (~Mistyhand@217.155.19.212) (Read error: Connection reset by peer) |
2023-05-24 05:08:52 +0200 | wroathe | (~wroathe@user/wroathe) (Ping timeout: 268 seconds) |
2023-05-24 05:18:23 +0200 | nate2 | (~nate@98.45.169.16) (Ping timeout: 240 seconds) |
2023-05-24 05:23:48 +0200 | darchitect | (~darchitec@2a00:23c6:3584:df01:ef79:bcf3:d062:3079) (Ping timeout: 240 seconds) |
2023-05-24 05:25:56 +0200 | darchitect | (~darchitec@host86-157-65-148.range86-157.btcentralplus.com) |
2023-05-24 05:40:29 +0200 | jrm | (~jrm@user/jrm) (Quit: ciao) |
2023-05-24 05:41:54 +0200 | jrm | (~jrm@user/jrm) |
2023-05-24 05:48:09 +0200 | jrm | (~jrm@user/jrm) (Quit: ciao) |
2023-05-24 05:49:33 +0200 | jrm | (~jrm@user/jrm) |
2023-05-24 06:06:56 +0200 | waleee | (~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 +0200 | vandita | (~vandit@84-236-3-126.pool.digikabel.hu) (Ping timeout: 268 seconds) |
2023-05-24 06:09:52 +0200 | vandita | (~vandit@77-234-92-242.pool.digikabel.hu) |
2023-05-24 06:10:31 +0200 | hugo | (znc@verdigris.lysator.liu.se) (Ping timeout: 240 seconds) |
2023-05-24 06:14:00 +0200 | coot | (~coot@89-69-206-216.dynamic.chello.pl) |
2023-05-24 06:17:30 +0200 | czy | (~user@host-140-24.ilcub310.champaign.il.us.clients.pavlovmedia.net) |
2023-05-24 06:18:28 +0200 | freeside | (~mengwong@122.11.248.245) |
2023-05-24 06:22:08 +0200 | hugo | (znc@verdigris.lysator.liu.se) |
2023-05-24 06:23:29 +0200 | freeside_ | (~mengwong@122.11.248.245) |
2023-05-24 06:23:34 +0200 | freeside | (~mengwong@122.11.248.245) (Read error: Connection reset by peer) |
2023-05-24 06:25:46 +0200 | mbuf | (~Shakthi@49.207.178.186) |
2023-05-24 06:26:27 +0200 | mei | (~mei@user/mei) (Remote host closed the connection) |
2023-05-24 06:28:51 +0200 | mei | (~mei@user/mei) |
2023-05-24 06:30:11 +0200 | freeside_ | (~mengwong@122.11.248.245) (Ping timeout: 264 seconds) |
2023-05-24 06:36:09 +0200 | freeside | (~mengwong@122.11.248.245) |
2023-05-24 06:43:31 +0200 | freeside | (~mengwong@122.11.248.245) (Ping timeout: 240 seconds) |
2023-05-24 07:00:11 +0200 | mei | (~mei@user/mei) (Ping timeout: 264 seconds) |
2023-05-24 07:04:07 +0200 | mei | (~mei@user/mei) |
2023-05-24 07:06:18 +0200 | freeside | (~mengwong@122.11.248.245) |
2023-05-24 07:10:29 +0200 | freeside | (~mengwong@122.11.248.245) (Ping timeout: 246 seconds) |
2023-05-24 07:12:18 +0200 | cheater_ | (~Username@user/cheater) |
2023-05-24 07:12:45 +0200 | werneta | (~werneta@70-142-214-115.lightspeed.irvnca.sbcglobal.net) (Ping timeout: 240 seconds) |
2023-05-24 07:13:41 +0200 | takuan | (~takuan@178-116-218-225.access.telenet.be) |
2023-05-24 07:13:41 +0200 | thegeekinside | (~thegeekin@189.141.107.10) |
2023-05-24 07:14:49 +0200 | werneta | (~werneta@70-142-214-115.lightspeed.irvnca.sbcglobal.net) |
2023-05-24 07:15:12 +0200 | cheater | (~Username@user/cheater) (Ping timeout: 248 seconds) |
2023-05-24 07:15:15 +0200 | cheater_ | cheater |
2023-05-24 07:19:02 +0200 | delYsid | (~user@user/delYsid) |
2023-05-24 07:22:32 +0200 | freeside | (~mengwong@122.11.248.245) |
2023-05-24 07:26:48 +0200 | freeside | (~mengwong@122.11.248.245) (Ping timeout: 240 seconds) |
2023-05-24 07:28:40 +0200 | cheater_ | (~Username@user/cheater) |
2023-05-24 07:31:25 +0200 | freeside | (~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 +0200 | cheater | (~Username@user/cheater) (Ping timeout: 268 seconds) |
2023-05-24 07:32:35 +0200 | cheater_ | cheater |
2023-05-24 07:36:28 +0200 | freeside | (~mengwong@202.161.55.11) (Ping timeout: 240 seconds) |
2023-05-24 07:45:40 +0200 | michalz | (~michalz@185.246.204.75) |
2023-05-24 07:49:27 +0200 | wiosna | (~karangura@c-73-93-95-154.hsd1.ca.comcast.net) |
2023-05-24 07:54:26 +0200 | oo_miguel | (~Thunderbi@77.252.47.84) |
2023-05-24 07:58:07 +0200 | freeside | (~mengwong@103.252.202.151) |
2023-05-24 08:02:46 +0200 | freeside | (~mengwong@103.252.202.151) (Ping timeout: 268 seconds) |
2023-05-24 08:07:09 +0200 | gentauro | (~gentauro@user/gentauro) (Read error: Connection reset by peer) |
2023-05-24 08:10:56 +0200 | cheater_ | (~Username@user/cheater) |
2023-05-24 08:12:49 +0200 | gentauro | (~gentauro@user/gentauro) |
2023-05-24 08:13:48 +0200 | cheater | (~Username@user/cheater) (Ping timeout: 240 seconds) |
2023-05-24 08:13:51 +0200 | cheater_ | cheater |
2023-05-24 08:14:21 +0200 | mncheckm | (~mncheck@193.224.205.254) |
2023-05-24 08:15:28 +0200 | vandita | (~vandit@77-234-92-242.pool.digikabel.hu) (Ping timeout: 240 seconds) |
2023-05-24 08:17:23 +0200 | vandita | (~vandit@176-241-19-16.pool.digikabel.hu) |
2023-05-24 08:27:35 +0200 | harveypwca | (~harveypwc@2601:246:c180:a570:3828:d8:e523:3f67) |
2023-05-24 08:32:32 +0200 | wiosna | (~karangura@c-73-93-95-154.hsd1.ca.comcast.net) (Ping timeout: 248 seconds) |
2023-05-24 08:34:40 +0200 | shriekingnoise | (~shrieking@186.137.175.87) (Ping timeout: 248 seconds) |
2023-05-24 08:39:49 +0200 | echoreply | (~echoreply@45.32.163.16) (Quit: WeeChat 2.8) |
2023-05-24 08:40:20 +0200 | echoreply | (~echoreply@45.32.163.16) |
2023-05-24 08:41:28 +0200 | gurkenglas | (~user@dynamic-046-114-181-020.46.114.pool.telefonica.de) |
2023-05-24 08:42:20 +0200 | chomwitt | (~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 +0200 | stallmanator | (~stallmana@user/stallmanator) (Ping timeout: 268 seconds) |
2023-05-24 08:52:18 +0200 | acidjnk | (~acidjnk@p200300d6e7072f976d29b515cdbc7698.dip0.t-ipconnect.de) |
2023-05-24 08:56:51 +0200 | stallmanator | (~stallmana@user/stallmanator) |
2023-05-24 09:03:20 +0200 | nschoe | (~q@2a04:cec0:c006:1374:b365:bd25:7c09:4372) |
2023-05-24 09:03:27 +0200 | nschoe | (~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 +0200 | lortabac | (~lortabac@2a01:e0a:541:b8f0:95ad:d783:3e23:6a4a) |
2023-05-24 09:13:49 +0200 | phma | (~phma@2001:5b0:215d:f508:c5da:3d99:1fd6:47ad) (Read error: Connection reset by peer) |
2023-05-24 09:14:54 +0200 | phma | (phma@2001:5b0:210f:3e28:a2ab:29ef:2389:7204) |
2023-05-24 09:25:37 +0200 | eggplantade | (~Eggplanta@2600:1700:38c5:d800:6cda:5d2c:763a:75d3) (Remote host closed the connection) |
2023-05-24 09:27:48 +0200 | meinside | (uid24933@id-24933.helmsley.irccloud.com) (Quit: Connection closed for inactivity) |
2023-05-24 09:30:16 +0200 | alternateved | (~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 +0200 | titibandit | (~titibandi@user/titibandit) |
2023-05-24 09:32:42 +0200 | mei | (~mei@user/mei) (Remote host closed the connection) |
2023-05-24 09:34:57 +0200 | puke | (~puke@user/puke) (Quit: puke) |
2023-05-24 09:35:08 +0200 | mei | (~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 +0200 | thegeekinside | (~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 +0200 | Feuermagier | (~Feuermagi@user/feuermagier) (Remote host closed the connection) |
2023-05-24 09:45:59 +0200 | Feuermagier | (~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 +0200 | gurkenglas | (~user@dynamic-046-114-181-020.46.114.pool.telefonica.de) (Ping timeout: 248 seconds) |
2023-05-24 09:57:03 +0200 | mei | (~mei@user/mei) (Remote host closed the connection) |
2023-05-24 09:59:28 +0200 | mei | (~mei@user/mei) |
2023-05-24 10:01:15 +0200 | gnalzo | (~gnalzo@2a01:e0a:498:fd50:fcc6:bb5d:489a:ce8c) |
2023-05-24 10:03:11 +0200 | ubert | (~Thunderbi@p548c91e0.dip0.t-ipconnect.de) (Ping timeout: 240 seconds) |
2023-05-24 10:03:14 +0200 | meinside | (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 +0200 | Lycurgus | (~juan@user/Lycurgus) |
2023-05-24 10:09:26 +0200 | puke | (~puke@user/puke) |
2023-05-24 10:16:05 +0200 | vandita | (~vandit@176-241-19-16.pool.digikabel.hu) (Ping timeout: 265 seconds) |
2023-05-24 10:17:18 +0200 | tzh | (~tzh@c-24-21-73-154.hsd1.wa.comcast.net) (Quit: zzz) |
2023-05-24 10:17:45 +0200 | vandita | (~vandit@178-164-206-9.pool.digikabel.hu) |
2023-05-24 10:17:46 +0200 | titibandit | (~titibandi@user/titibandit) (Remote host closed the connection) |
2023-05-24 10:18:07 +0200 | Sgeo | (~Sgeo@user/sgeo) (Read error: Connection reset by peer) |
2023-05-24 10:21:40 +0200 | MajorBiscuit | (~MajorBisc@145.94.40.195) |
2023-05-24 10:21:44 +0200 | MajorBiscuit | (~MajorBisc@145.94.40.195) (Client Quit) |
2023-05-24 10:23:28 +0200 | CiaoSen | (~Jura@dynamic-046-114-220-096.46.114.pool.telefonica.de) |
2023-05-24 10:23:31 +0200 | robobub | (uid248673@id-248673.uxbridge.irccloud.com) (Quit: Connection closed for inactivity) |
2023-05-24 10:23:40 +0200 | harveypwca | (~harveypwc@2601:246:c180:a570:3828:d8:e523:3f67) (Quit: Leaving) |
2023-05-24 10:24:00 +0200 | Lycurgus | (~juan@user/Lycurgus) (Quit: Exeunt: personae.ai-integration.biz) |
2023-05-24 10:24:36 +0200 | werneta | (~werneta@70-142-214-115.lightspeed.irvnca.sbcglobal.net) (Ping timeout: 268 seconds) |
2023-05-24 10:26:05 +0200 | eggplantade | (~Eggplanta@2600:1700:38c5:d800:6cda:5d2c:763a:75d3) |
2023-05-24 10:26:09 +0200 | werneta | (~werneta@70-142-214-115.lightspeed.irvnca.sbcglobal.net) |
2023-05-24 10:27:49 +0200 | jorwas[m] | (~jorwasmat@2001:470:69fc:105::3:60e7) |
2023-05-24 10:30:08 +0200 | eggplantade | (~Eggplanta@2600:1700:38c5:d800:6cda:5d2c:763a:75d3) (Ping timeout: 240 seconds) |
2023-05-24 10:31:41 +0200 | Pickchea | (~private@user/pickchea) |
2023-05-24 10:34:52 +0200 | titibandit | (~titibandi@user/titibandit) |
2023-05-24 10:39:32 +0200 | cheater_ | (~Username@user/cheater) |
2023-05-24 10:41:42 +0200 | cheater | (~Username@user/cheater) (Ping timeout: 265 seconds) |
2023-05-24 10:41:47 +0200 | cheater_ | cheater |
2023-05-24 10:48:58 +0200 | cfricke | (~cfricke@user/cfricke) |
2023-05-24 10:50:43 +0200 | Lord_of_Life | (~Lord@user/lord-of-life/x-2819915) (Ping timeout: 256 seconds) |
2023-05-24 10:52:40 +0200 | Lord_of_Life | (~Lord@user/lord-of-life/x-2819915) |
2023-05-24 10:56:06 +0200 | ubert | (~Thunderbi@2a02:8109:abc0:6434:50f1:64d6:2ce3:ee7c) |
2023-05-24 11:11:01 +0200 | econo | (uid147250@user/econo) (Quit: Connection closed for inactivity) |
2023-05-24 11:18:47 +0200 | enoq | (~enoq@2a05:1141:1f5:5600:b9c9:721a:599:bfe7) |
2023-05-24 11:23:22 +0200 | elmklod | (~Elm@94.25.164.115) |
2023-05-24 11:35:32 +0200 | chomwitt | (~chomwitt@2a02:587:7a18:d000:1ac0:4dff:fedb:a3f1) (Remote host closed the connection) |
2023-05-24 11:56:48 +0200 | use-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 +0200 | eugenrh | (~eugenrh@2a02:2f08:4707:3e00:454b:9ac4:8552:8de8) |
2023-05-24 12:07:30 +0200 | dcoutts | (~duncan@cpc69402-oxfd27-2-0-cust903.4-3.cable.virginm.net) |
2023-05-24 12:07:59 +0200 | mncheckm | (~mncheck@193.224.205.254) (Ping timeout: 240 seconds) |
2023-05-24 12:08:34 +0200 | user____1 | (~user@dynamic-046-114-181-020.46.114.pool.telefonica.de) |
2023-05-24 12:09:01 +0200 | vandita | (~vandit@178-164-206-9.pool.digikabel.hu) (Ping timeout: 240 seconds) |
2023-05-24 12:10:05 +0200 | hugo | (znc@verdigris.lysator.liu.se) (Ping timeout: 246 seconds) |
2023-05-24 12:10:58 +0200 | vandita | (~vandit@94-21-131-107.pool.digikabel.hu) |
2023-05-24 12:11:35 +0200 | xff0x | (~xff0x@125x103x176x34.ap125.ftth.ucom.ne.jp) (Ping timeout: 264 seconds) |
2023-05-24 12:13:09 +0200 | hugo | (znc@verdigris.lysator.liu.se) |
2023-05-24 12:14:44 +0200 | mc47 | (~mc47@xmonad/TheMC47) |
2023-05-24 12:14:59 +0200 | user____1 | (~user@dynamic-046-114-181-020.46.114.pool.telefonica.de) (Ping timeout: 268 seconds) |
2023-05-24 12:23:30 +0200 | mc47 | (~mc47@xmonad/TheMC47) (Remote host closed the connection) |
2023-05-24 12:26:47 +0200 | mncheckm | (~mncheck@193.224.205.254) |
2023-05-24 12:27:58 +0200 | freeside | (~mengwong@103.252.202.151) |
2023-05-24 12:29:23 +0200 | wiosna | (~karangura@c-73-93-95-154.hsd1.ca.comcast.net) |
2023-05-24 12:32:23 +0200 | freeside | (~mengwong@103.252.202.151) (Ping timeout: 240 seconds) |
2023-05-24 12:32:32 +0200 | acidjnk | (~acidjnk@p200300d6e7072f976d29b515cdbc7698.dip0.t-ipconnect.de) (Ping timeout: 248 seconds) |
2023-05-24 12:33:36 +0200 | wiosna | (~karangura@c-73-93-95-154.hsd1.ca.comcast.net) (Ping timeout: 248 seconds) |
2023-05-24 12:33:44 +0200 | stiell_ | (~stiell@gateway/tor-sasl/stiell) (Ping timeout: 240 seconds) |
2023-05-24 12:35:00 +0200 | stiell_ | (~stiell@gateway/tor-sasl/stiell) |
2023-05-24 12:36:50 +0200 | alternateved | (~user@77-253-195-69.adsl.inetia.pl) (Remote host closed the connection) |
2023-05-24 12:37:03 +0200 | ft | (~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 +0200 | abrantesasf | (~abrantesa@189.115.192.139) |
2023-05-24 12:43:35 +0200 | euandreh | (~Thunderbi@189.6.18.7) |
2023-05-24 12:45:22 +0200 | chexum | (~quassel@gateway/tor-sasl/chexum) (Remote host closed the connection) |
2023-05-24 12:45:48 +0200 | chexum | (~quassel@gateway/tor-sasl/chexum) |
2023-05-24 12:50:26 +0200 | pavonia | (~user@user/siracusa) (Quit: Bye!) |
2023-05-24 12:50:46 +0200 | freeside | (~mengwong@103.252.202.151) |
2023-05-24 12:52:31 +0200 | acidjnk | (~acidjnk@p200300d6e7072f972cb35e063b39afc2.dip0.t-ipconnect.de) |
2023-05-24 12:54:47 +0200 | freeside | (~mengwong@103.252.202.151) (Ping timeout: 240 seconds) |
2023-05-24 13:02:47 +0200 | mauke | (~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 +0200 | abrantesasf | (~abrantesa@189.115.192.139) (Remote host closed the connection) |
2023-05-24 13:09:47 +0200 | ubert | (~Thunderbi@2a02:8109:abc0:6434:50f1:64d6:2ce3:ee7c) (Quit: ubert) |
2023-05-24 13:10:02 +0200 | ubert | (~Thunderbi@2a02:8109:abc0:6434:f2d8:291c:9e98:bbba) |
2023-05-24 13:10:06 +0200 | abrantesasf | (~abrantesa@177.137.232.92) |
2023-05-24 13:10:47 +0200 | freeside | (~mengwong@103.252.202.151) |
2023-05-24 13:12:45 +0200 | mei | (~mei@user/mei) (Read error: Connection reset by peer) |
2023-05-24 13:15:10 +0200 | mei | (~mei@user/mei) |
2023-05-24 13:15:12 +0200 | freeside | (~mengwong@103.252.202.151) (Ping timeout: 248 seconds) |
2023-05-24 13:17:26 +0200 | xff0x | (~xff0x@2405:6580:b080:900:129:45c2:6814:da56) |
2023-05-24 13:21:47 +0200 | raehik | (~raehik@cpc95906-rdng25-2-0-cust156.15-3.cable.virginm.net) |
2023-05-24 13:32:26 +0200 | chomwitt | (~chomwitt@2a02:587:7a18:d000:1ac0:4dff:fedb:a3f1) |
2023-05-24 13:36:47 +0200 | raehik | (~raehik@cpc95906-rdng25-2-0-cust156.15-3.cable.virginm.net) (Ping timeout: 240 seconds) |
2023-05-24 13:37:37 +0200 | vandita | (~vandit@94-21-131-107.pool.digikabel.hu) (Ping timeout: 268 seconds) |
2023-05-24 13:41:31 +0200 | anpad | (~pandeyan@user/anpad) (Quit: ZNC 1.8.2 - https://znc.in) |
2023-05-24 13:42:40 +0200 | stiell_ | (~stiell@gateway/tor-sasl/stiell) (Remote host closed the connection) |
2023-05-24 13:43:11 +0200 | vandita | (~vandit@87-97-88-228.pool.digikabel.hu) |
2023-05-24 13:43:13 +0200 | stiell_ | (~stiell@gateway/tor-sasl/stiell) |
2023-05-24 13:43:35 +0200 | anpad | (~pandeyan@user/anpad) |
2023-05-24 13:45:46 +0200 | freeside | (~mengwong@103.252.202.151) |
2023-05-24 13:46:23 +0200 | xff0x | (~xff0x@2405:6580:b080:900:129:45c2:6814:da56) (Ping timeout: 264 seconds) |
2023-05-24 13:48:03 +0200 | xff0x | (~xff0x@ai098135.d.east.v6connect.net) |
2023-05-24 13:49:31 +0200 | kritzefitz | (~kritzefit@debian/kritzefitz) (Ping timeout: 240 seconds) |
2023-05-24 13:49:44 +0200 | kritzefitz | (~kritzefit@debian/kritzefitz) |
2023-05-24 13:50:01 +0200 | freeside | (~mengwong@103.252.202.151) (Ping timeout: 240 seconds) |
2023-05-24 13:51:29 +0200 | acidjnk | (~acidjnk@p200300d6e7072f972cb35e063b39afc2.dip0.t-ipconnect.de) (Ping timeout: 256 seconds) |
2023-05-24 13:53:06 +0200 | mei | (~mei@user/mei) (Remote host closed the connection) |
2023-05-24 13:54:59 +0200 | bliminse | (~bliminse@user/bliminse) (Quit: leaving) |
2023-05-24 13:55:31 +0200 | mei | (~mei@user/mei) |
2023-05-24 13:57:05 +0200 | kritzefitz | (~kritzefit@debian/kritzefitz) (Ping timeout: 240 seconds) |
2023-05-24 13:59:56 +0200 | kritzefitz | (~kritzefit@debian/kritzefitz) |
2023-05-24 14:04:09 +0200 | abrantesasf | (~abrantesa@177.137.232.92) (Remote host closed the connection) |
2023-05-24 14:06:48 +0200 | Pickchea | (~private@user/pickchea) (Quit: Leaving) |
2023-05-24 14:07:01 +0200 | stiell | (~stiell@gateway/tor-sasl/stiell) |
2023-05-24 14:09:44 +0200 | stiell_ | (~stiell@gateway/tor-sasl/stiell) (Ping timeout: 240 seconds) |
2023-05-24 14:10:35 +0200 | user_____ | (~user@dynamic-046-114-181-020.46.114.pool.telefonica.de) |
2023-05-24 14:12:26 +0200 | freeside | (~mengwong@103.252.202.151) |
2023-05-24 14:15:41 +0200 | notzmv | (~zmv@user/notzmv) |
2023-05-24 14:16:59 +0200 | freeside | (~mengwong@103.252.202.151) (Ping timeout: 256 seconds) |
2023-05-24 14:17:59 +0200 | kritzefitz | (~kritzefit@debian/kritzefitz) (Ping timeout: 240 seconds) |
2023-05-24 14:18:14 +0200 | kritzefitz | (~kritzefit@debian/kritzefitz) |
2023-05-24 14:19:01 +0200 | bitdex | (~bitdex@gateway/tor-sasl/bitdex) (Quit: = "") |
2023-05-24 14:25:14 +0200 | chomwitt | (~chomwitt@2a02:587:7a18:d000:1ac0:4dff:fedb:a3f1) (Remote host closed the connection) |
2023-05-24 14:26:45 +0200 | raehik | (~raehik@cpc95906-rdng25-2-0-cust156.15-3.cable.virginm.net) |
2023-05-24 14:30:22 +0200 | delYsid | (~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 +0200 | Pickchea | (~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 +0200 | freeside | (~mengwong@103.252.202.151) |
2023-05-24 14:46:29 +0200 | eggplantade | (~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 +0200 | freeside | (~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 +0200 | kritzefitz | (~kritzefit@debian/kritzefitz) (Ping timeout: 240 seconds) |
2023-05-24 14:50:44 +0200 | eggplantade | (~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 +0200 | freeside | (~mengwong@103.252.202.151) |
2023-05-24 15:04:38 +0200 | kritzefitz | (~kritzefit@debian/kritzefitz) |
2023-05-24 15:06:25 +0200 | freeside | (~mengwong@103.252.202.151) (Ping timeout: 268 seconds) |
2023-05-24 15:07:10 +0200 | freeside | (~mengwong@103.252.202.151) |
2023-05-24 15:11:25 +0200 | freeside | (~mengwong@103.252.202.151) (Ping timeout: 240 seconds) |
2023-05-24 15:26:00 +0200 | Mistyhands | (~Mistyhand@217.155.19.212) |
2023-05-24 15:26:41 +0200 | kritzefitz | (~kritzefit@debian/kritzefitz) (Ping timeout: 256 seconds) |
2023-05-24 15:26:56 +0200 | kritzefitz | (~kritzefit@debian/kritzefitz) |
2023-05-24 15:28:59 +0200 | acidjnk | (~acidjnk@p200300d6e7072f97acd2533548afd1ac.dip0.t-ipconnect.de) |
2023-05-24 15:31:02 +0200 | Pickchea | (~private@user/pickchea) (Quit: Leaving) |
2023-05-24 15:33:02 +0200 | nadja | (~dequbed@banana-new.kilobyte22.de) (Quit: bye!) |
2023-05-24 15:34:13 +0200 | use-value | (~Thunderbi@2a00:23c6:8a03:2f01:10d5:28d5:b8f3:93f9) |
2023-05-24 15:34:21 +0200 | gnalzo | (~gnalzo@2a01:e0a:498:fd50:fcc6:bb5d:489a:ce8c) (Quit: WeeChat 3.8) |
2023-05-24 15:35:23 +0200 | use-value1 | (~Thunderbi@2a00:23c6:8a03:2f01:a9c6:961f:4b03:e0c) |
2023-05-24 15:36:01 +0200 | nadja | (~dequbed@banana-new.kilobyte22.de) |
2023-05-24 15:36:17 +0200 | notzmv | (~zmv@user/notzmv) (Quit: Using Circe, the loveliest of all IRC clients) |
2023-05-24 15:38:35 +0200 | use-value | (~Thunderbi@2a00:23c6:8a03:2f01:10d5:28d5:b8f3:93f9) (Ping timeout: 264 seconds) |
2023-05-24 15:38:36 +0200 | use-value1 | use-value |
2023-05-24 15:40:01 +0200 | wroathe | (~wroathe@207-153-38-140.fttp.usinternet.com) |
2023-05-24 15:40:01 +0200 | wroathe | (~wroathe@207-153-38-140.fttp.usinternet.com) (Changing host) |
2023-05-24 15:40:01 +0200 | wroathe | (~wroathe@user/wroathe) |
2023-05-24 15:43:41 +0200 | user_____ | (~user@dynamic-046-114-181-020.46.114.pool.telefonica.de) (Ping timeout: 256 seconds) |
2023-05-24 15:49:36 +0200 | thegeekinside | (~thegeekin@189.141.107.10) |
2023-05-24 15:50:22 +0200 | Inst | (~Inst@2601:6c4:4081:2fc0:6477:2ba8:415:e790) (Ping timeout: 250 seconds) |
2023-05-24 15:57:56 +0200 | wroathe | (~wroathe@user/wroathe) (Ping timeout: 246 seconds) |
2023-05-24 16:10:10 +0200 | bgs | (~bgs@212-85-160-171.dynamic.telemach.net) |
2023-05-24 16:15:25 +0200 | waleee | (~waleee@2001:9b0:21c:4000:5bf9:6515:c030:57b7) |
2023-05-24 16:17:46 +0200 | eggplantade | (~Eggplanta@2600:1700:38c5:d800:99bb:f82c:7f14:1d7d) |
2023-05-24 16:29:51 +0200 | wiosna | (~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 +0200 | shriekingnoise | (~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 +0200 | wiosna | (~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 +0200 | lortabac | (~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 +0200 | eggplantade | (~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 +0200 | rembo10 | (~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 +0200 | rembo10 | (~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 +0200 | Sgeo | (~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 +0200 | dcoutts | (~duncan@cpc69402-oxfd27-2-0-cust903.4-3.cable.virginm.net) (Ping timeout: 256 seconds) |
2023-05-24 16:56:02 +0200 | abrantesasf | (~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 +0200 | acidjnk | (~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 +0200 | tzh | (~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 +0200 | eggplantade | (~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 +0200 | cfricke | (~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 +0200 | rf | (~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 +0200 | azimut | (~azimut@gateway/tor-sasl/azimut) (Ping timeout: 240 seconds) |
2023-05-24 17:18:32 +0200 | enoq_ | (~enoq@194-208-133-121.lampert.tv) |
2023-05-24 17:19:23 +0200 | enoq | (~enoq@2a05:1141:1f5:5600:b9c9:721a:599:bfe7) (Ping timeout: 264 seconds) |
2023-05-24 17:20:20 +0200 | enoq_ | 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 +0200 | zmt00 | (~zmt00@user/zmt00) (Quit: Leaving) |
2023-05-24 17:23:24 +0200 | zmt00 | (~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 +0200 | eugenrh | (~eugenrh@2a02:2f08:4707:3e00:454b:9ac4:8552:8de8) (Ping timeout: 240 seconds) |
2023-05-24 17:25:53 +0200 | gnalzo | (~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 +0200 | werneta | (~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 +0200 | wiosna | (~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 +0200 | nyc | (~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 +0200 | nyc | (~nyc@2603-7000-a106-2fb5-0000-0000-0000-1f21.res6.spectrum.com) (Changing host) |
2023-05-24 17:35:30 +0200 | nyc | (~nyc@user/nyc) |
2023-05-24 17:36:31 +0200 | <jade[m]> | all of that for this ... |
2023-05-24 17:36:37 +0200 | jade[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 +0200 | bliminse | (~bliminse@user/bliminse) |
2023-05-24 17:37:48 +0200 | wiosna | (~karangura@c-73-93-95-154.hsd1.ca.comcast.net) (Ping timeout: 240 seconds) |
2023-05-24 17:49:49 +0200 | shapr | (~user@76.29.230.19) |
2023-05-24 17:53:18 +0200 | mechap | (~mechap@user/mechap) |
2023-05-24 18:04:03 +0200 | dhil | (~dhil@78.45.150.83.ewm.ftth.as8758.net) |
2023-05-24 18:04:26 +0200 | freeside | (~mengwong@103.252.202.151) |
2023-05-24 18:08:24 +0200 | nick_ | (~nick@wsip-174-78-110-18.pn.at.cox.net) |
2023-05-24 18:08:57 +0200 | eggplantade | (~Eggplanta@2600:1700:38c5:d800:99bb:f82c:7f14:1d7d) (Remote host closed the connection) |
2023-05-24 18:09:20 +0200 | stiell | (~stiell@gateway/tor-sasl/stiell) (Remote host closed the connection) |
2023-05-24 18:09:35 +0200 | freeside | (~mengwong@103.252.202.151) (Ping timeout: 240 seconds) |
2023-05-24 18:10:16 +0200 | stiell | (~stiell@gateway/tor-sasl/stiell) |
2023-05-24 18:12:31 +0200 | CiaoSen | (~Jura@dynamic-046-114-220-096.46.114.pool.telefonica.de) (Ping timeout: 240 seconds) |
2023-05-24 18:12:34 +0200 | gnalzo | (~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 +0200 | econo | (uid147250@user/econo) |
2023-05-24 18:19:08 +0200 | waleee | (~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 +0200 | waleee | (~waleee@2001:9b0:21c:4000:5bf9:6515:c030:57b7) |
2023-05-24 18:23:59 +0200 | mc47 | (~mc47@xmonad/TheMC47) |
2023-05-24 18:26:19 +0200 | freeside | (~mengwong@103.252.202.151) |
2023-05-24 18:28:38 +0200 | user_____ | (~user@dynamic-046-114-108-116.46.114.pool.telefonica.de) |
2023-05-24 18:29:11 +0200 | wroathe | (~wroathe@207-153-38-140.fttp.usinternet.com) |
2023-05-24 18:29:12 +0200 | wroathe | (~wroathe@207-153-38-140.fttp.usinternet.com) (Changing host) |
2023-05-24 18:29:12 +0200 | wroathe | (~wroathe@user/wroathe) |
2023-05-24 18:31:01 +0200 | freeside | (~mengwong@103.252.202.151) (Ping timeout: 265 seconds) |
2023-05-24 18:31:59 +0200 | waleee | (~waleee@2001:9b0:21c:4000:5bf9:6515:c030:57b7) (Ping timeout: 256 seconds) |
2023-05-24 18:35:01 +0200 | raehik | (~raehik@cpc95906-rdng25-2-0-cust156.15-3.cable.virginm.net) (Ping timeout: 240 seconds) |
2023-05-24 18:38:16 +0200 | wroathe | (~wroathe@user/wroathe) (Ping timeout: 265 seconds) |
2023-05-24 18:46:31 +0200 | titibandit | (~titibandi@user/titibandit) (Remote host closed the connection) |
2023-05-24 18:47:19 +0200 | ddellacosta | (~ddellacos@146.70.185.10) |
2023-05-24 18:54:21 +0200 | eggplantade | (~Eggplanta@2600:1700:38c5:d800:99bb:f82c:7f14:1d7d) |
2023-05-24 18:59:11 +0200 | acidjnk | (~acidjnk@p200300d6e7072f97b50268228b627d0d.dip0.t-ipconnect.de) |
2023-05-24 19:00:23 +0200 | titibandit | (~titibandi@user/titibandit) |
2023-05-24 19:00:29 +0200 | Tuplanolla | (~Tuplanoll@91-159-68-236.elisa-laajakaista.fi) |
2023-05-24 19:02:35 +0200 | shapr | (~user@76.29.230.19) (Ping timeout: 264 seconds) |
2023-05-24 19:05:56 +0200 | freeside | (~mengwong@103.252.202.151) |
2023-05-24 19:06:28 +0200 | mc47 | (~mc47@xmonad/TheMC47) (Quit: Leaving) |
2023-05-24 19:07:26 +0200 | ubert | (~Thunderbi@2a02:8109:abc0:6434:f2d8:291c:9e98:bbba) (Remote host closed the connection) |
2023-05-24 19:09:59 +0200 | freeside | (~mengwong@103.252.202.151) (Ping timeout: 240 seconds) |
2023-05-24 19:12:23 +0200 | dhil | (~dhil@78.45.150.83.ewm.ftth.as8758.net) (Ping timeout: 240 seconds) |
2023-05-24 19:20:05 +0200 | lyle | (~lyle@104.246.145.237) |
2023-05-24 19:20:38 +0200 | Inst | (~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 +0200 | ec | (~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 +0200 | Inst | (~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 +0200 | Inst | (~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 +0200 | ec | (~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 +0200 | rf | (~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 +0200 | abrantesasf | (~abrantesa@189.115.192.139) (Remote host closed the connection) |
2023-05-24 19:46:01 +0200 | titibandit | (~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 +0200 | shapr | (~user@2600:1700:c640:3100:3f83:2dbd:933:12fd) |
2023-05-24 19:57:41 +0200 | machinedgod | (~machinedg@84-115-230-249.cable.dynamic.surfer.at) |
2023-05-24 20:04:48 +0200 | Guest88 | (~Guest88@136.226.18.211) |
2023-05-24 20:05:04 +0200 | Guest88 | (~Guest88@136.226.18.211) (Client Quit) |
2023-05-24 20:07:06 +0200 | Inst | (~Inst@2601:6c4:4081:2fc0:3966:9d9f:5237:b674) (Remote host closed the connection) |
2023-05-24 20:07:28 +0200 | Inst | (~Inst@2601:6c4:4081:2fc0:3966:9d9f:5237:b674) |
2023-05-24 20:15:13 +0200 | phma_ | (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 +0200 | phma | (phma@2001:5b0:210f:3e28:a2ab:29ef:2389:7204) (Read error: Connection reset by peer) |
2023-05-24 20:18:31 +0200 | machinedgod | (~machinedg@84-115-230-249.cable.dynamic.surfer.at) (Ping timeout: 240 seconds) |
2023-05-24 20:20:45 +0200 | mikoto-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 +0200 | mbuf | (~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 +0200 | azimut | (~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 +0200 | freeside | (~mengwong@103.252.202.151) |
2023-05-24 20:24:47 +0200 | ddellacosta | (~ddellacos@146.70.185.10) (Ping timeout: 264 seconds) |
2023-05-24 20:28:48 +0200 | freeside | (~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 +0200 | alexherbo2 | (~alexherbo@2a02-842a-8180-4601-c838-cb30-96bb-1347.rev.sfr.net) |
2023-05-24 20:33:33 +0200 | mmhat | (~mmh@p200300f1c7066879ee086bfffe095315.dip0.t-ipconnect.de) |
2023-05-24 20:33:38 +0200 | mmhat | (~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 +0200 | ec | (~ec@gateway/tor-sasl/ec) |
2023-05-24 20:37:38 +0200 | lortabac | (~lortabac@2a01:e0a:541:b8f0:fc01:1c25:ea0c:77cb) |
2023-05-24 20:38:26 +0200 | taupiqueur1 | (~taupiqueu@2a02-842a-8180-4601-558f-7552-9093-6c65.rev.sfr.net) |
2023-05-24 20:39:11 +0200 | rf | (~rf@142.99.241.246) |
2023-05-24 20:39:47 +0200 | taupiqueur | (~taupiqueu@2a02-842a-8180-4601-c838-cb30-96bb-1347.rev.sfr.net) (Ping timeout: 264 seconds) |
2023-05-24 20:40:13 +0200 | alexherbo2 | (~alexherbo@2a02-842a-8180-4601-c838-cb30-96bb-1347.rev.sfr.net) (Ping timeout: 245 seconds) |
2023-05-24 20:40:56 +0200 | ec | (~ec@gateway/tor-sasl/ec) (Ping timeout: 240 seconds) |
2023-05-24 20:41:11 +0200 | coot | (~coot@89-69-206-216.dynamic.chello.pl) (Quit: coot) |
2023-05-24 20:41:46 +0200 | alexherbo2 | (~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 +0200 | ec | (~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 +0200 | ec | (~ec@gateway/tor-sasl/ec) (Ping timeout: 240 seconds) |
2023-05-24 20:48:23 +0200 | ec | (~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 +0200 | azimut | (~azimut@gateway/tor-sasl/azimut) (Ping timeout: 240 seconds) |
2023-05-24 20:51:19 +0200 | ec | (~ec@gateway/tor-sasl/ec) (Client Quit) |
2023-05-24 20:51:30 +0200 | ec | (~ec@gateway/tor-sasl/ec) |
2023-05-24 20:55:59 +0200 | lortabac | (~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 +0200 | eggplantade | (~Eggplanta@2600:1700:38c5:d800:99bb:f82c:7f14:1d7d) (Remote host closed the connection) |
2023-05-24 21:02:30 +0200 | lortabac | (~lortabac@2a01:e0a:541:b8f0:f1d3:4e32:4039:9211) |
2023-05-24 21:07:35 +0200 | alternateved | (~user@77-253-195-69.adsl.inetia.pl) |
2023-05-24 21:11:42 +0200 | dcoutts | (~duncan@cpc69402-oxfd27-2-0-cust903.4-3.cable.virginm.net) |
2023-05-24 21:14:15 +0200 | gmg | (~user@user/gehmehgeh) |
2023-05-24 21:14:34 +0200 | freeside | (~mengwong@103.252.202.151) |
2023-05-24 21:15:05 +0200 | rf | (~rf@142.99.241.246) (Remote host closed the connection) |
2023-05-24 21:20:07 +0200 | freeside | (~mengwong@103.252.202.151) (Ping timeout: 268 seconds) |
2023-05-24 21:22:39 +0200 | boukenshaou | (~Boukensha@223.178.84.76) |
2023-05-24 21:23:29 +0200 | boukenshaou | (~Boukensha@223.178.84.76) (Client Quit) |
2023-05-24 21:24:05 +0200 | eggplantade | (~Eggplanta@2600:1700:38c5:d800:99bb:f82c:7f14:1d7d) |
2023-05-24 21:29:22 +0200 | alternateved | (~user@77-253-195-69.adsl.inetia.pl) (Ping timeout: 268 seconds) |
2023-05-24 21:33:09 +0200 | zeenk | (~zeenk@2a02:2f04:a105:f00::7fe) |
2023-05-24 21:36:47 +0200 | dcoutts | (~duncan@cpc69402-oxfd27-2-0-cust903.4-3.cable.virginm.net) (Ping timeout: 264 seconds) |
2023-05-24 21:37:17 +0200 | quarkyalice | (~alice@199.sub-97-136-32.myvzw.com) |
2023-05-24 21:37:17 +0200 | quarkyalice | (~alice@199.sub-97-136-32.myvzw.com) (Changing host) |
2023-05-24 21:37:17 +0200 | quarkyalice | (~alice@user/quarkyalice) |
2023-05-24 21:42:12 +0200 | quarkyalice | (~alice@user/quarkyalice) (Remote host closed the connection) |
2023-05-24 21:45:12 +0200 | user_____ | gurkenglas |
2023-05-24 21:45:20 +0200 | mauke | (~mauke@user/mauke) |
2023-05-24 21:57:33 +0200 | freeside | (~mengwong@103.252.202.151) |
2023-05-24 22:00:13 +0200 | dcoutts | (~duncan@cpc69402-oxfd27-2-0-cust903.4-3.cable.virginm.net) |
2023-05-24 22:04:45 +0200 | ft | (~ft@p4fc2a88b.dip0.t-ipconnect.de) |
2023-05-24 22:04:59 +0200 | freeside | (~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 +0200 | reach | (~reach@2607:fea8:4c0:990:ed57:c522:1ec0:1db4) |
2023-05-24 22:11:15 +0200 | titibandit | (~titibandi@user/titibandit) |
2023-05-24 22:13:34 +0200 | CiaoSen | (~Jura@dynamic-046-114-220-057.46.114.pool.telefonica.de) |
2023-05-24 22:18:13 +0200 | taupiqueur1 | (~taupiqueu@2a02-842a-8180-4601-558f-7552-9093-6c65.rev.sfr.net) (Quit: WeeChat 3.8) |
2023-05-24 22:27:18 +0200 | tromp | (~textual@92-110-219-57.cable.dynamic.v4.ziggo.nl) (Read error: Connection reset by peer) |
2023-05-24 22:27:38 +0200 | hgolden | (~hgolden@cpe-172-251-233-141.socal.res.rr.com) (Remote host closed the connection) |
2023-05-24 22:28:22 +0200 | freeside | (~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 +0200 | taupiqueur | (~taupiqueu@2a02-842a-8180-4601-558f-7552-9093-6c65.rev.sfr.net) |
2023-05-24 22:36:21 +0200 | waleee | (~waleee@2001:9b0:21c:4000:5bf9:6515:c030:57b7) |
2023-05-24 22:36:36 +0200 | takuan | (~takuan@178-116-218-225.access.telenet.be) (Remote host closed the connection) |
2023-05-24 22:37:03 +0200 | coot | (~coot@89-69-206-216.dynamic.chello.pl) |
2023-05-24 22:41:26 +0200 | trev | (~trev@user/trev) (Quit: trev) |
2023-05-24 22:41:29 +0200 | freeside | (~mengwong@103.252.202.151) (Ping timeout: 246 seconds) |
2023-05-24 22:42:43 +0200 | <sm> | Shake ? |
2023-05-24 22:46:41 +0200 | ddellacosta | (~ddellacos@146.70.165.234) |
2023-05-24 22:51:59 +0200 | dcoutts | (~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 +0200 | alexherbo2 | (~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 +0200 | lortabac | (~lortabac@2a01:e0a:541:b8f0:f1d3:4e32:4039:9211) (Quit: WeeChat 2.8) |
2023-05-24 23:00:22 +0200 | dcoutts | (~duncan@cpc69402-oxfd27-2-0-cust903.4-3.cable.virginm.net) |
2023-05-24 23:00:25 +0200 | freeside | (~mengwong@103.252.202.151) |
2023-05-24 23:04:36 +0200 | pavonia | (~user@user/siracusa) |
2023-05-24 23:04:59 +0200 | freeside | (~mengwong@103.252.202.151) (Ping timeout: 264 seconds) |
2023-05-24 23:05:48 +0200 | michalz | (~michalz@185.246.204.75) (Remote host closed the connection) |
2023-05-24 23:06:48 +0200 | gurkenglas | (~user@dynamic-046-114-108-116.46.114.pool.telefonica.de) (Ping timeout: 268 seconds) |
2023-05-24 23:13:51 +0200 | NinjaTrappeur | (~ninja@user/ninjatrappeur) |
2023-05-24 23:14:49 +0200 | nick_ | (~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 +0200 | reach | (~reach@2607:fea8:4c0:990:ed57:c522:1ec0:1db4) (Remote host closed the connection) |
2023-05-24 23:21:51 +0200 | reach | (~reach@2607:fea8:4c0:990:ed57:c522:1ec0:1db4) |
2023-05-24 23:21:51 +0200 | lyle | (~lyle@104.246.145.237) (Quit: WeeChat 3.8) |
2023-05-24 23:22:48 +0200 | bgs | (~bgs@212-85-160-171.dynamic.telemach.net) (Remote host closed the connection) |
2023-05-24 23:24:03 +0200 | cheater_ | (~Username@user/cheater) |
2023-05-24 23:24:53 +0200 | cheater | (~Username@user/cheater) (Ping timeout: 246 seconds) |
2023-05-24 23:24:58 +0200 | cheater_ | cheater |
2023-05-24 23:28:45 +0200 | reach | (~reach@2607:fea8:4c0:990:ed57:c522:1ec0:1db4) (Remote host closed the connection) |
2023-05-24 23:29:07 +0200 | reach | (~reach@2607:fea8:4c0:990:ed57:c522:1ec0:1db4) |
2023-05-24 23:30:45 +0200 | titibandit | (~titibandi@user/titibandit) (Remote host closed the connection) |
2023-05-24 23:33:44 +0200 | mechap | (~mechap@user/mechap) (Quit: WeeChat 3.8) |
2023-05-24 23:34:25 +0200 | reach | (~reach@2607:fea8:4c0:990:ed57:c522:1ec0:1db4) (Remote host closed the connection) |
2023-05-24 23:34:40 +0200 | coot | (~coot@89-69-206-216.dynamic.chello.pl) (Quit: coot) |
2023-05-24 23:34:49 +0200 | reach | (~reach@2607:fea8:4c0:990:ed57:c522:1ec0:1db4) |
2023-05-24 23:38:51 +0200 | Nosrep | (~Nosrep@user/nosrep) |
2023-05-24 23:41:31 +0200 | reach | (~reach@2607:fea8:4c0:990:ed57:c522:1ec0:1db4) (Ping timeout: 240 seconds) |
2023-05-24 23:42:35 +0200 | abrantesasf | (~abrantesa@189.115.192.139) |
2023-05-24 23:48:46 +0200 | quarkyalice | (~alice@199.sub-97-136-32.myvzw.com) |
2023-05-24 23:48:46 +0200 | quarkyalice | (~alice@199.sub-97-136-32.myvzw.com) (Changing host) |
2023-05-24 23:48:46 +0200 | quarkyalice | (~alice@user/quarkyalice) |