Home liberachat/#haskell: Logs Calendar

Logs on 2022-05-11 (liberachat/#haskell)

00:00:27 <sm> https://twitter.com/haskelltips stopped a few years back
00:00:46 <texasmynsted> There are at least two awesome haskell sites on github
00:01:04 <texasmynsted> https://github.com/krispo/awesome-haskell https://github.com/uhub/awesome-haskell
00:01:16 <sm> (related, https://twitter.com/haskellceo was fun)
00:01:37 <texasmynsted> I am ready to follow your new haskell link twitter feed
00:02:03 <texasmynsted> So long as it is all Haskell and not politics
00:02:13 sm ran a LedgerTips for a while
00:03:00 <texasmynsted> not sure what that would be but tips are good
00:07:06 × kjak quits (~kjak@pool-108-45-56-21.washdc.fios.verizon.net) (Ping timeout: 276 seconds)
00:07:15 <sm> thanks for the links, also noted
00:08:05 × pfharlock quits (~pfharlock@cpe-74-138-169-108.kya.res.rr.com) (Remote host closed the connection)
00:08:17 <texasmynsted> Oh Julie and Chris have a twitter for their "Joy of Haskell" book.
00:08:28 pfharlock joins (~pfharlock@cpe-74-138-169-108.kya.res.rr.com)
00:17:19 × xff0x quits (~xff0x@b133147.ppp.asahi-net.or.jp) (Ping timeout: 246 seconds)
00:17:33 wroathe joins (~wroathe@206-55-188-8.fttp.usinternet.com)
00:17:34 × wroathe quits (~wroathe@206-55-188-8.fttp.usinternet.com) (Changing host)
00:17:34 wroathe joins (~wroathe@user/wroathe)
00:20:08 × whatsupdoc quits (uid509081@id-509081.hampstead.irccloud.com) (Quit: Connection closed for inactivity)
00:25:11 jmd_ is now known as jmdaemon
00:25:40 × waleee quits (~waleee@2001:9b0:213:7200:cc36:a556:b1e8:b340) (Ping timeout: 248 seconds)
00:29:57 jmd_ joins (~jmdaemon@user/jmdaemon)
00:30:00 <shapr> sm: yay!
00:30:05 × jmdaemon quits (~jmdaemon@user/jmdaemon) (Ping timeout: 252 seconds)
00:31:33 × Kaiepi quits (~Kaiepi@156.34.47.253) (Read error: Connection reset by peer)
00:31:57 Kaiepi joins (~Kaiepi@156.34.47.253)
00:41:34 × ec quits (~ec@gateway/tor-sasl/ec) (Ping timeout: 240 seconds)
00:48:47 × wroathe quits (~wroathe@user/wroathe) (Quit: leaving)
00:50:01 × Benzi-Junior quits (~BenziJuni@88-149-64-179.du.xdsl.is) (Quit: ZNC 1.8.2 - https://znc.in)
00:56:22 xff0x joins (~xff0x@125x102x200x106.ap125.ftth.ucom.ne.jp)
01:10:43 × zaquest quits (~notzaques@5.130.79.72) (Remote host closed the connection)
01:13:00 zaquest joins (~notzaques@5.130.79.72)
01:26:13 × EvanR quits (~EvanR@user/evanr) (Remote host closed the connection)
01:26:31 EvanR joins (~EvanR@user/evanr)
01:32:08 × TonyStone quits (~TonyStone@2603-7080-8607-c36a-09ca-22c1-65a3-8fed.res6.spectrum.com) (Ping timeout: 260 seconds)
01:36:09 <jackdk> sm: http://jackkelly.name/wiki/haskell.html I think you have different curation goals to me but I like my little linklist
01:36:41 <Axman6> hot take: haskell tutorial lists are the new monad tutorial
01:36:42 <sm> thanks!
01:37:32 <sm> if nothing else, I will achieve a list of lists valid for one day!
01:37:33 <exarkun> is there a monad instance for haskell tutorial lists yet
01:37:45 <exarkun> if not can I achieve some kind of fame by defining one
01:42:36 × kaph quits (~kaph@net-2-42-128-205.cust.vodafonedsl.it) (Ping timeout: 240 seconds)
01:44:41 TonyStone joins (~TonyStone@2603-7080-8607-c36a-6165-3a77-319f-4350.res6.spectrum.com)
01:45:48 <monochrom> May I have haskell tutorial arrays instead?
01:46:05 <monochrom> I want to use !!n on haskell tutorial arrays.
01:46:20 <Axman6> unboxed tutorial arrays plkease
01:46:25 <Axman6> please*
01:47:04 <monochrom> webscale unboxed tutorial arrays with batteries included
01:47:17 <Axman6> on the blockchain*
01:47:31 <monochrom> Ah, missed that. :)
01:50:21 yauhsien joins (~yauhsien@61-231-24-3.dynamic-ip.hinet.net)
01:50:56 <dmj`> webscale haskell arrays
01:55:52 <jackdk> Axman6: I'm trying to not just magpie a single giant list, but be a bit choosy and say "this is a good series for recursion schemes; that's a good series for lens; etc"
01:56:17 ezzieyguywuf joins (~Unknown@user/ezzieyguywuf)
01:56:27 andrey_ joins (~andrey@p200300dbcf0a9400bb18378afbd4165e.dip0.t-ipconnect.de)
01:56:43 × yauhsien quits (~yauhsien@61-231-24-3.dynamic-ip.hinet.net) (Ping timeout: 246 seconds)
01:59:25 × andrey__ quits (~andrey@p508d55ad.dip0.t-ipconnect.de) (Ping timeout: 256 seconds)
02:01:46 × eggplantade quits (~Eggplanta@108-201-191-115.lightspeed.sntcca.sbcglobal.net) (Remote host closed the connection)
02:06:45 × searemind quits (~searemind@2401:4900:4129:2b11:8d8e:c937:86ed:aff3) (Quit: nyaa~)
02:07:28 × stackdroid18 quits (14094@user/stackdroid) (Quit: hasta la vista... tchau!)
02:07:44 bitdex joins (~bitdex@gateway/tor-sasl/bitdex)
02:09:53 × FinnElija quits (~finn_elij@user/finn-elija/x-0085643) (Killed (NickServ (Forcing logout FinnElija -> finn_elija)))
02:09:53 finn_elija joins (~finn_elij@user/finn-elija/x-0085643)
02:09:53 finn_elija is now known as FinnElija
02:09:54 × FinnElija quits (~finn_elij@user/finn-elija/x-0085643) (Remote host closed the connection)
02:10:13 finn_elija joins (~finn_elij@user/finn-elija/x-0085643)
02:10:13 finn_elija is now known as FinnElija
02:16:35 × jmcarthur quits (~jmcarthur@c-73-29-224-10.hsd1.nj.comcast.net) (Quit: My MacBook Air has gone to sleep. ZZZzzz…)
02:19:20 jmcarthur joins (~jmcarthur@c-73-29-224-10.hsd1.nj.comcast.net)
02:26:22 searemind joins (~searemind@2401:4900:4129:2b11:8d8e:c937:86ed:aff3)
02:26:44 × searemind quits (~searemind@2401:4900:4129:2b11:8d8e:c937:86ed:aff3) (Client Quit)
02:27:08 AlexNoo_ joins (~AlexNoo@178.34.163.35)
02:28:52 × AlexZenon quits (~alzenon@178.34.162.228) (Ping timeout: 248 seconds)
02:30:00 × Alex_test quits (~al_test@178.34.162.228) (Ping timeout: 250 seconds)
02:30:28 × AlexNoo quits (~AlexNoo@178.34.162.228) (Ping timeout: 248 seconds)
02:33:27 searemind joins (~searemind@2401:4900:4129:2b11:8d8e:c937:86ed:aff3)
02:33:34 × searemind quits (~searemind@2401:4900:4129:2b11:8d8e:c937:86ed:aff3) (Client Quit)
02:34:38 Alex_test joins (~al_test@178.34.163.35)
02:35:00 × [itchyjunk] quits (~itchyjunk@user/itchyjunk/x-7353470) (Ping timeout: 240 seconds)
02:35:16 AlexZenon joins (~alzenon@178.34.163.35)
02:38:10 searemind joins (~searemind@122.161.48.152)
02:38:13 × searemind quits (~searemind@122.161.48.152) (Client Quit)
02:39:11 kaph joins (~kaph@net-2-42-128-205.cust.vodafonedsl.it)
02:39:28 [itchyjunk] joins (~itchyjunk@user/itchyjunk/x-7353470)
02:40:05 × biberu quits (~biberu@user/biberu) (Read error: Connection reset by peer)
02:40:36 × melas quits (~melas@172.77.31.247) (Quit: Leaving)
02:48:41 × terrorjack quits (~terrorjac@2a01:4f8:1c1e:509a::1) (Quit: The Lounge - https://thelounge.chat)
02:49:51 × td_ quits (~td@muedsl-82-207-238-066.citykom.de) (Ping timeout: 256 seconds)
02:49:57 terrorjack joins (~terrorjac@2a01:4f8:1c1e:509a::1)
02:50:01 × jmcarthur quits (~jmcarthur@c-73-29-224-10.hsd1.nj.comcast.net) (Quit: My MacBook Air has gone to sleep. ZZZzzz…)
02:57:08 LordOfLive joins (~textual@pool-100-34-212-74.phlapa.fios.verizon.net)
03:00:02 × haasn quits (~nand@haasn.dev) (Quit: ZNC 1.7.5+deb4 - https://znc.in)
03:01:24 haasn joins (~nand@haasn.dev)
03:02:22 eggplantade joins (~Eggplanta@108-201-191-115.lightspeed.sntcca.sbcglobal.net)
03:09:43 whatsupdoc joins (uid509081@id-509081.hampstead.irccloud.com)
03:15:31 sm scripts @where db import, https://github.com/simonmichael/haskell-links/blob/main/links.csv
03:20:10 × zebrag quits (~chris@user/zebrag) (Quit: Konversation terminated!)
03:31:12 × [itchyjunk] quits (~itchyjunk@user/itchyjunk/x-7353470) (Read error: Connection reset by peer)
03:35:00 × Kaiepi quits (~Kaiepi@156.34.47.253) (Ping timeout: 240 seconds)
03:35:29 LordOfLive is now known as LordOfLiive
03:35:39 LordOfLiive is now known as LordOfLive
03:42:41 jonggoloho joins (~ASas@vps-a637c981.vps.ovh.ca)
03:55:44 × LordOfLive quits (~textual@pool-100-34-212-74.phlapa.fios.verizon.net) (Quit: My MacBook has gone to sleep. ZZZzzz…)
03:57:21 dcoutts__ joins (~duncan@host86-153-135-80.range86-153.btcentralplus.com)
03:58:32 × shailangsa quits (~shailangs@host86-186-127-233.range86-186.btcentralplus.com) (Ping timeout: 252 seconds)
04:00:04 × dcoutts_ quits (~duncan@host86-153-135-80.range86-153.btcentralplus.com) (Ping timeout: 248 seconds)
04:01:24 × xff0x quits (~xff0x@125x102x200x106.ap125.ftth.ucom.ne.jp) (Ping timeout: 240 seconds)
04:01:42 Kaiepi joins (~Kaiepi@156.34.47.253)
04:03:21 xff0x joins (~xff0x@125x102x200x106.ap125.ftth.ucom.ne.jp)
04:10:58 kenran joins (~kenran@200116b82b7b15006bab2a7f42c47c33.dip.versatel-1u1.de)
04:14:13 LordOfLive joins (~ME@pool-100-34-212-74.phlapa.fios.verizon.net)
04:26:35 LordOfLive is now known as money
04:26:36 money is now known as Guest4155
04:28:40 × Kaiepi quits (~Kaiepi@156.34.47.253) (Read error: Connection reset by peer)
04:29:28 Guest4155 is now known as 038AALONU
04:31:32 038AALONU is now known as LordOfLive
04:36:51 coot joins (~coot@213.134.190.95)
04:39:29 shailangsa_ joins (~shailangs@host86-186-127-233.range86-186.btcentralplus.com)
04:41:12 × LordOfLive quits (~ME@pool-100-34-212-74.phlapa.fios.verizon.net) (Quit: Textual IRC Client: www.textualapp.com)
04:49:17 × kenran quits (~kenran@200116b82b7b15006bab2a7f42c47c33.dip.versatel-1u1.de) (Quit: WeeChat info:version)
04:52:10 Sgeo_ joins (~Sgeo@user/sgeo)
04:54:18 mbuf joins (~Shakthi@122.162.131.93)
04:54:36 × Sgeo quits (~Sgeo@user/sgeo) (Ping timeout: 240 seconds)
04:58:42 frost joins (~frost@user/frost)
05:03:40 × Vajb quits (~Vajb@hag-jnsbng11-58c3a8-176.dhcp.inet.fi) (Read error: Connection reset by peer)
05:04:45 Vajb joins (~Vajb@2001:999:400:9bc1:d5dd:7e53:33b:56)
05:07:21 × frost quits (~frost@user/frost) (Quit: Client closed)
05:08:40 _ht joins (~quassel@231-169-21-31.ftth.glasoperator.nl)
05:18:38 × gff quits (~gff@168.103.132.194) (Changing host)
05:18:38 gff joins (~gff@user/gff)
05:22:39 vicfred joins (~vicfred@user/vicfred)
05:23:16 × dut_ quits (~dut@user/dut) (Quit: Leaving)
05:31:08 takuan joins (~takuan@178-116-218-225.access.telenet.be)
05:31:09 king_gs joins (~Thunderbi@187.201.105.54)
05:31:16 biberu joins (~biberu@user/biberu)
05:35:31 zmt01 joins (~zmt00@user/zmt00)
05:39:00 × zmt00 quits (~zmt00@user/zmt00) (Ping timeout: 240 seconds)
05:47:14 michalz joins (~michalz@185.246.204.126)
05:48:21 × lagooned quits (~lagooned@108-208-149-42.lightspeed.hstntx.sbcglobal.net) (Ping timeout: 276 seconds)
05:50:44 × stefan-_ quits (~cri@42dots.de) (Ping timeout: 252 seconds)
05:52:19 searemind joins (~searemind@122.161.48.152)
05:53:29 × searemind quits (~searemind@122.161.48.152) (Client Quit)
05:54:42 stefan-_ joins (~cri@42dots.de)
05:54:43 × jonggoloho quits (~ASas@vps-a637c981.vps.ovh.ca) (Remote host closed the connection)
05:56:00 jonggoloho joins (~jonggoloh@36.72.100.223)
05:56:21 × jonggoloho quits (~jonggoloh@36.72.100.223) (Remote host closed the connection)
05:56:40 jonggoloho joins (~jonggoloh@36.72.101.107)
05:57:41 × jonggoloho quits (~jonggoloh@36.72.101.107) (Remote host closed the connection)
05:58:37 jonggoloho joins (~jonggoloh@36.72.101.107)
05:58:38 × king_gs quits (~Thunderbi@187.201.105.54) (Read error: Connection reset by peer)
05:59:23 × jonggoloho quits (~jonggoloh@36.72.101.107) (Remote host closed the connection)
06:01:00 king_gs joins (~Thunderbi@2806:103e:29:da71:ba86:4e28:3521:b634)
06:01:02 × raym quits (~raym@user/raym) (Ping timeout: 250 seconds)
06:02:40 × _ht quits (~quassel@231-169-21-31.ftth.glasoperator.nl) (Remote host closed the connection)
06:06:04 thelounge4185 joins (~2732b090@39.50.176.144)
06:08:04 × jpds quits (~jpds@gateway/tor-sasl/jpds) (Ping timeout: 240 seconds)
06:10:28 jpds joins (~jpds@gateway/tor-sasl/jpds)
06:10:40 bahamas joins (~lucian@84.232.141.55)
06:11:15 lagooned joins (~lagooned@108-208-149-42.lightspeed.hstntx.sbcglobal.net)
06:21:32 × jmd_ quits (~jmdaemon@user/jmdaemon) (Ping timeout: 252 seconds)
06:29:51 searemind joins (~searemind@122.161.48.152)
06:30:07 christiansen joins (~christian@83-95-137-75-dynamic.dk.customer.tdc.net)
06:30:14 × searemind quits (~searemind@122.161.48.152) (Remote host closed the connection)
06:31:21 mikoto-chan joins (~mikoto-ch@84.199.144.234)
06:32:27 × simeon quits (~pi@dslb-088-076-113-053.088.076.pools.vodafone-ip.de) (Ping timeout: 240 seconds)
06:33:12 dextaa49 joins (~dextaa@user/dextaa)
06:33:19 searemind joins (~searemind@122.161.48.152)
06:33:51 × bahamas quits (~lucian@84.232.141.55) (Ping timeout: 276 seconds)
06:34:09 × searemind quits (~searemind@122.161.48.152) (Client Quit)
06:34:26 simeon joins (~pi@dslb-088-076-113-044.088.076.pools.vodafone-ip.de)
06:34:54 × thelounge4185 quits (~2732b090@39.50.176.144) (Quit: The Lounge - https://thelounge.chat)
06:35:44 acidjnk_new joins (~acidjnk@p200300d0c7068b59fd670879892edcc4.dip0.t-ipconnect.de)
06:37:34 yauhsien joins (~yauhsien@61-231-24-3.dynamic-ip.hinet.net)
06:38:33 arjun joins (~arjun@user/arjun)
06:40:25 bahamas joins (~lucian@84.232.141.55)
06:42:56 tromp joins (~textual@dhcp-077-249-230-040.chello.nl)
06:45:33 × bahamas quits (~lucian@84.232.141.55) (Ping timeout: 276 seconds)
06:46:29 × Unicorn_Princess quits (~Unicorn_P@93-103-228-248.dynamic.t-2.net) (Quit: Leaving)
06:54:55 gehmehgeh joins (~user@user/gehmehgeh)
06:56:44 bahamas joins (~lucian@84.232.141.55)
07:00:52 × bahamas quits (~lucian@84.232.141.55) (Ping timeout: 246 seconds)
07:03:50 cfricke joins (~cfricke@user/cfricke)
07:10:41 × xkuru quits (~xkuru@user/xkuru) (Read error: Connection reset by peer)
07:13:09 dschrempf joins (~dominik@070-207.dynamic.dsl.fonira.net)
07:15:00 × christiansen quits (~christian@83-95-137-75-dynamic.dk.customer.tdc.net) (Ping timeout: 240 seconds)
07:15:39 alp_ joins (~alp@user/alp)
07:16:49 zeenk joins (~zeenk@2a02:2f04:a004:9b00:1efc:c1cf:378d:8b3d)
07:18:58 × Sgeo_ quits (~Sgeo@user/sgeo) (Read error: Connection reset by peer)
07:19:11 × whatsupdoc quits (uid509081@id-509081.hampstead.irccloud.com) (Quit: Connection closed for inactivity)
07:26:10 CiaoSen joins (~Jura@p200300c95732ec002a3a4dfffe84dbd5.dip0.t-ipconnect.de)
07:26:55 lortabac joins (~lortabac@2a01:e0a:541:b8f0:c062:9ce0:f472:fe68)
07:28:39 chele joins (~chele@user/chele)
07:34:59 × erisco quits (~erisco@d24-57-249-233.home.cgocable.net) (Quit: ZNC 1.8.2+cygwin2 - https://znc.in)
07:35:47 erisco joins (~erisco@d24-57-249-233.home.cgocable.net)
07:36:06 × eggplantade quits (~Eggplanta@108-201-191-115.lightspeed.sntcca.sbcglobal.net) (Remote host closed the connection)
07:38:30 jgeerds joins (~jgeerds@d53604b0.access.ecotel.net)
07:41:18 raym joins (~raym@user/raym)
07:45:21 christiansen joins (~christian@83-95-137-75-dynamic.dk.customer.tdc.net)
07:48:47 machinedgod joins (~machinedg@24.105.81.50)
07:53:47 zer0bitz joins (~zer0bitz@2001:2003:f444:8f00:64b4:113a:8a62:5026)
08:05:32 kuribas joins (~user@ip-188-118-57-242.reverse.destiny.be)
08:06:04 × kuribas quits (~user@ip-188-118-57-242.reverse.destiny.be) (Remote host closed the connection)
08:06:59 × raym quits (~raym@user/raym) (Quit: kernel update, rebooting...)
08:08:53 × shriekingnoise quits (~shrieking@201.231.16.156) (Quit: Quit)
08:09:40 kuribas joins (~user@ip-188-118-57-242.reverse.destiny.be)
08:10:15 raym joins (~raym@user/raym)
08:18:04 bahamas joins (~lucian@86.120.77.115)
08:18:26 odnes joins (~odnes@5-203-241-182.pat.nym.cosmote.net)
08:20:13 merijn joins (~merijn@86-86-29-250.fixed.kpn.net)
08:25:29 × simeon quits (~pi@dslb-088-076-113-044.088.076.pools.vodafone-ip.de) (Quit: leaving)
08:27:10 × tromp quits (~textual@dhcp-077-249-230-040.chello.nl) (Quit: My iMac has gone to sleep. ZZZzzz…)
08:30:01 ccntrq joins (~Thunderbi@2a01:c22:8970:3800:9a3a:7b10:8d3e:d898)
08:36:34 × azimut quits (~azimut@gateway/tor-sasl/azimut) (Ping timeout: 240 seconds)
08:36:43 eggplantade joins (~Eggplanta@108-201-191-115.lightspeed.sntcca.sbcglobal.net)
08:38:56 xaotuk joins (~sasha@net137-32-245-109.mbb.telenor.rs)
08:39:46 × jinsun__ quits (~jinsun@user/jinsun) ()
08:40:07 jinsun joins (~jinsun@user/jinsun)
08:41:14 × eggplantade quits (~Eggplanta@108-201-191-115.lightspeed.sntcca.sbcglobal.net) (Ping timeout: 252 seconds)
08:44:10 × xaotuk quits (~sasha@net137-32-245-109.mbb.telenor.rs) (Ping timeout: 240 seconds)
08:44:29 ccntrq1 joins (~Thunderbi@2a01:c22:888f:db00:4a4f:13b8:3156:bbbf)
08:44:51 Kaiepi joins (~Kaiepi@156.34.47.253)
08:45:56 × ccntrq quits (~Thunderbi@2a01:c22:8970:3800:9a3a:7b10:8d3e:d898) (Ping timeout: 248 seconds)
08:47:39 ccntrq joins (~Thunderbi@2a01:c22:90ad:600:956d:b88c:2ed8:a6d7)
08:47:50 × king_gs quits (~Thunderbi@2806:103e:29:da71:ba86:4e28:3521:b634) (Ping timeout: 260 seconds)
08:48:57 × ccntrq1 quits (~Thunderbi@2a01:c22:888f:db00:4a4f:13b8:3156:bbbf) (Ping timeout: 248 seconds)
08:50:44 × yauhsien quits (~yauhsien@61-231-24-3.dynamic-ip.hinet.net) (Remote host closed the connection)
08:53:00 <kuribas> Are higher kinded records the solution to the problem with records that clojurists complain about?
08:53:30 <kuribas> For example: partial fields, I just use (MyRecord Maybe).
08:54:15 <kuribas> You can also easily put business logic data in the record, then extract it later (for example configuration file parsing).
08:55:25 <jackdk> They help a lot
08:56:16 <kuribas> They also give a nice mix of type safety and flexibility.
08:56:23 yauhsien joins (~yauhsien@61-231-24-3.dynamic-ip.hinet.net)
08:56:33 xaotuk joins (~sasha@net137-32-245-109.mbb.telenor.rs)
08:58:31 <lortabac> higher-order kinds are great, but unfortunately a little clumsy to work with
08:58:50 <lortabac> we need a language with better support for this kind of programming
09:01:02 × yauhsien quits (~yauhsien@61-231-24-3.dynamic-ip.hinet.net) (Ping timeout: 252 seconds)
09:01:42 <kuribas> lortabac: idris?
09:02:06 × notzmv quits (~zmv@user/notzmv) (Ping timeout: 252 seconds)
09:02:37 <lortabac> I don't know, I'm not familiar enough with Idris
09:02:52 <bahamas> kuribas: purescript has a better record story as well
09:03:31 <kuribas> yeah, but they aren't higher kinded, right?
09:03:43 × odnes quits (~odnes@5-203-241-182.pat.nym.cosmote.net) (Ping timeout: 246 seconds)
09:05:04 <kuribas> I like to think of the type of field as the "specification", and the type function as the "specialisation".
09:05:29 <kuribas> The field doesn't even need to have kind "Type", it can be any kind.
09:06:19 <kuribas> for example a DataKind.
09:07:32 <bahamas> kuribas: does higher kinded mean that the type constructor can take a variable?
09:07:53 <kuribas> bahamas: it means the type constructor takes type function.
09:07:57 × bliminse quits (~bliminse@host86-164-128-238.range86-164.btcentralplus.com) (Quit: leaving)
09:08:13 <bahamas> kuribas: maybe this answers your question https://github.com/purescript/documentation/blob/master/language/Differences-from-Haskell.md
09:08:24 <kuribas> MyRecord f = MyRecord {foo :: f Int, bar :: f String}
09:08:39 <bahamas> aha, I see
09:08:55 <bahamas> I guess f has kind `Type -> Type`, right?
09:09:06 <kuribas> the kind of MyRecord is (Type -> Type) -> Type
09:09:44 <kuribas> yes
09:09:46 pretty_dumm_guy joins (trottel@gateway/vpn/protonvpn/prettydummguy/x-88029655)
09:11:03 <kuribas> but you can do "data FieldInfo = Field1 | Field2" data MyRecord f = MyRecord {foo :: f 'Field1, bar :: f 'Field2}
09:11:28 <kuribas> then MyRecord :: ('FieldInfo -> Type) -> Type
09:11:57 <bahamas> btw, I want to write some Haskell articles and I want to use more meaningful examples, ideally from real code. is "base" a good way to look for these examples? if not, any other library?
09:12:16 odnes joins (~odnes@5-203-241-182.pat.nym.cosmote.net)
09:12:31 <kuribas> bahamas: who is the audience?
09:13:17 <kuribas> for non functional programmers, you could show ADT give much less ceremony than OO.
09:13:28 <kuribas> How easy it is to define sum types.
09:13:42 <bahamas> kuribas: yeah, programmers who want to learn Haskell
09:14:34 <bahamas> kuribas: I'm looking for examples that show (for example), how to define a function with pattern matching, or with guards. or one where you use `let ... in ...` for the body
09:15:01 <bahamas> or where you use ` ... where ...`, etc. so the fundamental things. at least for starters
09:15:01 <kuribas> "where" is more common than let.
09:15:31 <kuribas> "where" is for things which are scoped over all clauses, "let" is for local thing.
09:15:52 <bahamas> kuribas: may be, but since `let ... in ...` is used as well, I want to cover it as well
09:16:13 <bahamas> it may also be a question of habit, but sometimes I tended to use `let ... in ...`
09:16:39 <bahamas> I think the difference is that with `let ... in ...` you want to show to the reader the implementation first
09:16:48 <kuribas> When both work I use "where", otherwise "let".
09:17:10 <bahamas> with `... where ...`, you want to show you got to the result. if they care about the implementation, they scroll down
09:17:39 <kuribas> I'd say "where" is more idiomatic.
09:17:41 <merijn> It's easy: If you're not forced to use let, use where
09:17:43 <merijn> If you'
09:17:56 <merijn> If you're forced to use let, well, then you got no choice :p
09:19:49 Guest3749 joins (~Guest37@86.121.90.182)
09:19:58 <kuribas> "let" is more lispy.
09:19:59 × Guest3749 quits (~Guest37@86.121.90.182) (Client Quit)
09:20:39 <kuribas> I think top-down is more the haskell way. You start with some code, write holes where you don't know the implementation.
09:20:49 <kuribas> Gradually fill in the holes.
09:22:12 <bahamas> so, can you think of any modules on hackage that have more simple examples of Haskell constructs? if not, I'll have to go digging myself
09:23:23 king_gs joins (~Thunderbi@187.201.105.54)
09:25:42 <kuribas> bahamas: something I always miss in other languages is pattern matching.
09:26:09 <kuribas> You can also show type directed programming, where the compiler helps you fill in holes.
09:27:27 tromp joins (~textual@dhcp-077-249-230-040.chello.nl)
09:28:50 × werneta quits (~werneta@70-142-214-115.lightspeed.irvnca.sbcglobal.net) (Ping timeout: 240 seconds)
09:32:46 <kuribas> So types are not just constraining you, but also guiding the process.
09:32:47 tomsmeding likes to use 'let' for smaller definitions _because_ it's more clearly scoped
09:33:41 yauhsien joins (~yauhsien@61-231-24-3.dynamic-ip.hinet.net)
09:33:55 <tomsmeding> local functions go in 'where', though
09:34:12 <tomsmeding> (but subjective)
09:34:49 <merijn> tomsmeding: Just nest your where's for smaller scoping
09:37:07 × CiaoSen quits (~Jura@p200300c95732ec002a3a4dfffe84dbd5.dip0.t-ipconnect.de) (Ping timeout: 240 seconds)
09:37:56 bliminse joins (~bliminse@host86-164-128-238.range86-164.btcentralplus.com)
09:38:16 <maerwald[m]> For some reason, 90% of my use of `let` is in do-notation
09:38:28 <maerwald[m]> I find it a bit messy to let..in in function bodies
09:38:59 × xaotuk quits (~sasha@net137-32-245-109.mbb.telenor.rs) (Ping timeout: 256 seconds)
09:41:07 gurkenglas joins (~gurkengla@dslb-084-057-085-111.084.057.pools.vodafone-ip.de)
09:43:56 Benzi-Junior joins (~BenziJuni@88-149-64-179.du.xdsl.is)
09:45:26 <bahamas> maerwald[m]: messy in what way?
09:45:42 <maerwald[m]> bahamas: in a subjective way
09:46:00 ccntrq1 joins (~Thunderbi@2a01:c22:91a3:f800:f60a:3bdc:73fc:bc3c)
09:46:17 <kuribas> tomsmeding: I put them often in let in do.
09:46:35 <kuribas> when they depend on a result of an IO action.
09:46:47 × troydm quits (~troydm@host-176-37-124-197.b025.la.net.ua) (Quit: What is Hope? That all of your wishes and all of your dreams come true? To turn back time because things were not supposed to happen like that (C) Rau Le Creuset)
09:46:53 <maerwald[m]> flying let's
09:46:58 × arjun quits (~arjun@user/arjun) (Quit: Leaving)
09:47:05 × ccntrq quits (~Thunderbi@2a01:c22:90ad:600:956d:b88c:2ed8:a6d7) (Ping timeout: 248 seconds)
09:47:05 ccntrq1 is now known as ccntrq
09:48:37 × christiansen quits (~christian@83-95-137-75-dynamic.dk.customer.tdc.net) (Ping timeout: 256 seconds)
09:52:01 × bahamas quits (~lucian@86.120.77.115) (Ping timeout: 246 seconds)
09:56:47 × econo quits (uid147250@user/econo) (Quit: Connection closed for inactivity)
09:58:52 × Feuermagier quits (~Feuermagi@user/feuermagier) (Remote host closed the connection)
09:59:17 christiansen joins (~christian@83-95-137-75-dynamic.dk.customer.tdc.net)
10:01:24 × mikoto-chan quits (~mikoto-ch@84.199.144.234) (Ping timeout: 240 seconds)
10:02:13 × king_gs quits (~Thunderbi@187.201.105.54) (Read error: Connection reset by peer)
10:05:43 king_gs joins (~Thunderbi@187.201.105.54)
10:06:10 × yauhsien quits (~yauhsien@61-231-24-3.dynamic-ip.hinet.net) (Remote host closed the connection)
10:07:36 mikoto-chan joins (~mikoto-ch@213.177.151.239)
10:12:50 × mikoto-chan quits (~mikoto-ch@213.177.151.239) (Ping timeout: 240 seconds)
10:14:17 yauhsien joins (~yauhsien@61-231-24-3.dynamic-ip.hinet.net)
10:16:13 ccntrq1 joins (~Thunderbi@dynamic-077-010-049-099.77.10.pool.telefonica.de)
10:16:36 × ccntrq quits (~Thunderbi@2a01:c22:91a3:f800:f60a:3bdc:73fc:bc3c) (Ping timeout: 240 seconds)
10:16:37 ccntrq1 is now known as ccntrq
10:19:20 akegalj joins (~akegalj@141-136-146-186.dsl.iskon.hr)
10:19:48 ccntrq1 joins (~Thunderbi@dynamic-077-003-219-000.77.3.pool.telefonica.de)
10:20:43 × ccntrq quits (~Thunderbi@dynamic-077-010-049-099.77.10.pool.telefonica.de) (Ping timeout: 246 seconds)
10:20:43 ccntrq1 is now known as ccntrq
10:25:08 king_gs1 joins (~Thunderbi@2806:103e:29:da71:ba86:4e28:3521:b634)
10:25:08 × king_gs quits (~Thunderbi@187.201.105.54) (Read error: Connection reset by peer)
10:25:09 king_gs1 is now known as king_gs
10:25:13 mikoto-chan joins (~mikoto-ch@213.177.151.239)
10:29:02 × xff0x quits (~xff0x@125x102x200x106.ap125.ftth.ucom.ne.jp) (Ping timeout: 252 seconds)
10:33:47 <Taneb> Is there any library that lets me generate a Haskell data-type from an SQL file describing a table? I'm aware that there's several that do the other way around
10:35:57 × coot quits (~coot@213.134.190.95) (Quit: coot)
10:36:54 coot joins (~coot@213.134.190.95)
10:38:39 eggplantade joins (~Eggplanta@108-201-191-115.lightspeed.sntcca.sbcglobal.net)
10:40:02 × merijn quits (~merijn@86-86-29-250.fixed.kpn.net) (Ping timeout: 252 seconds)
10:43:23 × eggplantade quits (~Eggplanta@108-201-191-115.lightspeed.sntcca.sbcglobal.net) (Ping timeout: 260 seconds)
10:43:49 × ccntrq quits (~Thunderbi@dynamic-077-003-219-000.77.3.pool.telefonica.de) (Ping timeout: 246 seconds)
10:43:54 ccntrq1 joins (~Thunderbi@dynamic-077-008-064-188.77.8.pool.telefonica.de)
10:44:35 xaotuk joins (~sasha@net137-32-245-109.mbb.telenor.rs)
10:45:48 × akegalj quits (~akegalj@141-136-146-186.dsl.iskon.hr) (Ping timeout: 240 seconds)
10:46:12 ccntrq1 is now known as ccntrq
10:48:28 CiaoSen joins (~Jura@p200300c95732ec002a3a4dfffe84dbd5.dip0.t-ipconnect.de)
10:51:46 Lord_of_Life_ joins (~Lord@user/lord-of-life/x-2819915)
10:52:41 × Lord_of_Life quits (~Lord@user/lord-of-life/x-2819915) (Ping timeout: 252 seconds)
10:54:28 Lord_of_Life_ is now known as Lord_of_Life
10:54:34 <tomsmeding> kuribas: same
10:57:35 <dragestil> what library would be suitable to use for downloading thousands of text files (for parsing)?
10:59:38 <dragestil> for example what does cabal use to download packages?
11:00:25 <dragestil> just use System.Process with wget?
11:00:36 <dminuoso> No, thats not the best thing to do.
11:00:53 <maerwald[m]> dragestil: yes
11:00:54 <dminuoso> I think cabal-install uses the HTTP package
11:01:01 <maerwald[m]> No it doesn't
11:01:06 <dminuoso> Ah, it really does use wget?
11:01:20 <maerwald[m]> curl, it falls back to wget
11:01:23 mmhat joins (~mmh@2001:4090:a243:802a:ee08:6bff:fe09:5315)
11:01:34 <maerwald[m]> That is the most portable strategy
11:02:05 <dragestil> portable as in curl / wget is widely available?
11:03:26 <tdammers> Yes. It also has the advantage that you can benefit from security patches to those external tools without having to ship a new version of your own code.
11:03:27 <maerwald[m]> Yes and it deals better with esoteric proxy configuration
11:04:13 <dragestil> ok. strangely i can't find invocation of curl in the Cabal codebase obtained from `cabal unpack Cabal`
11:05:12 <maerwald[m]> It is not trivial to achieve the same level of portability across configurations, even with http-client-openssl
11:05:27 <maerwald[m]> dragestil: check cabal-install
11:05:47 <dragestil> maerwald[m]: ok, i thought cabal-install was just a wrapper
11:05:57 <maerwald[m]> If portability is not a concern, I'd probably use http-client-openssl
11:06:25 <maerwald[m]> Because error handling is easier/more idiomatic
11:06:46 merijn joins (~merijn@86-86-29-250.fixed.kpn.net)
11:07:22 <dragestil> I find it odd that there don't seem to be widely used libraries for fetching from ftp
11:08:35 × mjacob quits (~mjacob@adrastea.uberspace.de) (Read error: Connection reset by peer)
11:09:36 × yauhsien quits (~yauhsien@61-231-24-3.dynamic-ip.hinet.net) (Remote host closed the connection)
11:09:44 <maerwald[m]> Maybe because ftp is a mess and S3 object storage is more widespread these days
11:10:57 <dragestil> maybe.
11:11:22 <dragestil> has anyone tried the newly released hls yet? I wonder whether the performance gain is signficant
11:12:21 yauhsien joins (~yauhsien@61-231-24-3.dynamic-ip.hinet.net)
11:12:39 <dragestil> currently i can only run hls on a server because my laptop cannot handle it
11:13:04 notzmv joins (~zmv@user/notzmv)
11:14:10 ubert1 joins (~Thunderbi@p200300ecdf158806117918b760ecf219.dip0.t-ipconnect.de)
11:14:31 mjacob joins (~mjacob@adrastea.uberspace.de)
11:14:40 <dragestil> hls is the only language server that brings my laptop to its knees though
11:15:02 <Bulby[m]> haha it does use a lot of memory
11:15:21 xff0x joins (~xff0x@b133147.ppp.asahi-net.or.jp)
11:16:23 <dragestil> yeah. i wrote some elisp code to use hiedb for goto definition / find references, but .hie files have limitations e.g. does not support template haskell
11:16:44 <Bulby[m]> yeah 🙁
11:17:04 × yauhsien quits (~yauhsien@61-231-24-3.dynamic-ip.hinet.net) (Ping timeout: 246 seconds)
11:19:48 raehik joins (~raehik@cpc95906-rdng25-2-0-cust156.15-3.cable.virginm.net)
11:22:07 mattil joins (~mattil@helsinki.portalify.com)
11:25:33 frost joins (~frost@user/frost)
11:25:46 yauhsien joins (~yauhsien@61-231-24-3.dynamic-ip.hinet.net)
11:28:31 <dragestil> maerwald[m]: you were right about the wget / curl in cabal-install code. the reason i thought there's nothing in cabal-install is because I can't find its code in hackage
11:29:26 <dragestil> *browse its code on hackage
11:32:47 × cfricke quits (~cfricke@user/cfricke) (Quit: WeeChat 3.5)
11:39:59 mc47 joins (~mc47@xmonad/TheMC47)
11:40:17 <maerwald> dragestil: https://hackage.haskell.org/package/cabal-install
11:41:35 <dragestil> maerwald: right, but it's empty there - you don't get a tree of modules to browse
11:41:48 <maerwald> yeah, they're not exposed, so `cabal unpack cabal-install`
11:42:17 ztefan joins (~stefan@78.31.98.27)
11:43:34 <ztefan> hi there! I'm trying to build xmond in slackware from slackbuild. I satisfied the dependencies but have strange trouble with linker as I think. Any ideas? http://termbin.com/m2rxy
11:43:38 <ztefan> xmonad*
11:44:47 × king_gs quits (~Thunderbi@2806:103e:29:da71:ba86:4e28:3521:b634) (Remote host closed the connection)
11:46:06 king_gs joins (~Thunderbi@187.201.105.54)
11:50:15 ccntrq1 joins (~Thunderbi@2a01:c22:8dca:f800:d8ef:2fca:d893:8682)
11:53:28 <geekosaur> that's not the linker, it's the compiler. usually means the package in question (mtl) was built with the wrong version of ghc
11:53:39 × ccntrq quits (~Thunderbi@dynamic-077-008-064-188.77.8.pool.telefonica.de) (Ping timeout: 276 seconds)
11:53:39 ccntrq1 is now known as ccntrq
11:53:40 <maerwald> ztefan: what is your cabal version
11:56:31 × dschrempf quits (~dominik@070-207.dynamic.dsl.fonira.net) (Quit: WeeChat 3.5)
11:57:20 <ztefan> maerwald, i don't even have one. As I see, slackbuild script for xmonad doesn't use it, it builds with runghc.
11:57:48 <ztefan> https://slackbuilds.org/slackbuilds/15.0/desktop/xmonad/xmonad.SlackBuild
12:00:10 <ztefan> geekosaur, i compiled all packages with the same ghc
12:00:47 <maerwald> looks like badly packaged stuff to me then
12:00:54 <geekosaur> same
12:03:54 <ztefan> you mean mtl or xmonad badly packaged?
12:04:18 <ztefan> recompiled mtl,it compiles successfully. Reinstalled. Problem still persists
12:04:34 <ztefan> Will try to compile xmonad manually with no slackbuild
12:05:47 × jgeerds quits (~jgeerds@d53604b0.access.ecotel.net) (Ping timeout: 240 seconds)
12:10:00 dvdrw joins (~dvdrw@user/dvdrw)
12:10:03 × tromp quits (~textual@dhcp-077-249-230-040.chello.nl) (Quit: My iMac has gone to sleep. ZZZzzz…)
12:11:21 × coot quits (~coot@213.134.190.95) (Quit: coot)
12:13:13 × xaotuk quits (~sasha@net137-32-245-109.mbb.telenor.rs) (Ping timeout: 260 seconds)
12:14:15 × bitdex quits (~bitdex@gateway/tor-sasl/bitdex) (Quit: = "")
12:16:47 × dvdrw quits (~dvdrw@user/dvdrw) (Quit: leaving)
12:20:48 × king_gs quits (~Thunderbi@187.201.105.54) (Quit: king_gs)
12:22:28 <geekosaur> this is a problem with mtl. any chance you have another copy of mtl somewhere that might be interfering?
12:22:32 jmcarthur joins (~jmcarthur@c-73-29-224-10.hsd1.nj.comcast.net)
12:22:35 <geekosaur> try "ghc-pkg list"
12:22:56 × jmcarthur quits (~jmcarthur@c-73-29-224-10.hsd1.nj.comcast.net) (Client Quit)
12:23:24 × yauhsien quits (~yauhsien@61-231-24-3.dynamic-ip.hinet.net) (Remote host closed the connection)
12:24:08 yauhsien joins (~yauhsien@61-231-24-3.dynamic-ip.hinet.net)
12:28:04 tromp joins (~textual@dhcp-077-249-230-040.chello.nl)
12:28:26 × LambdaDuck quits (~anka@ksit.fixme.fi) (Ping timeout: 250 seconds)
12:28:49 × yauhsien quits (~yauhsien@61-231-24-3.dynamic-ip.hinet.net) (Ping timeout: 246 seconds)
12:29:07 LambdaDuck joins (~anka@ksit.fixme.fi)
12:30:11 yauhsien joins (~yauhsien@61-231-24-3.dynamic-ip.hinet.net)
12:31:27 × ccntrq quits (~Thunderbi@2a01:c22:8dca:f800:d8ef:2fca:d893:8682) (Ping timeout: 240 seconds)
12:32:15 ccntrq joins (~Thunderbi@2a01:c23:9536:3e00:d1bd:2381:12ec:51b0)
12:37:51 × pretty_dumm_guy quits (trottel@gateway/vpn/protonvpn/prettydummguy/x-88029655) (Quit: WeeChat 3.5)
12:38:50 × merijn quits (~merijn@86-86-29-250.fixed.kpn.net) (Ping timeout: 252 seconds)
12:40:14 coot joins (~coot@213.134.190.95)
12:40:15 eggplantade joins (~Eggplanta@108-201-191-115.lightspeed.sntcca.sbcglobal.net)
12:40:51 × kaph quits (~kaph@net-2-42-128-205.cust.vodafonedsl.it) (Read error: Connection reset by peer)
12:43:51 × yauhsien quits (~yauhsien@61-231-24-3.dynamic-ip.hinet.net) (Remote host closed the connection)
12:44:19 × eggplantade quits (~Eggplanta@108-201-191-115.lightspeed.sntcca.sbcglobal.net) (Ping timeout: 240 seconds)
12:45:01 yauhsien joins (~yauhsien@61-231-24-3.dynamic-ip.hinet.net)
12:49:57 × yauhsien quits (~yauhsien@61-231-24-3.dynamic-ip.hinet.net) (Ping timeout: 256 seconds)
12:50:47 ccntrq1 joins (~Thunderbi@2a01:c22:9116:5d00:6813:9828:c0a3:c1d7)
12:50:56 × ccntrq quits (~Thunderbi@2a01:c23:9536:3e00:d1bd:2381:12ec:51b0) (Ping timeout: 252 seconds)
12:50:56 ccntrq1 is now known as ccntrq
12:52:20 × acidjnk_new quits (~acidjnk@p200300d0c7068b59fd670879892edcc4.dip0.t-ipconnect.de) (Ping timeout: 248 seconds)
12:57:16 xaotuk joins (~sasha@net137-32-245-109.mbb.telenor.rs)
12:57:34 kaskal is now known as lala
12:57:48 lala is now known as kaskal
13:00:06 × mattil quits (~mattil@helsinki.portalify.com) (Remote host closed the connection)
13:05:01 AlexNoo_ is now known as AlexNoo
13:05:06 merijn joins (~merijn@86-86-29-250.fixed.kpn.net)
13:09:45 × xaotuk quits (~sasha@net137-32-245-109.mbb.telenor.rs) (Ping timeout: 248 seconds)
13:21:25 moonsheep joins (~user@user/moonsheep)
13:21:47 ccntrq1 joins (~Thunderbi@2a01:c22:90f8:c200:9460:c46d:b547:8490)
13:23:05 × ccntrq quits (~Thunderbi@2a01:c22:9116:5d00:6813:9828:c0a3:c1d7) (Ping timeout: 248 seconds)
13:23:05 ccntrq1 is now known as ccntrq
13:28:04 × jpds quits (~jpds@gateway/tor-sasl/jpds) (Ping timeout: 240 seconds)
13:28:33 × pavonia quits (~user@user/siracusa) (Quit: Bye!)
13:29:42 × ztefan quits (~stefan@78.31.98.27) (Remote host closed the connection)
13:30:23 ztefan joins (~stefan@78.31.98.27)
13:31:57 jpds joins (~jpds@gateway/tor-sasl/jpds)
13:32:44 <k`> I'm getting conflicting typedefs of `Time` as `int64_t` in include/rts/Time.h and `unsigned long` in `X11/X.h`. I'm trying to use the CApiFFI. Where should I #undef the conflicting one?
13:33:59 <k`> Do I need to create a separate c header file for my project and do all of that there?
13:34:59 shriekingnoise joins (~shrieking@201.231.16.156)
13:35:23 yauhsien joins (~yauhsien@61-231-24-3.dynamic-ip.hinet.net)
13:35:26 <geekosaur> I would #undef just before #include-ing X11/X.h (or whichever header is pulling it in)
13:36:35 <int-e> it's a typedef
13:36:53 <int-e> so you're kind of screwed here
13:37:02 <geekosaur> oh, that won't work, yes
13:37:11 moonsheep parts (~user@user/moonsheep) (ERC (IRC client for Emacs 27.2))
13:37:17 <k`> Oh, right. FML.
13:37:57 <int-e> #pragma once means you can't even cheat by predefining the include guard... :-/
13:40:15 × yauhsien quits (~yauhsien@61-231-24-3.dynamic-ip.hinet.net) (Ping timeout: 276 seconds)
13:40:32 kaph joins (~kaph@net-2-42-128-205.cust.vodafonedsl.it)
13:44:03 dschrempf joins (~dominik@070-207.dynamic.dsl.fonira.net)
13:47:50 × odnes quits (~odnes@5-203-241-182.pat.nym.cosmote.net) (Ping timeout: 240 seconds)
13:48:07 × merijn quits (~merijn@86-86-29-250.fixed.kpn.net) (Ping timeout: 240 seconds)
13:48:49 cfricke joins (~cfricke@user/cfricke)
13:51:13 × ccntrq quits (~Thunderbi@2a01:c22:90f8:c200:9460:c46d:b547:8490) (Ping timeout: 260 seconds)
13:51:16 × ztefan quits (~stefan@78.31.98.27) (Read error: Connection reset by peer)
13:53:01 ccntrq joins (~Thunderbi@2a01:c22:84d6:b600:8aaa:9616:4aea:d318)
13:53:46 xaotuk joins (~sasha@net137-32-245-109.mbb.telenor.rs)
13:57:48 × xaotuk quits (~sasha@net137-32-245-109.mbb.telenor.rs) (Ping timeout: 240 seconds)
13:59:05 <int-e> k`: Oh there's this terrible idea: #define Time XTime #include <X11/X.h> #undef Time
14:00:17 <int-e> (Hacking the X11 include because I expect that you can't intercept the Rts include because that'll be in generated code)
14:00:24 × christiansen quits (~christian@83-95-137-75-dynamic.dk.customer.tdc.net) (Ping timeout: 276 seconds)
14:00:37 × CiaoSen quits (~Jura@p200300c95732ec002a3a4dfffe84dbd5.dip0.t-ipconnect.de) (Quit: CiaoSen)
14:03:36 × raym quits (~raym@user/raym) (Quit: leaving)
14:06:20 Sgeo joins (~Sgeo@user/sgeo)
14:08:49 bahamas joins (~lucian@86.120.77.115)
14:09:40 Pickchea joins (~private@user/pickchea)
14:11:22 × xff0x quits (~xff0x@b133147.ppp.asahi-net.or.jp) (Ping timeout: 246 seconds)
14:14:33 thyriaen joins (~thyriaen@46.183.103.17)
14:14:34 merijn joins (~merijn@86-86-29-250.fixed.kpn.net)
14:17:21 × dsrt^ quits (~dsrt@50-73-82-13-static.hfc.comcastbusiness.net) (Remote host closed the connection)
14:18:46 raym joins (~raym@user/raym)
14:20:02 × thyriaen quits (~thyriaen@46.183.103.17) (Quit: Leaving)
14:22:41 ph88 joins (~ph88@ip5f5af71f.dynamic.kabel-deutschland.de)
14:24:15 waleee joins (~waleee@2001:9b0:213:7200:cc36:a556:b1e8:b340)
14:26:22 × frost quits (~frost@user/frost) (Ping timeout: 252 seconds)
14:26:37 × dextaa49 quits (~dextaa@user/dextaa) (Remote host closed the connection)
14:29:27 xaotuk joins (~sasha@net137-32-245-109.mbb.telenor.rs)
14:31:01 <ManofLetters[m]> How to make GHC deduce `Enum (Foo b)`, where `b :: Bool`, from instances for both `True` and `False` provided by the programmer? Or could I define the instance manually by somehow dispatching on `True` vs `False` (but not separately in each method of the class)? An example that GHC does not automatically do this: https://paste.tomsmeding.com/XijZr37z
14:31:48 × ccntrq quits (~Thunderbi@2a01:c22:84d6:b600:8aaa:9616:4aea:d318) (Ping timeout: 240 seconds)
14:32:02 ccntrq joins (~Thunderbi@2a01:c22:85fa:dd00:7faa:4d3f:b0f9:da3)
14:32:05 × vicfred quits (~vicfred@user/vicfred) (Quit: Leaving)
14:33:01 × dschrempf quits (~dominik@070-207.dynamic.dsl.fonira.net) (Quit: WeeChat 3.5)
14:34:04 xff0x joins (~xff0x@b133147.ppp.asahi-net.or.jp)
14:34:31 <k`> Are you saying that you want `Foo` to only be `Enum` when it's applied to `Bool`?
14:35:16 <k`> Oh, Bool kind.
14:35:30 <ManofLetters[m]> right
14:36:38 <ManofLetters[m]> silly computer should know that `Enum (Foo b)` holds when both `Enum (Foo True)` and `Enum (Foo False)` holds
14:38:01 <int-e> ManofLetters[m]: Types are erased though... you need something (like a class constraint on b) that remains that allows the code (at runtime) to know which of the two instances it should be using.
14:38:25 <k`> That's obnoxious.
14:39:29 <int-e> I find it easier to digest than explanations that the type system's current rules can't do that... it's hard to make those arguments exhaustive (but easy to make the exhausting :P)
14:40:26 <int-e> the exhausting -> them exhausting
14:41:51 <ManofLetters[m]> oh, I see; when I add `Enum (Foo b)` constraint to the signature of the function it works fine (the constraint probably is the slot that carries the chosen dictionary to be applied), but the problem is, in the real code, I can't add such a constraint (I'd need an extra variable for that that'd pollute the outer type and `forall` can't be used either)
14:43:09 × Vajb quits (~Vajb@2001:999:400:9bc1:d5dd:7e53:33b:56) (Read error: Connection reset by peer)
14:44:18 Vajb joins (~Vajb@hag-jnsbng11-58c3a8-176.dhcp.inet.fi)
14:45:08 <ManofLetters[m]> (and then I need to call the function with `f (T 1 :: T True)` so that it's know which dictionary is chosen)
14:52:50 ec joins (~ec@gateway/tor-sasl/ec)
14:54:19 × waleee quits (~waleee@2001:9b0:213:7200:cc36:a556:b1e8:b340) (Ping timeout: 240 seconds)
14:57:47 akegalj joins (~akegalj@141-136-146-186.dsl.iskon.hr)
14:57:50 × bahamas quits (~lucian@86.120.77.115) (Ping timeout: 240 seconds)
15:00:17 alx741 joins (~alx741@host-181-198-243-150.netlife.ec)
15:00:19 × alp_ quits (~alp@user/alp) (Ping timeout: 240 seconds)
15:01:42 × alx741 quits (~alx741@host-181-198-243-150.netlife.ec) (Client Quit)
15:01:43 × lortabac quits (~lortabac@2a01:e0a:541:b8f0:c062:9ce0:f472:fe68) (Quit: WeeChat 2.8)
15:04:14 pretty_dumm_guy joins (trottel@gateway/vpn/protonvpn/prettydummguy/x-88029655)
15:06:06 eggplantade joins (~Eggplanta@108-201-191-115.lightspeed.sntcca.sbcglobal.net)
15:18:35 × jinsun quits (~jinsun@user/jinsun) (Read error: Connection reset by peer)
15:19:26 × Kaiepi quits (~Kaiepi@156.34.47.253) (Remote host closed the connection)
15:20:07 Kaiepi joins (~Kaiepi@156.34.47.253)
15:21:30 [itchyjunk] joins (~itchyjunk@user/itchyjunk/x-7353470)
15:24:09 jinsun joins (~jinsun@user/jinsun)
15:27:40 [_] joins (~itchyjunk@user/itchyjunk/x-7353470)
15:28:00 × [itchyjunk] quits (~itchyjunk@user/itchyjunk/x-7353470) (Ping timeout: 260 seconds)
15:30:25 × tromp quits (~textual@dhcp-077-249-230-040.chello.nl) (Quit: My iMac has gone to sleep. ZZZzzz…)
15:32:15 tromp joins (~textual@dhcp-077-249-230-040.chello.nl)
15:32:28 jinsun__ joins (~jinsun@user/jinsun)
15:34:36 × jinsun quits (~jinsun@user/jinsun) (Ping timeout: 240 seconds)
15:35:36 × cfricke quits (~cfricke@user/cfricke) (Quit: WeeChat 3.5)
15:37:49 xkuru joins (~xkuru@user/xkuru)
15:42:08 califax joins (~califax@user/califx)
15:46:11 stackdroid18 joins (14094@user/stackdroid)
15:50:59 yauhsien joins (~yauhsien@61-231-24-3.dynamic-ip.hinet.net)
15:51:40 × jinsun__ quits (~jinsun@user/jinsun) ()
15:51:53 × xaotuk quits (~sasha@net137-32-245-109.mbb.telenor.rs) (Ping timeout: 252 seconds)
15:52:01 jinsun joins (~jinsun@user/jinsun)
15:56:38 Batzy joins (~quassel@user/batzy)
16:00:06 × euphrates[m] quits (~euphrates@2001:470:69fc:105::fbb5) (Quit: You have been kicked for being idle)
16:04:03 × coot quits (~coot@213.134.190.95) (Quit: coot)
16:04:43 × eggplantade quits (~Eggplanta@108-201-191-115.lightspeed.sntcca.sbcglobal.net) (Remote host closed the connection)
16:05:59 × ccntrq quits (~Thunderbi@2a01:c22:85fa:dd00:7faa:4d3f:b0f9:da3) (Ping timeout: 240 seconds)
16:10:44 × xff0x quits (~xff0x@b133147.ppp.asahi-net.or.jp) (Ping timeout: 248 seconds)
16:12:05 xff0x joins (~xff0x@b133147.ppp.asahi-net.or.jp)
16:12:56 × yauhsien quits (~yauhsien@61-231-24-3.dynamic-ip.hinet.net) (Remote host closed the connection)
16:13:46 yauhsien joins (~yauhsien@61-231-24-3.dynamic-ip.hinet.net)
16:15:13 ccntrq joins (~Thunderbi@2a01:c23:8934:3d00:3d25:a9ed:1d1b:3258)
16:15:24 coot joins (~coot@213.134.190.95)
16:18:25 × Pickchea quits (~private@user/pickchea) (Ping timeout: 246 seconds)
16:18:58 × kuribas quits (~user@ip-188-118-57-242.reverse.destiny.be) (Remote host closed the connection)
16:24:21 × zeenk quits (~zeenk@2a02:2f04:a004:9b00:1efc:c1cf:378d:8b3d) (Quit: Konversation terminated!)
16:24:42 × chele quits (~chele@user/chele) (Remote host closed the connection)
16:25:08 × yauhsien quits (~yauhsien@61-231-24-3.dynamic-ip.hinet.net) (Remote host closed the connection)
16:25:59 yauhsien joins (~yauhsien@61-231-24-3.dynamic-ip.hinet.net)
16:29:38 × akegalj quits (~akegalj@141-136-146-186.dsl.iskon.hr) (Quit: leaving)
16:30:17 × ccntrq quits (~Thunderbi@2a01:c23:8934:3d00:3d25:a9ed:1d1b:3258) (Ping timeout: 248 seconds)
16:30:29 ccntrq1 joins (~Thunderbi@2a01:c23:9007:9800:5031:ed4a:a927:7fd0)
16:32:02 econo joins (uid147250@user/econo)
16:33:35 ccntrq joins (~Thunderbi@2a02:3100:7105:7400:cfe4:96b:755:10bc)
16:34:39 × ccntrq1 quits (~Thunderbi@2a01:c23:9007:9800:5031:ed4a:a927:7fd0) (Ping timeout: 240 seconds)
16:38:42 eggplantade joins (~Eggplanta@108-201-191-115.lightspeed.sntcca.sbcglobal.net)
16:38:57 alp_ joins (~alp@user/alp)
16:39:33 × Vajb quits (~Vajb@hag-jnsbng11-58c3a8-176.dhcp.inet.fi) (Read error: Connection reset by peer)
16:39:44 Vajb joins (~Vajb@hag-jnsbng11-58c3a8-176.dhcp.inet.fi)
16:45:24 Unicorn_Princess joins (~Unicorn_P@93-103-228-248.dynamic.t-2.net)
16:49:12 kenran joins (~kenran@200116b82b7b15001c85fb2857230cf5.dip.versatel-1u1.de)
16:56:22 xaotuk joins (~sasha@2a06:5b00:15fe:9b00::2)
16:56:35 × ccntrq quits (~Thunderbi@2a02:3100:7105:7400:cfe4:96b:755:10bc) (Quit: ccntrq)
16:58:42 × tromp quits (~textual@dhcp-077-249-230-040.chello.nl) (Quit: My iMac has gone to sleep. ZZZzzz…)
16:59:40 acidjnk_new joins (~acidjnk@p200300d0c7068b598473bf92e3392dfc.dip0.t-ipconnect.de)
17:08:29 werneta joins (~werneta@70-142-214-115.lightspeed.irvnca.sbcglobal.net)
17:16:19 × alp_ quits (~alp@user/alp) (Ping timeout: 240 seconds)
17:31:49 × yauhsien quits (~yauhsien@61-231-24-3.dynamic-ip.hinet.net) (Remote host closed the connection)
17:32:24 yauhsien joins (~yauhsien@61-231-24-3.dynamic-ip.hinet.net)
17:33:45 dsrt^ joins (~dsrt@128-092-160-234.biz.spectrum.com)
17:35:25 Guest2 joins (~Guest2@cpc103424-donc13-2-0-cust953.17-1.cable.virginm.net)
17:36:42 × Guest2 quits (~Guest2@cpc103424-donc13-2-0-cust953.17-1.cable.virginm.net) (Client Quit)
17:37:15 × yauhsien quits (~yauhsien@61-231-24-3.dynamic-ip.hinet.net) (Ping timeout: 256 seconds)
17:37:56 × mbuf quits (~Shakthi@122.162.131.93) (Quit: Leaving)
17:41:54 jakalx parts (~jakalx@base.jakalx.net) ()
17:44:36 yauhsien joins (~yauhsien@61-231-24-3.dynamic-ip.hinet.net)
17:46:28 Feuermagier joins (~Feuermagi@user/feuermagier)
17:46:34 tromp joins (~textual@dhcp-077-249-230-040.chello.nl)
17:50:38 × geekosaur quits (~geekosaur@xmonad/geekosaur) (Quit: Leaving)
17:51:57 geekosaur joins (~geekosaur@xmonad/geekosaur)
17:53:04 × stiell_ quits (~stiell@gateway/tor-sasl/stiell) (Ping timeout: 240 seconds)
17:53:43 whatsupdoc joins (uid509081@id-509081.hampstead.irccloud.com)
17:54:41 × yauhsien quits (~yauhsien@61-231-24-3.dynamic-ip.hinet.net) (Remote host closed the connection)
17:57:13 × coot quits (~coot@213.134.190.95) (Ping timeout: 248 seconds)
17:57:33 tzh joins (~tzh@c-24-21-73-154.hsd1.or.comcast.net)
17:58:12 jakalx joins (~jakalx@base.jakalx.net)
17:58:37 × bliminse quits (~bliminse@host86-164-128-238.range86-164.btcentralplus.com) (Quit: leaving)
17:59:46 stiell_ joins (~stiell@gateway/tor-sasl/stiell)
18:00:53 × tromp quits (~textual@dhcp-077-249-230-040.chello.nl) (Quit: My iMac has gone to sleep. ZZZzzz…)
18:01:53 wootehfoot joins (~wootehfoo@user/wootehfoot)
18:03:04 bliminse joins (~bliminse@host86-164-128-238.range86-164.btcentralplus.com)
18:03:22 tromp joins (~textual@dhcp-077-249-230-040.chello.nl)
18:04:14 yauhsien joins (~yauhsien@61-231-24-3.dynamic-ip.hinet.net)
18:05:17 codaraxis joins (~codaraxis@user/codaraxis)
18:08:30 × yauhsien quits (~yauhsien@61-231-24-3.dynamic-ip.hinet.net) (Ping timeout: 240 seconds)
18:10:25 yauhsien joins (~yauhsien@61-231-24-3.dynamic-ip.hinet.net)
18:10:58 Tuplanolla joins (~Tuplanoll@91-159-68-39.elisa-laajakaista.fi)
18:13:14 pavonia joins (~user@user/siracusa)
18:13:55 × [_] quits (~itchyjunk@user/itchyjunk/x-7353470) (Remote host closed the connection)
18:15:40 MoC joins (~moc@user/moc)
18:18:36 × eggplantade quits (~Eggplanta@108-201-191-115.lightspeed.sntcca.sbcglobal.net) (Remote host closed the connection)
18:19:36 Pickchea joins (~private@user/pickchea)
18:23:18 azimut joins (~azimut@gateway/tor-sasl/azimut)
18:23:45 × yauhsien quits (~yauhsien@61-231-24-3.dynamic-ip.hinet.net) (Remote host closed the connection)
18:24:29 yauhsien joins (~yauhsien@61-231-24-3.dynamic-ip.hinet.net)
18:30:19 × Pickchea quits (~private@user/pickchea) (Quit: Leaving)
18:33:04 troydm joins (~troydm@host-176-37-124-197.b025.la.net.ua)
18:34:47 × FinnElija quits (~finn_elij@user/finn-elija/x-0085643) (Remote host closed the connection)
18:38:22 × yauhsien quits (~yauhsien@61-231-24-3.dynamic-ip.hinet.net) (Remote host closed the connection)
18:38:27 briandaed joins (~briandaed@109.95.142.93.r.toneticgroup.pl)
18:38:37 FinnElija joins (~finn_elij@user/finn-elija/x-0085643)
18:38:42 × machinedgod quits (~machinedg@24.105.81.50) (Remote host closed the connection)
18:39:10 yauhsien joins (~yauhsien@61-231-24-3.dynamic-ip.hinet.net)
18:39:35 eggplantade joins (~Eggplanta@108-201-191-115.lightspeed.sntcca.sbcglobal.net)
18:41:09 machinedgod joins (~machinedg@24.105.81.50)
18:44:27 × yauhsien quits (~yauhsien@61-231-24-3.dynamic-ip.hinet.net) (Ping timeout: 276 seconds)
18:44:35 christiansen joins (~christian@83-95-137-75-dynamic.dk.customer.tdc.net)
18:45:30 Hildegunst joins (~luc@80.248.12.109.rev.sfr.net)
18:55:50 × briandaed quits (~briandaed@109.95.142.93.r.toneticgroup.pl) (Remote host closed the connection)
19:00:23 bahamas joins (~lucian@84.232.141.55)
19:04:50 × eggplantade quits (~Eggplanta@108-201-191-115.lightspeed.sntcca.sbcglobal.net) (Remote host closed the connection)
19:09:04 × littlebobeep quits (~alMalsamo@gateway/tor-sasl/almalsamo) (Ping timeout: 240 seconds)
19:12:47 waleee joins (~waleee@2001:9b0:213:7200:cc36:a556:b1e8:b340)
19:15:05 yauhsien joins (~yauhsien@61-231-24-3.dynamic-ip.hinet.net)
19:22:15 dextaa49 joins (~dextaa@user/dextaa)
19:23:38 × bahamas quits (~lucian@84.232.141.55) (Ping timeout: 252 seconds)
19:24:06 × yauhsien quits (~yauhsien@61-231-24-3.dynamic-ip.hinet.net) (Remote host closed the connection)
19:24:25 littlebobeep joins (~alMalsamo@gateway/tor-sasl/almalsamo)
19:24:47 yauhsien joins (~yauhsien@61-231-24-3.dynamic-ip.hinet.net)
19:26:09 _ht joins (~quassel@231-169-21-31.ftth.glasoperator.nl)
19:27:03 × tromp quits (~textual@dhcp-077-249-230-040.chello.nl) (Quit: My iMac has gone to sleep. ZZZzzz…)
19:31:11 coot joins (~coot@213.134.190.95)
19:40:34 × yauhsien quits (~yauhsien@61-231-24-3.dynamic-ip.hinet.net) (Remote host closed the connection)
19:41:24 sleym joins (~sleym@user/sleym)
19:42:06 × Hildegunst quits (~luc@80.248.12.109.rev.sfr.net) (Quit: leaving)
19:43:34 yauhsien joins (~yauhsien@61-231-24-3.dynamic-ip.hinet.net)
19:49:20 tromp joins (~textual@dhcp-077-249-230-040.chello.nl)
19:53:36 × yauhsien quits (~yauhsien@61-231-24-3.dynamic-ip.hinet.net) (Remote host closed the connection)
19:55:07 yauhsien joins (~yauhsien@61-231-24-3.dynamic-ip.hinet.net)
19:55:07 alp_ joins (~alp@user/alp)
19:58:49 × pie_ quits (~pie_bnc@user/pie/x-2818909) ()
19:59:10 pie_ joins (~pie_bnc@user/pie/x-2818909)
19:59:48 × coot quits (~coot@213.134.190.95) (Quit: coot)
20:01:46 dhil joins (~dhil@cpc103052-sgyl39-2-0-cust260.18-2.cable.virginm.net)
20:02:00 × tromp quits (~textual@dhcp-077-249-230-040.chello.nl) (Quit: My iMac has gone to sleep. ZZZzzz…)
20:02:30 × christiansen quits (~christian@83-95-137-75-dynamic.dk.customer.tdc.net) (Ping timeout: 240 seconds)
20:04:04 × _ht quits (~quassel@231-169-21-31.ftth.glasoperator.nl) (Remote host closed the connection)
20:05:21 eggplantade joins (~Eggplanta@108-201-191-115.lightspeed.sntcca.sbcglobal.net)
20:05:27 jmdaemon joins (~jmdaemon@user/jmdaemon)
20:05:35 × yauhsien quits (~yauhsien@61-231-24-3.dynamic-ip.hinet.net) (Remote host closed the connection)
20:05:58 × machinedgod quits (~machinedg@24.105.81.50) (Quit: Lost terminal)
20:06:42 machinedgod joins (~machinedg@24.105.81.50)
20:09:30 × eggplantade quits (~Eggplanta@108-201-191-115.lightspeed.sntcca.sbcglobal.net) (Ping timeout: 240 seconds)
20:09:51 tromp joins (~textual@dhcp-077-249-230-040.chello.nl)
20:10:51 yauhsien joins (~yauhsien@61-231-24-3.dynamic-ip.hinet.net)
20:26:12 × dsrt^ quits (~dsrt@128-092-160-234.biz.spectrum.com) (Ping timeout: 240 seconds)
20:28:04 × littlebobeep quits (~alMalsamo@gateway/tor-sasl/almalsamo) (Ping timeout: 240 seconds)
20:32:55 bahamas joins (~lucian@84.232.141.55)
20:33:41 coot joins (~coot@213.134.190.95)
20:34:17 × takuan quits (~takuan@178-116-218-225.access.telenet.be) (Remote host closed the connection)
20:34:50 × yauhsien quits (~yauhsien@61-231-24-3.dynamic-ip.hinet.net) (Remote host closed the connection)
20:37:10 × bahamas quits (~lucian@84.232.141.55) (Ping timeout: 240 seconds)
20:41:27 dsrt^ joins (~dsrt@128-092-160-234.biz.spectrum.com)
20:42:14 yauhsien joins (~yauhsien@61-231-24-3.dynamic-ip.hinet.net)
20:43:21 littlebobeep joins (~alMalsamo@gateway/tor-sasl/almalsamo)
20:45:51 × ph88 quits (~ph88@ip5f5af71f.dynamic.kabel-deutschland.de) (Quit: Leaving)
20:46:03 × k` quits (~user@152.1.137.158) (Quit: EoD)
20:46:50 × yauhsien quits (~yauhsien@61-231-24-3.dynamic-ip.hinet.net) (Ping timeout: 240 seconds)
20:49:23 littlebo1eep joins (~alMalsamo@gateway/tor-sasl/almalsamo)
20:52:04 × littlebobeep quits (~alMalsamo@gateway/tor-sasl/almalsamo) (Ping timeout: 240 seconds)
20:54:34 × machinedgod quits (~machinedg@24.105.81.50) (Ping timeout: 246 seconds)
20:54:34 × mikoto-chan quits (~mikoto-ch@213.177.151.239) (Ping timeout: 246 seconds)
20:54:40 × acidjnk_new quits (~acidjnk@p200300d0c7068b598473bf92e3392dfc.dip0.t-ipconnect.de) (Ping timeout: 260 seconds)
20:59:36 <[exa]> Any hints on if there can be an instance of MonadUnliftIO for monads that carry stuff around, such as StateT x IO? I see there's one provided for ReaderT but that one is kinda easy
21:00:04 <[exa]> (that is, preferably without using IORef)
21:04:59 slack1256 joins (~slack1256@191.125.227.220)
21:08:00 × coot quits (~coot@213.134.190.95) (Quit: coot)
21:08:33 × MoC quits (~moc@user/moc) (Quit: Konversation terminated!)
21:12:57 × kadobanana quits (~mud@user/kadoban) (Read error: Connection reset by peer)
21:13:22 kadobanana joins (~mud@user/kadoban)
21:19:12 littlebobeep joins (~alMalsamo@gateway/tor-sasl/almalsamo)
21:20:14 <tomsmeding> [exa]: > Note that, in order to meet the laws given below, the intuition is that a monad must have no monadic state, but may have monadic context.
21:20:18 <tomsmeding> that doesn't sound hopeful
21:20:42 <geekosaur> doesn't state inply the ability to "teleport" that state around?
21:22:04 yauhsien joins (~yauhsien@61-231-24-3.dynamic-ip.hinet.net)
21:22:34 × littlebo1eep quits (~alMalsamo@gateway/tor-sasl/almalsamo) (Ping timeout: 240 seconds)
21:24:53 × WhateverRabbit quits (~rabbit@206.81.18.26) (Quit: WeeChat 2.8)
21:26:24 machinedgod joins (~machinedg@24.105.81.50)
21:29:34 <tomsmeding> [exa]: to make an implementation of MonadUnliftIO for 'StateT IO s', you eventually need to conjure a 'forall a. (s -> IO (a, s)) -> IO a' out of thin air
21:30:35 <tomsmeding> while you do have an initial state at that point, so you can apply the 's -> IO (a, s)' to a sensible state, but you cannot do anything with the resulting state -- and you need to give a resulting state back at the end of withRunInIO
21:31:02 <tomsmeding> which makes sense: to express State in IO, you need to store the state _somewhere_
21:31:08 <tomsmeding> so I guess IORef is the only option
21:34:20 × alp_ quits (~alp@user/alp) (Ping timeout: 260 seconds)
21:34:57 × kenran quits (~kenran@200116b82b7b15001c85fb2857230cf5.dip.versatel-1u1.de) (Quit: WeeChat info:version)
21:36:28 × yauhsien quits (~yauhsien@61-231-24-3.dynamic-ip.hinet.net) (Remote host closed the connection)
21:40:00 yauhsien joins (~yauhsien@61-231-24-3.dynamic-ip.hinet.net)
21:44:09 <[exa]> ok good, now battling the foralls
21:44:27 × wootehfoot quits (~wootehfoo@user/wootehfoot) (Quit: Leaving)
21:46:18 <[exa]> the teleport for just RWST IO seems to work as https://paste.tomsmeding.com/Jk5saqQp but kinda struggling to make it polymorphic
21:47:11 zeenk joins (~zeenk@2a02:2f04:a004:9b00:1efc:c1cf:378d:8b3d)
21:47:13 × xaotuk quits (~sasha@2a06:5b00:15fe:9b00::2) (Ping timeout: 260 seconds)
21:48:43 <EvanR> what's this teleport thing, is this a technical term
21:49:09 <[exa]> the current half-borked state with actual transformer is https://paste.tomsmeding.com/vPGggCey
21:49:33 <[exa]> EvanR: geekosaur calls it teleport, it's a teleport! :]
21:50:01 <[exa]> tomsmeding: thanks for the intuition with the storage needed, that's helpful
21:50:04 <geekosaur> veryinformal version of what tomsmeding said
21:50:26 × yauhsien quits (~yauhsien@61-231-24-3.dynamic-ip.hinet.net) (Remote host closed the connection)
21:51:07 <EvanR> How do the Heisenberg compensators work? "They work very well thanks for asking"
21:51:29 yauhsien joins (~yauhsien@61-231-24-3.dynamic-ip.hinet.net)
21:52:11 alp_ joins (~alp@user/alp)
21:52:49 <EvanR> (mangled paraphrase)
21:53:12 <[exa]> EvanR: we're teleporting state through IO
21:54:04 × littlebobeep quits (~alMalsamo@gateway/tor-sasl/almalsamo) (Ping timeout: 240 seconds)
21:55:39 slac91684 joins (~slack1256@186.11.61.142)
21:56:51 × yauhsien quits (~yauhsien@61-231-24-3.dynamic-ip.hinet.net) (Ping timeout: 276 seconds)
21:57:23 <EvanR> sounds evocative of object programming
21:57:25 bahamas joins (~lucian@84.232.141.55)
21:57:38 × slack1256 quits (~slack1256@191.125.227.220) (Ping timeout: 252 seconds)
21:57:43 <Bulby[m]> 🤣
21:58:07 <[exa]> ah it was missing a lift
21:58:14 <[exa]> sufficient kind of teleport
21:58:28 × sleym quits (~sleym@user/sleym) (Quit: sleym)
21:58:59 littlebobeep joins (~alMalsamo@gateway/tor-sasl/almalsamo)
22:02:02 × bahamas quits (~lucian@84.232.141.55) (Ping timeout: 252 seconds)
22:04:12 yauhsien joins (~yauhsien@61-231-24-3.dynamic-ip.hinet.net)
22:04:44 × n3t quits (n3t@s45.mydevil.net) (Read error: Connection reset by peer)
22:05:02 n3t joins (n3t@s45.mydevil.net)
22:05:23 × maerwald quits (~maerwald@mail.hasufell.de) (Changing host)
22:05:23 maerwald joins (~maerwald@user/maerwald)
22:07:18 eggplantade joins (~Eggplanta@108-201-191-115.lightspeed.sntcca.sbcglobal.net)
22:08:07 × tromp quits (~textual@dhcp-077-249-230-040.chello.nl) (Quit: My iMac has gone to sleep. ZZZzzz…)
22:09:11 × yauhsien quits (~yauhsien@61-231-24-3.dynamic-ip.hinet.net) (Ping timeout: 252 seconds)
22:10:34 × littlebobeep quits (~alMalsamo@gateway/tor-sasl/almalsamo) (Ping timeout: 240 seconds)
22:11:10 littlebobeep joins (~alMalsamo@gateway/tor-sasl/almalsamo)
22:11:30 × eggplantade quits (~Eggplanta@108-201-191-115.lightspeed.sntcca.sbcglobal.net) (Ping timeout: 240 seconds)
22:11:59 × cyphase quits (~cyphase@user/cyphase) (Ping timeout: 260 seconds)
22:15:29 × gehmehgeh quits (~user@user/gehmehgeh) (Quit: Leaving)
22:18:12 × joo-_ quits (~joo-_@fsf/member/joo--) (Ping timeout: 248 seconds)
22:19:55 joo-_ joins (~joo-_@87-49-45-5-mobile.dk.customer.tdc.net)
22:19:55 × joo-_ quits (~joo-_@87-49-45-5-mobile.dk.customer.tdc.net) (Changing host)
22:19:55 joo-_ joins (~joo-_@fsf/member/joo--)
22:24:08 <raehik> Why does GHCi error with "couldn't match a lifted type with an unlifted type" when I write a Word# expression? Or even a literal
22:24:11 <raehik> > 1##
22:24:13 <lambdabot> error:
22:24:13 <lambdabot> • Couldn't match a lifted type with an unlifted type
22:24:14 <lambdabot> When matching types
22:25:08 <raehik> I can apparently work around it by wrapping with W# :: Word# -> Word . but I'm very very fuzzy on the details here
22:25:12 <raehik> > W# 1##
22:25:14 <lambdabot> error:
22:25:14 <lambdabot> Data constructor not in scope: W# :: GHC.Prim.Word# -> t
22:27:04 × littlebobeep quits (~alMalsamo@gateway/tor-sasl/almalsamo) (Remote host closed the connection)
22:28:47 <raehik> Also confuses me that I have to use "W# (f x y)" rather than "W# $ f x y". guess that's to do with $ and levities or sth
22:30:38 × marquis_andras quits (~marquis_a@110-175-153-86.static.tpgi.com.au) (Ping timeout: 252 seconds)
22:30:49 <geekosaur> yes
22:30:54 marquis_andras joins (~marquis_a@110-175-153-86.static.tpgi.com.au)
22:31:08 <geekosaur> with respect to ghci, try -fno-it
22:31:30 <geekosaur> (ghci by default binds expressions to `it`, but its type is lifted)
22:32:51 <geekosaur> mm, that might not be enough if it goes to print it because `print` isn't levity polymorphic in its argument
22:33:10 <raehik> yeah, I'm getting the same error. thx for -fno-it, I didn't know that was how ghci worked
22:33:11 <geekosaur> probably also why lambdabot doesn't like it
22:33:58 <geekosaur> levity polymorphism is still a work in progress, I think
22:34:00 <raehik> is this just because avg Haskell programmers don't use unlifted types at the interpreter?
22:34:14 bahamas joins (~lucian@84.232.141.55)
22:36:22 <sm> https://haskell-links.org has a simple UI now
22:37:11 littlebobeep joins (~alMalsamo@gateway/tor-sasl/almalsamo)
22:37:22 <geekosaur> @let {-# OPTIONS_GHC -fprint-explicit-runtime-reps #-}
22:37:23 <lambdabot> Defined.
22:37:30 <geekosaur> :t ($)
22:37:31 <lambdabot> (a -> b) -> a -> b
22:37:47 <geekosaur> hm
22:37:55 <geekosaur> :t print
22:37:57 <lambdabot> Show a => a -> IO ()
22:38:31 × bahamas quits (~lucian@84.232.141.55) (Ping timeout: 246 seconds)
22:38:57 <geekosaur> mm, iirc you can't have levity polymorphic Show either. but I don;t think that option "took" because ($) is partially levity polymorphic
22:40:55 <geekosaur> "No variable may have a levity-polymorphic type."
22:40:59 × merijn quits (~merijn@86-86-29-250.fixed.kpn.net) (Ping timeout: 256 seconds)
22:41:07 <geekosaur> :t undefined
22:41:08 <lambdabot> a
22:41:09 [itchyjunk] joins (~itchyjunk@user/itchyjunk/x-7353470)
22:41:22 <geekosaur> right, so lb doesn't handle levity at all
22:41:46 <geekosaur> and yahb is still out to lunch apparently
22:42:02 <geekosaur> % :set -fprint-explicit-runtime-reps
22:42:07 <geekosaur> feh
22:43:01 son0p joins (~ff@181.136.122.143)
22:45:12 <EvanR> you can't always throw $ at the problem
22:46:05 × ojsaki quits (~ojsaki@84.64.137.140) (Ping timeout: 256 seconds)
22:46:30 × dhil quits (~dhil@cpc103052-sgyl39-2-0-cust260.18-2.cable.virginm.net) (Ping timeout: 240 seconds)
22:47:09 jao joins (~mail@cpc103048-sgyl39-2-0-cust502.18-2.cable.virginm.net)
22:50:34 × littlebobeep quits (~alMalsamo@gateway/tor-sasl/almalsamo) (Ping timeout: 240 seconds)
22:50:40 dextaa490 joins (~dextaa@user/dextaa)
22:50:44 × dextaa49 quits (~dextaa@user/dextaa) (Ping timeout: 248 seconds)
22:50:44 dextaa490 is now known as dextaa49
22:53:03 <hpc> i just realized certain types of continuation passing style are literal technical debt
22:53:09 <hpc> because it can have a value of ($100)
22:53:46 <hpc> https://ux.stackexchange.com/a/1875 :P
22:53:50 × zeenk quits (~zeenk@2a02:2f04:a004:9b00:1efc:c1cf:378d:8b3d) (Quit: Konversation terminated!)
22:54:25 × Tuplanolla quits (~Tuplanoll@91-159-68-39.elisa-laajakaista.fi) (Quit: Leaving.)
22:56:48 <EvanR> negativity shouldn't be surprising or attention grabbing. It's part of nature. You can't have shadow without light, or something
22:56:53 × mc47 quits (~mc47@xmonad/TheMC47) (Remote host closed the connection)
22:58:04 <hpc> there's probably a joke in there about higher-ranked types and having forall in a negative position too :D
22:58:17 yauhsien joins (~yauhsien@61-231-24-3.dynamic-ip.hinet.net)
22:58:33 jmcarthur joins (~jmcarthur@c-73-29-224-10.hsd1.nj.comcast.net)
22:58:58 × yauhsien quits (~yauhsien@61-231-24-3.dynamic-ip.hinet.net) (Remote host closed the connection)
22:59:33 × chexum quits (~quassel@gateway/tor-sasl/chexum) (Remote host closed the connection)
22:59:53 chexum joins (~quassel@gateway/tor-sasl/chexum)
23:00:05 yauhsien joins (~yauhsien@61-231-24-3.dynamic-ip.hinet.net)
23:01:10 × dsrt^ quits (~dsrt@128-092-160-234.biz.spectrum.com) (Ping timeout: 240 seconds)
23:01:28 causal joins (~user@50.35.83.177)
23:01:49 littlebobeep joins (~alMalsamo@gateway/tor-sasl/almalsamo)
23:03:20 × m1dnight quits (~christoph@78-22-9-5.access.telenet.be) (Ping timeout: 248 seconds)
23:04:35 dsrt^ joins (~dsrt@128-092-160-234.biz.spectrum.com)
23:04:44 × yauhsien quits (~yauhsien@61-231-24-3.dynamic-ip.hinet.net) (Ping timeout: 252 seconds)
23:08:03 bahamas joins (~lucian@84.232.141.55)
23:11:34 × littlebobeep quits (~alMalsamo@gateway/tor-sasl/almalsamo) (Ping timeout: 240 seconds)
23:12:07 × stackdroid18 quits (14094@user/stackdroid) (Quit: hasta la vista... tchau!)
23:12:28 × bahamas quits (~lucian@84.232.141.55) (Ping timeout: 246 seconds)
23:17:14 × Kaiepi quits (~Kaiepi@156.34.47.253) (Read error: Connection reset by peer)
23:18:50 × mmhat quits (~mmh@2001:4090:a243:802a:ee08:6bff:fe09:5315) (Quit: WeeChat 3.5)
23:19:44 Kaiepi joins (~Kaiepi@156.34.47.253)
23:20:27 littlebobeep joins (~alMalsamo@gateway/tor-sasl/almalsamo)
23:23:06 × jmcarthur quits (~jmcarthur@c-73-29-224-10.hsd1.nj.comcast.net) (Quit: My MacBook Air has gone to sleep. ZZZzzz…)
23:25:37 Guest052 joins (~Guest0@cpe-24-165-41-186.hawaii.res.rr.com)
23:25:46 × dsrt^ quits (~dsrt@128-092-160-234.biz.spectrum.com) (Ping timeout: 246 seconds)
23:26:15 × Guest052 quits (~Guest0@cpe-24-165-41-186.hawaii.res.rr.com) (Client Quit)
23:27:49 × pretty_dumm_guy quits (trottel@gateway/vpn/protonvpn/prettydummguy/x-88029655) (Quit: WeeChat 3.5)
23:31:45 × whatsupdoc quits (uid509081@id-509081.hampstead.irccloud.com) (Quit: Connection closed for inactivity)
23:32:26 × littlebobeep quits (~alMalsamo@gateway/tor-sasl/almalsamo) (Quit: leaving)
23:32:43 bitmapper joins (uid464869@id-464869.lymington.irccloud.com)
23:34:04 × ec quits (~ec@gateway/tor-sasl/ec) (Ping timeout: 240 seconds)
23:34:26 littlebobeep joins (~alMalsamo@gateway/tor-sasl/almalsamo)
23:34:47 nate1 joins (~nate@98.45.169.16)
23:39:23 × zer0bitz quits (~zer0bitz@2001:2003:f444:8f00:64b4:113a:8a62:5026) (Ping timeout: 252 seconds)
23:41:03 × nate1 quits (~nate@98.45.169.16) (Ping timeout: 256 seconds)
23:43:05 littlebo1eep joins (~alMalsamo@gateway/tor-sasl/almalsamo)
23:44:34 × littlebobeep quits (~alMalsamo@gateway/tor-sasl/almalsamo) (Ping timeout: 240 seconds)
23:45:35 Kaipei joins (~Kaiepi@156.34.47.253)
23:45:58 m1dnight joins (~christoph@78-22-9-5.access.telenet.be)
23:46:45 × xff0x quits (~xff0x@b133147.ppp.asahi-net.or.jp) (Ping timeout: 260 seconds)
23:48:08 mbuf joins (~Shakthi@27.58.139.1)
23:48:11 × Kaiepi quits (~Kaiepi@156.34.47.253) (Ping timeout: 252 seconds)
23:48:20 xff0x joins (~xff0x@b133147.ppp.asahi-net.or.jp)
23:51:19 × kaph quits (~kaph@net-2-42-128-205.cust.vodafonedsl.it) (Remote host closed the connection)
23:55:04 × littlebo1eep quits (~alMalsamo@gateway/tor-sasl/almalsamo) (Ping timeout: 240 seconds)
23:56:10 kaph joins (~kaph@net-2-42-128-205.cust.vodafonedsl.it)

All times are in UTC on 2022-05-11.