2021/04/27

2021-04-27 00:01:13 +0200dpl__(~dpl@77-121-78-163.chn.volia.net)
2021-04-27 00:03:11 +0200stree(~stree@68.36.8.116) (Ping timeout: 240 seconds)
2021-04-27 00:03:35 +0200Guest44573(~alexander@2a02:587:dc0a:2700:39fb:67a3:1f47:16d) (Ping timeout: 260 seconds)
2021-04-27 00:03:59 +0200 <juri_> ADG1089: I don't know, honestly. most people have a project or two they're working on. why don't you try asking around here, and see if anyone wants to discuss what they're doing, and see it it fits your interests?
2021-04-27 00:04:06 +0200dpl_(~dpl@77-121-78-163.chn.volia.net) (Ping timeout: 240 seconds)
2021-04-27 00:05:03 +0200 <hpc> haha
2021-04-27 00:05:10 +0200 <hpc> ask question, answer is "ask here"
2021-04-27 00:05:14 +0200justanotheruser(~justanoth@unaffiliated/justanotheruser)
2021-04-27 00:05:59 +0200 <hpc> ADG1089: hackage packages have project urls that are usually github or similar, you can use those to find something interesting and submit a PR
2021-04-27 00:06:37 +0200danso(~dan@modemcable156.91-20-96.mc.videotron.ca)
2021-04-27 00:06:45 +0200 <juri_> hpc: I find the whole random PR process unfriendly. i guess we all have our different ways.
2021-04-27 00:07:09 +0200 <juri_> I'd recommend my projects, but i'm about to go to bed, and it's some pretty specialized stuff.
2021-04-27 00:07:28 +0200 <hpc> i like it, it's like irc
2021-04-27 00:07:34 +0200 <hpc> you don't ask to ask, you just ask
2021-04-27 00:07:45 +0200 <hpc> you don't ask to fork, you just fork
2021-04-27 00:08:29 +0200Aquazi(uid312403@gateway/web/irccloud.com/x-hhxgnaqpkeoleenq)
2021-04-27 00:08:47 +0200 <juri_> IRC can also be impersonal, if that's your style.
2021-04-27 00:09:11 +0200danvet(~Daniel@2a02:168:57f4:0:efd0:b9e5:5ae6:c2fa) (Ping timeout: 260 seconds)
2021-04-27 00:09:16 +0200coot(~coot@37.30.50.130.nat.umts.dynamic.t-mobile.pl) (Quit: coot)
2021-04-27 00:14:09 +0200__monty__(~toonn@unaffiliated/toonn) (Quit: leaving)
2021-04-27 00:14:56 +0200Franciman(~francesco@host-79-32-159-157.retail.telecomitalia.it) (Quit: Leaving)
2021-04-27 00:16:35 +0200stree(~stree@68.36.8.116)
2021-04-27 00:17:59 +0200dmytrish(~mitra@2a02:8084:a82:d900:6010:2869:d10:372c)
2021-04-27 00:18:52 +0200rekahsoft(~rekahsoft@52.129.35.150) (Ping timeout: 240 seconds)
2021-04-27 00:19:45 +0200 <monochrom> Which one of the following two is more impersonal?:
2021-04-27 00:19:57 +0200 <monochrom> A. don't ask to ask, just ask
2021-04-27 00:20:58 +0200 <monochrom> B. When asked a question of the form "does anyone have ___?", answer "the answer is yes, they exist".
2021-04-27 00:21:19 +0200ph88(~ph88@2a02:8109:9e00:7e5c:d5ef:86b3:afc4:9258) (Ping timeout: 260 seconds)
2021-04-27 00:22:11 +0200elfets(~elfets@ip-37-201-23-96.hsi13.unitymediagroup.de) (Ping timeout: 240 seconds)
2021-04-27 00:24:27 +0200nineonin_(~nineonine@50.216.62.2)
2021-04-27 00:24:40 +0200mud(~mud@unaffiliated/kadoban) (Quit: bye)
2021-04-27 00:25:11 +0200fiedlr(~fiedlr@83.148.33.254)
2021-04-27 00:26:04 +0200nicholasbulka(~nicholasb@2601:900:4301:da0:58e6:3a0a:96a:ca2c) (Remote host closed the connection)
2021-04-27 00:26:38 +0200nicholasbulka(~nicholasb@2601:900:4301:da0:58e6:3a0a:96a:ca2c)
2021-04-27 00:27:29 +0200nineonine(~nineonine@2604:3d08:7785:9600:bde3:c459:7b57:e4c8) (Ping timeout: 245 seconds)
2021-04-27 00:27:30 +0200fendor(~fendor@178.115.129.220.wireless.dyn.drei.com) (Ping timeout: 252 seconds)
2021-04-27 00:29:49 +0200merijn(~merijn@83-160-49-249.ip.xs4all.nl)
2021-04-27 00:30:28 +0200fiedlr(~fiedlr@83.148.33.254) (Ping timeout: 252 seconds)
2021-04-27 00:30:31 +0200heatsink(~heatsink@108-201-191-115.lightspeed.sntcca.sbcglobal.net)
2021-04-27 00:31:05 +0200fiedlr(~fiedlr@83.148.33.254)
2021-04-27 00:31:14 +0200nicholasbulka(~nicholasb@2601:900:4301:da0:58e6:3a0a:96a:ca2c) (Ping timeout: 245 seconds)
2021-04-27 00:31:17 +0200ddellac__(ddellacost@gateway/vpn/mullvad/ddellacosta) (Remote host closed the connection)
2021-04-27 00:32:03 +0200dmytrish(~mitra@2a02:8084:a82:d900:6010:2869:d10:372c) (Ping timeout: 260 seconds)
2021-04-27 00:34:09 +0200acidjnk_new(~acidjnk@p200300d0c72b9588801bc51b53461c8c.dip0.t-ipconnect.de) (Ping timeout: 245 seconds)
2021-04-27 00:34:10 +0200elliott_(~elliott@pool-108-18-30-46.washdc.fios.verizon.net)
2021-04-27 00:34:50 +0200 <wroathe> does anyone have a jet fuel powered unicycle?
2021-04-27 00:34:56 +0200aidecoe(~aidecoe@unaffiliated/aidecoe) (Ping timeout: 245 seconds)
2021-04-27 00:36:30 +0200pavonia(~user@unaffiliated/siracusa)
2021-04-27 00:36:53 +0200nicholasbulka(~nicholasb@2601:900:4301:da0:58e6:3a0a:96a:ca2c)
2021-04-27 00:37:20 +0200 <monochrom> Does a jet engine count? >:)
2021-04-27 00:37:39 +0200 <monochrom> It has, like, one rotor.
2021-04-27 00:38:43 +0200elliott_(~elliott@pool-108-18-30-46.washdc.fios.verizon.net) (Client Quit)
2021-04-27 00:38:46 +0200jakalx(~jakalx@base.jakalx.net) ("Error from remote client")
2021-04-27 00:40:53 +0200 <wroathe> But how many hipsters does it accommodate?
2021-04-27 00:41:20 +0200nvmd(~nvmd@177.30.111.232) (Quit: Later nerds.)
2021-04-27 00:41:43 +0200royal_screwup21(52254809@gateway/web/cgi-irc/kiwiirc.com/ip.82.37.72.9) (Quit: Connection closed)
2021-04-27 00:41:50 +0200 <monochrom> As many as until the rotor blades wear out >:)
2021-04-27 00:42:23 +0200aidecoe(~aidecoe@unaffiliated/aidecoe)
2021-04-27 00:42:33 +0200kiweun(~kiweun@2607:fea8:2a62:9600:84d6:47ca:d37:9eea)
2021-04-27 00:44:33 +0200 <davean> wroathe: Sadly shapr does not yet, a thing which needs fixing.
2021-04-27 00:46:17 +0200jgt(~jgt@78.162.43.217) (Ping timeout: 260 seconds)
2021-04-27 00:46:35 +0200fiedlr(~fiedlr@83.148.33.254) ()
2021-04-27 00:47:04 +0200kiweun(~kiweun@2607:fea8:2a62:9600:84d6:47ca:d37:9eea) (Ping timeout: 245 seconds)
2021-04-27 00:47:48 +0200jacks2(~bc8134e3@217.29.117.252)
2021-04-27 00:53:11 +0200Gurkenglas(~Gurkengla@unaffiliated/gurkenglas) (Ping timeout: 240 seconds)
2021-04-27 00:55:09 +0200excelsiornini(6b4dd7e7@mobile-107-77-215-231.mobile.att.net)
2021-04-27 00:58:16 +0200chateau(~chateau@71.215.110.96)
2021-04-27 00:59:35 +0200lawid(~quassel@2a02:8109:b5c0:5334:265e:beff:fe2a:dde8) (Ping timeout: 260 seconds)
2021-04-27 01:00:23 +0200excelsiornini(6b4dd7e7@mobile-107-77-215-231.mobile.att.net) (Quit: Connection closed)
2021-04-27 01:00:59 +0200lawid(~quassel@2a02:8109:b5c0:5334:265e:beff:fe2a:dde8)
2021-04-27 01:02:55 +0200ADG1089(~aditya@171.76.29.233) (Quit: Konversation terminated!)
2021-04-27 01:03:34 +0200mud(~mud@unaffiliated/kadoban)
2021-04-27 01:04:19 +0200merijn(~merijn@83-160-49-249.ip.xs4all.nl) (Ping timeout: 265 seconds)
2021-04-27 01:07:48 +0200CrazyPyt_(~crazypyth@98.122.164.118)
2021-04-27 01:08:57 +0200CrazyPython(~crazypyth@98.122.164.118) (Ping timeout: 252 seconds)
2021-04-27 01:10:01 +0200dpl__(~dpl@77-121-78-163.chn.volia.net) (Quit: dpl__)
2021-04-27 01:10:59 +0200ddellac__(ddellacost@gateway/vpn/mullvad/ddellacosta)
2021-04-27 01:11:48 +0200 <koz_> If I want to get a DAG of my modules indicating what imports what in a cabal project, how would I do this?
2021-04-27 01:13:01 +0200dhil(~dhil@80.208.56.181) (Ping timeout: 265 seconds)
2021-04-27 01:13:18 +0200 <wroathe> Well, technically I would think it would be a DG
2021-04-27 01:13:36 +0200 <koz_> wroathe: It's a DAG in my case.
2021-04-27 01:15:34 +0200ddellac__(ddellacost@gateway/vpn/mullvad/ddellacosta) (Ping timeout: 252 seconds)
2021-04-27 01:16:34 +0200Tuplanolla(~Tuplanoll@91-159-68-239.elisa-laajakaista.fi) (Quit: Leaving.)
2021-04-27 01:17:00 +0200 <davean> wroathe: The .hs_boot shit is crazy and rare
2021-04-27 01:17:05 +0200 <davean> certainly no one sane uses it!
2021-04-27 01:18:07 +0200Tario(~Tario@201.192.165.173) (Ping timeout: 252 seconds)
2021-04-27 01:20:55 +0200cfricke(~cfricke@unaffiliated/cfricke) (Ping timeout: 250 seconds)
2021-04-27 01:21:09 +0200 <Clint> that's why sane people put all their code into a single .hs file
2021-04-27 01:21:49 +0200 <geekosaur> http://hackage.haskell.org/package/graphmod
2021-04-27 01:24:08 +0200jakalx(~jakalx@base.jakalx.net)
2021-04-27 01:26:25 +0200pbgc(~pbgc@a89-152-234-147.cpe.netcabo.pt) (Quit: Computer has gone to sleep.)
2021-04-27 01:28:30 +0200aVikingTrex(~aVikingTr@2001:8003:340d:d00:b2de:b98:7a93:b0ea)
2021-04-27 01:38:21 +0200 <koz_> geekosaur: Thanks!
2021-04-27 01:39:14 +0200heatsink(~heatsink@108-201-191-115.lightspeed.sntcca.sbcglobal.net) (Remote host closed the connection)
2021-04-27 01:40:05 +0200natechan(~natechan@108-233-125-227.lightspeed.sntcca.sbcglobal.net) (Ping timeout: 265 seconds)
2021-04-27 01:42:30 +0200Kaiepi(~Kaiepi@47.54.252.148) (Ping timeout: 265 seconds)
2021-04-27 01:43:58 +0200usr25(~usr25@unaffiliated/usr25) (Quit: Leaving)
2021-04-27 01:43:59 +0200Wamanuz(~wamanuz@78-70-34-81-no84.tbcn.telia.com) (Quit: Konversation terminated!)
2021-04-27 01:46:01 +0200Synthetica(uid199651@gateway/web/irccloud.com/x-njxepqszlnawpkda) (Quit: Connection closed for inactivity)
2021-04-27 01:48:59 +0200heatsink(~heatsink@108-201-191-115.lightspeed.sntcca.sbcglobal.net)
2021-04-27 01:49:10 +0200ddellac__(ddellacost@gateway/vpn/mullvad/ddellacosta)
2021-04-27 01:50:47 +0200 <gnumonic> does .hs boot even work? i tried to use it, gave up after like two days of failure, and decided to live with a 3500 line Types.hs file
2021-04-27 01:52:42 +0200 <geekosaur> it works but it's tricky
2021-04-27 01:52:52 +0200Tario(~Tario@201.192.165.173)
2021-04-27 01:53:35 +0200ddellac__(ddellacost@gateway/vpn/mullvad/ddellacosta) (Ping timeout: 246 seconds)
2021-04-27 01:55:16 +0200amerigo(uid331857@gateway/web/irccloud.com/x-ihzxbomyjkylusyy) (Quit: Connection closed for inactivity)
2021-04-27 01:58:14 +0200kiweun(~kiweun@2607:fea8:2a62:9600:94a4:7355:214:11fd)
2021-04-27 02:00:05 +0200xsperry(~as@unaffiliated/xsperry) (Remote host closed the connection)
2021-04-27 02:02:54 +0200kiweun(~kiweun@2607:fea8:2a62:9600:94a4:7355:214:11fd) (Ping timeout: 245 seconds)
2021-04-27 02:04:12 +0200xsperry(~as@unaffiliated/xsperry)
2021-04-27 02:13:21 +0200tmciver(~tmciver@cpe-172-101-40-226.maine.res.rr.com) (Ping timeout: 268 seconds)
2021-04-27 02:14:06 +0200ADG1089(~aditya@171.76.29.233)
2021-04-27 02:15:08 +0200tmciver(~tmciver@cpe-172-101-40-226.maine.res.rr.com)
2021-04-27 02:15:14 +0200chateau(~chateau@71.215.110.96) (Quit: Leaving)
2021-04-27 02:16:47 +0200chimera(~chimera@168-182-134-95.pool.ukrtel.net) (Quit: Konversation terminated!)
2021-04-27 02:24:49 +0200Deide(~Deide@217.155.19.23) (Quit: Seeee yaaaa)
2021-04-27 02:25:02 +0200stree(~stree@68.36.8.116) (Ping timeout: 265 seconds)
2021-04-27 02:25:05 +0200ADG1089(~aditya@171.76.29.233) (Quit: Konversation terminated!)
2021-04-27 02:26:38 +0200natechan(~natechan@108-233-125-227.lightspeed.sntcca.sbcglobal.net)
2021-04-27 02:26:52 +0200ddellac__(~ddellacos@86.106.143.151)
2021-04-27 02:27:11 +0200m0rphism(~m0rphism@HSI-KBW-085-216-104-059.hsi.kabelbw.de) (Ping timeout: 240 seconds)
2021-04-27 02:27:18 +0200philderbeast(~textual@bras-base-vldvpq5901w-grc-06-184-144-244-252.dsl.bell.ca) (Quit: My MacBook has gone to sleep. ZZZzzz…)
2021-04-27 02:28:29 +0200notzmv(~zmv@unaffiliated/zmv)
2021-04-27 02:31:28 +0200ddellac__(~ddellacos@86.106.143.151) (Ping timeout: 252 seconds)
2021-04-27 02:32:28 +0200Guest6509(~laudiacay@45.162.228.190)
2021-04-27 02:34:11 +0200natechan(~natechan@108-233-125-227.lightspeed.sntcca.sbcglobal.net) (Ping timeout: 240 seconds)
2021-04-27 02:37:56 +0200stree(~stree@68.36.8.116)
2021-04-27 02:38:19 +0200zmijunkie1(~Adium@87.123.60.135)
2021-04-27 02:38:37 +0200bennofs_(~quassel@dynamic-089-012-155-245.89.12.pool.telefonica.de) (Ping timeout: 252 seconds)
2021-04-27 02:38:53 +0200bennofs_(~quassel@x4dbffbc2.dyn.telefonica.de)
2021-04-27 02:40:16 +0200zmijunkie(~Adium@87.123.51.242) (Ping timeout: 252 seconds)
2021-04-27 02:43:02 +0200bennofs_(~quassel@x4dbffbc2.dyn.telefonica.de) (Read error: Connection reset by peer)
2021-04-27 02:43:23 +0200bennofs_(~quassel@x4dbffbc2.dyn.telefonica.de)
2021-04-27 02:46:45 +0200natechan(~natechan@108-233-125-227.lightspeed.sntcca.sbcglobal.net)
2021-04-27 02:46:45 +0200Sarcarean(4582bfd4@h69-130-191-212.bendor.broadband.dynamic.tds.net)
2021-04-27 02:47:25 +0200proofofkeags(~proofofke@205.209.28.54) (Ping timeout: 252 seconds)
2021-04-27 02:47:58 +0200Aquazi(uid312403@gateway/web/irccloud.com/x-hhxgnaqpkeoleenq) (Quit: Connection closed for inactivity)
2021-04-27 02:57:48 +0200HannaM(~quassel@p54849510.dip0.t-ipconnect.de) (Quit: https://www.oglaf.com/archive/)
2021-04-27 02:58:37 +0200Benzi-Junior(~BenziJuni@88-149-64-251.du.xdsl.is) (Quit: gone)
2021-04-27 02:59:40 +0200hendursa1(~weechat@gateway/tor-sasl/hendursaga) (Quit: hendursa1)
2021-04-27 03:00:09 +0200hendursaga(~weechat@gateway/tor-sasl/hendursaga)
2021-04-27 03:00:27 +0200merijn(~merijn@83-160-49-249.ip.xs4all.nl)
2021-04-27 03:00:30 +0200Benzi-Junior(~BenziJuni@dsl-149-64-251.hive.is)
2021-04-27 03:03:07 +0200ddellac__(~ddellacos@86.106.143.229)
2021-04-27 03:04:26 +0200raehik(~raehik@cpc95906-rdng25-2-0-cust156.15-3.cable.virginm.net)
2021-04-27 03:07:46 +0200ddellac__(~ddellacos@86.106.143.229) (Ping timeout: 252 seconds)
2021-04-27 03:09:42 +0200esp387228(esp32_prog@gateway/vpn/mullvad/esp32prog/x-46565127)
2021-04-27 03:10:24 +0200esp32_prog(esp32_prog@gateway/vpn/mullvad/esp32prog/x-46565127) (Read error: Connection reset by peer)
2021-04-27 03:11:06 +0200kiweun(~kiweun@2607:fea8:2a62:9600:fd3a:4f7b:345d:8677)
2021-04-27 03:11:26 +0200geekosaur(930099da@rrcs-147-0-153-218.central.biz.rr.com) (Quit: Connection closed)
2021-04-27 03:11:27 +0200whataday(~xxx@2400:8902::f03c:92ff:fe60:98d8) (Remote host closed the connection)
2021-04-27 03:12:32 +0200wroathe(~wroathe@c-68-54-25-135.hsd1.mn.comcast.net) (Ping timeout: 240 seconds)
2021-04-27 03:12:35 +0200whataday(~xxx@2400:8902::f03c:92ff:fe60:98d8)
2021-04-27 03:13:11 +0200jgt(~jgt@78.162.43.217)
2021-04-27 03:13:41 +0200raehik(~raehik@cpc95906-rdng25-2-0-cust156.15-3.cable.virginm.net) (Ping timeout: 240 seconds)
2021-04-27 03:14:49 +0200rajivr(uid269651@gateway/web/irccloud.com/x-oslfpzkstfgdrfpu)
2021-04-27 03:15:54 +0200jacks2(~bc8134e3@217.29.117.252) (Quit: QUIT)
2021-04-27 03:16:34 +0200solidus-river(~mike@174.127.249.180) (Remote host closed the connection)
2021-04-27 03:18:35 +0200wroathe(~wroathe@c-68-54-25-135.hsd1.mn.comcast.net)
2021-04-27 03:18:46 +0200jgt(~jgt@78.162.43.217) (Ping timeout: 252 seconds)
2021-04-27 03:20:55 +0200geekosaur(930099da@rrcs-147-0-153-218.central.biz.rr.com)
2021-04-27 03:22:15 +0200epicte7us(~epictetus@ip72-194-54-201.sb.sd.cox.net) (Quit: Leaving)
2021-04-27 03:23:00 +0200olligobber(olligobber@gateway/vpn/privateinternetaccess/olligobber)
2021-04-27 03:24:30 +0200Q8IoXhexAi(~Q8IoXhexA@c-73-88-253-11.hsd1.tn.comcast.net)
2021-04-27 03:25:18 +0200vdukhovni(64022765@100.2.39.101)
2021-04-27 03:28:50 +0200nineonin_(~nineonine@50.216.62.2) (Ping timeout: 265 seconds)
2021-04-27 03:28:54 +0200heatsink(~heatsink@108-201-191-115.lightspeed.sntcca.sbcglobal.net) (Remote host closed the connection)
2021-04-27 03:31:39 +0200drbean_(~drbean@TC210-63-209-69.static.apol.com.tw)
2021-04-27 03:34:01 +0200nineonine(~nineonine@50.216.62.2)
2021-04-27 03:34:29 +0200nicholasbulka(~nicholasb@2601:900:4301:da0:58e6:3a0a:96a:ca2c) (Remote host closed the connection)
2021-04-27 03:34:34 +0200merijn(~merijn@83-160-49-249.ip.xs4all.nl) (Ping timeout: 245 seconds)
2021-04-27 03:35:13 +0200nicholasbulka(~nicholasb@2601:900:4301:da0:58e6:3a0a:96a:ca2c)
2021-04-27 03:38:12 +0200ddellac__(~ddellacos@86.106.143.112)
2021-04-27 03:39:58 +0200slack1256(~slack1256@200-112-79-167.baf.movistar.cl)
2021-04-27 03:40:01 +0200vdukhovni(64022765@100.2.39.101) (Quit: Connection closed)
2021-04-27 03:40:24 +0200nicholasbulka(~nicholasb@2601:900:4301:da0:58e6:3a0a:96a:ca2c) (Ping timeout: 245 seconds)
2021-04-27 03:42:24 +0200 <slack1256> What is the current advice for testing effects on a MTL framework? I currently have a code base paramitriced on monad class, but a method is a call to a graphql server. Mocking that function seems burdersome.
2021-04-27 03:42:26 +0200ddellac__(~ddellacos@86.106.143.112) (Ping timeout: 246 seconds)
2021-04-27 03:44:47 +0200xff0x(~xff0x@2001:1a81:53aa:e600:aedf:66c8:4911:fe15) (Ping timeout: 260 seconds)
2021-04-27 03:46:30 +0200xff0x(~xff0x@2001:1a81:53e0:9b00:13c7:4d:b9c2:a94a)
2021-04-27 03:48:36 +0200Q8IoXhexAi(~Q8IoXhexA@c-73-88-253-11.hsd1.tn.comcast.net) (Quit: Terminated!)
2021-04-27 03:51:11 +0200geekosaur(930099da@rrcs-147-0-153-218.central.biz.rr.com) (Quit: Connection closed)
2021-04-27 03:51:57 +0200vdukhovni(64022765@100.2.39.101)
2021-04-27 03:53:50 +0200zebrag(~inkbottle@aaubervilliers-654-1-79-166.w86-212.abo.wanadoo.fr) (Quit: Konversation terminated!)
2021-04-27 03:54:32 +0200dastomate(~dastomate@0543f40b.skybroadband.com)
2021-04-27 03:56:35 +0200slac52336(~slack1256@201-223-250-53.baf.movistar.cl)
2021-04-27 03:56:55 +0200hiroaki(~hiroaki@2a02:8108:8c40:2bb8:8bd4:3e0a:68:465c) (Ping timeout: 260 seconds)
2021-04-27 03:57:42 +0200proofofkeags(~proofofke@97-118-239-55.hlrn.qwest.net)
2021-04-27 03:57:42 +0200geowiesnot(~user@i15-les02-ix2-87-89-181-157.sfr.lns.abo.bbox.fr)
2021-04-27 03:58:46 +0200kiweun(~kiweun@2607:fea8:2a62:9600:fd3a:4f7b:345d:8677) (Remote host closed the connection)
2021-04-27 03:58:55 +0200slack1256(~slack1256@200-112-79-167.baf.movistar.cl) (Ping timeout: 252 seconds)
2021-04-27 04:03:40 +0200 <__minoru__shirae> slack1256: if it's open-source, can you post a link to the project?
2021-04-27 04:04:51 +0200 <slac52336> __minoru__shirae: it is not :-/
2021-04-27 04:06:54 +0200Kaiepi(~Kaiepi@47.54.252.148)
2021-04-27 04:08:35 +0200 <__minoru__shirae> slac52336: too bad, wanted to see an example of industrial haskell
2021-04-27 04:08:58 +0200hiroaki(~hiroaki@2a02:8108:8c40:2bb8:bd49:f20f:3581:6a35)
2021-04-27 04:10:39 +0200slac52336slack1256
2021-04-27 04:10:52 +0200urodna(~urodna@unaffiliated/urodna) (Quit: urodna)
2021-04-27 04:11:04 +0200 <slack1256> It's the same. You just don't feel for using `lens`.
2021-04-27 04:11:18 +0200Sheilong(uid293653@gateway/web/irccloud.com/x-rcsvshxqwuthdgbo) ()
2021-04-27 04:11:20 +0200 <slack1256> feel bad
2021-04-27 04:12:29 +0200ddellac__(ddellacost@gateway/vpn/mullvad/ddellacosta)
2021-04-27 04:13:14 +0200CrazyPyt_(~crazypyth@98.122.164.118) (Read error: Connection reset by peer)
2021-04-27 04:14:11 +0200hiroaki(~hiroaki@2a02:8108:8c40:2bb8:bd49:f20f:3581:6a35) (Ping timeout: 260 seconds)
2021-04-27 04:16:31 +0200falafel(~falafel@pool-96-255-70-50.washdc.fios.verizon.net)
2021-04-27 04:17:05 +0200ddellac__(ddellacost@gateway/vpn/mullvad/ddellacosta) (Ping timeout: 246 seconds)
2021-04-27 04:17:57 +0200kiweun(~kiweun@2607:fea8:2a62:9600:4145:a684:2dd9:7c27)
2021-04-27 04:19:21 +0200Stanley00(~stanley00@unaffiliated/stanley00)
2021-04-27 04:23:44 +0200aVikingTrex(~aVikingTr@2001:8003:340d:d00:b2de:b98:7a93:b0ea) (Ping timeout: 245 seconds)
2021-04-27 04:25:52 +0200geowiesnot(~user@i15-les02-ix2-87-89-181-157.sfr.lns.abo.bbox.fr) (Ping timeout: 252 seconds)
2021-04-27 04:26:53 +0200stef204(~stef204@unaffiliated/stef-204/x-384198) (Quit: WeeChat 3.1)
2021-04-27 04:29:26 +0200heatsink(~heatsink@108-201-191-115.lightspeed.sntcca.sbcglobal.net)
2021-04-27 04:32:29 +0200theDon(~td@muedsl-82-207-238-220.citykom.de) (Ping timeout: 246 seconds)
2021-04-27 04:34:09 +0200heatsink(~heatsink@108-201-191-115.lightspeed.sntcca.sbcglobal.net) (Ping timeout: 245 seconds)
2021-04-27 04:34:20 +0200theDon(~td@muedsl-82-207-238-198.citykom.de)
2021-04-27 04:39:43 +0200FinnElija(~finn_elij@gateway/tor-sasl/finnelija/x-67402716)
2021-04-27 04:39:43 +0200finn_elijaGuest21444
2021-04-27 04:39:43 +0200FinnElijafinn_elija
2021-04-27 04:42:21 +0200Guest21444(~finn_elij@gateway/tor-sasl/finnelija/x-67402716) (Ping timeout: 240 seconds)
2021-04-27 04:45:07 +0200ram19890(~ram@49.205.84.253)
2021-04-27 04:46:13 +0200stree(~stree@68.36.8.116) (Ping timeout: 252 seconds)
2021-04-27 04:48:13 +0200Guest6509(~laudiacay@45.162.228.190) (Ping timeout: 252 seconds)
2021-04-27 04:48:34 +0200datajerk(~datajerk@sense.net) (Remote host closed the connection)
2021-04-27 04:49:02 +0200datajerk(~datajerk@sense.net)
2021-04-27 04:50:11 +0200nineonine(~nineonine@50.216.62.2) (Ping timeout: 240 seconds)
2021-04-27 04:50:49 +0200ddellac__(~ddellacos@86.106.143.190)
2021-04-27 04:55:32 +0200ddellac__(~ddellacos@86.106.143.190) (Ping timeout: 268 seconds)
2021-04-27 04:55:41 +0200falafel(~falafel@pool-96-255-70-50.washdc.fios.verizon.net) (Ping timeout: 240 seconds)
2021-04-27 04:57:41 +0200horatiohb(~horatiohb@159.65.170.201) (Ping timeout: 246 seconds)
2021-04-27 04:58:31 +0200kiweun(~kiweun@2607:fea8:2a62:9600:4145:a684:2dd9:7c27) (Remote host closed the connection)
2021-04-27 04:58:31 +0200hypercube(~hypercube@2603-6011-f901-9e5b-0000-0000-0000-08cf.res6.spectrum.com) (Quit: WeeChat 3.1)
2021-04-27 04:58:47 +0200stree(~stree@68.36.8.116)
2021-04-27 04:59:55 +0200hypercube(~hypercube@2603-6011-f901-9e5b-0000-0000-0000-08cf.res6.spectrum.com)
2021-04-27 05:02:07 +0200heatsink(~heatsink@108-201-191-115.lightspeed.sntcca.sbcglobal.net)
2021-04-27 05:03:39 +0200aVikingTrex(~aVikingTr@2001:8003:340d:d00:b2de:b98:7a93:b0ea)
2021-04-27 05:06:44 +0200carlomagno(~cararell@148.87.23.12)
2021-04-27 05:08:04 +0200Guest6509(~laudiacay@45.162.228.190)
2021-04-27 05:08:49 +0200MrMobius(~MrMobius@208.58.206.154) (Read error: Connection reset by peer)
2021-04-27 05:11:42 +0200__minoru__shirae(~shiraeesh@109.166.59.124) (Ping timeout: 260 seconds)
2021-04-27 05:12:12 +0200MrMobius(~MrMobius@208.58.206.154)
2021-04-27 05:12:12 +0200Guest6509(~laudiacay@45.162.228.190) (Ping timeout: 240 seconds)
2021-04-27 05:17:59 +0200machinedgod(~machinedg@135-23-192-217.cpe.pppoe.ca) (Ping timeout: 246 seconds)
2021-04-27 05:21:25 +0200P_B1(~P_B@139.28.218.148) (Remote host closed the connection)
2021-04-27 05:23:38 +0200 <Axman6> slack1256: so true
2021-04-27 05:23:54 +0200geowiesnot(~user@i15-les02-ix2-87-89-181-157.sfr.lns.abo.bbox.fr)
2021-04-27 05:24:26 +0200esp387228(esp32_prog@gateway/vpn/mullvad/esp32prog/x-46565127) (Ping timeout: 240 seconds)
2021-04-27 05:26:39 +0200justanotheruser(~justanoth@unaffiliated/justanotheruser) (Ping timeout: 245 seconds)
2021-04-27 05:26:57 +0200 <justsomeguy> What is the Reader monad?
2021-04-27 05:27:27 +0200 <Axman6> it's a way to pass around some data that various parts of your application needs, without needing to explicitly pass it as function arguments
2021-04-27 05:28:02 +0200 <justsomeguy> So, a named closure that shows up in type signatures?
2021-04-27 05:28:14 +0200aplainze1akind(~johndoe@captainludd.powered.by.lunarbnc.net)
2021-04-27 05:29:10 +0200 <shachaf> Well, a closure closes over some existing value. "Reader" means a thing is parameterized.
2021-04-27 05:29:17 +0200carlomagno(~cararell@148.87.23.12) (Quit: Leaving.)
2021-04-27 05:29:26 +0200aplainzetakind(~johndoe@captainludd.powered.by.lunarbnc.net) (Quit: Free ZNC ~ Powered by LunarBNC: https://LunarBNC.net)
2021-04-27 05:29:26 +0200aplainze1akindaplainzetakind
2021-04-27 05:29:28 +0200 <Axman6> so, it's commonly used to pass around settings your application was passed when it launched, from command line arguments, config files, etc.
2021-04-27 05:29:52 +0200 <shachaf> But "Reader r a" is just a function, "r -> a".
2021-04-27 05:31:02 +0200merijn(~merijn@83-160-49-249.ip.xs4all.nl)
2021-04-27 05:31:34 +0200ddellac__(ddellacost@gateway/vpn/mullvad/ddellacosta)
2021-04-27 05:32:35 +0200 <justsomeguy> Thank you, that helps a lot.
2021-04-27 05:32:42 +0200_xor(~xor@74.215.46.133) (Quit: brb)
2021-04-27 05:33:50 +0200nineonine(~nineonine@50.216.62.2)
2021-04-27 05:34:20 +0200 <Axman6> You'll often see apps using a monad stack which has ReaderT Config SomeOtherMonad so they can access things like database connection strings/objects, logging level
2021-04-27 05:35:46 +0200ddellac__(ddellacost@gateway/vpn/mullvad/ddellacosta) (Ping timeout: 240 seconds)
2021-04-27 05:35:48 +0200 <gnumonic> It's pretty common to use ReaderT with a mutable variable of some sort (TVar, etc) for concurrency since you can't do concurrency with a state monad. (I think?)
2021-04-27 05:36:27 +0200 <Axman6> sure, that could form part of your config if you wanted it to
2021-04-27 05:37:25 +0200kirb(~kirb@185.163.110.100)
2021-04-27 05:38:25 +0200falafel(~falafel@pool-96-255-70-50.washdc.fios.verizon.net)
2021-04-27 05:39:43 +0200 <wroathe> Yo dawg, I put a reader in your reader so you can reader while you reader
2021-04-27 05:40:10 +0200systemhalted(~aqualogic@71-129-231-253.lightspeed.rcsntx.sbcglobal.net)
2021-04-27 05:40:12 +0200 <Axman6> :t fix Reader
2021-04-27 05:40:14 +0200 <lambdabot> error:
2021-04-27 05:40:14 +0200 <lambdabot> • Data constructor not in scope: Reader :: a -> a
2021-04-27 05:40:14 +0200 <lambdabot> • Perhaps you meant one of these:
2021-04-27 05:40:39 +0200jeet(~jeet@183.83.214.10) (Quit: WeeChat 3.1)
2021-04-27 05:40:44 +0200geowiesnot(~user@i15-les02-ix2-87-89-181-157.sfr.lns.abo.bbox.fr) (Ping timeout: 246 seconds)
2021-04-27 05:40:58 +0200 <gnumonic> er yeah I guess my comment didn't really add anything. I'm just so used to writing 'ReaderT (TVar Something)" and thinking "ConcurrentState Something" that I forget that's not the only thing it's for :p
2021-04-27 05:42:16 +0200geowiesnot(~user@i15-les02-ix2-87-89-181-157.sfr.lns.abo.bbox.fr)
2021-04-27 05:42:46 +0200systemhalted(~aqualogic@71-129-231-253.lightspeed.rcsntx.sbcglobal.net) (Remote host closed the connection)
2021-04-27 05:45:23 +0200thc202(~thc202@unaffiliated/thc202) (Read error: Connection reset by peer)
2021-04-27 05:45:30 +0200_xor(~xor@74.215.46.133)
2021-04-27 05:46:16 +0200justsomeguy(~justsomeg@unaffiliated/--/x-3805311) (Quit: WeeChat 3.0.1)
2021-04-27 05:49:32 +0200slack1256(~slack1256@201-223-250-53.baf.movistar.cl) (Remote host closed the connection)
2021-04-27 05:50:37 +0200 <Axman6> slack1256: At #previousEmployer, we had a pattern of mocking various MTL style effects, which I always wanted to write a TH library for which would could pass in a type class and it'd spit out the record of fields which represented each call for each class method, which would be passed in lists of expected arguments and return values, and IIRC we would make that a ReaderT'd value with an instance for the class we were mocking... it was still
2021-04-27 05:50:37 +0200 <Axman6> burdensome but that would have made it less so
2021-04-27 05:50:43 +0200 <Axman6> oh they left :'(
2021-04-27 05:50:51 +0200 <Axman6> @tell slack1256 At #previousEmployer, we had a pattern of mocking various MTL style effects, which I always wanted to write a TH library for which would could pass in a type class and it'd spit out the record of fields which represented each call for each class method, which would be passed in lists of expected arguments and return values, and IIRC we would make that a ReaderT'd value with an instance for the class we were mocking... it was s
2021-04-27 05:50:52 +0200 <lambdabot> Consider it noted.
2021-04-27 05:50:52 +0200 <Axman6> till burdensome but that would have made it less so
2021-04-27 05:50:55 +0200 <Axman6> <3
2021-04-27 05:53:26 +0200Tario(~Tario@201.192.165.173) (Read error: Connection reset by peer)
2021-04-27 05:56:52 +0200geowiesnot(~user@i15-les02-ix2-87-89-181-157.sfr.lns.abo.bbox.fr) (Ping timeout: 240 seconds)
2021-04-27 05:57:00 +0200Tario(~Tario@201.192.165.173)
2021-04-27 05:57:04 +0200dastomaten(~dastomate@0543f40b.skybroadband.com)
2021-04-27 05:57:09 +0200ech(~user@gateway/tor-sasl/ech) (Ping timeout: 240 seconds)
2021-04-27 05:59:15 +0200 <mniip> is there a cute name for a free category from a quiver?
2021-04-27 06:00:54 +0200dastomate(~dastomate@0543f40b.skybroadband.com) (Ping timeout: 268 seconds)
2021-04-27 06:01:49 +0200geowiesnot(~user@i15-les02-ix2-87-89-181-157.sfr.lns.abo.bbox.fr)
2021-04-27 06:02:51 +0200heatsink(~heatsink@108-201-191-115.lightspeed.sntcca.sbcglobal.net) (Read error: Connection reset by peer)
2021-04-27 06:03:29 +0200heatsink(~heatsink@108-201-191-115.lightspeed.sntcca.sbcglobal.net)
2021-04-27 06:04:52 +0200zmijunkie1(~Adium@87.123.60.135) (Ping timeout: 240 seconds)
2021-04-27 06:04:53 +0200merijn(~merijn@83-160-49-249.ip.xs4all.nl) (Ping timeout: 246 seconds)
2021-04-27 06:05:06 +0200 <gnumonic> would performance be very bad with a sum type that had, uh, i dunno, like ten thousand nullary constructors?
2021-04-27 06:05:14 +0200xlei(znc@unaffiliated/xlei) (Quit: ZNC - https://znc.in)
2021-04-27 06:05:50 +0200ddellac__(ddellacost@gateway/vpn/mullvad/ddellacosta)
2021-04-27 06:05:53 +0200 <Axman6> I thought there were limits to the number you could use
2021-04-27 06:06:04 +0200zmijunkie(~Adium@87.122.222.91)
2021-04-27 06:06:11 +0200geowiesnot(~user@i15-les02-ix2-87-89-181-157.sfr.lns.abo.bbox.fr) (Ping timeout: 240 seconds)
2021-04-27 06:06:23 +0200 <Axman6> ifit were me I'd newtype Word or something, and then make pattern synonyms, but I'm not sure if that's necessary
2021-04-27 06:07:21 +0200dmwit(~dmwit@pool-173-66-86-32.washdc.fios.verizon.net) (Ping timeout: 246 seconds)
2021-04-27 06:08:15 +0200dmwit(~dmwit@pool-173-66-86-32.washdc.fios.verizon.net)
2021-04-27 06:08:29 +0200 <gnumonic> it's for some type level stuff, i'm just looking for something that i can singletonize/generate incrementally/has an eq instance/isn't a peano number
2021-04-27 06:08:57 +0200xlei(znc@unaffiliated/xlei)
2021-04-27 06:09:26 +0200 <Axman6> that sounds like it will make for some very unhappy compile times, but shouldn't affect runtime since they'll all have gone away
2021-04-27 06:10:22 +0200ddellac__(ddellacost@gateway/vpn/mullvad/ddellacosta) (Ping timeout: 252 seconds)
2021-04-27 06:12:27 +0200bgamari(~bgamari@72.65.101.132) (Quit: ZNC 1.8.1 - https://znc.in)
2021-04-27 06:12:47 +0200bgamari(~bgamari@2001:470:e438::1)
2021-04-27 06:13:23 +0200guest7682358928(c9dbea7b@gateway/web/cgi-irc/kiwiirc.com/ip.201.219.234.123)
2021-04-27 06:13:33 +0200xkapastel(uid17782@gateway/web/irccloud.com/x-sgigdjanpsamlbkh) (Quit: Connection closed for inactivity)
2021-04-27 06:14:27 +0200kiweun(~kiweun@2607:fea8:2a62:9600:9131:c747:1288:d3be)
2021-04-27 06:15:10 +0200 <gnumonic> actually since i don't need to do induction i guess I could do something like: data SWord16 = SSword16 Bool Bool Bool (...) etc
2021-04-27 06:16:17 +0200sh9(~sh9@softbank060116136158.bbtec.net)
2021-04-27 06:18:44 +0200kiweun(~kiweun@2607:fea8:2a62:9600:9131:c747:1288:d3be) (Ping timeout: 245 seconds)
2021-04-27 06:19:05 +0200vdukhovni(64022765@100.2.39.101) (Quit: Connection closed)
2021-04-27 06:21:10 +0200untakenstupidnic(~user@5.114.130.12) (Read error: Connection reset by peer)
2021-04-27 06:21:42 +0200nineonine(~nineonine@50.216.62.2) (Remote host closed the connection)
2021-04-27 06:22:18 +0200nineonine(~nineonine@50.216.62.2)
2021-04-27 06:23:41 +0200untakenstupidnic(~user@5.114.130.12)
2021-04-27 06:31:59 +0200Sgeo(~Sgeo@ool-18b9875e.dyn.optonline.net) (Ping timeout: 252 seconds)
2021-04-27 06:32:16 +0200Sgeo(~Sgeo@ool-18b9875e.dyn.optonline.net)
2021-04-27 06:42:49 +0200nineonine(~nineonine@50.216.62.2) (Ping timeout: 252 seconds)
2021-04-27 06:43:27 +0200ddellac__(ddellacost@gateway/vpn/mullvad/ddellacosta)
2021-04-27 06:47:01 +0200 <Axman6> gnumonic: do you know how many you actually need?
2021-04-27 06:47:54 +0200ddellac__(ddellacost@gateway/vpn/mullvad/ddellacosta) (Ping timeout: 245 seconds)
2021-04-27 06:49:08 +0200Tario(~Tario@201.192.165.173) (Read error: Connection reset by peer)
2021-04-27 06:50:23 +0200nineonine(~nineonine@50.216.62.2)
2021-04-27 06:52:17 +0200falafel(~falafel@pool-96-255-70-50.washdc.fios.verizon.net) (Remote host closed the connection)
2021-04-27 06:52:39 +0200falafel(~falafel@pool-96-255-70-50.washdc.fios.verizon.net)
2021-04-27 06:55:31 +0200 <gnumonic> I don't know the precise number but not more than a few thousand (and that's including a pretty big safety margin for exceptional situations)
2021-04-27 06:55:52 +0200 <gnumonic> i.e. if i could just singletonize a word16 straightforwardly i'd do that
2021-04-27 06:56:15 +0200 <Axman6> Ah I was assuming it was soe category of known values, and if it were, you could break it down into its prime factors and reduce the overhead of the binary representation somewhat :P
2021-04-27 07:02:53 +0200sqrt2_(~ben@unaffiliated/sqrt2)
2021-04-27 07:03:07 +0200sqrt2(~ben@unaffiliated/sqrt2) (Ping timeout: 260 seconds)
2021-04-27 07:04:43 +0200DirefulSalt(DirefulSal@gateway/vpn/privateinternetaccess/direfulsalt) (Remote host closed the connection)
2021-04-27 07:06:43 +0200ericsagn1(~ericsagne@2405:6580:0:5100:8cfe:e2c:fb24:3adc) (Ping timeout: 250 seconds)
2021-04-27 07:06:50 +0200stree(~stree@68.36.8.116) (Ping timeout: 246 seconds)
2021-04-27 07:11:52 +0200 <gnumonic> Nah. It's more or less just a unique identifier for some objects. It doesn't even have to be a number really, but it's not like Symbols are any better than GHC.TypeLits Nats when you need a singleton you can stash inside a data structure... Actually I dunno why I'm doing a binary representation at all. I might as well do 'data IDSym = A | B | (etc)' and 'data ID = IDSym IDSym IDSym (etc)'.
2021-04-27 07:13:54 +0200 <gnumonic> actually i don't even need the last (etc). note to self, think more before starting to code
2021-04-27 07:16:01 +0200dastomate(~dastomate@0543f40b.skybroadband.com)
2021-04-27 07:19:17 +0200ericsagn1(~ericsagne@2405:6580:0:5100:ed88:b772:a9fc:1e72)
2021-04-27 07:19:50 +0200dastomaten(~dastomate@0543f40b.skybroadband.com) (Ping timeout: 268 seconds)
2021-04-27 07:20:04 +0200stree(~stree@68.36.8.116)
2021-04-27 07:20:26 +0200sord937(~sord937@gateway/tor-sasl/sord937)
2021-04-27 07:23:27 +0200kirb(~kirb@185.163.110.100) (Remote host closed the connection)
2021-04-27 07:24:11 +0200dastomate(~dastomate@0543f40b.skybroadband.com) (Ping timeout: 240 seconds)
2021-04-27 07:26:40 +0200michalz(~user@185.246.204.123)
2021-04-27 07:28:10 +0200Tario(~Tario@201.192.165.173)
2021-04-27 07:30:05 +0200kiweun(~kiweun@2607:fea8:2a62:9600:e172:7d45:5cbc:afbd)
2021-04-27 07:32:07 +0200geowiesnot(~user@87-89-181-157.abo.bbox.fr)
2021-04-27 07:33:09 +0200sord937(~sord937@gateway/tor-sasl/sord937) (Ping timeout: 240 seconds)
2021-04-27 07:33:10 +0200frozenErebus(~frozenEre@37.231.244.249)
2021-04-27 07:34:08 +0200LKoen(~LKoen@22.249.88.92.rev.sfr.net)
2021-04-27 07:34:34 +0200kiweun(~kiweun@2607:fea8:2a62:9600:e172:7d45:5cbc:afbd) (Ping timeout: 245 seconds)
2021-04-27 07:34:41 +0200cole-h(~cole-h@c-73-48-197-220.hsd1.ca.comcast.net) (Ping timeout: 240 seconds)
2021-04-27 07:35:59 +0200sord937(~sord937@gateway/tor-sasl/sord937)
2021-04-27 07:37:14 +0200Tario(~Tario@201.192.165.173) (Read error: Connection reset by peer)
2021-04-27 07:37:41 +0200arturh(~arturh@93.176.180.48)
2021-04-27 07:38:28 +0200Tario(~Tario@201.192.165.173)
2021-04-27 07:39:16 +0200geowiesnot(~user@87-89-181-157.abo.bbox.fr) (Ping timeout: 260 seconds)
2021-04-27 07:41:39 +0200plutoniix(~q@cm-119-76-33-123.revip17.asianet.co.th)
2021-04-27 07:49:21 +0200jao(~jao@pdpc/supporter/professional/jao) (Ping timeout: 252 seconds)
2021-04-27 07:51:34 +0200Tario(~Tario@201.192.165.173) (Ping timeout: 252 seconds)
2021-04-27 07:53:52 +0200wroathe(~wroathe@c-68-54-25-135.hsd1.mn.comcast.net) (Ping timeout: 240 seconds)
2021-04-27 07:59:47 +0200wroathe(~wroathe@c-68-54-25-135.hsd1.mn.comcast.net)
2021-04-27 08:01:32 +0200forell(~forell@unaffiliated/forell) (Ping timeout: 240 seconds)
2021-04-27 08:01:44 +0200merijn(~merijn@83-160-49-249.ip.xs4all.nl)
2021-04-27 08:04:23 +0200wroathe(~wroathe@c-68-54-25-135.hsd1.mn.comcast.net) (Ping timeout: 252 seconds)
2021-04-27 08:05:10 +0200danvet(~Daniel@2a02:168:57f4:0:efd0:b9e5:5ae6:c2fa)
2021-04-27 08:09:05 +0200waleee-cl(uid373333@gateway/web/irccloud.com/x-rvemkovqaoswbohn) (Quit: Connection closed for inactivity)
2021-04-27 08:10:12 +0200mounty(~mounty@236.216.214.218.sta.wbroadband.net.au) (Ping timeout: 240 seconds)
2021-04-27 08:12:53 +0200coot(~coot@37.30.50.130.nat.umts.dynamic.t-mobile.pl)
2021-04-27 08:22:06 +0200Synthetica(uid199651@gateway/web/irccloud.com/x-jzozwncadkywrjny)
2021-04-27 08:22:16 +0200zmijunkie1(~Adium@109.90.32.89)
2021-04-27 08:22:33 +0200xff0x(~xff0x@2001:1a81:53e0:9b00:13c7:4d:b9c2:a94a) (Ping timeout: 250 seconds)
2021-04-27 08:23:09 +0200sord937(~sord937@gateway/tor-sasl/sord937) (Ping timeout: 240 seconds)
2021-04-27 08:23:41 +0200xff0x(~xff0x@2001:1a81:53e0:9b00:7bc7:e0fa:939f:81c6)
2021-04-27 08:23:44 +0200nineonine(~nineonine@50.216.62.2) (Ping timeout: 245 seconds)
2021-04-27 08:24:12 +0200zmijunkie(~Adium@87.122.222.91) (Ping timeout: 246 seconds)
2021-04-27 08:24:47 +0200sord937(~sord937@gateway/tor-sasl/sord937)
2021-04-27 08:25:19 +0200johannes_(~johannes@b2b-37-24-119-190.unitymedia.biz)
2021-04-27 08:29:31 +0200frozenErebus(~frozenEre@37.231.244.249) (Ping timeout: 252 seconds)
2021-04-27 08:30:58 +0200zmijunkie(~Adium@87.122.222.91)
2021-04-27 08:31:15 +0200gnumonic(~gnumonic@c-73-170-91-210.hsd1.ca.comcast.net) (Quit: Leaving)
2021-04-27 08:31:45 +0200howdoi(uid224@gateway/web/irccloud.com/x-trxxyompkioojjhk) (Quit: Connection closed for inactivity)
2021-04-27 08:31:46 +0200Lowl3v3l(~Lowl3v3l@dslb-002-207-103-026.002.207.pools.vodafone-ip.de)
2021-04-27 08:32:49 +0200zmijunkie1(~Adium@109.90.32.89) (Ping timeout: 252 seconds)
2021-04-27 08:35:46 +0200falafel(~falafel@pool-96-255-70-50.washdc.fios.verizon.net) (Ping timeout: 240 seconds)
2021-04-27 08:35:55 +0200merijn(~merijn@83-160-49-249.ip.xs4all.nl) (Ping timeout: 252 seconds)
2021-04-27 08:37:22 +0200wonko7(~wonko7@62.115.229.50)
2021-04-27 08:38:04 +0200forell(~forell@unaffiliated/forell)
2021-04-27 08:40:25 +0200jgt(~jgt@78.162.43.217)
2021-04-27 08:43:53 +0200Pickchea(~private@unaffiliated/pickchea)
2021-04-27 08:45:53 +0200kiweun(~kiweun@2607:fea8:2a62:9600:f8f8:39af:49d9:69f2)
2021-04-27 08:46:37 +0200othe1(~othe@195.140.213.38)
2021-04-27 08:46:51 +0200Varis(~Tadas@unaffiliated/varis)
2021-04-27 08:48:50 +0200unlink2(~unlink2@p200300ebcf12ad00ad652fa1ddae7806.dip0.t-ipconnect.de)
2021-04-27 08:50:43 +0200kiweun(~kiweun@2607:fea8:2a62:9600:f8f8:39af:49d9:69f2) (Ping timeout: 250 seconds)
2021-04-27 08:53:31 +0200whosit(~whosit@109-252-94-126.nat.spd-mgts.ru)
2021-04-27 09:00:36 +0200v01d4lph4(~v01d4lph4@27.57.103.213)
2021-04-27 09:01:15 +0200m0rphism(~m0rphism@HSI-KBW-085-216-104-059.hsi.kabelbw.de)
2021-04-27 09:01:35 +0200Lycurgus(~niemand@98.4.118.65)
2021-04-27 09:02:20 +0200frozenErebus(~frozenEre@37.231.244.249)
2021-04-27 09:04:56 +0200dyeplexer(~lol@unaffiliated/terpin)
2021-04-27 09:05:11 +0200Kaiepi(~Kaiepi@47.54.252.148) (Remote host closed the connection)
2021-04-27 09:05:14 +0200zmijunkie1(~Adium@109.90.32.89)
2021-04-27 09:05:26 +0200v01d4lph4(~v01d4lph4@27.57.103.213) (Ping timeout: 260 seconds)
2021-04-27 09:05:30 +0200Kaiepi(~Kaiepi@47.54.252.148)
2021-04-27 09:05:50 +0200zmijunkie(~Adium@87.122.222.91) (Ping timeout: 246 seconds)
2021-04-27 09:10:21 +0200sord937(~sord937@gateway/tor-sasl/sord937) (Ping timeout: 240 seconds)
2021-04-27 09:10:41 +0200bitmagie(~Thunderbi@200116b80690c300997cabc9cf9a1ff7.dip.versatel-1u1.de)
2021-04-27 09:10:57 +0200zmijunkie(~Adium@87.122.222.91)
2021-04-27 09:13:21 +0200zmijunkie1(~Adium@109.90.32.89) (Ping timeout: 260 seconds)
2021-04-27 09:13:32 +0200jgt(~jgt@78.162.43.217) (Ping timeout: 240 seconds)
2021-04-27 09:14:07 +0200sqrt2_(~ben@unaffiliated/sqrt2) (Ping timeout: 250 seconds)
2021-04-27 09:14:17 +0200sqrt2(~ben@unaffiliated/sqrt2)
2021-04-27 09:15:23 +0200vgtw_(~vgtw@gateway/tor-sasl/vgtw)
2021-04-27 09:15:26 +0200Aquazi(uid312403@gateway/web/irccloud.com/x-eryhzfeygpvphsjr)
2021-04-27 09:15:51 +0200vgtw(~vgtw@gateway/tor-sasl/vgtw) (Remote host closed the connection)
2021-04-27 09:15:52 +0200vgtw_vgtw
2021-04-27 09:16:04 +0200ddella___(~ddellacos@ool-44c73afa.dyn.optonline.net)
2021-04-27 09:16:18 +0200bitmagie(~Thunderbi@200116b80690c300997cabc9cf9a1ff7.dip.versatel-1u1.de) (Quit: bitmagie)
2021-04-27 09:16:35 +0200sord937(~sord937@gateway/tor-sasl/sord937)
2021-04-27 09:16:37 +0200proofofkeags(~proofofke@97-118-239-55.hlrn.qwest.net) (Ping timeout: 252 seconds)
2021-04-27 09:17:54 +0200aVikingTrex(~aVikingTr@2001:8003:340d:d00:b2de:b98:7a93:b0ea) (Ping timeout: 245 seconds)
2021-04-27 09:18:27 +0200ddellacosta(~ddellacos@ool-44c73afa.dyn.optonline.net) (Ping timeout: 252 seconds)
2021-04-27 09:18:38 +0200bennofs_(~quassel@x4dbffbc2.dyn.telefonica.de) (Read error: Connection reset by peer)
2021-04-27 09:18:55 +0200bennofs_(~quassel@x4dbffbc2.dyn.telefonica.de)
2021-04-27 09:21:11 +0200_ht(~quassel@82-169-194-8.biz.kpn.net)
2021-04-27 09:24:05 +0200danso(~dan@modemcable156.91-20-96.mc.videotron.ca) (Ping timeout: 265 seconds)
2021-04-27 09:27:08 +0200coot(~coot@37.30.50.130.nat.umts.dynamic.t-mobile.pl) (Quit: coot)
2021-04-27 09:27:21 +0200hiroaki(~hiroaki@2a02:8108:8c40:2bb8:4afc:980e:3b22:8734)
2021-04-27 09:27:37 +0200zmijunkie1(~Adium@109.90.32.89)
2021-04-27 09:28:26 +0200stree(~stree@68.36.8.116) (Ping timeout: 265 seconds)
2021-04-27 09:29:32 +0200zmijunkie(~Adium@87.122.222.91) (Ping timeout: 240 seconds)
2021-04-27 09:30:09 +0200merijn(~merijn@83-160-49-249.ip.xs4all.nl)
2021-04-27 09:30:37 +0200jgt(~jgt@78.162.43.217)
2021-04-27 09:34:09 +0200zmijunkie(~Adium@87.122.222.91)
2021-04-27 09:35:12 +0200tsaka_(~torstein@athedsl-4519432.home.otenet.gr) (Ping timeout: 240 seconds)
2021-04-27 09:35:34 +0200nicholasbulka(~nicholasb@2601:900:4301:da0:5440:6bb8:f181:7832)
2021-04-27 09:36:03 +0200zmijunkie1(~Adium@109.90.32.89) (Ping timeout: 252 seconds)
2021-04-27 09:36:53 +0200elfets(~elfets@ip-37-201-23-96.hsi13.unitymediagroup.de)
2021-04-27 09:38:06 +0200wonko7(~wonko7@62.115.229.50) (Quit: See You Space Cowboy..)
2021-04-27 09:39:41 +0200nicholasbulka(~nicholasb@2601:900:4301:da0:5440:6bb8:f181:7832) (Ping timeout: 250 seconds)
2021-04-27 09:41:26 +0200stree(~stree@68.36.8.116)
2021-04-27 09:42:53 +0200alexander(~alexander@2a02:587:dc0a:2700:39fb:67a3:1f47:16d)
2021-04-27 09:43:21 +0200alexanderGuest85960
2021-04-27 09:44:40 +0200geowiesnot(~user@87-89-181-157.abo.bbox.fr)
2021-04-27 09:45:27 +0200tionos-(~tionos@2a0b:b7c4:1:731::1) (Quit: leaving)
2021-04-27 09:45:41 +0200tionos(~tionos@2a0b:b7c4:1:731::1)
2021-04-27 09:46:08 +0200Lycurgus(~niemand@98.4.118.65) (Quit: Exeunt)
2021-04-27 09:46:35 +0200malumore(~malumore@151.62.126.111)
2021-04-27 09:47:04 +0200ericsagn1(~ericsagne@2405:6580:0:5100:ed88:b772:a9fc:1e72) (Ping timeout: 245 seconds)
2021-04-27 09:47:42 +0200Sgeo(~Sgeo@ool-18b9875e.dyn.optonline.net) (Read error: Connection reset by peer)
2021-04-27 09:48:31 +0200danso(~dan@modemcable156.91-20-96.mc.videotron.ca)
2021-04-27 09:48:48 +0200malumore_(~malumore@151.62.126.111)
2021-04-27 09:51:41 +0200malumore(~malumore@151.62.126.111) (Ping timeout: 260 seconds)
2021-04-27 09:55:30 +0200__minoru__shirae(~shiraeesh@109.166.59.124)
2021-04-27 09:56:05 +0200coot(~coot@37.30.50.130.nat.umts.dynamic.t-mobile.pl)
2021-04-27 09:56:26 +0200cfricke(~cfricke@unaffiliated/cfricke)
2021-04-27 09:57:34 +0200is_null(~jpic@pdpc/supporter/professional/is-null)
2021-04-27 09:59:16 +0200ericsagn1(~ericsagne@2405:6580:0:5100:9b9f:be30:ff0e:2bc)
2021-04-27 10:02:23 +0200wonko7(~wonko7@62.115.229.50)
2021-04-27 10:03:17 +0200Gurkenglas(~Gurkengla@unaffiliated/gurkenglas)
2021-04-27 10:04:00 +0200sh9(~sh9@softbank060116136158.bbtec.net) (Quit: WeeChat 2.8)
2021-04-27 10:10:45 +0200hendursaga(~weechat@gateway/tor-sasl/hendursaga) (Ping timeout: 240 seconds)
2021-04-27 10:13:23 +0200zmijunkie1(~Adium@109.90.32.89)
2021-04-27 10:14:15 +0200hendursaga(~weechat@gateway/tor-sasl/hendursaga)
2021-04-27 10:14:34 +0200zmijunkie(~Adium@87.122.222.91) (Ping timeout: 252 seconds)
2021-04-27 10:14:39 +0200sz0(uid110435@gateway/web/irccloud.com/x-bwiuonpskoznguoq)
2021-04-27 10:15:27 +0200sh9(~sh9@softbank060116136158.bbtec.net)
2021-04-27 10:20:08 +0200thc202(~thc202@unaffiliated/thc202)
2021-04-27 10:20:32 +0200danso(~dan@modemcable156.91-20-96.mc.videotron.ca) (Quit: WeeChat 3.0)
2021-04-27 10:20:52 +0200Arahael(~arahael@123-243-38-74.tpgi.com.au) (Ping timeout: 240 seconds)
2021-04-27 10:24:13 +0200frozenErebus(~frozenEre@37.231.244.249) (Ping timeout: 268 seconds)
2021-04-27 10:24:55 +0200kuribas(~user@ptr-25vy0i7u5k5fyxhyy6l.18120a2.ip6.access.telenet.be)
2021-04-27 10:26:58 +0200frozenErebus(~frozenEre@37.231.244.249)
2021-04-27 10:28:14 +0200fendor(~fendor@178.115.131.177.wireless.dyn.drei.com)
2021-04-27 10:31:01 +0200pbgc(~pbgc@a89-152-234-147.cpe.netcabo.pt)
2021-04-27 10:31:52 +0200Pickchea(~private@unaffiliated/pickchea) (Ping timeout: 240 seconds)
2021-04-27 10:33:42 +0200merijn(~merijn@83-160-49-249.ip.xs4all.nl) (Ping timeout: 240 seconds)
2021-04-27 10:36:39 +0200tzh(~tzh@c-24-21-73-154.hsd1.wa.comcast.net) (Quit: zzz)
2021-04-27 10:38:16 +0200dhil(~dhil@80.208.56.181)
2021-04-27 10:38:50 +0200acidjnk_new(~acidjnk@p200300d0c72b95883ddaf449c9d144e9.dip0.t-ipconnect.de)
2021-04-27 10:41:30 +0200drbean_(~drbean@TC210-63-209-69.static.apol.com.tw) (Quit: ZNC 1.8.2+cygwin2 - https://znc.in)
2021-04-27 10:43:41 +0200Jesin(~Jesin@pool-72-66-101-18.washdc.fios.verizon.net) (Ping timeout: 240 seconds)
2021-04-27 10:46:44 +0200kiweun(~kiweun@2607:fea8:2a62:9600:7098:46df:517a:426)
2021-04-27 10:48:26 +0200Arahael(~arahael@123-243-38-74.tpgi.com.au)
2021-04-27 10:51:11 +0200kiweun(~kiweun@2607:fea8:2a62:9600:7098:46df:517a:426) (Ping timeout: 250 seconds)
2021-04-27 10:55:18 +0200Pickchea(~private@unaffiliated/pickchea)
2021-04-27 10:55:26 +0200rdd(~rdd@c-407ce255.012-81-73746f39.cust.ownit.se) (Ping timeout: 240 seconds)
2021-04-27 10:58:16 +0200jess(jess@freenode/staff/jess)
2021-04-27 10:59:09 +0200hypercube(~hypercube@2603-6011-f901-9e5b-0000-0000-0000-08cf.res6.spectrum.com) (Ping timeout: 245 seconds)
2021-04-27 11:00:48 +0200DavidEichmann(~david@147.136.46.217.dyn.plus.net)
2021-04-27 11:00:59 +0200gehmehgeh(~ircuser1@gateway/tor-sasl/gehmehgeh)
2021-04-27 11:01:17 +0200vicfred(~vicfred@unaffiliated/vicfred) (Quit: Leaving)
2021-04-27 11:03:26 +0200__minoru__shirae(~shiraeesh@109.166.59.124) (Ping timeout: 260 seconds)
2021-04-27 11:03:38 +0200heatsink(~heatsink@108-201-191-115.lightspeed.sntcca.sbcglobal.net) (Remote host closed the connection)
2021-04-27 11:04:22 +0200ech(~user@gateway/tor-sasl/ech)
2021-04-27 11:04:54 +0200raehik(~raehik@cpc95906-rdng25-2-0-cust156.15-3.cable.virginm.net)
2021-04-27 11:08:41 +0200merijn(~merijn@83-160-49-249.ip.xs4all.nl)
2021-04-27 11:12:58 +0200olligobber(olligobber@gateway/vpn/privateinternetaccess/olligobber) (Remote host closed the connection)
2021-04-27 11:13:32 +0200__minoru__shirae(~shiraeesh@109.166.59.124)
2021-04-27 11:18:59 +0200dvdp73(59736826@38.104.115.89.rev.vodafone.pt)
2021-04-27 11:24:26 +0200plutoniix(~q@cm-119-76-33-123.revip17.asianet.co.th) (Quit: Leaving)
2021-04-27 11:24:54 +0200plutoniix(~q@cm-119-76-33-123.revip17.asianet.co.th)
2021-04-27 11:25:18 +0200esp32_prog(esp32_prog@gateway/vpn/mullvad/esp32prog/x-46565127)
2021-04-27 11:27:06 +0200idhugo(~idhugo@87-49-45-4-mobile.dk.customer.tdc.net)
2021-04-27 11:28:19 +0200mmfood(~mmfood@94.234.53.15)
2021-04-27 11:34:57 +0200daboss(31c7371a@gateway/web/cgi-irc/kiwiirc.com/ip.49.199.55.26)
2021-04-27 11:35:30 +0200Chai-T-Rex(~ChaiTRex@gateway/tor-sasl/chaitrex) (Remote host closed the connection)
2021-04-27 11:35:57 +0200Chai-T-Rex(~ChaiTRex@gateway/tor-sasl/chaitrex)
2021-04-27 11:36:37 +0200 <daboss> hi everyone just wondering if something like this is code smell pseudo code classA { string user, classB admin } classB { construction(classA blah) }
2021-04-27 11:37:07 +0200 <daboss> basically classA contains classB and classB refrences classA
2021-04-27 11:37:23 +0200 <lortabac> daboss: what language is this?
2021-04-27 11:37:42 +0200 <daboss> just psuedo code
2021-04-27 11:37:53 +0200 <lortabac> what do you mean by "contains classB"?
2021-04-27 11:38:00 +0200 <daboss> as a variable
2021-04-27 11:38:18 +0200frozenErebus(~frozenEre@37.231.244.249) (Remote host closed the connection)
2021-04-27 11:38:55 +0200 <nitrix> If you think it's a code smell, then OOP would classify as code smell then. You just described inheritance.
2021-04-27 11:39:41 +0200 <daboss> its not inheritence just classA contains and instance of classB but classB refrences classA
2021-04-27 11:39:47 +0200 <daboss> an*
2021-04-27 11:40:11 +0200 <nitrix> You're doing composition, but then you circle back with a reference, that's literally inheritance.
2021-04-27 11:40:24 +0200 <daboss> thought i'd ask here since haskell programmers are usually pretty good :)
2021-04-27 11:40:44 +0200 <daboss> didn't see it that way
2021-04-27 11:40:53 +0200tempate(~tempate@unaffiliated/tempate) (Ping timeout: 246 seconds)
2021-04-27 11:41:42 +0200 <daboss> do you think its bad/
2021-04-27 11:42:20 +0200 <daboss> i think its not good design a good design would be classC that holds class A and classB
2021-04-27 11:42:21 +0200 <lortabac> oh ok so "class" is not in the Haskell sense of "type class"?
2021-04-27 11:42:35 +0200 <daboss> yeah like a class in C#
2021-04-27 11:43:25 +0200 <nitrix> Bad at what/for what? What are we judging and by what metric?
2021-04-27 11:44:41 +0200 <daboss> just a matter of opinion that's why I'm asking if you think its bad to have a circilar refrence
2021-04-27 11:45:02 +0200 <daboss> if it indicates bad design
2021-04-27 11:45:35 +0200 <nitrix> It indicates _a_ design. I don't know whether the design is useful or not. What problem is it solving?
2021-04-27 11:46:57 +0200Axman6(~Axman6@pdpc/supporter/student/Axman6) (Remote host closed the connection)
2021-04-27 11:46:59 +0200 <daboss> it's a server and one of the polling for data methods is classB and classA is the server
2021-04-27 11:47:13 +0200Axman6(~Axman6@pdpc/supporter/student/Axman6)
2021-04-27 11:47:43 +0200esp32_prog(esp32_prog@gateway/vpn/mullvad/esp32prog/x-46565127) (Remote host closed the connection)
2021-04-27 11:49:02 +0200 <nitrix> So Server is just the base server, while PollableServer is capable of more (of being polled?) But somehow Server knows that it's within a PollableServer? Why?
2021-04-27 11:49:44 +0200stree(~stree@68.36.8.116) (Ping timeout: 252 seconds)
2021-04-27 11:50:51 +0200 <daboss> server starts and stops the poll but the poll needs most of the variables in server to complete tasks so server is passed as a variable to poll does that make sense?
2021-04-27 11:52:49 +0200 <nitrix> I'd decouple the twos. Instead of the server starting/stopping the poll, it should emit events/have callbacks that can be registered to run at key moments.
2021-04-27 11:53:12 +0200Gurkenglas(~Gurkengla@unaffiliated/gurkenglas) (Ping timeout: 240 seconds)
2021-04-27 11:53:35 +0200 <nitrix> Then your pollable server can have the server as its member, and configure it properly to do specific things at specific times, here, calling on of its own methods.
2021-04-27 11:53:57 +0200 <nitrix> Think higher-order.
2021-04-27 11:54:28 +0200 <daboss> thanks for the idea
2021-04-27 11:55:37 +0200 <nitrix> I think breaking that cycle should be the priority. Seems strange for that server to know about polling. You went through the trouble of splitting the two concepts, but they haven't entirely been made independent yet.
2021-04-27 11:55:37 +0200LKoen(~LKoen@22.249.88.92.rev.sfr.net) (Quit: “It’s only logical. First you learn to talk, then you learn to think. Too bad it’s not the other way round.”)
2021-04-27 11:55:50 +0200malumore__(~malumore@151.62.126.111)
2021-04-27 11:56:33 +0200 <daboss> yeah that's what has been bugging me but finding it hard to come up with a better design
2021-04-27 11:56:49 +0200LKoen(~LKoen@22.249.88.92.rev.sfr.net)
2021-04-27 11:56:56 +0200 <nitrix> daboss, This talk is unrelated, but the beginning goes into a similiar scenario and could help you: https://www.youtube.com/watch?v=49dMGC1hM1o
2021-04-27 11:57:17 +0200 <daboss> I'll check it out thanks
2021-04-27 11:57:18 +0200 <nitrix> daboss, OOP-like code is plagued full of that. Have a look at let me know :P
2021-04-27 11:58:29 +0200malumore__(~malumore@151.62.126.111) (Remote host closed the connection)
2021-04-27 11:58:51 +0200malumore_(~malumore@151.62.126.111) (Ping timeout: 260 seconds)
2021-04-27 11:59:43 +0200malumore(~malumore@151.62.126.111)
2021-04-27 12:00:32 +0200Rudd0(~Rudd0@185.189.115.103)
2021-04-27 12:01:46 +0200unlink_(~unlink2@p57b85a36.dip0.t-ipconnect.de)
2021-04-27 12:02:19 +0200stree(~stree@68.36.8.116)
2021-04-27 12:02:22 +0200kiweun(~kiweun@2607:fea8:2a62:9600:4:66e1:4442:741b)
2021-04-27 12:02:41 +0200unlink2(~unlink2@p200300ebcf12ad00ad652fa1ddae7806.dip0.t-ipconnect.de) (Ping timeout: 250 seconds)
2021-04-27 12:04:31 +0200heatsink(~heatsink@108-201-191-115.lightspeed.sntcca.sbcglobal.net)
2021-04-27 12:05:51 +0200Natch(~natch@c-e070e255.014-297-73746f25.bbcust.telenor.se) (Remote host closed the connection)
2021-04-27 12:07:01 +0200bitdex(~bitdex@gateway/tor-sasl/bitdex) (Quit: = "")
2021-04-27 12:07:04 +0200kiweun(~kiweun@2607:fea8:2a62:9600:4:66e1:4442:741b) (Ping timeout: 245 seconds)
2021-04-27 12:07:08 +0200Stanley00(~stanley00@unaffiliated/stanley00) ()
2021-04-27 12:07:44 +0200__monty__(~toonn@unaffiliated/toonn)
2021-04-27 12:07:56 +0200unlink_(~unlink2@p57b85a36.dip0.t-ipconnect.de) (Ping timeout: 265 seconds)
2021-04-27 12:08:58 +0200heatsink(~heatsink@108-201-191-115.lightspeed.sntcca.sbcglobal.net) (Ping timeout: 252 seconds)
2021-04-27 12:09:03 +0200unlink2(~unlink2@p200300ebcf20460060204d274f2fcc0b.dip0.t-ipconnect.de)
2021-04-27 12:12:32 +0200unlink_(~unlink2@p200300ebcf20460001326b711b7f17ac.dip0.t-ipconnect.de)
2021-04-27 12:12:40 +0200philderbeast(~textual@bras-base-vldvpq5901w-grc-06-184-144-244-252.dsl.bell.ca)
2021-04-27 12:13:23 +0200unlink2(~unlink2@p200300ebcf20460060204d274f2fcc0b.dip0.t-ipconnect.de) (Remote host closed the connection)
2021-04-27 12:13:25 +0200Natch(~natch@c-e070e255.014-297-73746f25.bbcust.telenor.se)
2021-04-27 12:13:33 +0200mmfood(~mmfood@94.234.53.15) (Read error: Connection reset by peer)
2021-04-27 12:18:35 +0200elfets(~elfets@ip-37-201-23-96.hsi13.unitymediagroup.de) (Read error: Connection reset by peer)
2021-04-27 12:20:27 +0200frozenErebus(~frozenEre@37.231.244.249)
2021-04-27 12:21:30 +0200thunderrd(~thunderrd@183.182.110.191) (Ping timeout: 268 seconds)
2021-04-27 12:26:11 +0200daboss(31c7371a@gateway/web/cgi-irc/kiwiirc.com/ip.49.199.55.26) (Quit: Connection closed)
2021-04-27 12:31:31 +0200geowiesnot(~user@87-89-181-157.abo.bbox.fr) (Ping timeout: 252 seconds)
2021-04-27 12:32:23 +0200ekrion(~ffx1@181.58.39.182)
2021-04-27 12:33:04 +0200idhugo_(~idhugo@80-62-116-231-mobile.dk.customer.tdc.net)
2021-04-27 12:34:50 +0200o1lo01ol1o(~o1lo01ol1@bl11-109-140.dsl.telepac.pt) (Remote host closed the connection)
2021-04-27 12:36:11 +0200idhugo(~idhugo@87-49-45-4-mobile.dk.customer.tdc.net) (Ping timeout: 268 seconds)
2021-04-27 12:38:32 +0200kritzefitz(~kritzefit@2003:5b:203b:200::10:49)
2021-04-27 12:40:18 +0200Jesin(~Jesin@pool-72-66-101-18.washdc.fios.verizon.net)
2021-04-27 12:40:45 +0200michalz(~user@185.246.204.123) (Ping timeout: 246 seconds)
2021-04-27 12:50:21 +0200Major_Biscuit(~Major_Bis@82-169-100-198.biz.kpn.net)
2021-04-27 13:00:25 +0200michalz(~user@185.246.204.107)
2021-04-27 13:00:35 +0200ericsagn1(~ericsagne@2405:6580:0:5100:9b9f:be30:ff0e:2bc) (Ping timeout: 260 seconds)
2021-04-27 13:01:33 +0200hendursaga(~weechat@gateway/tor-sasl/hendursaga) (Ping timeout: 240 seconds)
2021-04-27 13:02:10 +0200aVikingTrex(~aVikingTr@2001:8003:340d:d00:b2de:b98:7a93:b0ea)
2021-04-27 13:02:57 +0200is_null(~jpic@pdpc/supporter/professional/is-null) (Ping timeout: 260 seconds)
2021-04-27 13:03:01 +0200sagax(~sagax_nb@213.138.71.146)
2021-04-27 13:03:56 +0200hendursaga(~weechat@gateway/tor-sasl/hendursaga)
2021-04-27 13:07:50 +0200tsaka_(~torstein@athedsl-4519432.home.otenet.gr)
2021-04-27 13:12:39 +0200unlink_(~unlink2@p200300ebcf20460001326b711b7f17ac.dip0.t-ipconnect.de) (Quit: Leaving)
2021-04-27 13:13:36 +0200ericsagn1(~ericsagne@2405:6580:0:5100:d754:fcc4:a1d2:1fa1)
2021-04-27 13:18:15 +0200kiweun(~kiweun@2607:fea8:2a62:9600:d814:7795:cc03:c11e)
2021-04-27 13:22:51 +0200kiweun(~kiweun@2607:fea8:2a62:9600:d814:7795:cc03:c11e) (Ping timeout: 250 seconds)
2021-04-27 13:25:24 +0200tsaka_(~torstein@athedsl-4519432.home.otenet.gr) (Quit: Konversation terminated!)
2021-04-27 13:28:53 +0200Feuermagier(~Feuermagi@213.178.26.41) (Ping timeout: 252 seconds)
2021-04-27 13:29:41 +0200is_null(~jpic@pdpc/supporter/professional/is-null)
2021-04-27 13:36:24 +0200plutoniix(~q@cm-119-76-33-123.revip17.asianet.co.th) (Quit: Leaving)
2021-04-27 13:38:15 +0200davl(~davl@207.154.228.18) (Quit: ...)
2021-04-27 13:38:16 +0200machinedgod(~machinedg@135-23-192-217.cpe.pppoe.ca)
2021-04-27 13:38:38 +0200davl(~davl@207.154.228.18)
2021-04-27 13:38:49 +0200geowiesnot(~user@87-89-181-157.abo.bbox.fr)
2021-04-27 13:44:57 +0200merijn(~merijn@83-160-49-249.ip.xs4all.nl) (Quit: back to writing)
2021-04-27 13:49:09 +0200_bin(~bin@75-54-107-59.lightspeed.hstntx.sbcglobal.net)
2021-04-27 13:49:17 +0200_bin_(~bin@2600:1700:10a1:38d0:219a:3dd:429e:7909) (Ping timeout: 250 seconds)
2021-04-27 13:50:48 +0200frozenErebus(~frozenEre@37.231.244.249) (Ping timeout: 268 seconds)
2021-04-27 13:51:05 +0200knupfer(~Thunderbi@mue-88-130-62-083.dsl.tropolys.de)
2021-04-27 13:52:02 +0200mmfood(~mmfood@94.234.53.15)
2021-04-27 13:52:08 +0200idhugo__(~idhugo@87-49-45-4-mobile.dk.customer.tdc.net)
2021-04-27 13:54:45 +0200idhugo_(~idhugo@80-62-116-231-mobile.dk.customer.tdc.net) (Ping timeout: 265 seconds)
2021-04-27 14:00:04 +0200pie_(~pie_bnc]@unaffiliated/pie-/x-0787662) (Quit: pie_)
2021-04-27 14:02:31 +0200pie_(~pie_bnc]@unaffiliated/pie-/x-0787662)
2021-04-27 14:02:46 +0200drbean_(~drbean@TC210-63-209-217.static.apol.com.tw)
2021-04-27 14:04:12 +0200bitdex(~bitdex@gateway/tor-sasl/bitdex)
2021-04-27 14:05:54 +0200malumore_(~malumore@151.62.126.111)
2021-04-27 14:06:11 +0200ekrion(~ffx1@181.58.39.182) (Remote host closed the connection)
2021-04-27 14:08:32 +0200knupfer(~Thunderbi@mue-88-130-62-083.dsl.tropolys.de) (Ping timeout: 240 seconds)
2021-04-27 14:08:42 +0200malumore(~malumore@151.62.126.111) (Ping timeout: 268 seconds)
2021-04-27 14:10:06 +0200stree(~stree@68.36.8.116) (Ping timeout: 240 seconds)
2021-04-27 14:17:35 +0200bitmagie(~Thunderbi@200116b80690c300997cabc9cf9a1ff7.dip.versatel-1u1.de)
2021-04-27 14:18:00 +0200geekosaur(930099da@rrcs-147-0-153-218.central.biz.rr.com)
2021-04-27 14:19:11 +0200tmciver(~tmciver@cpe-172-101-40-226.maine.res.rr.com) (Ping timeout: 268 seconds)
2021-04-27 14:21:43 +0200enoq(~textual@194-208-146-143.lampert.tv)
2021-04-27 14:22:43 +0200stree(~stree@68.36.8.116)
2021-04-27 14:26:29 +0200johannes_(~johannes@b2b-37-24-119-190.unitymedia.biz) (Quit: leaving)
2021-04-27 14:27:01 +0200ulidtko(~ulidtko@194.54.80.38)
2021-04-27 14:27:23 +0200rdivyanshu(uid322626@gateway/web/irccloud.com/x-mteqqlxhxtokcodc)
2021-04-27 14:27:37 +0200carlomagno(~cararell@148.87.23.13)
2021-04-27 14:28:47 +0200simplegauss(~simplegau@2001:19f0:ac01:247:5400:ff:fe5c:689f) (Ping timeout: 260 seconds)
2021-04-27 14:29:48 +0200pbgc(~pbgc@a89-152-234-147.cpe.netcabo.pt) (Quit: Computer has gone to sleep.)
2021-04-27 14:30:43 +0200thonkpod(~thonkpod@2001:19f0:ac01:b46:5400:1ff:fec7:d73d) (Ping timeout: 248 seconds)
2021-04-27 14:31:06 +0200bitdex(~bitdex@gateway/tor-sasl/bitdex) (Remote host closed the connection)
2021-04-27 14:33:03 +0200aVikingTrex(~aVikingTr@2001:8003:340d:d00:b2de:b98:7a93:b0ea) (Ping timeout: 250 seconds)
2021-04-27 14:38:16 +0200pbgc(~pbgc@a89-152-234-147.cpe.netcabo.pt)
2021-04-27 14:40:33 +0200zebrag(~inkbottle@aaubervilliers-654-1-79-166.w86-212.abo.wanadoo.fr)
2021-04-27 14:40:52 +0200 <maerwald> brave to come in here and ask OOP questions :p
2021-04-27 14:44:11 +0200ddella___(~ddellacos@ool-44c73afa.dyn.optonline.net) (Remote host closed the connection)
2021-04-27 14:45:01 +0200simplegauss(~simplegau@2001:19f0:ac01:247:5400:ff:fe5c:689f)
2021-04-27 14:45:10 +0200ddellacosta(~ddellacos@ool-44c73afa.dyn.optonline.net)
2021-04-27 14:45:25 +0200domenkozar[m](domenkozar@gateway/shell/matrix.org/x-rrfutzikoxlnrwmv) (Changing host)
2021-04-27 14:45:25 +0200domenkozar[m](domenkozar@NixOS/user/domenkozar)
2021-04-27 14:48:08 +0200nicholasbulka(~nicholasb@2601:900:4301:da0:58e6:3a0a:96a:ca2c)
2021-04-27 14:48:09 +0200Pickchea(~private@unaffiliated/pickchea) (Ping timeout: 268 seconds)
2021-04-27 14:48:15 +0200hypercube(~hypercube@2603-6011-f901-9e5b-0000-0000-0000-08cf.res6.spectrum.com)
2021-04-27 14:49:11 +0200ddellacosta(~ddellacos@ool-44c73afa.dyn.optonline.net) (Ping timeout: 240 seconds)
2021-04-27 14:51:18 +0200Tario(~Tario@201.192.165.173)
2021-04-27 14:52:45 +0200tmciver(~tmciver@cpe-172-101-46-34.maine.res.rr.com)
2021-04-27 14:55:33 +0200pavonia(~user@unaffiliated/siracusa) (Quit: Bye!)
2021-04-27 14:56:08 +0200thonkpod(~thonkpod@2001:19f0:ac01:b46:5400:1ff:fec7:d73d)
2021-04-27 14:56:56 +0200Foritus(~buggery@cpc91316-watf11-2-0-cust68.15-2.cable.virginm.net) (Remote host closed the connection)
2021-04-27 14:57:14 +0200Foritus(~buggery@cpc91316-watf11-2-0-cust68.15-2.cable.virginm.net)
2021-04-27 14:58:42 +0200jonathanx(~jonathan@h-176-109.A357.priv.bahnhof.se) (Remote host closed the connection)
2021-04-27 14:59:04 +0200knupfer(~Thunderbi@dynamic-046-114-150-151.46.114.pool.telefonica.de)
2021-04-27 14:59:11 +0200zebrag(~inkbottle@aaubervilliers-654-1-79-166.w86-212.abo.wanadoo.fr) (Quit: Konversation terminated!)
2021-04-27 14:59:29 +0200jonathanx(~jonathan@h-176-109.A357.priv.bahnhof.se)
2021-04-27 15:01:27 +0200simplegauss(~simplegau@2001:19f0:ac01:247:5400:ff:fe5c:689f) (Ping timeout: 260 seconds)
2021-04-27 15:01:37 +0200knupfer(~Thunderbi@dynamic-046-114-150-151.46.114.pool.telefonica.de) (Read error: Connection reset by peer)
2021-04-27 15:02:23 +0200thonkpod(~thonkpod@2001:19f0:ac01:b46:5400:1ff:fec7:d73d) (Ping timeout: 260 seconds)
2021-04-27 15:06:07 +0200mmfood(~mmfood@94.234.53.15) (Ping timeout: 240 seconds)
2021-04-27 15:06:23 +0200urodna(~urodna@unaffiliated/urodna)
2021-04-27 15:10:20 +0200mmfood(~mmfood@185.176.246.69)
2021-04-27 15:12:15 +0200ddellaco_(~ddellacos@ool-44c73afa.dyn.optonline.net)
2021-04-27 15:12:31 +0200mmfood_1(~mmfood@185.176.246.118)
2021-04-27 15:15:29 +0200mmfood(~mmfood@185.176.246.69) (Ping timeout: 265 seconds)
2021-04-27 15:16:52 +0200hyperisco(~hyperisco@d192-186-117-226.static.comm.cgocable.net)
2021-04-27 15:18:55 +0200kiweun(~kiweun@2607:fea8:2a62:9600:5cb2:e875:5c51:8e43)
2021-04-27 15:20:59 +0200simplegauss(~simplegau@2001:19f0:ac01:247:5400:ff:fe5c:689f)
2021-04-27 15:22:58 +0200geowiesnot(~user@87-89-181-157.abo.bbox.fr) (Ping timeout: 260 seconds)
2021-04-27 15:23:45 +0200kiweun(~kiweun@2607:fea8:2a62:9600:5cb2:e875:5c51:8e43) (Ping timeout: 250 seconds)
2021-04-27 15:27:06 +0200thonkpod(~thonkpod@2001:19f0:ac01:b46:5400:1ff:fec7:d73d)
2021-04-27 15:28:30 +0200frozenErebus(~frozenEre@37.231.244.249)
2021-04-27 15:33:51 +0200gaff(~user@49.207.195.160)
2021-04-27 15:34:45 +0200xkapastel(uid17782@gateway/web/irccloud.com/x-wfrommuaxtjqnxrn)
2021-04-27 15:34:52 +0200mnrmnaughawk
2021-04-27 15:34:57 +0200 <ulidtko> what's the way to install a package in both .a and .so versions?
2021-04-27 15:35:08 +0200 <ulidtko> I keep forgetting the incantation for that
2021-04-27 15:35:23 +0200 <ulidtko> -static -dynamic-too flag to GHC or what?
2021-04-27 15:35:26 +0200geowiesnot(~user@i15-les02-ix2-87-89-181-157.sfr.lns.abo.bbox.fr)
2021-04-27 15:36:20 +0200 <gaff> i want to call a polymorphic function, say f :: Ord a => [a] -> [a] -> [a] with different type annotations in the same code (like let result :: [Int] = f [1..3] [5..10] in .... is there a way to do it?
2021-04-27 15:37:08 +0200 <ulidtko> gaff, yes, use {-# LANGUAGE ScopedTypeVariables #-} then you use type specialization in any subexpression
2021-04-27 15:37:34 +0200 <ulidtko> let result = f [1..3] [5..10] :: [Int] would work
2021-04-27 15:37:47 +0200 <gaff> ulidtko: what i mean is that i want to call f with [Int], then [Char], etc.
2021-04-27 15:37:53 +0200 <ulidtko> yes understood
2021-04-27 15:38:16 +0200Lycurgus(~niemand@98.4.118.65)
2021-04-27 15:38:54 +0200 <gaff> the problem i found is that once assign a type annotation, the compiler infers that type. you can change the type in the next call to f.
2021-04-27 15:39:16 +0200 <gaff> you can not change the type anymore
2021-04-27 15:39:28 +0200 <ulidtko> you can
2021-04-27 15:39:34 +0200 <ulidtko> let me show, just a sec
2021-04-27 15:39:39 +0200 <gaff> ok
2021-04-27 15:39:44 +0200hypercube(~hypercube@2603-6011-f901-9e5b-0000-0000-0000-08cf.res6.spectrum.com) (Ping timeout: 260 seconds)
2021-04-27 15:39:57 +0200Valion(~Valion@api.ivido.nl)
2021-04-27 15:41:24 +0200 <ulidtko> gaff, https://i.imgur.com/QjBQRy1.png
2021-04-27 15:41:28 +0200 <gaff> ok
2021-04-27 15:43:52 +0200 <gaff> ok, thank you. i remember trying the same thing but for some reason the comiler growled. let me try it out again with your idea.
2021-04-27 15:44:12 +0200tanuki(~quassel@173.168.178.1)
2021-04-27 15:44:13 +0200 <gaff> ulidtko: thanks. i will get back if i see any more issues.
2021-04-27 15:44:48 +0200proofofkeags(~proofofke@97-118-239-55.hlrn.qwest.net)
2021-04-27 15:45:37 +0200Tuplanolla(~Tuplanoll@91-159-68-239.elisa-laajakaista.fi)
2021-04-27 15:46:17 +0200wavemode(~wavemode@097-070-075-143.res.spectrum.com)
2021-04-27 15:46:20 +0200awkmnrmnaugh
2021-04-27 15:46:24 +0200wavemode(~wavemode@097-070-075-143.res.spectrum.com) (Remote host closed the connection)
2021-04-27 15:46:39 +0200timCF(~i.tkachuk@254-149-20-81.sta.estpak.ee)
2021-04-27 15:47:52 +0200Sgeo(~Sgeo@ool-18b9875e.dyn.optonline.net)
2021-04-27 15:49:20 +0200drbean_(~drbean@TC210-63-209-217.static.apol.com.tw) (Quit: ZNC 1.8.2+cygwin2 - https://znc.in)
2021-04-27 15:49:26 +0200 <pjb> Hey I have an idea! Wouldn't it be simplier if the function f could take sequences of any type? (defun f (x y) (concatenate 'list x y)) (list (f '(1 2 3) '(4 5 6)) (f '(1.1 2.2 3.3) '(4.4 5.5 6.6))) #| --> ((1 2 3 4 5 6) (1.1 2.2 3.3 4.4 5.5 6.6)) |# /just asking
2021-04-27 15:49:48 +0200 <timCF> Hello! Does anybody know "eager" equivalent of `ExceptT e m a` which will not stop computation in case of Left, but will continue accumulating errors in some sort of monoid. Basically I want transformer like `Semigroup e => ValidationT e m a`
2021-04-27 15:51:04 +0200 <ulidtko> WriterT?..
2021-04-27 15:51:33 +0200Major_Biscuit(~Major_Bis@82-169-100-198.biz.kpn.net) (Ping timeout: 240 seconds)
2021-04-27 15:52:24 +0200bitmagie(~Thunderbi@200116b80690c300997cabc9cf9a1ff7.dip.versatel-1u1.de) (Quit: bitmagie)
2021-04-27 15:53:25 +0200 <geekosaur> http://hackage.haskell.org/package/monad-chronicle ?
2021-04-27 15:54:36 +0200 <maerwald> yes, chronicle/These
2021-04-27 15:54:58 +0200zmijunkie(~Adium@87.122.222.91)
2021-04-27 15:55:50 +0200 <timCF> geekosaur: maerwald: thanks a lot guys! This kind of stuff I was not able to learn from "Learn You a Haskell" :)
2021-04-27 15:56:12 +0200zmijunkie1(~Adium@109.90.32.89) (Ping timeout: 240 seconds)
2021-04-27 15:56:45 +0200 <xsperry> > let f = (<>) in (f [1, 2, 3] [4, 5, 6], f [1.1, 2.2, 3.3] [4.4, 5.5, 6.6]) -- pjb
2021-04-27 15:56:47 +0200 <lambdabot> ([1,2,3,4,5,6],[1.1,2.2,3.3,4.4,5.5,6.6])
2021-04-27 15:57:14 +0200 <gaff> ulidtko: can you type annotate the function itself? i mean do something like this: g (f :: [Int] -> [Int]), and then within g, you have g f = q f. likewise, do g (f :: [Char] -> [Char]), g f = q f. here q passes the right type of data to f based on its type. this does not seem possible.
2021-04-27 15:57:15 +0200 <pjb> Ah nice. Then you don't need to specify the type.
2021-04-27 15:58:31 +0200 <ulidtko> gaff, you can't pattern-match on types in haskell. your [Int] -> [Int] or [Char] -> [Char] must go into f's *signature*, not implementation.
2021-04-27 15:59:04 +0200 <gaff> ulidtko: i see.
2021-04-27 15:59:33 +0200 <ulidtko> perhaps if you uncovered what you're trying to achieve, there could be a way
2021-04-27 15:59:50 +0200HannaM(~quassel@p54849510.dip0.t-ipconnect.de)
2021-04-27 16:00:02 +0200thblt(~thblt@unaffiliated/thblt)
2021-04-27 16:00:43 +0200 <gaff> basiccally, i am running quickcheck on a sort function, and i want to sort different types that are instances of Ord, like Char, Int, etc
2021-04-27 16:01:35 +0200 <ulidtko> you'd need to list out all the types you want to test on explicitly
2021-04-27 16:01:53 +0200 <gaff> right now i am just sort [Int]. of course i can manually go in there type a different type annotation, but that is pain. i was wondering if there was a way to do it for different types.
2021-04-27 16:03:21 +0200 <xsperry> pjb, it can be also used with Maybe a, where a is a semigroup
2021-04-27 16:03:29 +0200 <xsperry> > Just "foo" <> Just "bar"
2021-04-27 16:03:31 +0200 <lambdabot> Just "foobar"
2021-04-27 16:03:37 +0200 <xsperry> or even with functions that return Semigroup, ie:
2021-04-27 16:04:10 +0200 <gaff> ulidtko: when you say you can't pattern match on type signatures -- is that because types are determined at compile time?
2021-04-27 16:04:11 +0200 <xsperry> > sortBy (comparing length <> comparing id) (words "a aa b bb c cc z")
2021-04-27 16:04:13 +0200 <lambdabot> ["a","b","c","z","aa","bb","cc"]
2021-04-27 16:04:41 +0200zardoz2(~bc8134e3@217.29.117.252)
2021-04-27 16:05:12 +0200jao(~jao@pdpc/supporter/professional/jao)
2021-04-27 16:05:36 +0200 <thblt> I have a (finite) bunch of objects that link to each other (let's say books and their authors). Is it reasonable/idiomatic to store the objects in some sort of indexed container (eg `Map Int Object`) and have those links represented as indexes? Eg newtype ObjectId = Int; data Book = Book { author :: Int, title :: String}? (The actual model is more complex, just wanted to know if it makes sense)
2021-04-27 16:06:01 +0200kritzefitz(~kritzefit@2003:5b:203b:200::10:49) (Remote host closed the connection)
2021-04-27 16:07:44 +0200 <gaff> ulidtko: i see (on your earlier comment that i need to list out all the types i need to test out explicitly)
2021-04-27 16:08:44 +0200Sheilong(uid293653@gateway/web/irccloud.com/x-wmcvcprqxoaligba)
2021-04-27 16:08:47 +0200immae(immaematri@gateway/shell/matrix.org/x-dzpquvhgzhzvsdfa) (Quit: issued !quit command)
2021-04-27 16:09:35 +0200 <ulidtko> gaff, correct. for the same reason it's not easy (to my knowledge) to have a magic_generator :: Ord a => Gen a which'd spew out generators of various types with Arbitrary and Ord instances. Might be doable, but not easy. Definitely harder than listing those types you care about the most -- and trusting parametric polymorphism to not produce behaviors dependent on specific types.
2021-04-27 16:10:48 +0200 <ulidtko> in other words, if your sorting function under test is parametric in Ord a, than ensuring it works for Ints will ensure it works for any other type
2021-04-27 16:11:45 +0200immae(~immae@2a01:4f8:141:53e7::)
2021-04-27 16:12:03 +0200 <gaff> ulidtko: coorect, absolutely. so you are saying there is no need to test for other types, if things work well for say Int?
2021-04-27 16:12:51 +0200 <gaff> sort function i am testing is parametric in Ord a, by the way.
2021-04-27 16:13:01 +0200acidjnk_new2(~acidjnk@p200300d0c72b9524d9e45372e00f3038.dip0.t-ipconnect.de)
2021-04-27 16:13:07 +0200 <ulidtko> that's a so-called "free theorem" I think. f :: Ord a => [a] -> [a] -> [a] *isn't allowed* to know what a is.
2021-04-27 16:13:20 +0200 <gaff> i see
2021-04-27 16:13:24 +0200 <ulidtko> so if it works on Int, it must work on anything else. yeah
2021-04-27 16:13:41 +0200 <gaff> ulidtko: great. i am relieved.
2021-04-27 16:14:20 +0200 <ulidtko> gaff, nice, glad to help!
2021-04-27 16:14:33 +0200hypercube(~hypercube@2603-6011-f901-9e5b-0000-0000-0000-08cf.res6.spectrum.com)
2021-04-27 16:14:34 +0200acidjnk_new(~acidjnk@p200300d0c72b95883ddaf449c9d144e9.dip0.t-ipconnect.de) (Ping timeout: 245 seconds)
2021-04-27 16:14:37 +0200proofofkeags(~proofofke@97-118-239-55.hlrn.qwest.net) (Ping timeout: 252 seconds)
2021-04-27 16:16:36 +0200waleee-cl(uid373333@gateway/web/irccloud.com/x-yppqkxzvcrpccgyz)
2021-04-27 16:16:58 +0200 <gaff> also, one clarification: when you say you can't match on types, what exactly are you implying? are you saying that something like this can not be done, for example: Case x of {A -> g (f :: [Int] -> [Int]), B -> g (f :: [Char] -> [Char]) }. this can not be done.
2021-04-27 16:17:33 +0200timCF(~i.tkachuk@254-149-20-81.sta.estpak.ee) (Ping timeout: 252 seconds)
2021-04-27 16:18:09 +0200 <ulidtko> this usage isn't pattern-matching on f
2021-04-27 16:18:46 +0200 <gaff> ulidtko: but the usage i describe will not compile
2021-04-27 16:18:55 +0200 <ulidtko> yes
2021-04-27 16:19:04 +0200 <ulidtko> oh wait it could
2021-04-27 16:19:12 +0200 <ulidtko> but it inspects x -- which must be the same type in both case arms
2021-04-27 16:19:27 +0200 <ulidtko> I guess what I'm saying is, not a good example
2021-04-27 16:20:31 +0200ystael(~ystael@209.6.50.55)
2021-04-27 16:20:31 +0200 <gaff> ulidtko: yeah, because it isn't the same type on both arms, it won't compile. and it doesn't.
2021-04-27 16:20:53 +0200mmfood_1(~mmfood@185.176.246.118) (Quit: Leaving)
2021-04-27 16:21:16 +0200 <gaff> i can not imagine any other way to do it.
2021-04-27 16:21:18 +0200rj(~x@gateway/tor-sasl/rj)
2021-04-27 16:21:43 +0200 <ulidtko> you can use type-families to "conceptually" pattern-match on types. that wouldn't look like a case {} expression though
2021-04-27 16:22:06 +0200 <gaff> i see
2021-04-27 16:23:36 +0200 <gaff> so as i understood from what you said earlier, the example i have described is not exactly pattern matching on types?
2021-04-27 16:24:14 +0200Lycurgus(~niemand@98.4.118.65) (Quit: Exeunt)
2021-04-27 16:28:48 +0200 <ulidtko> that's right. it's pattern-match on variable x, of sum-type with constructors A and B
2021-04-27 16:29:14 +0200 <ulidtko> (not on two functions named f with different signatures)
2021-04-27 16:29:55 +0200frozenErebus(~frozenEre@37.231.244.249) (Ping timeout: 268 seconds)
2021-04-27 16:30:32 +0200stree(~stree@68.36.8.116) (Ping timeout: 240 seconds)
2021-04-27 16:31:00 +0200 <ulidtko> (you could as well say, two different specializations of polymorphic f)
2021-04-27 16:34:45 +0200kiweun(~kiweun@2607:fea8:2a62:9600:8cec:67b2:253b:dec)
2021-04-27 16:34:46 +0200cr3(~cr3@192-222-143-195.qc.cable.ebox.net)
2021-04-27 16:35:49 +0200 <gaff> ulidtko: i see
2021-04-27 16:36:18 +0200pengjiz(~user@2601:547:902:6d00::2)
2021-04-27 16:36:54 +0200rdivyanshu(uid322626@gateway/web/irccloud.com/x-mteqqlxhxtokcodc) (Quit: Connection closed for inactivity)
2021-04-27 16:37:18 +0200 <dexterfoo> geekosaur: I tried it and it doesn't work :/
2021-04-27 16:37:24 +0200 <gaff> ulidtko: and that can be done (the case business) because the types in both arms of the case do not match.
2021-04-27 16:37:55 +0200hypercube(~hypercube@2603-6011-f901-9e5b-0000-0000-0000-08cf.res6.spectrum.com) (Quit: WeeChat 3.1)
2021-04-27 16:38:19 +0200 <gaff> sorry, i meant, that can not be done.
2021-04-27 16:39:09 +0200kiweun(~kiweun@2607:fea8:2a62:9600:8cec:67b2:253b:dec) (Ping timeout: 250 seconds)
2021-04-27 16:39:43 +0200Berndt(~Berndt@dynamic-095-112-089-113.95.112.pool.telefonica.de)
2021-04-27 16:39:53 +0200Berndt(~Berndt@dynamic-095-112-089-113.95.112.pool.telefonica.de) (Quit: WeeChat 3.1)
2021-04-27 16:40:10 +0200Berndt(~Berndt@dynamic-095-112-089-113.95.112.pool.telefonica.de)
2021-04-27 16:42:25 +0200Berndt(~Berndt@dynamic-095-112-089-113.95.112.pool.telefonica.de) ()
2021-04-27 16:42:53 +0200slack1256(~slack1256@200-112-79-247.baf.movistar.cl)
2021-04-27 16:43:54 +0200hypercube(~hypercube@2603-6011-f901-9e5b-0000-0000-0000-08cf.res6.spectrum.com)
2021-04-27 16:44:13 +0200stree(~stree@68.36.8.116)
2021-04-27 16:44:18 +0200 <ulidtko> gaff, well... not exactly. You _can_ have different types in case arms, e.g. main = case bool_variable of {True -> print 3.14; False -> print ([1..4] :: [Int])}. You cannot have different _return types_ so to say, the expressions in case arms must unify; this won't work: print (case bool_variable of {True -> 3.14; False -> ([1..4] :: [Int])})
2021-04-27 16:44:27 +0200sh9(~sh9@softbank060116136158.bbtec.net) (Quit: WeeChat 2.8)
2021-04-27 16:44:41 +0200 <slack1256> My failing HLS terminates on emacs with the following message: "exited with status exit(check corresponding stderr buffer for details" but I don't see any emacs buffer with info. Does anyone have any idea where to find it?
2021-04-27 16:45:05 +0200 <slack1256> Nevermind, found it.
2021-04-27 16:50:00 +0200 <gaff> ulidtko: correct. what confuses me is in the example i described -- g (f :: [Int] -> [Int]), g (f :: [Char] -> [Char]), g is polymorphic, having the type signature g :: Ord a => ([a] -> [a}) -> IO (), yet the compiler complains, even though both arms of the case statement return IO (). i couldn't understand that.
2021-04-27 16:51:03 +0200 <ulidtko> gaff, can you post a self-contained example? i think that usage should be fine, it's likely you're missing something
2021-04-27 16:51:15 +0200 <gaff> ok
2021-04-27 16:52:12 +0200idhugo__(~idhugo@87-49-45-4-mobile.dk.customer.tdc.net) (Ping timeout: 240 seconds)
2021-04-27 16:52:46 +0200 <joel135> I was looking at some purescript docs and saw "setPersonPostcode pc p = p { address { postCode = pc } }". First question: Does haskell have the same syntax feature? Second question: Now imagine that there are more clauses after address and after postCode. Can this be achieved with a haskell lens library?
2021-04-27 16:53:39 +0200 <ulidtko> joel135, yes and yes. see "record update syntax", lens can do it in a different way
2021-04-27 16:59:23 +0200 <geekosaur> dexterfoo, sorry, what is the context of this? I've lost it
2021-04-27 17:00:14 +0200 <nicholasbulka> how might I write a function that requires subtracting 1 on every second iteration?
2021-04-27 17:00:17 +0200 <nicholasbulka> for example
2021-04-27 17:00:34 +0200 <nicholasbulka> next y n = reverse $ transpose (chunks n $ concat $ tail y)
2021-04-27 17:01:12 +0200 <nicholasbulka> next (next (next (next (next (next (next y 4 ) 3 ) 3 ) 2) 2 ) 1) 1
2021-04-27 17:02:03 +0200 <nicholasbulka> I'm basically flipping rotating a matrix to deconstruct it in a spiral fashion.
2021-04-27 17:02:40 +0200 <joel135> ulidtko: I can't find how the syntax works recursively https://paste.tomsmeding.com/UkviUQv0
2021-04-27 17:03:19 +0200 <joel135> For the lens approach, could you show me / link to an example like that?
2021-04-27 17:05:35 +0200bennofs_(~quassel@x4dbffbc2.dyn.telefonica.de) (Read error: Connection reset by peer)
2021-04-27 17:05:56 +0200bennofs_(~quassel@x4dbffbc2.dyn.telefonica.de)
2021-04-27 17:06:59 +0200hiroaki(~hiroaki@2a02:8108:8c40:2bb8:4afc:980e:3b22:8734) (Ping timeout: 260 seconds)
2021-04-27 17:08:40 +0200cole-h(~cole-h@c-73-48-197-220.hsd1.ca.comcast.net)
2021-04-27 17:09:57 +0200zmijunkie1(~Adium@109.90.32.89)
2021-04-27 17:11:50 +0200zmijunkie(~Adium@87.122.222.91) (Ping timeout: 268 seconds)
2021-04-27 17:13:35 +0200jespada(~jespada@87.74.37.248) (Quit: Leaving)
2021-04-27 17:14:32 +0200ep1ctetus(~epictetus@ip72-194-54-201.sb.sd.cox.net)
2021-04-27 17:15:09 +0200 <gaff> ulidtko: see https://pastebin.com/SXSDri7q for an example
2021-04-27 17:17:31 +0200enoq(~textual@194-208-146-143.lampert.tv) (Quit: Textual IRC Client: www.textualapp.com)
2021-04-27 17:20:47 +0200jgt(~jgt@78.162.43.217) (Ping timeout: 240 seconds)
2021-04-27 17:21:29 +0200idhugo__(~idhugo@80-62-116-231-mobile.dk.customer.tdc.net)
2021-04-27 17:21:29 +0200jgt(~jgt@78.162.43.217)
2021-04-27 17:21:56 +0200aerona(~aerona@2600:6c54:4600:f300:79a1:e32c:5e1f:ee48)
2021-04-27 17:24:34 +0200 <gaff> that code i pasted doesn't compile.
2021-04-27 17:24:43 +0200 <gaff> i am not exactly clear why
2021-04-27 17:25:36 +0200 <gaff> also, i there anyother way to rewrite it?
2021-04-27 17:25:50 +0200geekosaur(930099da@rrcs-147-0-153-218.central.biz.rr.com) (Quit: Connection closed)
2021-04-27 17:26:02 +0200 <gaff> is there any other way to rewrite it?
2021-04-27 17:26:49 +0200geekosaur(930099da@rrcs-147-0-153-218.central.biz.rr.com)
2021-04-27 17:28:56 +0200Deide(~Deide@217.155.19.23)
2021-04-27 17:30:25 +0200Sarcarean(4582bfd4@h69-130-191-212.bendor.broadband.dynamic.tds.net) (Quit: Connection closed)
2021-04-27 17:31:09 +0200wroathe(~wroathe@c-68-54-25-135.hsd1.mn.comcast.net)
2021-04-27 17:31:28 +0200 <gaff> ulidtko: the stuff i pasted at https://pastebin.com/SXSDri7q pretty much simulates the problem i have described earlier.
2021-04-27 17:32:46 +0200 <joel135> gaff: I may be wrong, but isn't this a Rank-N types issue?
2021-04-27 17:33:39 +0200zmijunkie(~Adium@87.122.222.91)
2021-04-27 17:33:42 +0200 <gaff> joel135: i am not sure what you are saying.
2021-04-27 17:34:11 +0200 <joel135> let me see if i can solve it with that idea, hold on
2021-04-27 17:35:16 +0200 <gaff> basically, once the type is set in one case branch, the compiler doesn't allow another type annotation in a different branch of the case expression, although both branches return IO ().
2021-04-27 17:35:40 +0200zmijunkie1(~Adium@109.90.32.89) (Ping timeout: 252 seconds)
2021-04-27 17:36:11 +0200 <ulidtko> indeed Rank-N types, I can't seem to solve it... "GHC doesn't yet support impredicative polymorphism"
2021-04-27 17:36:36 +0200 <gaff> ulidtko: what does it mean really?
2021-04-27 17:37:19 +0200 <ulidtko> gaff, would should be the type for this value? [(0,f),(1,h)]
2021-04-27 17:37:35 +0200 <ulidtko> it's a heterogeneous list, see
2021-04-27 17:38:04 +0200 <gaff> f and h have same type signatures
2021-04-27 17:38:09 +0200nineonine(~nineonine@S0106a0ff7073d5d5.vf.shawcable.net)
2021-04-27 17:38:38 +0200 <ulidtko> you're right, but the compiler disagrees... hmmm
2021-04-27 17:38:57 +0200nineonine(~nineonine@S0106a0ff7073d5d5.vf.shawcable.net) (Remote host closed the connection)
2021-04-27 17:39:37 +0200nineonine(~nineonine@2604:3d08:7785:9600:18c3:826f:bcf6:7789)
2021-04-27 17:39:40 +0200 <gaff> strange situation, really
2021-04-27 17:39:46 +0200nineonine(~nineonine@2604:3d08:7785:9600:18c3:826f:bcf6:7789) (Remote host closed the connection)
2021-04-27 17:40:00 +0200nineonine(~nineonine@2604:3d08:7785:9600:8da3:57c2:b9e6:3845)
2021-04-27 17:40:02 +0200 <ulidtko> am indeed puzzled
2021-04-27 17:40:36 +0200 <joel135> Rank-N types here means that while f and h have the same type signatures, the type variable 'a' is instantiated at the point where f and h are used as input. That is, the function which accepts f and h does not get to choose a internally.
2021-04-27 17:41:04 +0200 <gaff> ulidtko: here is why the compiler disagrees. the compiler infers the type from the first branch, and then it says the second branch doesn't match.
2021-04-27 17:41:14 +0200 <joel135> ^
2021-04-27 17:41:30 +0200 <ulidtko> yea, some appropriately-placed forall's should get this working
2021-04-27 17:41:43 +0200 <joel135> yes i think so too
2021-04-27 17:42:35 +0200 <gaff> forall placed where? i am not sure ...
2021-04-27 17:44:02 +0200justanotheruser(~justanoth@unaffiliated/justanotheruser)
2021-04-27 17:44:09 +0200ericsagn1(~ericsagne@2405:6580:0:5100:d754:fcc4:a1d2:1fa1) (Ping timeout: 245 seconds)
2021-04-27 17:44:12 +0200 <gaff> ulidtko: i think it has something to do with this stuff being within mapM_?
2021-04-27 17:44:39 +0200 <joel135> i am getting "GHC doesn't yet support impredicative polymorphism" too now :(
2021-04-27 17:45:06 +0200 <ulidtko> yes the g and h must get packed into a single homogeneous list (implying same types)
2021-04-27 17:45:35 +0200 <gaff> i am using ghc 8.10.4. no such error for me.
2021-04-27 17:45:41 +0200 <joel135> (I tried this way of analysing the problem https://paste.tomsmeding.com/HNa0DhEb)
2021-04-27 17:46:44 +0200othe1(~othe@195.140.213.38) (Remote host closed the connection)
2021-04-27 17:46:46 +0200nut(~user@roc37-h01-176-170-197-243.dsl.sta.abo.bbox.fr)
2021-04-27 17:46:51 +0200 <joel135> related https://stackoverflow.com/questions/56448814/why-is-impredicative-polymorphism-allowed-only-for-fu…
2021-04-27 17:47:04 +0200acidjnk_new2(~acidjnk@p200300d0c72b9524d9e45372e00f3038.dip0.t-ipconnect.de) (Ping timeout: 245 seconds)
2021-04-27 17:48:08 +0200 <ulidtko> moving those to a top-level binding inputs = [(0, f), (1, h)] + NoMonomorphismRestriction moves to the next error
2021-04-27 17:48:09 +0200 <nicholasbulka> I can't seem to figure out how to get exhaustive patterns for this recursion definition:
2021-04-27 17:48:22 +0200 <nicholasbulka> spiral [] = []
2021-04-27 17:48:22 +0200 <nicholasbulka> spiral (x:xs) = x ++ spiral(reverse $ Lst.transpose (chunks (length xs) $ concat xs))
2021-04-27 17:48:30 +0200 <nicholasbulka> takes a [[Int]] -> [Int}
2021-04-27 17:48:32 +0200jgt(~jgt@78.162.43.217) (Ping timeout: 240 seconds)
2021-04-27 17:48:41 +0200 <c_wraith> joel135: note that the version of GHC currently in pre-release testing makes ImpredicativePolymorphism actually work better
2021-04-27 17:49:03 +0200nineonine(~nineonine@2604:3d08:7785:9600:8da3:57c2:b9e6:3845) (Remote host closed the connection)
2021-04-27 17:49:11 +0200landonf(landonf@mac68k.info) (Excess Flood)
2021-04-27 17:49:15 +0200 <joel135> i see, i am only using 8.8.4
2021-04-27 17:49:28 +0200 <gaff> joel135: i think what you are referrring to is another type of problem, where the forall is not placed outermost in the type signature.
2021-04-27 17:49:43 +0200 <joel135> isn't it the same problem?
2021-04-27 17:50:24 +0200kiweun(~kiweun@2607:fea8:2a62:9600:85b6:a1c5:df8:4090)
2021-04-27 17:50:46 +0200 <nut> Is it feasible to create wrappers of the entire Lapack, Blas, gsl etc. with inline-c ? If so, we can create a Pandas-like lib in Haskell, wouldn't it be nice?
2021-04-27 17:50:56 +0200landonf(landonf@mac68k.info)
2021-04-27 17:51:10 +0200 <gaff> no, as i understand it, f :: forall a. Ord a => [a] -> [a] is different from f :: [forall a. Ord a => a -> a]
2021-04-27 17:51:31 +0200 <ulidtko> it is different
2021-04-27 17:51:31 +0200 <joel135> yes that's true
2021-04-27 17:51:45 +0200 <geekosaur> nicholasbulka, what pattern does it claim isn't covered?
2021-04-27 17:51:50 +0200 <joel135> the stackoverflow link also says so, i see
2021-04-27 17:51:59 +0200frozenErebus(~frozenEre@37.231.244.249)
2021-04-27 17:53:09 +0200 <nicholasbulka> where could I find that in ghci
2021-04-27 17:53:21 +0200 <nicholasbulka> I don't know is the short of it
2021-04-27 17:53:48 +0200 <geekosaur> if you are getting an inexhaustive patterns warning it should also say which patterns it thinks aren't included
2021-04-27 17:54:03 +0200 <geekosaur> oh, ghci
2021-04-27 17:54:20 +0200heatsink(~heatsink@108-201-191-115.lightspeed.sntcca.sbcglobal.net)
2021-04-27 17:54:20 +0200 <geekosaur> you need to put both definitions on the same line, separated by a semicolon
2021-04-27 17:54:34 +0200 <geekosaur> otherwise ghci doesn't know they go together
2021-04-27 17:54:45 +0200 <monochrom> In the long run you should use an editor, a filename, and :load
2021-04-27 17:54:59 +0200kiweun(~kiweun@2607:fea8:2a62:9600:85b6:a1c5:df8:4090) (Ping timeout: 245 seconds)
2021-04-27 17:55:12 +0200 <nicholasbulka> right
2021-04-27 17:55:13 +0200 <nicholasbulka> ok
2021-04-27 17:55:24 +0200 <ulidtko> or use the :{ :} multiline braces
2021-04-27 17:55:30 +0200 <monochrom> By the time you have 3 lines of code and after entering the 3rd line you realize you need to change the 1st line you've lost.
2021-04-27 17:55:46 +0200 <monochrom> This is why I refuse to bring up the :{ :} feature.
2021-04-27 17:56:00 +0200 <monochrom> It encourages the wrong habits.
2021-04-27 17:56:09 +0200 <joel135> ulidtko gaff: solved it https://paste.tomsmeding.com/qkTRpcFx
2021-04-27 17:56:10 +0200 <ulidtko> fair enough, it's a crappy workaround
2021-04-27 17:56:11 +0200 <monochrom> Entering your 100-line program at the prompt?
2021-04-27 17:56:17 +0200 <c_wraith> yeah, if you use semicolons you are still on the same line and can edit it. :P
2021-04-27 17:56:32 +0200 <c_wraith> and only 100? you're quitting so early!
2021-04-27 17:56:33 +0200 <ulidtko> joel135, ahhh yes. nice!
2021-04-27 17:56:48 +0200 <joel135> the stackoverflow link had the answer
2021-04-27 17:56:53 +0200 <monochrom> Do people enter shell scripts at the shell prompt just because they can?
2021-04-27 17:57:06 +0200 <c_wraith> sometimes, when it's appropriate
2021-04-27 17:57:11 +0200ericsagn1(~ericsagne@2405:6580:0:5100:7b81:a13d:7f4a:d3e9)
2021-04-27 17:57:20 +0200 <geekosaur> ^
2021-04-27 17:58:28 +0200 <ulidtko> joel135, so the trick is to make it clear where the dictionary packing & unpacking happens. instructive, TIL
2021-04-27 17:58:42 +0200knupfer(~Thunderbi@200116b82b9c4f0069e2a2a836aa8e3f.dip.versatel-1u1.de)
2021-04-27 17:58:45 +0200 <nicholasbulka> that worked; thank you ;)
2021-04-27 17:58:58 +0200 <monochrom> Well, I am using the fuzzy divide that, e.g., when I enter a for-loop and the body is one short command, e.g., "for i in * ; do rm $i.c; done", it doesn't count as a script, it's just a long command.
2021-04-27 17:59:07 +0200heatsink(~heatsink@108-201-191-115.lightspeed.sntcca.sbcglobal.net) (Ping timeout: 252 seconds)
2021-04-27 17:59:44 +0200 <gaff> joel135: it works ...
2021-04-27 18:00:10 +0200ChrisMarquardt(~ChrisMarq@185.204.1.185)
2021-04-27 18:00:12 +0200 <joel135> You have to modularize your code, it's a feature! :-)
2021-04-27 18:00:21 +0200 <gaff> but i think there might be a cleaner way, though i am not sure
2021-04-27 18:00:26 +0200nut(~user@roc37-h01-176-170-197-243.dsl.sta.abo.bbox.fr) (Remote host closed the connection)
2021-04-27 18:00:34 +0200heatsink(~heatsink@108-201-191-115.lightspeed.sntcca.sbcglobal.net)
2021-04-27 18:00:46 +0200 <DigitalKiwi> surely i'm not the only person who regularly writes 1 line bash scripts that end up being 15 after refactoring
2021-04-27 18:00:58 +0200nut(~user@roc37-h01-176-170-197-243.dsl.sta.abo.bbox.fr)
2021-04-27 18:01:14 +0200 <geekosaur> no, but I also know how to use history to retrieve that line or so into a file to flesh it out
2021-04-27 18:01:23 +0200 <gaff> joel135: thanks much, by the way.
2021-04-27 18:01:33 +0200 <joel135> i learned as well :)
2021-04-27 18:01:40 +0200 <DigitalKiwi> yeah that's what i do
2021-04-27 18:01:49 +0200 <gaff> yeah
2021-04-27 18:02:15 +0200 <ulidtko> monochrom, you could also set EDITOR and use alt-e in fish/zsh, ^Xe in bash, and so edit the multi-line command "on the fly" without touching a file
2021-04-27 18:02:22 +0200 <c_wraith> I tend to write a lot of code specifically to test my answers for questions. A lot of the time I can get away with long single lines in ghci to verify the parts I want to double-check
2021-04-27 18:03:08 +0200 <monochrom> I do that too.
2021-04-27 18:03:16 +0200 <ulidtko> occasionally useful, isn't it
2021-04-27 18:03:44 +0200 <c_wraith> anything I want to *use* I keep in a file. But sometimes that's not what I'm doing. :)
2021-04-27 18:03:51 +0200proofofkeags(~proofofke@205.209.28.54)
2021-04-27 18:05:19 +0200 <ulidtko> joel135, getting back to your record syntax inquiry. u{b=Baz{c=44}} -- this works, you've missed an '='
2021-04-27 18:05:36 +0200 <joel135> oh i'll try that, thanks
2021-04-27 18:06:34 +0200justsomeguy(~justsomeg@unaffiliated/--/x-3805311)
2021-04-27 18:06:44 +0200 <ulidtko> there's lens-tutorial package with plenty examples, also many recorded talks, I don't know any better materials for lens. Too dumb yet for that profunctor stuff :(
2021-04-27 18:07:09 +0200 <joel135> `w = u {b = {c = 44}}' has a parse error
2021-04-27 18:07:21 +0200 <joel135> oh i got it
2021-04-27 18:08:47 +0200 <joel135> now i get this https://paste.tomsmeding.com/rXWA9fs4
2021-04-27 18:09:02 +0200 <joel135> maybe haskell doesn't support it after all?
2021-04-27 18:09:28 +0200 <nicholasbulka> I'm closer now, with the following function:
2021-04-27 18:09:37 +0200 <geekosaur> it doesn't support the shorthand there
2021-04-27 18:09:56 +0200 <nicholasbulka> spiral [] = [] ; spiral (x:xs) = x ++ spiral(reverse $ transpose (chunks (length (xs !! 0) ) $ concat xs))
2021-04-27 18:10:06 +0200 <nicholasbulka> but now I am getting this error
2021-04-27 18:10:08 +0200zaquest(~notzaques@5.128.210.178) (Quit: Leaving)
2021-04-27 18:10:21 +0200 <nicholasbulka> spiral [[1,2,3,4],[5,6,7,8],[9,10,11,12],[13,14,15,16]]
2021-04-27 18:10:21 +0200 <nicholasbulka> [1,2,3,4,8,12,16,15,14,13,9,5,6,7,11,10*** Exception: Prelude.!!: index too large
2021-04-27 18:10:50 +0200 <joel135> i think i'll look into lens-tutorial
2021-04-27 18:11:02 +0200dibblego(~dibblego@haskell/developer/dibblego) (Ping timeout: 260 seconds)
2021-04-27 18:11:02 +0200 <ulidtko> joel135, I'll refer to SO, the accepted answer covers pretty well https://stackoverflow.com/questions/7365425/is-there-a-haskell-idiom-for-updating-a-nested-data-st…
2021-04-27 18:11:09 +0200zaquest(~notzaques@5.128.210.178)
2021-04-27 18:11:23 +0200 <nicholasbulka> it is seemingly doing the right thing but fails when indexing that xs !! 0 I believe ... I can't seem to get the pattern matching right for the degenerate case
2021-04-27 18:11:24 +0200 <ulidtko> though I'm worried if GADTs play well with lens
2021-04-27 18:11:51 +0200 <c_wraith> in general they don't
2021-04-27 18:12:10 +0200 <c_wraith> in the same way record accessors don't play well with GADTs
2021-04-27 18:13:13 +0200 <nicholasbulka> trying to add ; spiral (x:[]) = [] gives me a pattern redundancy error
2021-04-27 18:13:41 +0200cfricke(~cfricke@unaffiliated/cfricke) (Quit: WeeChat 3.1)
2021-04-27 18:13:50 +0200 <geekosaur> move that before the spiral x:xs case
2021-04-27 18:14:01 +0200 <joel135> i see
2021-04-27 18:14:01 +0200 <nicholasbulka> ah yes
2021-04-27 18:14:11 +0200 <nicholasbulka> perfect! thanks a lot
2021-04-27 18:17:04 +0200gaff(~user@49.207.195.160) (Ping timeout: 245 seconds)
2021-04-27 18:19:06 +0200dibblego(~dibblego@122-199-1-30.ip4.superloop.com)
2021-04-27 18:19:06 +0200dibblego(~dibblego@122-199-1-30.ip4.superloop.com) (Changing host)
2021-04-27 18:19:06 +0200dibblego(~dibblego@haskell/developer/dibblego)
2021-04-27 18:19:15 +0200jgt(~jgt@78.162.43.217)
2021-04-27 18:21:03 +0200paravida(~mychateau@71.215.110.96)
2021-04-27 18:21:58 +0200hiroaki(~hiroaki@2a02:8108:8c40:2bb8:b8c4:49ae:2ce4:1808)
2021-04-27 18:22:00 +0200MidAutumnHotaru(~MidAutumn@unaffiliated/midautumnhotaru) (Quit: Quit 啾)
2021-04-27 18:22:34 +0200tzh(~tzh@c-24-21-73-154.hsd1.or.comcast.net)
2021-04-27 18:22:40 +0200MidAutumnHotaru(~MidAutumn@unaffiliated/midautumnhotaru)
2021-04-27 18:25:11 +0200jgt(~jgt@78.162.43.217) (Ping timeout: 240 seconds)
2021-04-27 18:25:41 +0200nineonine(~nineonine@2604:3d08:7785:9600:18c3:826f:bcf6:7789)
2021-04-27 18:28:48 +0200andreas303(~andreas@gateway/tor-sasl/andreas303) (Remote host closed the connection)
2021-04-27 18:29:28 +0200andreas303(~andreas@gateway/tor-sasl/andreas303)
2021-04-27 18:32:15 +0200nineonine(~nineonine@2604:3d08:7785:9600:18c3:826f:bcf6:7789) (Ping timeout: 250 seconds)
2021-04-27 18:33:08 +0200Guest_22(4bb93e3c@cpe-75-185-62-60.columbus.res.rr.com)
2021-04-27 18:33:24 +0200gitgood(~gitgood@80-44-9-246.dynamic.dsl.as9105.com)
2021-04-27 18:34:34 +0200Major_Biscuit(~Major_Bis@82-169-100-198.biz.kpn.net)
2021-04-27 18:38:25 +0200heatsink(~heatsink@108-201-191-115.lightspeed.sntcca.sbcglobal.net) (Remote host closed the connection)
2021-04-27 18:40:28 +0200howdoi(uid224@gateway/web/irccloud.com/x-yrhcwqdqfhhzcxcx)
2021-04-27 18:45:01 +0200nineonine(~nineonine@2604:3d08:7785:9600:18c3:826f:bcf6:7789)
2021-04-27 18:47:46 +0200heatsink(~heatsink@108-201-191-115.lightspeed.sntcca.sbcglobal.net)
2021-04-27 18:47:55 +0200letmein(~letmein@2601:1c1:4200:938f:f8bf:6a67:4eed:b2c1)
2021-04-27 18:48:12 +0200guest7682358928(c9dbea7b@gateway/web/cgi-irc/kiwiirc.com/ip.201.219.234.123) (Quit: Ping timeout (120 seconds))
2021-04-27 18:48:43 +0200 <jonathanx> is it possible to use mixins in stack? I want to use Relude, and would prefer not to switch to cabal
2021-04-27 18:49:23 +0200 <carbolymer> What's mixin?
2021-04-27 18:50:06 +0200 <yushyin> jonathanx: mixins are the reason I switched back to cabal
2021-04-27 18:51:04 +0200 <yushyin> carbolymer: https://cabal.readthedocs.io/en/3.4/cabal-package.html?#pkg-field-mixins
2021-04-27 18:51:34 +0200 <monochrom> aka backpack
2021-04-27 18:52:27 +0200stree(~stree@68.36.8.116) (Ping timeout: 260 seconds)
2021-04-27 18:54:31 +0200 <monochrom> I learned backpack from the backpack thesis: https://github.com/ezyang/thesis/releases
2021-04-27 18:54:49 +0200 <monochrom> Wait I helped him fix typoes?!
2021-04-27 18:55:15 +0200geekosaur(930099da@rrcs-147-0-153-218.central.biz.rr.com) (Quit: Connection closed)
2021-04-27 18:55:29 +0200jgt(~jgt@78.162.43.217)
2021-04-27 18:57:46 +0200 <lechner> Hi, I realize Purescript isn't Haskell but I use both and have a question about Applicative fuctors. Why please can the code in the link not be written as port <- parseInt $ fromMaybe "8080" $ lookupEnv "PORT" ? Is it only because I am already in the Effect monad? Sorry about the newbie question, and thanks!
2021-04-27 18:57:48 +0200 <lechner> https://github.com/purescript-express/purescript-express/blob/master/examples/src/ToDoServer.purs#…
2021-04-27 18:57:57 +0200 <lechner> functors
2021-04-27 18:58:57 +0200 <Uniaika> lechner: yes, <$> is fmap
2021-04-27 18:59:16 +0200 <Uniaika> and the value you want to operate on (with fromMaybe, parseInt), is wrapped in a functor
2021-04-27 18:59:29 +0200 <monochrom> <<< is function composition, "."
2021-04-27 18:59:35 +0200 <Uniaika> and do you apply functions to values that are in Functors… ? with fmap :)
2021-04-27 19:00:22 +0200bennofs_(~quassel@x4dbffbc2.dyn.telefonica.de) (Ping timeout: 252 seconds)
2021-04-27 19:00:22 +0200jgt(~jgt@78.162.43.217) (Ping timeout: 268 seconds)
2021-04-27 19:00:45 +0200 <monochrom> Generally you have to respect types as a minimum requirement.
2021-04-27 19:01:30 +0200 <monochrom> If you have f::X->Y and m :: Effect X, then "f m" makes no sense, no matter how intuitive it is to you.
2021-04-27 19:01:35 +0200 <int-e> . o O ( "That is *Sir* Type to you, scumbag!" )
2021-04-27 19:01:43 +0200finn_elija(~finn_elij@gateway/tor-sasl/finnelija/x-67402716) (Remote host closed the connection)
2021-04-27 19:02:04 +0200finn_elija(~finn_elij@gateway/tor-sasl/finnelija/x-67402716)
2021-04-27 19:02:25 +0200Guest_22(4bb93e3c@cpe-75-185-62-60.columbus.res.rr.com) (Quit: Connection closed)
2021-04-27 19:02:27 +0200 <monochrom> "fmap f m" is legal. Still, I would encourage you to ask yourself do you really know that it does what you want.
2021-04-27 19:03:35 +0200bennofs_(~quassel@x4dbffbc2.dyn.telefonica.de)
2021-04-27 19:03:57 +0200 <monochrom> In this particular example, I can be talked into not using fmap aka <$>.
2021-04-27 19:04:13 +0200 <monochrom> portString <- lookupEnv "PORT"
2021-04-27 19:04:37 +0200 <monochrom> let port = parseInt (fromMaybe "8080" portString)
2021-04-27 19:04:44 +0200 <monochrom> I can be talked into that.
2021-04-27 19:05:02 +0200 <monochrom> But I will not be talked into $ $ $ $ $
2021-04-27 19:05:27 +0200stree(~stree@68.36.8.116)
2021-04-27 19:05:30 +0200werneta(~werneta@70-142-214-115.lightspeed.irvnca.sbcglobal.net) (Quit: Lost terminal)
2021-04-27 19:05:43 +0200 <lechner> <- lifts the Effect, so we can use the more basic operators, right?
2021-04-27 19:06:00 +0200jgt(~jgt@78.162.43.217)
2021-04-27 19:06:07 +0200 <monochrom> I don't know what "lift" means for this. Especially for this.
2021-04-27 19:06:12 +0200kiweun(~kiweun@2607:fea8:2a62:9600:d8d7:245f:2a72:5f1b)
2021-04-27 19:06:23 +0200kuribas(~user@ptr-25vy0i7u5k5fyxhyy6l.18120a2.ip6.access.telenet.be) (Remote host closed the connection)
2021-04-27 19:06:45 +0200Gurkenglas(~Gurkengla@unaffiliated/gurkenglas)
2021-04-27 19:06:47 +0200 <monochrom> But I understand: lookupEnv "PORT" >>= \portString -> ...
2021-04-27 19:07:00 +0200werneta(~werneta@70-142-214-115.lightspeed.irvnca.sbcglobal.net)
2021-04-27 19:07:22 +0200justsomeguy(~justsomeg@unaffiliated/--/x-3805311) (Quit: WeeChat 3.0.1)
2021-04-27 19:08:17 +0200 <monochrom> Even for "fmap f m", I wouldn't say "lift".
2021-04-27 19:08:51 +0200 <monochrom> I know lots of people say "lift". I think it's because they're too lazy to really ask themselve what it would mean.
2021-04-27 19:09:16 +0200 <lechner> what does it mean, please?
2021-04-27 19:09:49 +0200 <monochrom> Why is "Effect X" higher than "X", such that fmap is "lifting" from X to "Effect X"? Why isn't it demoting?
2021-04-27 19:09:58 +0200 <monochrom> or lateral side-moving?
2021-04-27 19:10:49 +0200kiweun(~kiweun@2607:fea8:2a62:9600:d8d7:245f:2a72:5f1b) (Ping timeout: 245 seconds)
2021-04-27 19:10:51 +0200 <monochrom> "fmap f m" has the same effectful behaviour as "m", but the answer it gives is transformed by f.
2021-04-27 19:10:51 +0200 <lechner> fwiw, i actually mant "lift off" in the sense that it leaves X
2021-04-27 19:11:19 +0200 <lechner> is there a way I could use an integer port as default (which would require parseString to pass through a Maybe)?
2021-04-27 19:15:16 +0200 <monochrom> Yes but it requires knowing that Maybe is a Functor instance too, that it also has its fmap.
2021-04-27 19:15:39 +0200 <monochrom> So now you have two fmap's, one for Effect, the other for Maybe. I don't know whether it's cute or annoying to you.
2021-04-27 19:15:45 +0200vaibhavsagar(vaibhavsag@gateway/shell/matrix.org/x-nutshnhfgisxgkne)
2021-04-27 19:15:46 +0200 <monochrom> But it can go like this:
2021-04-27 19:17:35 +0200idhugo__(~idhugo@80-62-116-231-mobile.dk.customer.tdc.net) (Ping timeout: 252 seconds)
2021-04-27 19:19:15 +0200jonathanx(~jonathan@h-176-109.A357.priv.bahnhof.se) (Remote host closed the connection)
2021-04-27 19:19:24 +0200 <lechner> i still like your first alternative the best. with <<< being function composition, could it also have been written as let port = (parseInt . fromMaybe) "8080" portString ?
2021-04-27 19:19:34 +0200 <monochrom> fmap (fromMaybe 8080 . fmap parseInt) lookupEnv "PORT"
2021-04-27 19:19:39 +0200jonathanx(~jonathan@h-176-109.A357.priv.bahnhof.se)
2021-04-27 19:19:56 +0200 <monochrom> err
2021-04-27 19:20:00 +0200 <monochrom> fmap (fromMaybe 8080 . fmap parseInt) (lookupEnv "PORT")
2021-04-27 19:20:34 +0200 <lechner> that's getting a bit too complicated for me
2021-04-27 19:21:03 +0200obfusk(~quassel@a82-161-150-56.adsl.xs4all.nl)
2021-04-27 19:21:11 +0200nickmt(5b0624c1@p5b0624c1.dip0.t-ipconnect.de)
2021-04-27 19:21:23 +0200ubert(~Thunderbi@91.141.3.200.wireless.dyn.drei.com)
2021-04-27 19:22:41 +0200 <lechner> i think i meant to write that instead just now let port = (parseInt . fromMaybe "8080") portString ?
2021-04-27 19:23:25 +0200 <monochrom> What does algebra say which one it is?
2021-04-27 19:23:41 +0200 <monochrom> Not intuition. Algebra.
2021-04-27 19:23:45 +0200ADG1089(~aditya@171.76.29.233)
2021-04-27 19:23:55 +0200ADG1089(~aditya@171.76.29.233) (Client Quit)
2021-04-27 19:24:01 +0200 <nickmt> If f and g are functors I find it natural to think that `fmap (fmap id) x == id` for some `x :: g (f a)`. I'd like to prove but it seems so obvious that i don't know how start. Any hints?
2021-04-27 19:24:19 +0200 <monochrom> fmap id = id.
2021-04-27 19:25:07 +0200bennofs_(~quassel@x4dbffbc2.dyn.telefonica.de) (Ping timeout: 260 seconds)
2021-04-27 19:27:02 +0200ubert(~Thunderbi@91.141.3.200.wireless.dyn.drei.com) (Ping timeout: 260 seconds)
2021-04-27 19:28:16 +0200 <nickmt> if  `x` is a concrete value, it's easy, e.g. `fmap (fmap id) [Just 3]` then I have `[fmap id (Just 3)]` and then [Just (id 3)] and finally [Just 3]. But I don't know how to do it if I don't know anything about the inner structure of `x` .
2021-04-27 19:29:20 +0200 <monochrom> fmap id = id.
2021-04-27 19:30:35 +0200 <nut> my cabal project depends on a c header file inside the cabal folder. How can I add it in the cabal file?
2021-04-27 19:31:04 +0200 <monochrom> Some field along the line of "c-sources"?
2021-04-27 19:31:15 +0200 <monochrom> Do you know the URL to the cabal user's guide?
2021-04-27 19:31:16 +0200Varis(~Tadas@unaffiliated/varis) (Remote host closed the connection)
2021-04-27 19:31:19 +0200 <nut> c-sources: can't add header file
2021-04-27 19:31:51 +0200 <monochrom> What is "the cabal folder"?
2021-04-27 19:32:18 +0200Varis(~Tadas@unaffiliated/varis)
2021-04-27 19:32:19 +0200 <nut> It's the cabal project folder
2021-04-27 19:32:30 +0200 <nickmt> @monochrom I see. Because f is a functor and the first law holds I can reduce `fmap (fmap id)` to `fmap id` and then do the same thing again because g is also a functor so `fmap id = id` . Is that it?
2021-04-27 19:32:30 +0200 <lambdabot> Unknown command, try @list
2021-04-27 19:32:35 +0200 <monochrom> The source code of Cabal itself?
2021-04-27 19:32:48 +0200 <monochrom> Yes nickmt
2021-04-27 19:33:01 +0200 <nut> I am using the inline-c package for my project and i put all c code inside a c header file
2021-04-27 19:33:02 +0200 <nickmt> thank you
2021-04-27 19:33:21 +0200 <lechner> monochrom: thanks here also!
2021-04-27 19:33:33 +0200 <sclv> nut: take a look at the bytestring cabal file for a good example of how to do this stuff
2021-04-27 19:33:33 +0200 <sclv> https://hackage.haskell.org/package/bytestring-0.11.1.0/bytestring.cabal
2021-04-27 19:34:03 +0200 <sclv> note include-dirs, includes, and install-includes
2021-04-27 19:34:23 +0200 <nut> sclv: great!
2021-04-27 19:34:28 +0200 <nut> found it
2021-04-27 19:34:38 +0200 <monochrom> So no one wants to see the user's guidee.
2021-04-27 19:34:42 +0200nicholasbulka(~nicholasb@2601:900:4301:da0:58e6:3a0a:96a:ca2c) (Remote host closed the connection)
2021-04-27 19:35:35 +0200 <sclv> that would be another way to find this info yes: https://cabal.readthedocs.io/en/3.4/search.html?q=header&check_keywords=yes&area=default#
2021-04-27 19:35:49 +0200 <sclv> i find working by example and then checking docs to ensure i understand things to be more comfortable personally
2021-04-27 19:36:06 +0200 <enikar> monochrom: Indeed. The cabal users guide is the place to look for this question ;)
2021-04-27 19:36:11 +0200coot(~coot@37.30.50.130.nat.umts.dynamic.t-mobile.pl) (Ping timeout: 260 seconds)
2021-04-27 19:37:42 +0200 <monochrom> Most people stop after "by example" before "checking docs".
2021-04-27 19:37:50 +0200 <monochrom> John Searle would be proud.
2021-04-27 19:39:28 +0200 <slack1256> On `wreq` is there any option so that "301 moved permanently" are followed automatically? I am using `head_`.
2021-04-27 19:39:49 +0200 <enikar> monochrom: bad.
2021-04-27 19:40:14 +0200geekosaur(930099da@rrcs-147-0-153-218.central.biz.rr.com)
2021-04-27 19:41:26 +0200 <maerwald> who is responsible for haskell.org?
2021-04-27 19:42:12 +0200 <nut> monochrom: I did checked the doc. I'm a bit confused why cabal don't recompile after I made changes to the header files
2021-04-27 19:42:42 +0200 <nut> That isn't explained in the Cabal docs I think
2021-04-27 19:43:08 +0200 <sclv> maerwald: responsible for what aspect of it?
2021-04-27 19:43:24 +0200 <maerwald> website
2021-04-27 19:44:14 +0200 <sclv> oh right you're still following up on that. sigh. its the committee, which is chaired by tikhon at the moment.
2021-04-27 19:44:32 +0200 <sclv> let me try to work a side channel for you
2021-04-27 19:45:33 +0200solidus-river(~mike@174.127.249.180)
2021-04-27 19:45:48 +0200kalia(4c72abd3@c-76-114-171-211.hsd1.md.comcast.net)
2021-04-27 19:46:39 +0200pgib(textual@lmms/pgib)
2021-04-27 19:50:22 +0200Varis(~Tadas@unaffiliated/varis) (Remote host closed the connection)
2021-04-27 19:50:27 +0200juuandyy(~juuandyy@90.106.228.121)
2021-04-27 19:51:42 +0200kalia(4c72abd3@c-76-114-171-211.hsd1.md.comcast.net) (Quit: Connection closed)
2021-04-27 19:52:30 +0200 <maerwald> Yes, I sent the committee an email
2021-04-27 19:53:42 +0200nickmt(5b0624c1@p5b0624c1.dip0.t-ipconnect.de) (Quit: Connection closed)
2021-04-27 19:55:28 +0200bor0(~boro@unaffiliated/boro/x-000000001)
2021-04-27 19:55:58 +0200conal(~conal@192.145.118.178) (Quit: Computer has gone to sleep.)
2021-04-27 19:56:15 +0200chimera(~chimera@168-182-134-95.pool.ukrtel.net)
2021-04-27 19:58:30 +0200M0b10s(94478efe@gateway/web/cgi-irc/kiwiirc.com/ip.148.71.142.254)
2021-04-27 20:00:53 +0200 <maerwald> at worst, we'll make another haskell.org fork *chuckle*
2021-04-27 20:01:14 +0200vicfred(~vicfred@unaffiliated/vicfred)
2021-04-27 20:01:49 +0200 <carbolymer> YES, HAVE MY FORK -----E
2021-04-27 20:01:58 +0200danso(~dan@modemcable156.91-20-96.mc.videotron.ca)
2021-04-27 20:03:15 +0200 <monochrom> Responsible parents wait after fork.
2021-04-27 20:03:32 +0200wroathe(~wroathe@c-68-54-25-135.hsd1.mn.comcast.net) (Ping timeout: 240 seconds)
2021-04-27 20:03:44 +0200Major_Biscuit(~Major_Bis@82-169-100-198.biz.kpn.net) (Quit: WeeChat 3.0.1)
2021-04-27 20:04:14 +0200 <catern> apropos of nothing, if anyone has any contributions to my cursed PL iceberg let me know http://catern.com/iceberg.html
2021-04-27 20:04:43 +0200frozenErebus(~frozenEre@37.231.244.249) (Ping timeout: 252 seconds)
2021-04-27 20:05:16 +0200 <ski> joel135 : "Does haskell have the same syntax feature?" -- no
2021-04-27 20:06:03 +0200 <joel135> ok
2021-04-27 20:09:25 +0200Valion(~Valion@api.ivido.nl) (Quit: leaving)
2021-04-27 20:09:39 +0200wroathe(~wroathe@c-68-54-25-135.hsd1.mn.comcast.net)
2021-04-27 20:13:42 +0200wroathe(~wroathe@c-68-54-25-135.hsd1.mn.comcast.net) (Ping timeout: 240 seconds)
2021-04-27 20:13:42 +0200dyeplexer(~lol@unaffiliated/terpin) (Remote host closed the connection)
2021-04-27 20:14:05 +0200Pickchea(~private@unaffiliated/pickchea)
2021-04-27 20:19:14 +0200thc202(~thc202@unaffiliated/thc202) (Quit: thc202)
2021-04-27 20:19:43 +0200 <ggVGc> I really love <<loop>>
2021-04-27 20:19:45 +0200 <ggVGc> great
2021-04-27 20:19:51 +0200 <ggVGc> it's like practical joke
2021-04-27 20:20:08 +0200flx(flux@coffee.modeemi.fi)
2021-04-27 20:20:22 +0200koankeeper_(sid216950@gateway/web/irccloud.com/x-nzolrgtzcrofgnoi)
2021-04-27 20:21:11 +0200skewerr(~spoonm@tokyo.spoonm.org)
2021-04-27 20:21:46 +0200M0b10s(94478efe@gateway/web/cgi-irc/kiwiirc.com/ip.148.71.142.254) (Ping timeout: 240 seconds)
2021-04-27 20:21:48 +0200towel_(~towel@unaffiliated/towel)
2021-04-27 20:22:01 +0200kiweun(~kiweun@2607:fea8:2a62:9600:94f:fe7:3fff:f880)
2021-04-27 20:23:32 +0200DavidEichmann(~david@147.136.46.217.dyn.plus.net) (Remote host closed the connection)
2021-04-27 20:23:33 +0200LambdaDuck(~anka@ksit.fixme.fi)
2021-04-27 20:24:04 +0200sdressel_(~sdressel@pwning.de)
2021-04-27 20:24:38 +0200jameekim2(~jameekim@mx.nodaplife.me)
2021-04-27 20:26:39 +0200kiweun(~kiweun@2607:fea8:2a62:9600:94f:fe7:3fff:f880) (Ping timeout: 250 seconds)
2021-04-27 20:26:44 +0200blackdog_(~blackdog@198.211.112.85)
2021-04-27 20:26:58 +0200sarahzrf_(~sarahzrf_@sarahzrf.com)
2021-04-27 20:27:06 +0200rawles_(~r@unaffiliated/rawles)
2021-04-27 20:27:18 +0200nemesit|znc_(~nemesit@2a01:488:66:1000:2ea3:4eeb:0:1)
2021-04-27 20:27:51 +0200frozenErebus(~frozenEre@37.231.244.249)
2021-04-27 20:28:10 +0200jonathanx(~jonathan@h-176-109.A357.priv.bahnhof.se) (Ping timeout: 260 seconds)
2021-04-27 20:28:25 +0200nemesit|znc(~nemesit@2a01:488:66:1000:2ea3:4eeb:0:1) (Ping timeout: 276 seconds)
2021-04-27 20:28:25 +0200maralorn(maralornma@gateway/shell/matrix.org/x-taapglyfnhcaxlmi) (Ping timeout: 276 seconds)
2021-04-27 20:28:26 +0200Hanma[m](hanmamatri@gateway/shell/matrix.org/x-bxrewprkpipuxfei) (Ping timeout: 276 seconds)
2021-04-27 20:28:27 +0200Poyo[m](stikynotha@gateway/shell/matrix.org/x-haknbvkyasqevnme) (Ping timeout: 276 seconds)
2021-04-27 20:28:27 +0200jchia[m](jchiamatri@gateway/shell/matrix.org/x-fgjdezivvdirebvi) (Ping timeout: 276 seconds)
2021-04-27 20:28:27 +0200unclechu(unclechuma@gateway/shell/matrix.org/x-jmbbnkztqlxjmyvi) (Ping timeout: 276 seconds)
2021-04-27 20:28:28 +0200my_name_is_not_j(mynameisno@gateway/shell/matrix.org/x-quxbbosdnjtwvvrg) (Ping timeout: 276 seconds)
2021-04-27 20:28:28 +0200johnnyv[m](badwolf256@gateway/shell/matrix.org/x-bcoxopkiysbcffjg) (Ping timeout: 276 seconds)
2021-04-27 20:28:28 +0200joe[m](joemonoida@gateway/shell/matrix.org/x-jfvswnrdjcctvmmo) (Ping timeout: 276 seconds)
2021-04-27 20:28:28 +0200pnotequalnp[m](pnotequaln@gateway/shell/matrix.org/x-xqilkgqxymngrblq) (Ping timeout: 276 seconds)
2021-04-27 20:28:28 +0200srid(sridmatrix@gateway/shell/matrix.org/x-lhoqaotzxhrdesxm) (Ping timeout: 276 seconds)
2021-04-27 20:28:28 +0200Noughtmare[m](naughtmare@gateway/shell/matrix.org/x-dvljatkbrkzyoabl) (Ping timeout: 276 seconds)
2021-04-27 20:28:28 +0200arcontethegreat[(arcontethe@gateway/shell/matrix.org/x-utbxuwqpnhgrncfm) (Ping timeout: 276 seconds)
2021-04-27 20:28:29 +0200loyon(loyonmatri@gateway/shell/matrix.org/x-dbuybsdaqolfjfvf) (Ping timeout: 276 seconds)
2021-04-27 20:28:29 +0200mrus[m](mrusmatrix@gateway/shell/matrix.org/x-bnwtzopjealuvtun) (Ping timeout: 276 seconds)
2021-04-27 20:28:29 +0200domenkozar[m](domenkozar@NixOS/user/domenkozar) (Ping timeout: 276 seconds)
2021-04-27 20:28:29 +0200tabaqui(~tabaqui@2604:a880:800:c1::21b:3001) (Ping timeout: 276 seconds)
2021-04-27 20:28:29 +0200mflux(flux@coffee.modeemi.fi) (Ping timeout: 276 seconds)
2021-04-27 20:28:29 +0200koankeeper(sid216950@gateway/web/irccloud.com/x-lympprcqrveoixtt) (Ping timeout: 276 seconds)
2021-04-27 20:28:30 +0200Guillaum(guiboumatr@gateway/shell/matrix.org/x-kecnvcmuhfwgrytn) (Ping timeout: 276 seconds)
2021-04-27 20:28:30 +0200dominicusin[m](dominicusi@gateway/shell/matrix.org/x-aykukrinfrererxn) (Ping timeout: 276 seconds)
2021-04-27 20:28:31 +0200spoonm(~spoonm@tokyo.spoonm.org) (Ping timeout: 276 seconds)
2021-04-27 20:28:31 +0200towel(~towel@unaffiliated/towel) (Ping timeout: 276 seconds)
2021-04-27 20:28:32 +0200rawles(~r@unaffiliated/rawles) (Ping timeout: 276 seconds)
2021-04-27 20:28:32 +0200sarahzrf(~sarahzrf_@2604:a880:400:d0::b4a:4001) (Ping timeout: 276 seconds)
2021-04-27 20:28:32 +0200lemald(~eddie@capybara.lemald.org) (Ping timeout: 276 seconds)
2021-04-27 20:28:32 +0200blackdog(~blackdog@198.211.112.85) (Ping timeout: 276 seconds)
2021-04-27 20:28:32 +0200LambdaDu1k(~anka@ksit.fixme.fi) (Ping timeout: 276 seconds)
2021-04-27 20:28:33 +0200jameekim1(~jameekim@mx.nodaplife.me) (Ping timeout: 276 seconds)
2021-04-27 20:28:33 +0200sdressel(~sdressel@pwning.de) (Ping timeout: 276 seconds)
2021-04-27 20:28:33 +0200blackdog_blackdog
2021-04-27 20:28:33 +0200koankeeper_koankeeper
2021-04-27 20:28:33 +0200flxmflux
2021-04-27 20:29:29 +0200tabaqui(~tabaqui@2604:a880:800:c1::21b:3001)
2021-04-27 20:29:38 +0200lemald(~eddie@capybara.lemald.org)
2021-04-27 20:30:06 +0200Hanma[m](hanmamatri@gateway/shell/matrix.org/x-wxxbvetrqrsqljor)
2021-04-27 20:30:19 +0200jonathanx(~jonathan@h-176-109.A357.priv.bahnhof.se)
2021-04-27 20:30:48 +0200wroathe(~wroathe@c-68-54-25-135.hsd1.mn.comcast.net)
2021-04-27 20:31:02 +0200maralorn(maralornma@gateway/shell/matrix.org/x-ivwnbdnfszfjiwdc)
2021-04-27 20:31:10 +0200 <int-e> > fix error -- just a joke
2021-04-27 20:31:12 +0200star_cloud(~star_clou@ec2-34-220-44-120.us-west-2.compute.amazonaws.com) (Ping timeout: 240 seconds)
2021-04-27 20:31:12 +0200 <lambdabot> "*Exception: *Exception: *Exception: *Exception: *Exception: *Exception: *Ex...
2021-04-27 20:31:41 +0200notzmv(~zmv@unaffiliated/zmv) (Ping timeout: 240 seconds)
2021-04-27 20:31:55 +0200my_name_is_not_j(mynameisno@gateway/shell/matrix.org/x-fwedgmzpwbugciod)
2021-04-27 20:31:57 +0200joe[m](joemonoida@gateway/shell/matrix.org/x-txxheijowbbsqnjc)
2021-04-27 20:31:58 +0200loyon(loyonmatri@gateway/shell/matrix.org/x-icwodrnwhydizuwp)
2021-04-27 20:32:02 +0200unclechu(unclechuma@gateway/shell/matrix.org/x-lbufgcxgrsflmxsh)
2021-04-27 20:32:02 +0200Poyo[m](stikynotha@gateway/shell/matrix.org/x-piujbocybdsttosy)
2021-04-27 20:32:03 +0200jchia[m](jchiamatri@gateway/shell/matrix.org/x-gvltsihrvsoaugcv)
2021-04-27 20:32:04 +0200Noughtmare[m](naughtmare@gateway/shell/matrix.org/x-ibycjhwgzkgwsirp)
2021-04-27 20:32:04 +0200pnotequalnp[m](pnotequaln@gateway/shell/matrix.org/x-dnjftlngoflvunfh)
2021-04-27 20:32:05 +0200johnnyv[m](badwolf256@gateway/shell/matrix.org/x-iuvqvpqyjtjrwaqm)
2021-04-27 20:32:07 +0200srid(sridmatrix@gateway/shell/matrix.org/x-aznuekqvxhshtmnc)
2021-04-27 20:32:10 +0200mrus[m](mrusmatrix@gateway/shell/matrix.org/x-wnductunmdfidxwz)
2021-04-27 20:32:34 +0200zebrag(~inkbottle@aaubervilliers-654-1-79-166.w86-212.abo.wanadoo.fr)
2021-04-27 20:32:36 +0200domenkozar[m](domenkozar@NixOS/user/domenkozar)
2021-04-27 20:33:15 +0200arcontethegreat[(arcontethe@gateway/shell/matrix.org/x-fjqjpveupdddtlmd)
2021-04-27 20:33:37 +0200Guillaum(guiboumatr@gateway/shell/matrix.org/x-mcmztbazvtqulzjx)
2021-04-27 20:35:04 +0200nicholasbulka(~nicholasb@2601:900:4301:da0:b0db:882b:fd7b:c02e)
2021-04-27 20:35:27 +0200dominicusin[m](dominicusi@gateway/shell/matrix.org/x-efcppjwqmhnnaznp)
2021-04-27 20:37:27 +0200hiroaki(~hiroaki@2a02:8108:8c40:2bb8:b8c4:49ae:2ce4:1808) (Ping timeout: 260 seconds)
2021-04-27 20:38:15 +0200coot(~coot@37.30.50.130.nat.umts.dynamic.t-mobile.pl)
2021-04-27 20:38:34 +0200 <joel135> :t error
2021-04-27 20:38:36 +0200 <lambdabot> [Char] -> a
2021-04-27 20:38:45 +0200 <solidus-river> i'm doing an hsetbuffering noBuffering in all my forked threads but still getting interleaved io on the console
2021-04-27 20:39:03 +0200 <solidus-river> do i need to synchronize with an mvar?
2021-04-27 20:40:02 +0200 <joel135> Doesn't buffering increase interleaving?
2021-04-27 20:40:18 +0200 <monochrom> My thought too.
2021-04-27 20:40:51 +0200 <joel135> Actually I meant the opposite.
2021-04-27 20:40:51 +0200 <monochrom> Err did you word it right?
2021-04-27 20:40:56 +0200 <monochrom> Yeah, that.
2021-04-27 20:42:21 +0200 <geekosaur> console has exactly one output position, I'd recommend using a separate thread for output fed by a Chan
2021-04-27 20:42:39 +0200 <geekosaur> LineBuffering might help with interleaving to some extend
2021-04-27 20:42:42 +0200 <geekosaur> *extent
2021-04-27 20:42:59 +0200 <solidus-river> kk, i'll experiment, i misunderstood what noBuffering solved
2021-04-27 20:43:07 +0200 <solidus-river> :X
2021-04-27 20:43:48 +0200 <solidus-river> thanks as always :)
2021-04-27 20:43:50 +0200jespada(~jespada@87.74.37.248)
2021-04-27 20:43:51 +0200 <monochrom> Also I thought hSetBuffering was a per-Handle setting, not a per-thread setting.
2021-04-27 20:44:27 +0200 <solidus-river> i'm definitely redundantly setting it then
2021-04-27 20:44:53 +0200wroathe(~wroathe@c-68-54-25-135.hsd1.mn.comcast.net) (Ping timeout: 252 seconds)
2021-04-27 20:44:54 +0200 <solidus-river> i think what i wanted out of it was just a call to flush at the end of the program
2021-04-27 20:45:21 +0200 <geekosaur> so just hFlush at the end of the program. but it'll also flush when the output buffer is full
2021-04-27 20:45:27 +0200M0b10s(94478efe@gateway/web/cgi-irc/kiwiirc.com/ip.148.71.142.254)
2021-04-27 20:45:29 +0200raehik(~raehik@cpc95906-rdng25-2-0-cust156.15-3.cable.virginm.net) (Ping timeout: 246 seconds)
2021-04-27 20:45:40 +0200 <geekosaur> note that multiple threads outputting to the same Handle will stilll interleave within the buffer
2021-04-27 20:45:55 +0200zebrag(~inkbottle@aaubervilliers-654-1-79-166.w86-212.abo.wanadoo.fr) (Quit: Konversation terminated!)
2021-04-27 20:46:25 +0200Varis(~Tadas@unaffiliated/varis)
2021-04-27 20:46:28 +0200 <int-e> String-based I/O is inherently character oriented, since putStr ('a':'b':undefined) is supposed to output a and b before triggering the bottom.
2021-04-27 20:46:44 +0200 <int-e> buffering doesn't really change that
2021-04-27 20:46:56 +0200zebrag(~inkbottle@aaubervilliers-654-1-79-166.w86-212.abo.wanadoo.fr)
2021-04-27 20:47:38 +0200raehik(~raehik@cpc95906-rdng25-2-0-cust156.15-3.cable.virginm.net)
2021-04-27 20:47:48 +0200 <solidus-river> i should be sending these all to the same place and printing there, i was doing that but i'm trying to hack in some debug prints to figure out whats going wrong over the wire
2021-04-27 20:48:15 +0200 <solidus-river> maybe trace is a better tool but it seems like it would run into the same buffering issue unless its using some non putStrLn for its messaging under the hood
2021-04-27 20:48:31 +0200jpds(~jpds@gateway/tor-sasl/jpds) (Quit: WeeChat 3.1)
2021-04-27 20:49:08 +0200jpds(~jpds@gateway/tor-sasl/jpds)
2021-04-27 20:49:09 +0200faustind(~faustin@240b:12:43e1:7b00:e63d:e924:3cc7:4546)
2021-04-27 20:49:30 +0200Copperis(~Tadas@unaffiliated/varis)
2021-04-27 20:49:56 +0200Guest6509(~laudiacay@45.162.228.190)
2021-04-27 20:50:00 +0200hiroaki(~hiroaki@2a02:8108:8c40:2bb8:d72c:c07:3040:2376)
2021-04-27 20:50:07 +0200 <int-e> oh, traceIO does something better, actually
2021-04-27 20:50:39 +0200timCF(~i.tkachuk@m91-129-104-226.cust.tele2.ee)
2021-04-27 20:51:02 +0200wroathe(~wroathe@c-68-54-25-135.hsd1.mn.comcast.net)
2021-04-27 20:51:06 +0200Copperis(~Tadas@unaffiliated/varis) (Remote host closed the connection)
2021-04-27 20:52:11 +0200 <int-e> Well, better in terms of interleaving or not. It looks far worse in terms of dealing with encodings.
2021-04-27 20:52:30 +0200Copperis(~Tadas@unaffiliated/varis)
2021-04-27 20:52:43 +0200raehik(~raehik@cpc95906-rdng25-2-0-cust156.15-3.cable.virginm.net) (Ping timeout: 276 seconds)
2021-04-27 20:52:57 +0200Mrbuck(~Mrbuck@gateway/tor-sasl/mrbuck)
2021-04-27 20:53:07 +0200M0b10s(94478efe@gateway/web/cgi-irc/kiwiirc.com/ip.148.71.142.254) (Ping timeout: 252 seconds)
2021-04-27 20:53:13 +0200Varis(~Tadas@unaffiliated/varis) (Ping timeout: 268 seconds)
2021-04-27 20:53:18 +0200 <int-e> (it packs the message into a C string, and passes that to the RTS's debugBelch() function which presumably writes it to stderr in one chunk)
2021-04-27 20:54:30 +0200 <solidus-river> nice! switching :) I think i need to finally read that book that you guys recommended a month in a half ago too, gonna crack that open
2021-04-27 20:55:58 +0200wroathe(~wroathe@c-68-54-25-135.hsd1.mn.comcast.net) (Ping timeout: 276 seconds)
2021-04-27 20:56:21 +0200geowiesnot(~user@i15-les02-ix2-87-89-181-157.sfr.lns.abo.bbox.fr) (Ping timeout: 246 seconds)
2021-04-27 20:56:42 +0200sm(~user@li229-222.members.linode.com)
2021-04-27 20:57:23 +0200DavidEichmann(~david@147.136.46.217.dyn.plus.net)
2021-04-27 20:58:23 +0200 <DigitalKiwi> what book was recommended?
2021-04-27 21:00:53 +0200Copperis(~Tadas@unaffiliated/varis) (Remote host closed the connection)
2021-04-27 21:02:00 +0200Varis(~Tadas@unaffiliated/varis)
2021-04-27 21:02:49 +0200jpds(~jpds@gateway/tor-sasl/jpds) (Quit: WeeChat 3.1)
2021-04-27 21:03:03 +0200jpds(~jpds@gateway/tor-sasl/jpds)
2021-04-27 21:04:03 +0200notzmv(~zmv@unaffiliated/zmv)
2021-04-27 21:07:15 +0200 <slack1256> On the ConstrainsKinds extension, is there a type level function that lets me take the product of two constrains? ie : Read a x Text a = (Read a, Text a) ?
2021-04-27 21:09:07 +0200fendor(~fendor@178.115.131.177.wireless.dyn.drei.com) (Remote host closed the connection)
2021-04-27 21:10:05 +0200 <faustind> Hello @all. I am looking for examples of the use of GHC rewrite rules. Could you point me to some.
2021-04-27 21:10:58 +0200fendor(~fendor@178.115.131.177.wireless.dyn.drei.com)
2021-04-27 21:11:16 +0200 <slack1256> Read on Data.List and the `vector` library.
2021-04-27 21:11:55 +0200 <monochrom> I wonder if it's as simple as "type X c1 c2 a = (c1 a, c2 a)"
2021-04-27 21:11:57 +0200Guest70260sm[m]
2021-04-27 21:12:24 +0200 <monochrom> But if you want to use it as "X Read Text" without "a", I don't know.
2021-04-27 21:13:12 +0200stree(~stree@68.36.8.116) (Ping timeout: 240 seconds)
2021-04-27 21:14:26 +0200 <DigitalKiwi> .glirclogs/#haskell/2021-03-15.log:[22:47:52] <koz_> solidus-river: https://www.oreilly.com/library/view/parallel-and-concurrent/9781449335939/pt02.html
2021-04-27 21:14:38 +0200Qwerky(~qwerky@37.173.171.170)
2021-04-27 21:14:50 +0200 <DigitalKiwi> found the answer to my question ^
2021-04-27 21:15:05 +0200 <koz_> DigitalKiwi: Happy to be of service rofl?
2021-04-27 21:16:32 +0200Mrbuck(~Mrbuck@gateway/tor-sasl/mrbuck) (Remote host closed the connection)
2021-04-27 21:16:33 +0200 <monochrom> haha
2021-04-27 21:18:12 +0200zebrag(~inkbottle@aaubervilliers-654-1-79-166.w86-212.abo.wanadoo.fr) (Remote host closed the connection)
2021-04-27 21:19:40 +0200dmytrish(~mitra@2a02:8084:a82:d900:6010:2869:d10:372c)
2021-04-27 21:20:20 +0200 <slack1256> monochrom: Yeah, I thought there was a standard type family already defined
2021-04-27 21:20:35 +0200epicte7us(~epictetus@ip72-194-54-201.sb.sd.cox.net)
2021-04-27 21:23:44 +0200ep1ctetus(~epictetus@ip72-194-54-201.sb.sd.cox.net) (Ping timeout: 245 seconds)
2021-04-27 21:24:20 +0200Varis(~Tadas@unaffiliated/varis) (Remote host closed the connection)
2021-04-27 21:25:37 +0200dmytrish(~mitra@2a02:8084:a82:d900:6010:2869:d10:372c) (Quit: Konversation terminated!)
2021-04-27 21:25:50 +0200 <mniip> monochrom, class (c1 a, c2 a) => X c1 c2 a; instance (c1 a, c2 a) => X c1 c2 a
2021-04-27 21:25:54 +0200vchlup(~vchlup@nat.brnet.cz) (Ping timeout: 268 seconds)
2021-04-27 21:27:06 +0200stree(~stree@68.36.8.116)
2021-04-27 21:27:16 +0200dmytrish(~mitra@2a02:8084:a82:d900:6df4:a206:6bd4:dc59)
2021-04-27 21:29:08 +0200zebrag(~inkbottle@aaubervilliers-654-1-79-166.w86-212.abo.wanadoo.fr)
2021-04-27 21:30:26 +0200DTZUZU(~DTZUZO@205.ip-149-56-132.net) (Read error: Connection reset by peer)
2021-04-27 21:31:56 +0200ntqz(ntqz@gateway/vpn/protonvpn/ntqz)
2021-04-27 21:32:02 +0200frozenErebus(~frozenEre@37.231.244.249) (Ping timeout: 246 seconds)
2021-04-27 21:32:16 +0200juuandyy(~juuandyy@90.106.228.121) (Quit: Konversation terminated!)
2021-04-27 21:33:35 +0200bennofs_(~quassel@x4dbffbc2.dyn.telefonica.de)
2021-04-27 21:35:01 +0200 <shapr> does tommy thorn show up here?
2021-04-27 21:35:13 +0200heatsink(~heatsink@108-201-191-115.lightspeed.sntcca.sbcglobal.net) (Remote host closed the connection)
2021-04-27 21:35:39 +0200minoru_shiraeesh(~shiraeesh@109.166.56.250)
2021-04-27 21:35:42 +0200__minoru__shirae(~shiraeesh@109.166.59.124) (Ping timeout: 240 seconds)
2021-04-27 21:35:55 +0200 <shapr> I vaguely recall reading that the reduceron graph reduction CPU needs more memory bandwidth than the bog standard von neumann CPU, does anyone have references in mind?
2021-04-27 21:36:57 +0200supercoven_(~Supercove@dsl-hkibng31-58c384-213.dhcp.inet.fi) (Read error: Connection reset by peer)
2021-04-27 21:37:39 +0200kiweun(~kiweun@2607:fea8:2a62:9600:3d14:16a1:a9f1:c29c)
2021-04-27 21:38:25 +0200 <slack1256> What is the extension that makes * be called Type also?
2021-04-27 21:39:40 +0200 <monochrom> No extension needed. But you have to import "Type" from Data.Kind (or GHC.Exts or ...)
2021-04-27 21:40:05 +0200 <slack1256> Ooh, right
2021-04-27 21:40:11 +0200 <slack1256> Thank monochrom.
2021-04-27 21:40:19 +0200 <monochrom> Likewise for "Constraint".
2021-04-27 21:42:08 +0200StOnE(~StOnE@231.154.61.94.rev.vodafone.pt)
2021-04-27 21:42:46 +0200kiweun(~kiweun@2607:fea8:2a62:9600:3d14:16a1:a9f1:c29c) (Ping timeout: 276 seconds)
2021-04-27 21:43:15 +0200knupfer(~Thunderbi@200116b82b9c4f0069e2a2a836aa8e3f.dip.versatel-1u1.de) (Remote host closed the connection)
2021-04-27 21:43:45 +0200StOnE(~StOnE@231.154.61.94.rev.vodafone.pt) ()
2021-04-27 21:44:13 +0200knupfer(~Thunderbi@200116b82b9c4f00f9c2991c9c527ef0.dip.versatel-1u1.de)
2021-04-27 21:46:05 +0200wonko7(~wonko7@62.115.229.50) (Ping timeout: 252 seconds)
2021-04-27 21:49:33 +0200ech(~user@gateway/tor-sasl/ech) (Remote host closed the connection)
2021-04-27 21:49:47 +0200ech(~user@gateway/tor-sasl/ech)
2021-04-27 21:54:16 +0200 <carbolymer> in the profiler output there's "entries" and "individual allocation", I'm looking for places with high memory usage, should I multiply entries * individual alloc in order to find which place had the biggest contribution to memory usage?
2021-04-27 21:55:14 +0200 <carbolymer> I have also a heap profile but converting 2G .hp file to .ps file takes a lot of time
2021-04-27 21:55:17 +0200 <carbolymer> ...
2021-04-27 21:58:26 +0200_ht(~quassel@82-169-194-8.biz.kpn.net) (Remote host closed the connection)
2021-04-27 21:58:54 +0200bennofs_(~quassel@x4dbffbc2.dyn.telefonica.de) (Quit: https://quassel-irc.org - Chat comfortably. Anywhere.)
2021-04-27 22:03:45 +0200Lord_of_Life_(~Lord@unaffiliated/lord-of-life/x-0885362)
2021-04-27 22:03:52 +0200DTZUZU(~DTZUZO@205.ip-149-56-132.net)
2021-04-27 22:03:54 +0200Gurkenglas(~Gurkengla@unaffiliated/gurkenglas) (Read error: Connection reset by peer)
2021-04-27 22:04:08 +0200neiluj(~jco@91-167-203-101.subs.proxad.net)
2021-04-27 22:04:09 +0200neiluj(~jco@91-167-203-101.subs.proxad.net) (Changing host)
2021-04-27 22:04:09 +0200neiluj(~jco@unaffiliated/neiluj)
2021-04-27 22:04:51 +0200Lord_of_Life(~Lord@unaffiliated/lord-of-life/x-0885362) (Ping timeout: 265 seconds)
2021-04-27 22:05:14 +0200Lord_of_Life_Lord_of_Life
2021-04-27 22:05:27 +0200letmein(~letmein@2601:1c1:4200:938f:f8bf:6a67:4eed:b2c1) (Ping timeout: 250 seconds)
2021-04-27 22:05:59 +0200petersen(~petersen@redhat/juhp) (Ping timeout: 268 seconds)
2021-04-27 22:06:36 +0200sord937(~sord937@gateway/tor-sasl/sord937) (Quit: sord937)
2021-04-27 22:07:34 +0200letmein(~letmein@c-71-59-221-7.hsd1.wa.comcast.net)
2021-04-27 22:07:43 +0200petersen(~petersen@redhat/juhp)
2021-04-27 22:08:36 +0200stree(~stree@68.36.8.116) (Quit: Caught exception)
2021-04-27 22:08:46 +0200Guest6509(~laudiacay@45.162.228.190) (Ping timeout: 276 seconds)
2021-04-27 22:09:01 +0200stree(~stree@68.36.8.116)
2021-04-27 22:10:52 +0200conal(~conal@64.71.133.70)
2021-04-27 22:16:41 +0200heatsink(~heatsink@108-201-191-115.lightspeed.sntcca.sbcglobal.net)
2021-04-27 22:17:02 +0200danso(~dan@modemcable156.91-20-96.mc.videotron.ca) (Quit: WeeChat 3.0)
2021-04-27 22:19:00 +0200Qwerky(~qwerky@37.173.171.170) (Remote host closed the connection)
2021-04-27 22:19:18 +0200Qwerky(~qwerky@37.173.171.170)
2021-04-27 22:20:02 +0200Qwerky(~qwerky@37.173.171.170) (Remote host closed the connection)
2021-04-27 22:22:30 +0200 <lechner> Hi, does anyone else feel that affinity with SQL? It's been spooking around my head since I discovered Haskell. http://thoughts.davisjeff.com/2011/09/25/sql-the-successful-cousin-of-haskell/
2021-04-27 22:23:53 +0200Pickchea(~private@unaffiliated/pickchea) (Quit: Leaving)
2021-04-27 22:26:51 +0200Qwerky(~qwerky@37.173.171.170)
2021-04-27 22:28:42 +0200 <int-e> cousin?!
2021-04-27 22:30:19 +0200elfets(~elfets@ip-37-201-23-96.hsi13.unitymediagroup.de)
2021-04-27 22:30:27 +0200 <sm[m]> "the tough problems that haskell would solve are already solved in so many cases" - I don't think so. But it's an interesting post all the same
2021-04-27 22:31:09 +0200 <int-e> I mean, I do see a certain amount of declarativity and/or purity allowing all sorts of crazy optimizations of queries. That's where the analogies stop to my mind.
2021-04-27 22:32:19 +0200 <sm[m]> the tough relational data querying problems.. yes maybe that
2021-04-27 22:32:39 +0200 <int-e> SQL doesn't really shine in the area of abstraction
2021-04-27 22:32:55 +0200dinciorip(~dincio@5.171.80.13)
2021-04-27 22:33:50 +0200 <dinciorip> This is probably a very stupid question, but is there a shorter alternative to `m | m == foo || m == bar -> foo'`?
2021-04-27 22:34:09 +0200 <dinciorip> That snippet being used as a pattern in pattern matching
2021-04-27 22:34:28 +0200 <ski> m | m `elem` [foo,bar] -> foo'
2021-04-27 22:35:23 +0200 <ski> ((`elem` [foo,bar]) -> True) -> foo'
2021-04-27 22:35:53 +0200aa111(3e1d4484@62.29.68.132)
2021-04-27 22:35:54 +0200 <ski> if we had disjunctive / or- patterns, then those could be appropriate here, if `foo' and `bar' were approprate to use as patterns
2021-04-27 22:36:58 +0200 <dinciorip> well those are certainly an improvement, thanks! Don't quite understand the second one though... `foo` and `bar` are usable as patterns in my case
2021-04-27 22:37:10 +0200 <aa111> hello, im trying to construct a binary tree from a list looks like this [0[1,2],[0,4,7,8]], what is the best way to parse this input
2021-04-27 22:37:31 +0200 <ski> the second is using the `ViewPatterns' extension
2021-04-27 22:37:37 +0200notzmv(~zmv@unaffiliated/zmv) (Ping timeout: 252 seconds)
2021-04-27 22:37:48 +0200 <ski> but i'd probably prefer the first one, over the second, here
2021-04-27 22:38:10 +0200 <ski> aa111 : is that first `0' a typo ?
2021-04-27 22:38:14 +0200 <dinciorip> yeah me too tbh. Still will look into that extension when I have time
2021-04-27 22:38:26 +0200 <aa111> Nope it is not
2021-04-27 22:38:37 +0200 <dinciorip> You were saying that there was an easier alternative for when `foo` and `bar` are patterns?
2021-04-27 22:38:40 +0200 <aa111> Yeah it is ...
2021-04-27 22:38:40 +0200alx741(~alx741@181.196.69.35) (Ping timeout: 268 seconds)
2021-04-27 22:38:40 +0200 <ski> then that's malformed Haskell
2021-04-27 22:38:46 +0200 <aa111> Let me fix it sorry
2021-04-27 22:39:05 +0200 <ski> dinciorip : *if* "we had disjunctive / or- patterns". we don't, unfortunately
2021-04-27 22:39:09 +0200jpds(~jpds@gateway/tor-sasl/jpds) (Ping timeout: 240 seconds)
2021-04-27 22:39:13 +0200 <dinciorip> Oh got it
2021-04-27 22:39:15 +0200coot(~coot@37.30.50.130.nat.umts.dynamic.t-mobile.pl) (Quit: coot)
2021-04-27 22:39:21 +0200 <aa111> [[0],[1,2,3],[0,5,6]] looks like this actually
2021-04-27 22:39:27 +0200 <dinciorip> Thanks anyway everyone
2021-04-27 22:39:50 +0200 <ski> what information does this list of lists describe ?
2021-04-27 22:40:02 +0200 <aa111> Nodes and leaves
2021-04-27 22:40:02 +0200 <ski> iow, how would it correspond to a binary tree ?
2021-04-27 22:40:19 +0200 <ski> what would be the corresponding binary tree, for this example ?
2021-04-27 22:40:44 +0200conal(~conal@64.71.133.70) (Quit: Computer has gone to sleep.)
2021-04-27 22:40:47 +0200 <aa111> let me give a full example then
2021-04-27 22:40:52 +0200 <aa111> [[0],[0,0],[0,2,4,5],[1,3,0,0,0,0,0,0]]
2021-04-27 22:40:55 +0200 <aa111> Node 15 (Node 6 (Node 4 (Leaf 1) (Leaf 3)) (Leaf 2)) (Node 9 (Leaf 4) (Leaf 5))
2021-04-27 22:41:48 +0200 <ski> it seems the `0's have some special meaning, but i can't decipher which
2021-04-27 22:42:23 +0200 <aa111> you sum the leaves of the node to replace 0's
2021-04-27 22:42:24 +0200 <ski> apparently the element at an internal node is to be the sum of all the leaves beneath it
2021-04-27 22:42:34 +0200 <int-e> so, guessing... those are levels of the tree; 0 are internal and absent nodes, and internal nodes gat annotated with the sum of the descendants?
2021-04-27 22:42:49 +0200 <int-e> and the i-th list has 2^i elements
2021-04-27 22:42:56 +0200 <int-e> (starting at i=0)
2021-04-27 22:43:01 +0200 <aa111> yes thats the case
2021-04-27 22:43:03 +0200 <ski> that looks consistent
2021-04-27 22:43:36 +0200horatiohb(~horatiohb@159.65.163.65)
2021-04-27 22:43:48 +0200 <aa111> i've been struggling for this for two days. Could not parse it any logical way
2021-04-27 22:43:59 +0200 <ski> a function which given a list splits it into the first and second half, could probably be useful
2021-04-27 22:44:29 +0200 <ski> (or two functions, one for each part, if you prefer)
2021-04-27 22:44:33 +0200 <int-e> . o O ( unzip, splitAt, zipWith, iterate )
2021-04-27 22:44:53 +0200 <cheater> hi
2021-04-27 22:46:07 +0200wroathe(~wroathe@c-68-54-25-135.hsd1.mn.comcast.net)
2021-04-27 22:46:08 +0200 <cheater> i'm using stack supplied ghc and when i compile something that uses llvm-hs i get "error while loading shared libraries: libffi.so.7: cannot open shared object file: No such file or directory" even though that file is in a subdir of ~/.stack. how do i resolve this issue?
2021-04-27 22:46:27 +0200 <int-e> aa111: More fundamentally, think about how [[0],[0,0],[0,2,4,5],[1,3,0,0,0,0,0,0]] relates to the type of node (internal), and left and right subtree in the same list format.
2021-04-27 22:46:47 +0200 <ski> aa111 : do you want to validate that the input is a proper representation of a tree, or do you just want to assume this ?
2021-04-27 22:47:14 +0200 <aa111> I will assume
2021-04-27 22:47:45 +0200 <aa111> int-e yes im trying to, but still didnt get your point :/
2021-04-27 22:48:08 +0200 <ski> aa111 : what are the two subtrees of `Node 15 (Node 6 (Node 4 (Leaf 1) (Leaf 3)) (Leaf 2)) (Node 9 (Leaf 4) (Leaf 5))' ?
2021-04-27 22:48:24 +0200 <ski> aa111 : which lists of lists do those subtrees correspond to ?
2021-04-27 22:48:41 +0200 <ski> aa111 : how do those two lists of lists relate to the original list of lists ?
2021-04-27 22:49:27 +0200 <ski> (direct subtrees)
2021-04-27 22:49:36 +0200 <aa111> ski: forgive me if i explained it wrong. There are no subtrees, with the given list i need to crate the following tree
2021-04-27 22:49:58 +0200 <ski> clearly the tree `Node 15 (Node 6 (Node 4 (Leaf 1) (Leaf 3)) (Leaf 2)) (Node 9 (Leaf 4) (Leaf 5))' has subtrees
2021-04-27 22:51:40 +0200 <ski> i'm not talking about what you (directly) should do, at the moment, to process the input. i'm asking you to attempt to survey the whole process (it still being a bit undetermined, in flux so to speak), to some extent. specifically asking you to consider the desired result tree, for the given list of lists, and how it's built up from subtrees
2021-04-27 22:51:57 +0200 <int-e> (we could maybe start with a simpler tree description like [[0],[1,0],[0,0,2,3]])
2021-04-27 22:52:37 +0200alx741(~alx741@181.196.68.118)
2021-04-27 22:53:15 +0200 <aa111> ski: Yes i see your point,
2021-04-27 22:53:29 +0200kiweun(~kiweun@2607:fea8:2a62:9600:51c0:6989:ff0b:33af)
2021-04-27 22:56:31 +0200 <aa111> I got an idea, thank you for pointing me in right perspective
2021-04-27 22:58:49 +0200kiweun(~kiweun@2607:fea8:2a62:9600:51c0:6989:ff0b:33af) (Ping timeout: 276 seconds)
2021-04-27 22:59:12 +0200Lowl3v3l(~Lowl3v3l@dslb-002-207-103-026.002.207.pools.vodafone-ip.de) (Remote host closed the connection)
2021-04-27 23:02:22 +0200michalz(~user@185.246.204.107) (Remote host closed the connection)
2021-04-27 23:05:39 +0200hyperisco(~hyperisco@d192-186-117-226.static.comm.cgocable.net) (Ping timeout: 252 seconds)
2021-04-27 23:06:11 +0200kav(~kari@dsl-hkibng42-56733f-225.dhcp.inet.fi) (Ping timeout: 240 seconds)
2021-04-27 23:07:15 +0200aa111(3e1d4484@62.29.68.132) (Quit: Connection closed)
2021-04-27 23:07:53 +0200jpds(~jpds@gateway/tor-sasl/jpds)
2021-04-27 23:08:13 +0200justsomeguy(~justsomeg@unaffiliated/--/x-3805311)
2021-04-27 23:08:50 +0200fendor(~fendor@178.115.131.177.wireless.dyn.drei.com) (Read error: Connection reset by peer)
2021-04-27 23:13:13 +0200fendor(~fendor@178.115.131.177.wireless.dyn.drei.com)
2021-04-27 23:17:29 +0200knupfer(~Thunderbi@200116b82b9c4f00f9c2991c9c527ef0.dip.versatel-1u1.de) (Ping timeout: 245 seconds)
2021-04-27 23:21:22 +0200tempate(~tempate@7.pool85-60-109.dynamic.orange.es)
2021-04-27 23:21:23 +0200tempate(~tempate@7.pool85-60-109.dynamic.orange.es) (Changing host)
2021-04-27 23:21:23 +0200tempate(~tempate@unaffiliated/tempate)
2021-04-27 23:22:00 +0200LKoen(~LKoen@22.249.88.92.rev.sfr.net) (Quit: “It’s only logical. First you learn to talk, then you learn to think. Too bad it’s not the other way round.”)
2021-04-27 23:22:50 +0200 <cheater> any clues on libffi?
2021-04-27 23:23:27 +0200bor0(~boro@unaffiliated/boro/x-000000001) (Quit: Leaving)
2021-04-27 23:23:30 +0200acidjnk_new2(~acidjnk@p200300d0c72b9524d9e45372e00f3038.dip0.t-ipconnect.de)
2021-04-27 23:24:48 +0200ram19890(~ram@49.205.84.253) (Remote host closed the connection)
2021-04-27 23:24:55 +0200SquidDev(~SquidDev@autoclave.squiddev.cc) (Ping timeout: 268 seconds)
2021-04-27 23:25:06 +0200SquidDev(~SquidDev@autoclave.squiddev.cc)
2021-04-27 23:25:14 +0200ram19890(~ram@49.205.84.253)
2021-04-27 23:26:13 +0200Qwerky(~qwerky@37.173.171.170) (Remote host closed the connection)
2021-04-27 23:27:46 +0200jgt(~jgt@78.162.43.217) (Ping timeout: 260 seconds)
2021-04-27 23:31:14 +0200mounty(~mounty@236.216.214.218.sta.wbroadband.net.au)
2021-04-27 23:33:02 +0200kav(~kari@dsl-hkibng42-56733f-225.dhcp.inet.fi)
2021-04-27 23:33:04 +0200mikoto-chan(~anass@213.177.155.250)
2021-04-27 23:35:53 +0200DavidEichmann(~david@147.136.46.217.dyn.plus.net) (Remote host closed the connection)
2021-04-27 23:37:53 +0200Guest8109(~textual@mskresolve-a.mskcc.org) (Quit: My MacBook has gone to sleep. ZZZzzz…)
2021-04-27 23:42:54 +0200ystael(~ystael@209.6.50.55) (Read error: Connection reset by peer)
2021-04-27 23:43:18 +0200ystael(~ystael@209.6.50.55)
2021-04-27 23:44:10 +0200notzmv(~zmv@unaffiliated/zmv)
2021-04-27 23:45:08 +0200 <cheater> hmm my system's ghc comes with libffi.so.7 so i just symlinked it into path and i guess that works
2021-04-27 23:45:21 +0200 <cheater> LD_PATH or whatever
2021-04-27 23:45:31 +0200danvet(~Daniel@2a02:168:57f4:0:efd0:b9e5:5ae6:c2fa) (Ping timeout: 260 seconds)
2021-04-27 23:45:44 +0200 <cheater> tomsmeding: could you check gitter when you're around :)
2021-04-27 23:47:30 +0200mikoto-chan(~anass@213.177.155.250) (Quit: mikoto-chan)
2021-04-27 23:47:47 +0200mikoto-chan(~anass@213.177.155.250)
2021-04-27 23:48:55 +0200fendor(~fendor@178.115.131.177.wireless.dyn.drei.com) (Remote host closed the connection)
2021-04-27 23:49:32 +0200mikoto-chan(~anass@213.177.155.250) (Client Quit)
2021-04-27 23:50:58 +0200pbgc(~pbgc@a89-152-234-147.cpe.netcabo.pt) (Quit: Computer has gone to sleep.)
2021-04-27 23:52:43 +0200 <lechner> Hi, I am a noobie who bit off too much. I would like to rewrite a Node.js website in Purescript but have some serious type confusion. any hinters would be appreciated. line 78 from the error is line 115 in the paste https://dpaste.org/T9bg
2021-04-27 23:53:32 +0200zebrag(~inkbottle@aaubervilliers-654-1-79-166.w86-212.abo.wanadoo.fr) (Quit: Konversation terminated!)
2021-04-27 23:54:19 +0200 <lechner> send returns HandlerM but the database query just before it messes everything up
2021-04-27 23:54:37 +0200slack1256(~slack1256@200-112-79-247.baf.movistar.cl) (Ping timeout: 252 seconds)
2021-04-27 23:55:10 +0200 <monochrom> Is there a purescript channel so you can talk to better matching people?
2021-04-27 23:55:45 +0200 <monochrom> Or is my favourite correlation true again?
2021-04-27 23:56:42 +0200geekosaur(930099da@rrcs-147-0-153-218.central.biz.rr.com) (Quit: Connection closed)
2021-04-27 23:57:04 +0200geekosaur(930099da@rrcs-147-0-153-218.central.biz.rr.com)
2021-04-27 23:57:27 +0200 <geekosaur> I see 38 people and a logger in #purescript
2021-04-27 23:58:12 +0200 <lechner> yes I am over there too, but it's a third-party module they do not know, and I have a Haskell problem. plus, it's for a good purpose :)
2021-04-27 23:58:29 +0200 <monochrom> math channel : "I can't find accounting help on IRC" :: haskell channel : "I can't find purescript help on IRC"
2021-04-27 23:59:13 +0200 <lechner> that's the first unfriendly response i have seen here, but thanks!
2021-04-27 23:59:48 +0200 <monochrom> No, I am talking about a negative correlation between channel membership and job opportunities.