2021/04/12

2021-04-12 00:03:09 +0200m_miro(4c4829bb@76.72.41.187) (Quit: Connection closed)
2021-04-12 00:03:18 +0200juri_(~juri@178.63.35.222) (Ping timeout: 240 seconds)
2021-04-12 00:03:50 +0200ulfryk(~ulfryk@2a01:4b00:872d:e600:a55a:b8e3:54cc:d8d6)
2021-04-12 00:05:41 +0200gzj(~gzj@unaffiliated/gzj)
2021-04-12 00:07:37 +0200heatsink(~heatsink@108-201-191-115.lightspeed.sntcca.sbcglobal.net)
2021-04-12 00:08:11 +0200ulfryk(~ulfryk@2a01:4b00:872d:e600:a55a:b8e3:54cc:d8d6) (Ping timeout: 250 seconds)
2021-04-12 00:09:50 +0200machinedgod(~machinedg@135-23-192-217.cpe.pppoe.ca)
2021-04-12 00:10:15 +0200codygman__(~user@47.186.207.161)
2021-04-12 00:10:20 +0200codygman__(~user@47.186.207.161) (Remote host closed the connection)
2021-04-12 00:10:36 +0200codygman__(~user@47.186.207.161)
2021-04-12 00:12:11 +0200heatsink(~heatsink@108-201-191-115.lightspeed.sntcca.sbcglobal.net) (Ping timeout: 260 seconds)
2021-04-12 00:13:01 +0200Pickchea(~private@unaffiliated/pickchea) (Quit: Leaving)
2021-04-12 00:14:38 +0200codygman__(~user@47.186.207.161) (Remote host closed the connection)
2021-04-12 00:15:02 +0200codygman__(~user@47.186.207.161)
2021-04-12 00:16:18 +0200codygman__(~user@47.186.207.161) (Remote host closed the connection)
2021-04-12 00:19:13 +0200jpe90(~user@pool-108-31-85-19.washdc.fios.verizon.net) (Ping timeout: 265 seconds)
2021-04-12 00:22:04 +0200renzhi(~renzhi@2607:fa49:653f:a800::4223) (Ping timeout: 258 seconds)
2021-04-12 00:23:41 +0200wroathe(~wroathe@c-68-54-25-135.hsd1.mn.comcast.net) (Ping timeout: 240 seconds)
2021-04-12 00:25:04 +0200robotmay(~beepboop@2001:8b0:7af0:2580:257e:30aa:f716:dc3d) (Remote host closed the connection)
2021-04-12 00:25:55 +0200nut(~user@roc37-h01-176-170-197-243.dsl.sta.abo.bbox.fr) (Ping timeout: 252 seconds)
2021-04-12 00:26:23 +0200robotmay(~beepboop@2001:8b0:7af0:2580:505f:607:efbd:23b4)
2021-04-12 00:29:58 +0200wroathe(~wroathe@c-68-54-25-135.hsd1.mn.comcast.net)
2021-04-12 00:34:13 +0200wroathe(~wroathe@c-68-54-25-135.hsd1.mn.comcast.net) (Ping timeout: 240 seconds)
2021-04-12 00:35:04 +0200wroathe(~wroathe@c-68-54-25-135.hsd1.mn.comcast.net)
2021-04-12 00:36:48 +0200ulfryk(~ulfryk@2a01:4b00:872d:e600:a55a:b8e3:54cc:d8d6)
2021-04-12 00:37:25 +0200 <bradparker> joel135: Sorry about that. That motivating example at the beginning is really poorly explained. All the other code examples are in a gist mentioned at the end of the article (https://gist.github.com/bradparker/205a8ff1f6bcbc9a2d3249e1d8ba5af1#file-lens-hs). That 'json' QuasiQuoter is available from the HSpec WAI JSON package (http://hackage.haskell.org/package/hspec-wai-json).
2021-04-12 00:40:09 +0200myShoggoth(~myShoggot@75.164.73.93)
2021-04-12 00:41:43 +0200ulfryk(~ulfryk@2a01:4b00:872d:e600:a55a:b8e3:54cc:d8d6) (Ping timeout: 260 seconds)
2021-04-12 00:42:26 +0200ulfryk(~ulfryk@2a01:4b00:872d:e600:a55a:b8e3:54cc:d8d6)
2021-04-12 00:43:52 +0200nbloomf(~nbloomf@76.217.43.73)
2021-04-12 00:44:23 +0200Feuermagier_(~Feuermagi@2a02:2488:4211:3400:7285:c2ff:fe22:172e) (Remote host closed the connection)
2021-04-12 00:44:33 +0200Feuermagier_(~Feuermagi@2a02:2488:4211:3400:7285:c2ff:fe22:172e)
2021-04-12 00:44:34 +0200DTZUZU_(~DTZUZO@207.81.119.43)
2021-04-12 00:45:06 +0200chenshen(~chenshen@2620:10d:c090:400::5:b6af)
2021-04-12 00:45:39 +0200fiedlr(~fiedlr@83.148.33.254) (Remote host closed the connection)
2021-04-12 00:46:42 +0200DTZUZU(~DTZUZO@205.ip-149-56-132.net) (Ping timeout: 240 seconds)
2021-04-12 00:46:59 +0200ulfryk(~ulfryk@2a01:4b00:872d:e600:a55a:b8e3:54cc:d8d6) (Ping timeout: 258 seconds)
2021-04-12 00:48:01 +0200ulfryk(~ulfryk@2a01:4b00:872d:e600:a55a:b8e3:54cc:d8d6)
2021-04-12 00:48:50 +0200HannaM(~quassel@p54849510.dip0.t-ipconnect.de) (Quit: http://quassel-irc.org - Chat comfortably. Anywhere.)
2021-04-12 00:51:36 +0200Tario(~Tario@201.192.165.173) (Read error: Connection reset by peer)
2021-04-12 00:52:06 +0200Tario(~Tario@201.192.165.173)
2021-04-12 00:52:27 +0200ulfryk(~ulfryk@2a01:4b00:872d:e600:a55a:b8e3:54cc:d8d6) (Ping timeout: 260 seconds)
2021-04-12 00:53:38 +0200ulfryk(~ulfryk@2a01:4b00:872d:e600:a55a:b8e3:54cc:d8d6)
2021-04-12 00:55:05 +0200mach1speed(~textual@S0106f0b4d2c39cee.va.shawcable.net)
2021-04-12 00:55:26 +0200juri_(~juri@79.140.122.118)
2021-04-12 00:57:37 +0200Guest78317(~laudiacay@67.176.215.84)
2021-04-12 00:58:01 +0200ulfryk(~ulfryk@2a01:4b00:872d:e600:a55a:b8e3:54cc:d8d6) (Ping timeout: 250 seconds)
2021-04-12 00:59:14 +0200ulfryk(~ulfryk@2a01:4b00:872d:e600:a55a:b8e3:54cc:d8d6)
2021-04-12 01:00:29 +0200juri__(~juri@178.63.35.222)
2021-04-12 01:00:38 +0200olligobber(olligobber@gateway/vpn/privateinternetaccess/olligobber)
2021-04-12 01:01:04 +0200rprije(~rprije@59-102-63-15.tpgi.com.au)
2021-04-12 01:01:31 +0200merijn(~merijn@83-160-49-249.ip.xs4all.nl)
2021-04-12 01:01:33 +0200Guest78317(~laudiacay@67.176.215.84) (Ping timeout: 240 seconds)
2021-04-12 01:03:11 +0200juri_(~juri@79.140.122.118) (Ping timeout: 265 seconds)
2021-04-12 01:03:39 +0200ulfryk(~ulfryk@2a01:4b00:872d:e600:a55a:b8e3:54cc:d8d6) (Ping timeout: 260 seconds)
2021-04-12 01:04:51 +0200ulfryk(~ulfryk@2a01:4b00:872d:e600:a55a:b8e3:54cc:d8d6)
2021-04-12 01:07:11 +0200Gurkenglas(~Gurkengla@unaffiliated/gurkenglas) (Ping timeout: 240 seconds)
2021-04-12 01:08:36 +0200heatsink(~heatsink@108-201-191-115.lightspeed.sntcca.sbcglobal.net)
2021-04-12 01:09:13 +0200ulfryk(~ulfryk@2a01:4b00:872d:e600:a55a:b8e3:54cc:d8d6) (Ping timeout: 258 seconds)
2021-04-12 01:10:26 +0200ulfryk(~ulfryk@2a01:4b00:872d:e600:a55a:b8e3:54cc:d8d6)
2021-04-12 01:11:06 +0200DavidEichmann(~david@47.27.93.209.dyn.plus.net) (Remote host closed the connection)
2021-04-12 01:11:43 +0200haskellstudent(~quassel@213-225-6-101.nat.highway.a1.net) (Ping timeout: 268 seconds)
2021-04-12 01:11:46 +0200amerigo(uid331857@gateway/web/irccloud.com/x-bkqqhlxtahyyobpt)
2021-04-12 01:13:25 +0200takuan(~takuan@178-116-218-225.access.telenet.be) (Remote host closed the connection)
2021-04-12 01:13:46 +0200heatsink(~heatsink@108-201-191-115.lightspeed.sntcca.sbcglobal.net) (Ping timeout: 252 seconds)
2021-04-12 01:14:51 +0200ulfryk(~ulfryk@2a01:4b00:872d:e600:a55a:b8e3:54cc:d8d6) (Ping timeout: 260 seconds)
2021-04-12 01:14:53 +0200zeenk(~zeenk@2a02:2f04:a10b:af00:91ba:3645:1cdb:9a75) (Quit: Konversation terminated!)
2021-04-12 01:15:39 +0200son0p(~ff@181.136.122.143) (Remote host closed the connection)
2021-04-12 01:16:07 +0200elliott_(~elliott@pool-108-51-101-42.washdc.fios.verizon.net)
2021-04-12 01:17:11 +0200dmytrish(~mitra@2a02:8084:a82:d900:b81f:59fe:5cfc:b422) (Ping timeout: 260 seconds)
2021-04-12 01:17:23 +0200gnumonic(~gnumonic@c-73-170-91-210.hsd1.ca.comcast.net)
2021-04-12 01:17:57 +0200sof_(~sof@c-73-102-150-36.hsd1.in.comcast.net)
2021-04-12 01:19:06 +0200sof_(~sof@c-73-102-150-36.hsd1.in.comcast.net) ("Leaving")
2021-04-12 01:23:52 +0200fiedlr(~fiedlr@83.148.33.254)
2021-04-12 01:24:41 +0200fiedlr(~fiedlr@83.148.33.254) (Remote host closed the connection)
2021-04-12 01:25:31 +0200heatsink(~heatsink@108-201-191-115.lightspeed.sntcca.sbcglobal.net)
2021-04-12 01:28:17 +0200Tario(~Tario@201.192.165.173) (Read error: Connection reset by peer)
2021-04-12 01:28:19 +0200falafel(~falafel@pool-96-255-70-50.washdc.fios.verizon.net) (Ping timeout: 265 seconds)
2021-04-12 01:28:33 +0200Tario(~Tario@201.192.165.173)
2021-04-12 01:35:34 +0200merijn(~merijn@83-160-49-249.ip.xs4all.nl) (Ping timeout: 265 seconds)
2021-04-12 01:39:13 +0200myShoggoth(~myShoggot@75.164.73.93) (Ping timeout: 240 seconds)
2021-04-12 01:41:49 +0200wroathe(~wroathe@c-68-54-25-135.hsd1.mn.comcast.net) (Ping timeout: 252 seconds)
2021-04-12 01:45:09 +0200ulfryk(~ulfryk@2a01:4b00:872d:e600:a55a:b8e3:54cc:d8d6)
2021-04-12 01:48:12 +0200DTZUZU(~DTZUZO@205.ip-149-56-132.net)
2021-04-12 01:48:44 +0200myShoggoth(~myShoggot@75.164.73.93)
2021-04-12 01:49:51 +0200ulfryk(~ulfryk@2a01:4b00:872d:e600:a55a:b8e3:54cc:d8d6) (Ping timeout: 258 seconds)
2021-04-12 01:50:34 +0200Tario(~Tario@201.192.165.173) (Ping timeout: 268 seconds)
2021-04-12 01:50:38 +0200DTZUZU_(~DTZUZO@207.81.119.43) (Ping timeout: 240 seconds)
2021-04-12 01:50:45 +0200justsomeguy(~justsomeg@unaffiliated/--/x-3805311) (Quit: WeeChat 3.0.1)
2021-04-12 01:50:58 +0200ulfryk(~ulfryk@2a01:4b00:872d:e600:a55a:b8e3:54cc:d8d6)
2021-04-12 01:52:13 +0200frozenErebus(~frozenEre@37.231.244.249) (Ping timeout: 240 seconds)
2021-04-12 01:53:06 +0200raehik(~raehik@cpc95906-rdng25-2-0-cust156.15-3.cable.virginm.net) (Ping timeout: 240 seconds)
2021-04-12 01:53:12 +0200acarrico(~acarrico@dhcp-68-142-39-249.greenmountainaccess.net)
2021-04-12 01:53:45 +0200cole-h(~cole-h@c-73-48-197-220.hsd1.ca.comcast.net)
2021-04-12 01:55:27 +0200ulfryk(~ulfryk@2a01:4b00:872d:e600:a55a:b8e3:54cc:d8d6) (Ping timeout: 260 seconds)
2021-04-12 01:56:24 +0200ulfryk(~ulfryk@2a01:4b00:872d:e600:a55a:b8e3:54cc:d8d6)
2021-04-12 01:56:58 +0200Tario(~Tario@200.119.187.163)
2021-04-12 01:57:05 +0200gzj(~gzj@unaffiliated/gzj) (Remote host closed the connection)
2021-04-12 01:57:19 +0200fiedlr(~fiedlr@83.148.33.254)
2021-04-12 01:57:25 +0200gzj(~gzj@unaffiliated/gzj)
2021-04-12 01:59:59 +0200xsperry(~as@unaffiliated/xsperry) ()
2021-04-12 02:00:06 +0200atk(~Arch-TK@ircpuzzles/staff/Arch-TK) (Quit: Well this is unexpected.)
2021-04-12 02:00:28 +0200atk(~Arch-TK@ircpuzzles/staff/Arch-TK)
2021-04-12 02:00:29 +0200xsperry(~as@unaffiliated/xsperry)
2021-04-12 02:01:03 +0200ulfryk(~ulfryk@2a01:4b00:872d:e600:a55a:b8e3:54cc:d8d6) (Ping timeout: 260 seconds)
2021-04-12 02:02:07 +0200ulfryk(~ulfryk@2a01:4b00:872d:e600:a55a:b8e3:54cc:d8d6)
2021-04-12 02:02:19 +0200wroathe(~wroathe@c-68-54-25-135.hsd1.mn.comcast.net)
2021-04-12 02:05:21 +0200Neuromancer(~Neuromanc@unaffiliated/neuromancer) (Ping timeout: 260 seconds)
2021-04-12 02:06:29 +0200ulfryk(~ulfryk@2a01:4b00:872d:e600:a55a:b8e3:54cc:d8d6) (Ping timeout: 250 seconds)
2021-04-12 02:07:39 +0200ulfryk(~ulfryk@2a01:4b00:872d:e600:a55a:b8e3:54cc:d8d6)
2021-04-12 02:08:13 +0200usr25(~usr25@unaffiliated/usr25) (Ping timeout: 240 seconds)
2021-04-12 02:08:27 +0200Deide(~Deide@217.155.19.23) (Quit: Seeee yaaaa)
2021-04-12 02:11:15 +0200justanotheruser(~justanoth@unaffiliated/justanotheruser) (Ping timeout: 250 seconds)
2021-04-12 02:11:49 +0200gitgood(~gitgood@host-78-145-142-133.as13285.net) (Ping timeout: 265 seconds)
2021-04-12 02:12:15 +0200ulfryk(~ulfryk@2a01:4b00:872d:e600:a55a:b8e3:54cc:d8d6) (Ping timeout: 260 seconds)
2021-04-12 02:13:17 +0200ulfryk(~ulfryk@2a01:4b00:872d:e600:a55a:b8e3:54cc:d8d6)
2021-04-12 02:16:01 +0200chenshen(~chenshen@2620:10d:c090:400::5:b6af) (Quit: My MacBook Pro has gone to sleep. ZZZzzz…)
2021-04-12 02:17:23 +0200wroathe(~wroathe@c-68-54-25-135.hsd1.mn.comcast.net) (Ping timeout: 260 seconds)
2021-04-12 02:17:50 +0200ulfryk(~ulfryk@2a01:4b00:872d:e600:a55a:b8e3:54cc:d8d6) (Ping timeout: 258 seconds)
2021-04-12 02:18:53 +0200ulfryk(~ulfryk@2a01:4b00:872d:e600:a55a:b8e3:54cc:d8d6)
2021-04-12 02:21:33 +0200myShoggoth(~myShoggot@75.164.73.93) (Ping timeout: 240 seconds)
2021-04-12 02:22:59 +0200wroathe(~wroathe@c-68-54-25-135.hsd1.mn.comcast.net)
2021-04-12 02:23:12 +0200Sgeo(~Sgeo@ool-18b98aa4.dyn.optonline.net) (Ping timeout: 240 seconds)
2021-04-12 02:23:27 +0200ulfryk(~ulfryk@2a01:4b00:872d:e600:a55a:b8e3:54cc:d8d6) (Ping timeout: 260 seconds)
2021-04-12 02:23:36 +0200Sgeo(~Sgeo@ool-18b98aa4.dyn.optonline.net)
2021-04-12 02:24:12 +0200star_cloud(~star_clou@ec2-34-220-44-120.us-west-2.compute.amazonaws.com) (Ping timeout: 240 seconds)
2021-04-12 02:25:01 +0200zyeri(zyeri@gateway/shell/tilde.team/x-worsvflxuunnsvnw)
2021-04-12 02:25:01 +0200zyeri(zyeri@gateway/shell/tilde.team/x-worsvflxuunnsvnw) (Changing host)
2021-04-12 02:25:01 +0200zyeri(zyeri@tilde.team/users/zyeri)
2021-04-12 02:26:21 +0200justanotheruser(~justanoth@unaffiliated/justanotheruser)
2021-04-12 02:26:38 +0200quinn(~quinn@c-73-223-224-163.hsd1.ca.comcast.net) (Ping timeout: 240 seconds)
2021-04-12 02:27:28 +0200wroathe(~wroathe@c-68-54-25-135.hsd1.mn.comcast.net) (Ping timeout: 252 seconds)
2021-04-12 02:28:44 +0200 <koz_> d34df00d: What's your question(s)?
2021-04-12 02:28:45 +0200Tario(~Tario@200.119.187.163) (Read error: Connection reset by peer)
2021-04-12 02:31:36 +0200quinn(~quinn@c-73-223-224-163.hsd1.ca.comcast.net)
2021-04-12 02:34:18 +0200Tario(~Tario@201.192.165.173)
2021-04-12 02:38:36 +0200tmciver(~tmciver@cpe-172-101-40-226.maine.res.rr.com) (Ping timeout: 260 seconds)
2021-04-12 02:40:20 +0200tmciver(~tmciver@cpe-172-101-40-226.maine.res.rr.com)
2021-04-12 02:40:36 +0200cloudpip(sid67735@gateway/web/irccloud.com/x-lqqwgjfhbduhzygo)
2021-04-12 02:41:09 +0200acidjnk_new(~acidjnk@p200300d0c72b950365222184c91f1222.dip0.t-ipconnect.de) (Ping timeout: 250 seconds)
2021-04-12 02:41:56 +0200 <cloudpip> hi all, I'm trying to build a recompile-and-run-loop with ghc, so it'll compile your code and run the main function in a loop so for example in an interactive program, you can close the program and it'll recompile the sources that changed and restart main
2021-04-12 02:42:07 +0200abhixec(~abhixec@c-67-169-139-16.hsd1.ca.comcast.net) (Remote host closed the connection)
2021-04-12 02:42:17 +0200 <cloudpip> https://github.com/homectl/workspace/blob/main/livecoding/src/Debug/LiveCoding.hs <- it works, with 2 caveats I'd like to resolve
2021-04-12 02:44:00 +0200 <cloudpip> 1) most importantly, I want it to compile to object code, like ghci -fobject-code. this clearly is possible (since ghci -fobject-code works), but when I set it to HscAsm, it no longer reloads the modules even though it does recompile them
2021-04-12 02:44:14 +0200 <cloudpip> HscAsm does work, but reloading the modules does not
2021-04-12 02:45:55 +0200 <cloudpip> 2) adding -hide-all-packages (via Opt_HideAllPackages) makes it crash: https://www.irccloud.com/pastebin/SL8YmJSc/
2021-04-12 02:46:36 +0200vicfred(~vicfred@unaffiliated/vicfred) (Quit: Leaving)
2021-04-12 02:49:38 +0200jamm_(~jamm@unaffiliated/jamm)
2021-04-12 02:53:52 +0200jamm_(~jamm@unaffiliated/jamm) (Ping timeout: 258 seconds)
2021-04-12 02:56:02 +0200ViCi(daniel@10PLM.ro) (Quit: Quit!)
2021-04-12 02:56:40 +0200abhixec(~abhixec@c-67-169-139-16.hsd1.ca.comcast.net)
2021-04-12 02:57:40 +0200 <wrunt> cloudpip: maybe you can find a clue in the implementation of Dyre, since it does run-time compilation? (https://github.com/willdonnelly/dyre)
2021-04-12 02:58:17 +0200 <cloudpip> I'm staring at GHCi.UI and I don't see what I'm doing differently
2021-04-12 02:58:24 +0200 <cloudpip> it looks exactly the same to me
2021-04-12 02:59:23 +0200 <cloudpip> https://github.com/willdonnelly/dyre/blob/master/Config/Dyre/Compile.hs#L73
2021-04-12 02:59:27 +0200 <cloudpip> dyre seems to just call ghc?
2021-04-12 03:00:10 +0200 <cloudpip> I specifically don't want to call ghc, because I don't want to wait 1 minute for ld to do the executable linking
2021-04-12 03:00:22 +0200 <cloudpip> ghci in-memory linking is super fast, so I want that
2021-04-12 03:01:01 +0200 <cloudpip> I looked at hint, it only does HscInterpreted
2021-04-12 03:03:45 +0200 <cloudpip> now I'm looking at "plugins", which does in fact do loading of .o files, but it's more low level than what I need.. still, it might be useful (though it doesn't work on windows)
2021-04-12 03:05:44 +0200ulfryk(~ulfryk@2a01:4b00:872d:e600:a55a:b8e3:54cc:d8d6)
2021-04-12 03:05:47 +0200vicfred(~vicfred@unaffiliated/vicfred)
2021-04-12 03:05:58 +0200GZJ0X_(~gzj@unaffiliated/gzj)
2021-04-12 03:07:18 +0200ulfryk(~ulfryk@2a01:4b00:872d:e600:a55a:b8e3:54cc:d8d6) (Remote host closed the connection)
2021-04-12 03:08:29 +0200Tuplanolla(~Tuplanoll@91-159-68-239.elisa-laajakaista.fi) (Quit: Leaving.)
2021-04-12 03:09:49 +0200gzj(~gzj@unaffiliated/gzj) (Ping timeout: 252 seconds)
2021-04-12 03:10:31 +0200DTZUZU_(~DTZUZO@207.81.119.43)
2021-04-12 03:11:04 +0200whataday(~xxx@2400:8902::f03c:92ff:fe60:98d8) (Remote host closed the connection)
2021-04-12 03:11:44 +0200 <d34df00d> koz_: well, I have this code for doing IDCT (the bottom-most function, idctBlocks, is doing that, plus collecting all of the results to ensure things are fully evaluated, but that's perhaps irrelevant):
2021-04-12 03:11:50 +0200 <d34df00d> https://bpaste.net/PXTA
2021-04-12 03:11:56 +0200 <d34df00d> It's also built with -fllvm -O2
2021-04-12 03:12:11 +0200whataday(~xxx@2400:8902::f03c:92ff:fe60:98d8)
2021-04-12 03:12:12 +0200DTZUZU(~DTZUZO@205.ip-149-56-132.net) (Ping timeout: 240 seconds)
2021-04-12 03:12:57 +0200 <d34df00d> And it is ridiculously slow. It takes about 2 seconds of CPU time on some test data I have (which has about 1 million of 8×8 matrices over which IDCT happens, so about 64 million elements in the vector that the function takes).
2021-04-12 03:13:04 +0200ulfryk(~ulfryk@2a01:4b00:872d:e600:a55a:b8e3:54cc:d8d6)
2021-04-12 03:13:29 +0200 <d34df00d> My rough estimate of the time required for this is from 250 milliseconds (for dumb, scalar code) to about 30 ms if SIMD is involved.
2021-04-12 03:14:03 +0200 <d34df00d> So I wonder what I'm doing wrong and how can I make this faster.
2021-04-12 03:15:05 +0200 <d34df00d> Ah, and the performance of the code is insensitive to whether I'm going row-wise or column-wise — replacing arrSlice = R.unsafeSlice arr (sh :. x :. All) with arrSlice = R.unsafeSlice arr (sh :. All :. x) there (and similarly for idctSlice) has no effect on performance whatsoever.
2021-04-12 03:15:14 +0200 <d34df00d> Which definitely should not happen for a well-optimized code.
2021-04-12 03:17:38 +0200ulfryk(~ulfryk@2a01:4b00:872d:e600:a55a:b8e3:54cc:d8d6) (Ping timeout: 258 seconds)
2021-04-12 03:17:58 +0200quinn(~quinn@c-73-223-224-163.hsd1.ca.comcast.net) (Ping timeout: 240 seconds)
2021-04-12 03:18:38 +0200ulfryk(~ulfryk@2a01:4b00:872d:e600:a55a:b8e3:54cc:d8d6)
2021-04-12 03:19:31 +0200quinn(~quinn@c-73-223-224-163.hsd1.ca.comcast.net)
2021-04-12 03:19:49 +0200wroathe(~wroathe@c-68-54-25-135.hsd1.mn.comcast.net)
2021-04-12 03:21:14 +0200DTZUZU(~DTZUZO@205.ip-149-56-132.net)
2021-04-12 03:21:22 +0200quinn(~quinn@c-73-223-224-163.hsd1.ca.comcast.net) (Client Quit)
2021-04-12 03:22:43 +0200xff0x(~xff0x@2001:1a81:5278:bf00:33a0:2c0f:72ed:caee) (Ping timeout: 260 seconds)
2021-04-12 03:23:11 +0200ulfryk(~ulfryk@2a01:4b00:872d:e600:a55a:b8e3:54cc:d8d6) (Ping timeout: 260 seconds)
2021-04-12 03:23:18 +0200 <koz_> What difference(s) do you observe without -fllvm?
2021-04-12 03:23:26 +0200DTZUZU_(~DTZUZO@207.81.119.43) (Ping timeout: 240 seconds)
2021-04-12 03:24:14 +0200ulfryk(~ulfryk@2a01:4b00:872d:e600:a55a:b8e3:54cc:d8d6)
2021-04-12 03:24:18 +0200xff0x(~xff0x@2001:1a81:52af:1400:3ce5:1261:85cb:8b42)
2021-04-12 03:27:14 +0200 <d34df00d> Oh, much slower.
2021-04-12 03:27:17 +0200 <d34df00d> Still waiting…
2021-04-12 03:27:33 +0200 <koz_> OK, and I guess the same _with_ -fllvm but with -O1?
2021-04-12 03:27:40 +0200 <koz_> I'm trying to rule out weird regressions.
2021-04-12 03:27:50 +0200 <d34df00d> Alrighty, done waiting. 45 seconds with -fasm for that module vs -fllvm.
2021-04-12 03:28:09 +0200 <d34df00d> vs 2 for -fllvm, that is.
2021-04-12 03:28:12 +0200 <d34df00d> Let me try -O1 now.
2021-04-12 03:28:26 +0200 <d34df00d> Yeah, -O1 with -fllvm is slower, but not that much — 3.3 seconds vs 2 seconds.
2021-04-12 03:28:36 +0200 <koz_> OK so not a weird regression.
2021-04-12 03:28:40 +0200koz_thinks a bit.
2021-04-12 03:28:49 +0200ulfryk(~ulfryk@2a01:4b00:872d:e600:a55a:b8e3:54cc:d8d6) (Ping timeout: 250 seconds)
2021-04-12 03:29:11 +0200quinn(~quinn@c-73-223-224-163.hsd1.ca.comcast.net)
2021-04-12 03:29:19 +0200quinn(~quinn@c-73-223-224-163.hsd1.ca.comcast.net) (Client Quit)
2021-04-12 03:29:32 +0200 <d34df00d> I mean, as a next step I could either try accelerate instead of repa, or try to write that stuff myself with primops (too bad ghc primops don't have horizontal add, meh!), or dunno.
2021-04-12 03:29:35 +0200 <koz_> Yeah, might be better see if anyone knows, cause I'm a bit mystified.
2021-04-12 03:29:47 +0200 <d34df00d> But I have a gut feel that repa can do better than that, and I'd like to know how.
2021-04-12 03:30:15 +0200 <d34df00d> I mean, it cannot be one or two orders of magnitude slower than something that's somewhat easily achievable.
2021-04-12 03:30:35 +0200 <koz_> Repa is meant to emit CPU code right?
2021-04-12 03:30:38 +0200 <koz_> Have you tried massiv?
2021-04-12 03:30:39 +0200 <d34df00d> Yep.
2021-04-12 03:30:41 +0200 <d34df00d> Nope.
2021-04-12 03:30:45 +0200 <koz_> I'd be curious if massiv could do better.
2021-04-12 03:31:16 +0200 <koz_> For Cabal files, if I wanna detect being on a Mac, I test 'os(macos)', right?
2021-04-12 03:31:56 +0200 <d34df00d> Yeah, I'll definitely give it a shot! I never really used massiv, so I'll be curious to see how it performs.
2021-04-12 03:32:08 +0200merijn(~merijn@83-160-49-249.ip.xs4all.nl)
2021-04-12 03:32:13 +0200 <d34df00d> In another task where I used repa, it was very close to what I would expect performance-wise.
2021-04-12 03:32:51 +0200 <koz_> Yeah, but there is definitely some Repa-specific specialist knowledge required to make sense of what will run well or not.
2021-04-12 03:34:02 +0200quinn(~quinn@c-73-223-224-163.hsd1.ca.comcast.net)
2021-04-12 03:34:17 +0200 <d34df00d> The one thing I noticed so far is that I cannot figure out when to materialize things.
2021-04-12 03:34:40 +0200 <d34df00d> I kinda have the intuition of "when the next step is gonna use each element more than once", but that doesn't always work.
2021-04-12 03:35:11 +0200 <koz_> Materialization is most useful when indexing happens a lot.
2021-04-12 03:35:19 +0200 <koz_> Immaterial arrays transform well, but index badly.
2021-04-12 03:35:28 +0200 <koz_> Material ones _index_ well, but transform badly (since you have to copy).
2021-04-12 03:35:32 +0200ulfryk(~ulfryk@2a01:4b00:872d:e600:a55a:b8e3:54cc:d8d6)
2021-04-12 03:37:11 +0200quinn(~quinn@c-73-223-224-163.hsd1.ca.comcast.net) (Client Quit)
2021-04-12 03:38:45 +0200sedeki(~textual@unaffiliated/sedeki)
2021-04-12 03:39:59 +0200ulfryk(~ulfryk@2a01:4b00:872d:e600:a55a:b8e3:54cc:d8d6) (Ping timeout: 260 seconds)
2021-04-12 03:41:03 +0200ulfryk(~ulfryk@2a01:4b00:872d:e600:a55a:b8e3:54cc:d8d6)
2021-04-12 03:42:09 +0200xiinotulp(~q@node-uqk.pool-125-24.dynamic.totinternet.net)
2021-04-12 03:43:15 +0200quinn(~quinn@c-73-223-224-163.hsd1.ca.comcast.net)
2021-04-12 03:43:55 +0200BosonCollider(~olofs@90-227-86-119-no542.tbcn.telia.com) (Ping timeout: 252 seconds)
2021-04-12 03:44:24 +0200BosonCollider(~olofs@90-227-86-119-no542.tbcn.telia.com)
2021-04-12 03:44:33 +0200acarrico(~acarrico@dhcp-68-142-39-249.greenmountainaccess.net) (Ping timeout: 240 seconds)
2021-04-12 03:45:17 +0200ulfryk(~ulfryk@2a01:4b00:872d:e600:a55a:b8e3:54cc:d8d6) (Ping timeout: 250 seconds)
2021-04-12 03:45:18 +0200plutoniix(~q@node-ur9.pool-125-24.dynamic.totinternet.net) (Ping timeout: 240 seconds)
2021-04-12 03:46:03 +0200 <hololeap> out of curiousity, what branch of CS are you two talking about? i'm searching for "materialization array" and "immaterial array" not really finding anything
2021-04-12 03:46:08 +0200GZJ0X_(~gzj@unaffiliated/gzj) (Read error: Connection reset by peer)
2021-04-12 03:46:10 +0200 <koz_> It's not a CS thing.
2021-04-12 03:46:13 +0200xiinotulp(~q@node-uqk.pool-125-24.dynamic.totinternet.net) (Ping timeout: 240 seconds)
2021-04-12 03:46:20 +0200 <koz_> It's a functional handling of arrays thing.
2021-04-12 03:46:27 +0200GZJ0X_(~gzj@unaffiliated/gzj)
2021-04-12 03:46:36 +0200 <koz_> Basically, you can represent an array as 'material', which is like, a regular immutable array.
2021-04-12 03:46:52 +0200 <koz_> Or 'immaterial', which more-or-less represents a computation that will _produce_ an array on demand.
2021-04-12 03:47:01 +0200 <koz_> There's usually two ways this can be done (push or pull).
2021-04-12 03:47:03 +0200 <d34df00d> koz_: that makes sense. What makes me curious, though, is that this:
2021-04-12 03:47:06 +0200 <d34df00d> R.map fromIntegral $ R.reshape matExtent $ R.computeUnboxedS $ R.backpermute flatExtent unZigzagify reparr
2021-04-12 03:47:09 +0200 <d34df00d> performs much better than this:
2021-04-12 03:47:16 +0200 <d34df00d> R.computeUnboxedS $ R.map fromIntegral $ R.reshape matExtent $ R.backpermute flatExtent unZigzagify reparr
2021-04-12 03:47:23 +0200s00pcan(~chris@107.181.165.217) (Ping timeout: 252 seconds)
2021-04-12 03:47:41 +0200 <koz_> How is the final result of either of this consumed?
2021-04-12 03:47:54 +0200 <d34df00d> It's passed to that idctBlocks thing
2021-04-12 03:48:35 +0200 <koz_> Yeah, because you're needlessly summing.
2021-04-12 03:48:49 +0200 <koz_> Any fold (which sums are) can process an immaterial array without ever having to materialize it.
2021-04-12 03:49:19 +0200s00pcan(~chris@075-133-056-178.res.spectrum.com)
2021-04-12 03:49:27 +0200 <koz_> So your materialization there is completely unnecessary, but Repa will dutifully do it, then throw it the hell away.
2021-04-12 03:50:40 +0200 <d34df00d> But it does the IDCT first, doing lots of matrix multiplications!
2021-04-12 03:50:46 +0200mmmattyx(uid17782@gateway/web/irccloud.com/x-zbqbfvcklnwtphsz) (Quit: Connection closed for inactivity)
2021-04-12 03:51:05 +0200 <d34df00d> Ugh, I meant "passed to that idct thing", sorry.
2021-04-12 03:51:13 +0200 <d34df00d> ...which is a slightly different function.
2021-04-12 03:54:57 +0200 <koz_> Yeah, that does kinda change things.
2021-04-12 03:55:48 +0200 <koz_> Although it still makes sense - you have a sum with a zip inside and some slicing.
2021-04-12 03:55:53 +0200 <koz_> So my argument still holds.
2021-04-12 03:56:24 +0200 <koz_> I'd need to look into Repa's innards to be sure, but it still makes sense that prematerializing it doesn't give you anything.
2021-04-12 03:57:45 +0200viluon(uid453725@gateway/web/irccloud.com/x-tkvbkhprqmkdlgqp) (Quit: Connection closed for inactivity)
2021-04-12 03:58:09 +0200falafel(~falafel@pool-96-255-70-50.washdc.fios.verizon.net)
2021-04-12 04:01:17 +0200urodna(~urodna@unaffiliated/urodna) (Quit: urodna)
2021-04-12 04:06:22 +0200merijn(~merijn@83-160-49-249.ip.xs4all.nl) (Ping timeout: 265 seconds)
2021-04-12 04:06:32 +0200dariof4(~dario@217.171.72.2) (Quit: WeeChat 3.1)
2021-04-12 04:07:07 +0200chenshen(~chenshen@2620:10d:c090:400::5:b6af)
2021-04-12 04:07:35 +0200s00pcan(~chris@075-133-056-178.res.spectrum.com) (Remote host closed the connection)
2021-04-12 04:10:09 +0200DTZUZU(~DTZUZO@205.ip-149-56-132.net) (Read error: Connection reset by peer)
2021-04-12 04:11:02 +0200normie(~normie@S0106ac202e2069c3.vw.shawcable.net)
2021-04-12 04:13:03 +0200 <d34df00d> koz_: but the sum will evaluate the indexing function several times for every element, right?
2021-04-12 04:15:35 +0200 <koz_> Why? Do your slices overlap?
2021-04-12 04:19:48 +0200sedeki(~textual@unaffiliated/sedeki) (Quit: Textual IRC Client: www.textualapp.com)
2021-04-12 04:20:00 +0200chenshen(~chenshen@2620:10d:c090:400::5:b6af) (Quit: My MacBook Pro has gone to sleep. ZZZzzz…)
2021-04-12 04:20:37 +0200ulfryk(~ulfryk@2a01:4b00:872d:e600:a55a:b8e3:54cc:d8d6)
2021-04-12 04:21:34 +0200raehik(~raehik@cpc95906-rdng25-2-0-cust156.15-3.cable.virginm.net)
2021-04-12 04:25:15 +0200ulfryk(~ulfryk@2a01:4b00:872d:e600:a55a:b8e3:54cc:d8d6) (Ping timeout: 260 seconds)
2021-04-12 04:26:15 +0200ulfryk(~ulfryk@2a01:4b00:872d:e600:a55a:b8e3:54cc:d8d6)
2021-04-12 04:28:33 +0200 <d34df00d> Yeah!
2021-04-12 04:28:49 +0200 <d34df00d> Every element gets processed about 8 times, if I'm not mistaken/
2021-04-12 04:29:37 +0200Jesin(~Jesin@pool-72-66-101-18.washdc.fios.verizon.net)
2021-04-12 04:30:51 +0200ulfryk(~ulfryk@2a01:4b00:872d:e600:a55a:b8e3:54cc:d8d6) (Ping timeout: 260 seconds)
2021-04-12 04:31:59 +0200ulfryk(~ulfryk@2a01:4b00:872d:e600:a55a:b8e3:54cc:d8d6)
2021-04-12 04:33:02 +0200zebrag(~inkbottle@aaubervilliers-654-1-2-51.w83-200.abo.wanadoo.fr) (Quit: Konversation terminated!)
2021-04-12 04:35:31 +0200star_cloud(~star_clou@ec2-34-220-44-120.us-west-2.compute.amazonaws.com)
2021-04-12 04:36:36 +0200ulfryk(~ulfryk@2a01:4b00:872d:e600:a55a:b8e3:54cc:d8d6) (Ping timeout: 258 seconds)
2021-04-12 04:37:28 +0200ulfryk(~ulfryk@2a01:4b00:872d:e600:a55a:b8e3:54cc:d8d6)
2021-04-12 04:37:47 +0200quinn(~quinn@c-73-223-224-163.hsd1.ca.comcast.net) (Ping timeout: 265 seconds)
2021-04-12 04:38:33 +0200dpl(~dpl@77-121-78-163.chn.volia.net) (Ping timeout: 240 seconds)
2021-04-12 04:39:11 +0200quinn(~quinn@c-73-223-224-163.hsd1.ca.comcast.net)
2021-04-12 04:40:59 +0200amerigo(uid331857@gateway/web/irccloud.com/x-bkqqhlxtahyyobpt) (Quit: Connection closed for inactivity)
2021-04-12 04:42:03 +0200ulfryk(~ulfryk@2a01:4b00:872d:e600:a55a:b8e3:54cc:d8d6) (Ping timeout: 260 seconds)
2021-04-12 04:43:09 +0200ulfryk(~ulfryk@2a01:4b00:872d:e600:a55a:b8e3:54cc:d8d6)
2021-04-12 04:46:37 +0200geowiesnot(~user@87-89-181-157.abo.bbox.fr) (Ping timeout: 252 seconds)
2021-04-12 04:47:43 +0200theDon(~td@94.134.91.241) (Ping timeout: 252 seconds)
2021-04-12 04:47:43 +0200ulfryk(~ulfryk@2a01:4b00:872d:e600:a55a:b8e3:54cc:d8d6) (Ping timeout: 258 seconds)
2021-04-12 04:48:42 +0200ulfryk(~ulfryk@2a01:4b00:872d:e600:a55a:b8e3:54cc:d8d6)
2021-04-12 04:49:40 +0200theDon(~td@muedsl-82-207-238-004.citykom.de)
2021-04-12 04:52:53 +0200ulfryk(~ulfryk@2a01:4b00:872d:e600:a55a:b8e3:54cc:d8d6) (Ping timeout: 250 seconds)
2021-04-12 04:53:02 +0200FinnElija(~finn_elij@gateway/tor-sasl/finnelija/x-67402716)
2021-04-12 04:53:02 +0200finn_elijaGuest11269
2021-04-12 04:53:03 +0200FinnElijafinn_elija
2021-04-12 04:54:18 +0200ulfryk(~ulfryk@2a01:4b00:872d:e600:a55a:b8e3:54cc:d8d6)
2021-04-12 04:55:57 +0200Guest11269(~finn_elij@gateway/tor-sasl/finnelija/x-67402716) (Ping timeout: 240 seconds)
2021-04-12 04:56:31 +0200BosonCollider(~olofs@90-227-86-119-no542.tbcn.telia.com) (Ping timeout: 252 seconds)
2021-04-12 04:58:12 +0200Guest78317(~laudiacay@67.176.215.84)
2021-04-12 04:58:14 +0200drbean_(~drbean@TC210-63-209-92.static.apol.com.tw)
2021-04-12 04:58:51 +0200ulfryk(~ulfryk@2a01:4b00:872d:e600:a55a:b8e3:54cc:d8d6) (Ping timeout: 260 seconds)
2021-04-12 04:59:53 +0200Newbievarine(1829ec3e@24.41.236.62)
2021-04-12 05:00:00 +0200Taneb(~Taneb@2001:41c8:51:10d:aaaa:0:aaaa:0) (Quit: I seem to have stopped.)
2021-04-12 05:01:41 +0200Taneb(~Taneb@runciman.hacksoc.org)
2021-04-12 05:02:13 +0200Guest78317(~laudiacay@67.176.215.84) (Ping timeout: 240 seconds)
2021-04-12 05:02:19 +0200 <Newbievarine> how do I typecast an expression into an existential type?
2021-04-12 05:02:56 +0200ram19890(~ram@49.207.130.109)
2021-04-12 05:05:24 +0200 <c_wraith> Haskell doesn't do typecasting at all.
2021-04-12 05:06:46 +0200 <Newbievarine> I understand I wasn't being clear in what I meant but anyway I can just name the type and a cosntructor for it use the constructor
2021-04-12 05:07:39 +0200 <dmwit> Hm, okay. Is your problem resolved, then?
2021-04-12 05:08:47 +0200ep1ctetus(~epictetus@ip72-194-215-136.sb.sd.cox.net)
2021-04-12 05:09:35 +0200rdivyanshu(uid322626@gateway/web/irccloud.com/x-tjgowmwnssyxkqkn)
2021-04-12 05:09:37 +0200 <Newbievarine> well, yes. unless there is some way to from an expression of type T (which is a member of typeclass TC) get an expression of type (forall a. TC a => a) without actually naming (a type that's isomorphic to) the latter type
2021-04-12 05:11:45 +0200 <dmwit> You definitely cannot go from `T` to `forall a. TC a => a` without knowing something special about how `T` and `TC` relate. Just knowing `instance TC T` is not enough.
2021-04-12 05:14:48 +0200 <Newbievarine> I'm not sure what you mean by having to know something special about how T and TC relate. What I did was just declare "data ExistentialType = forall a. TC a => ConstructorHere a" then the expression "t" of type T I can just rewrite as expression "ConstructorHere t" of type ExistentialType
2021-04-12 05:14:52 +0200puke(~vroom@217.138.252.196) (Quit: puke)
2021-04-12 05:15:28 +0200 <dmwit> `ConstructorHere (x :: T)` is not (even isomorphic to) `forall a. TC a => a`.
2021-04-12 05:16:01 +0200 <Newbievarine> well no, not in haskell I suppose it's not..
2021-04-12 05:16:18 +0200 <Newbievarine> assuming you mean ExistentialType not the expression
2021-04-12 05:17:40 +0200ep1ctetus(~epictetus@ip72-194-215-136.sb.sd.cox.net) (Read error: Connection reset by peer)
2021-04-12 05:17:50 +0200raym(~ray@45.64.220.116)
2021-04-12 05:20:41 +0200 <c_wraith> Usually when people start asking about this, the better solution is to forget classes and existentials. You don't need to create different types to have values with different behaviors. You can just use first-class functions or records thereof, maybe closing over an environment.
2021-04-12 05:21:13 +0200berberman_(~berberman@unaffiliated/berberman)
2021-04-12 05:21:50 +0200berberman(~berberman@unaffiliated/berberman) (Ping timeout: 258 seconds)
2021-04-12 05:22:11 +0200 <Newbievarine> it's to define a function that returns a heteregenuous list
2021-04-12 05:22:19 +0200 <dmwit> (Whoops, I was a bit imprecise there. Instead of "is not", I should have said "has a type that is not".)
2021-04-12 05:22:40 +0200 <c_wraith> that doesn't sound like a use case for existentials at all
2021-04-12 05:22:46 +0200 <c_wraith> that sounds like a use case for higher-rank types
2021-04-12 05:22:51 +0200 <dmwit> Also are you sure you need a heterogeneous list?
2021-04-12 05:24:29 +0200myShoggoth(~myShoggot@75.164.73.93)
2021-04-12 05:24:55 +0200 <Newbievarine> I don't know about need. but it certainly makes things more straightforward
2021-04-12 05:25:28 +0200 <hololeap> more straightforward or more similar to what you would do in other languages?
2021-04-12 05:26:08 +0200GZJ0X_(~gzj@unaffiliated/gzj) (Remote host closed the connection)
2021-04-12 05:26:16 +0200 <Newbievarine> I don't really use other languages. not imperivative ones anyway
2021-04-12 05:26:29 +0200GZJ0X_(~gzj@unaffiliated/gzj)
2021-04-12 05:26:58 +0200 <hololeap> do you really need a list that can hold *any* type, or are there a handful of types that you want to fit into it?
2021-04-12 05:28:09 +0200 <dmwit> Huh. I'm not sure I've ever heard "heterogeneous list" and "more straightforward" in the same breath before.
2021-04-12 05:28:18 +0200 <dmwit> Usually the benefit is something very, very different from convenience.
2021-04-12 05:28:22 +0200 <Newbievarine> not sure why you all feel the need to be so critical of the use of existential types
2021-04-12 05:28:27 +0200 <Newbievarine> the use is this
2021-04-12 05:28:55 +0200 <Newbievarine> I have a typeclass with a function that maps the type in question to a heteregenous list
2021-04-12 05:29:09 +0200 <Newbievarine> such that the type of the elements of the list belong to a certain typeclass
2021-04-12 05:30:17 +0200 <dmwit> So far it sounds exactly like the typical beginner existential trap we're trying to warn you about.
2021-04-12 05:30:36 +0200 <Newbievarine> what is the trap exactly?
2021-04-12 05:31:04 +0200 <dmwit> https://lukepalmer.wordpress.com/2010/01/24/haskell-antipattern-existential-typeclass/
2021-04-12 05:32:04 +0200 <Newbievarine> okay? that doesnt' apply at all to my specific circumstance
2021-04-12 05:32:31 +0200 <dmwit> ¯\_(ツ)_/¯ you're the expert
2021-04-12 05:32:47 +0200geowiesnot(~user@87-89-181-157.abo.bbox.fr)
2021-04-12 05:33:01 +0200 <hololeap> i was going to say using the full gamut of haskell's features to shoot yourself in the foot by not adhering to KISS
2021-04-12 05:33:46 +0200 <Newbievarine> existential types might be difficult from an implementation standpoint but they are one of the most elementary concepts of type theory so not sure whhy you think ti deviates from simplicity
2021-04-12 05:34:02 +0200ep1ctetus(~epictetus@ip72-194-215-136.sb.sd.cox.net)
2021-04-12 05:34:21 +0200ulfryk(~ulfryk@2a01:4b00:872d:e600:a55a:b8e3:54cc:d8d6)
2021-04-12 05:34:48 +0200 <hololeap> well, if it's simple and you understand how to do it, then what's the problem?
2021-04-12 05:34:52 +0200 <dmwit> Sure. And tossing in a rule to your lambda cube saying that computations can appear in types is drop-dead simple from a theory standpoint. But that doesn't mean that the code you write once you have that rule available is simple.
2021-04-12 05:36:06 +0200 <Newbievarine> I mean, that analogy doesn't even work. because that is not drop-dead simply from a theoretical standpoint.
2021-04-12 05:36:26 +0200 <Newbievarine> and I didn't have a problem, I just had a simple question which was how to get from an expression in the one type to the existential type
2021-04-12 05:37:12 +0200 <Newbievarine> apparently that was an open invitation for a nonsensical lecture on how I don't need existential types. One which would've felt more in good faith if it had been preceded by a question "can you explain what you're trying to do" or something similar
2021-04-12 05:38:22 +0200 <hololeap> fair enough. it smelled like an anti-pattern.
2021-04-12 05:38:59 +0200ulfryk(~ulfryk@2a01:4b00:872d:e600:a55a:b8e3:54cc:d8d6) (Ping timeout: 260 seconds)
2021-04-12 05:39:51 +0200 <hololeap> very few high-quality libraries i've seen effectively use heterogenous lists, so it was important to question the necessity of it.
2021-04-12 05:39:59 +0200ulfryk(~ulfryk@2a01:4b00:872d:e600:a55a:b8e3:54cc:d8d6)
2021-04-12 05:41:10 +0200 <hololeap> because there may be a much more straightforward and ergonomic way to solve your problem
2021-04-12 05:43:22 +0200 <hololeap> Newbievarine: there is cast from Data.Typeable
2021-04-12 05:43:36 +0200 <hololeap> not sure if that helps or not
2021-04-12 05:43:43 +0200ep1ctetus(~epictetus@ip72-194-215-136.sb.sd.cox.net) (Read error: Connection reset by peer)
2021-04-12 05:43:53 +0200falafel(~falafel@pool-96-255-70-50.washdc.fios.verizon.net) (Ping timeout: 240 seconds)
2021-04-12 05:43:58 +0200 <Newbievarine> hololeap: thanks
2021-04-12 05:44:27 +0200ulfryk(~ulfryk@2a01:4b00:872d:e600:a55a:b8e3:54cc:d8d6) (Ping timeout: 258 seconds)
2021-04-12 05:45:39 +0200ulfryk(~ulfryk@2a01:4b00:872d:e600:a55a:b8e3:54cc:d8d6)
2021-04-12 05:47:17 +0200 <Newbievarine> hololeap: and I appreciate yuor suggestion of enumerating the possibilities (I assume using constructors with a sum type) but it's not something that makes sense in this instance just from a practical standpoint
2021-04-12 05:47:29 +0200 <ski> .. fwiw, you most probably didn't mean to go from `T' to `forall a. TC a => a' at all (but possibly to `exists a. TC a *> a', which is a very different beast. your `ExistentialType' encodes this type)
2021-04-12 05:47:40 +0200 <hololeap> ok, yeah, that was what i was thinking
2021-04-12 05:48:03 +0200falafel(~falafel@pool-96-255-70-50.washdc.fios.verizon.net)
2021-04-12 05:48:18 +0200 <Newbievarine> ski: it was my understanding that in Haskell existential types are written using the forall keyword ?
2021-04-12 05:48:51 +0200 <ski> (e.g. note that a value of type `forall a. Show a => a' can only be a partial value)
2021-04-12 05:48:56 +0200 <ski> no
2021-04-12 05:49:11 +0200 <ski> that's a misunderstanding
2021-04-12 05:49:34 +0200 <ski> strictly speaking, existential types aren't written at all, in Haskell (including extensions)
2021-04-12 05:50:08 +0200waleee-cl(uid373333@gateway/web/irccloud.com/x-cppcunbrtpbtpgrh) (Quit: Connection closed for inactivity)
2021-04-12 05:50:11 +0200ulfryk(~ulfryk@2a01:4b00:872d:e600:a55a:b8e3:54cc:d8d6) (Ping timeout: 260 seconds)
2021-04-12 05:50:21 +0200rekahsoft(~rekahsoft@cpe0008a20f982f-cm64777d666260.cpe.net.cable.rogers.com)
2021-04-12 05:50:39 +0200snowflake(~snowflake@gateway/tor-sasl/snowflake) (Remote host closed the connection)
2021-04-12 05:50:45 +0200 <ski> (well, iirc, LHC did support `exists' .. but only in argument type position in function types, which is the "trivial" usage of them. but GHC for sure doesn't support existential types directly)
2021-04-12 05:51:10 +0200snowflake(~snowflake@gateway/tor-sasl/snowflake)
2021-04-12 05:51:22 +0200ulfryk(~ulfryk@2a01:4b00:872d:e600:a55a:b8e3:54cc:d8d6)
2021-04-12 05:51:29 +0200 <ski> otoh, there's two common ways to *encode* existential types. (a) using what might be termed "existential data constructor"; (b) using a CPS/Church encoding
2021-04-12 05:54:05 +0200 <ski> take e.g. the type `exists q. ({- empty :: -} q,{- enqueue :: -} a -> q -> q,{- dequeue :: -} q -> Maybe (q,a))', representing an implementation of queues, with elements of type `a'. `q' is a hidden/forgotten/abstract/opaque/skolem type, the representation type of queues in this implementation
2021-04-12 05:55:04 +0200 <ski> if we want to use (a) to encode this, we should start by inventing a name for this type `exists q. (q,a -> q -> q,q -> Maybe (q,a))' (parameterizing it on `a', in this case), e.g.
2021-04-12 05:55:14 +0200 <ski> type QueueOps a = exists q. (q,a -> q -> q,q -> Maybe (q,a))
2021-04-12 05:55:23 +0200rekahsoft(~rekahsoft@cpe0008a20f982f-cm64777d666260.cpe.net.cable.rogers.com) (Ping timeout: 268 seconds)
2021-04-12 05:55:37 +0200 <ski> however, this is still pseudo-Haskell. let's replace the synonym with a `data' type
2021-04-12 05:55:43 +0200ulfryk(~ulfryk@2a01:4b00:872d:e600:a55a:b8e3:54cc:d8d6) (Ping timeout: 250 seconds)
2021-04-12 05:55:47 +0200DTZUZU(~DTZUZO@205.ip-149-56-132.net)
2021-04-12 05:55:55 +0200 <ski> data QueueOps a = MkQOps (exists q. (q,a -> q -> q,q -> Maybe (q,a)))
2021-04-12 05:56:16 +0200 <ski> or, using the alternative, `GADTSyntax' style for declaring `data' types
2021-04-12 05:56:22 +0200 <ski> data QueueOps a
2021-04-12 05:56:24 +0200 <ski> where
2021-04-12 05:56:34 +0200 <ski> MkQOps :: (exists q. (q,a -> q -> q,q -> Maybe (q,a))) -> QueueOps a
2021-04-12 05:56:42 +0200abhixec(~abhixec@c-67-169-139-16.hsd1.ca.comcast.net) (Ping timeout: 240 seconds)
2021-04-12 05:57:04 +0200 <ski> now, the thing to realize is that `(exists a. ..a..) -> ...' is equivalent to `forall a. (..a..) -> ...'
2021-04-12 05:57:07 +0200 <ski> e.g.
2021-04-12 05:57:11 +0200vicfred(~vicfred@unaffiliated/vicfred) (Quit: Leaving)
2021-04-12 05:57:15 +0200 <ski> length :: forall a. ([a] -> Int)
2021-04-12 05:57:22 +0200 <ski> conceptually is equivalent to
2021-04-12 05:57:31 +0200 <ski> length :: (exists a. [a]) -> Int
2021-04-12 05:58:31 +0200 <ski> the first says that, for all types `a', if we call `length' with a list of elements of type `a', we'll get an `Int' back as result. the second says that, calling `length', we get an `Int' result, provided there exists some type `a' such that the argument is a list of elements of type `a'
2021-04-12 05:58:52 +0200 <ski> so, armed with this equivalence, we can now rephrase the `data' constructor signature
2021-04-12 05:58:57 +0200 <ski> MkQOps :: (exists q. (q,a -> q -> q,q -> Maybe (q,a))) -> QueueOps a
2021-04-12 05:58:59 +0200 <ski> to
2021-04-12 05:59:15 +0200 <ski> MkQOps :: forall q. ((q,a -> q -> q,q -> Maybe (q,a)) -> QueueOps a)
2021-04-12 05:59:21 +0200 <ski> or simply
2021-04-12 05:59:24 +0200 <ski> MkQOps :: forall q. (q,a -> q -> q,q -> Maybe (q,a)) -> QueueOps a
2021-04-12 05:59:30 +0200abhixec(~abhixec@c-67-169-139-16.hsd1.ca.comcast.net)
2021-04-12 05:59:45 +0200 <ski> (also `a' is really quantified with a `forall' over this whole signature)
2021-04-12 06:00:14 +0200 <Newbievarine> I understand all that but what you're saying that if in haskell you write f :: a -> (forall b. Foo b => b) that the range type is actually a universal quantification in haskell. (not sure you can even write this actually)
2021-04-12 06:00:20 +0200vicfred(vicfred@gateway/vpn/mullvad/vicfred)
2021-04-12 06:00:48 +0200 <ski> so, a data constructor (or generally, any function), which takes an argument of existentially quantified type, is basically the same as a *polymorphic* ditto, that accepts an argument for any `q' (in this case), and whose result type doesn't mention `q'
2021-04-12 06:01:10 +0200 <ski> Newbievarine : yes, and yes (you can write that, with extensions)
2021-04-12 06:01:38 +0200 <Newbievarine> okay. I got the wrong impression by the way forall always got brought up int he syntax of declaring existential types. thanks for the clarification
2021-04-12 06:01:44 +0200 <ski> so, using the `ExistentialQuantification' extension (which, imho, is a misnomer), we can now express `QueueOps' as
2021-04-12 06:01:57 +0200 <Newbievarine> but yes what I meant then was (exists a. Tc a .. so on and so forth
2021-04-12 06:01:59 +0200 <ski> data QueueOps a = forall q. MkQOps (q,a -> q -> q,q -> Maybe (q,a))
2021-04-12 06:02:06 +0200raehik(~raehik@cpc95906-rdng25-2-0-cust156.15-3.cable.virginm.net) (Ping timeout: 240 seconds)
2021-04-12 06:02:38 +0200 <ski> and this `forall q.' means universal quantification, means polymorphism, means that the data constructor `MkQOps' is polymorphic
2021-04-12 06:02:40 +0200ulfryk(~ulfryk@2a01:4b00:872d:e600:a55a:b8e3:54cc:d8d6)
2021-04-12 06:02:48 +0200merijn(~merijn@83-160-49-249.ip.xs4all.nl)
2021-04-12 06:02:58 +0200 <ski> it's not the case that, somehow, `forall' really means `exists', in this case
2021-04-12 06:03:46 +0200 <ski> similarly, `(Cxt *> T) -> U' is logially equivalent to `Cxt => (T -> U)'
2021-04-12 06:03:50 +0200 <Newbievarine> because of the implicit universal quantification in Haskell I thought that the forall keyword got hijacked but I see now you can actually use it explicit in a subexpression as you say, with an extension, and it's actually universal quantification
2021-04-12 06:04:46 +0200 <Newbievarine> no such support for existential quantification I'm guessing ?
2021-04-12 06:05:08 +0200 <ski> a value of type `Cxt => ...' expects the caller/user/consumer to provide evidence for the constraint `Cxt'. while a value of type `Cxt *> ...', that is, the callee/implementor/producer of it, will itself provide such evidence of `Cxt' to the caller/&c.
2021-04-12 06:06:16 +0200 <ski> the other, (b) way of representing/encoding `exists q. (q,a -> q -> q,q -> Maybe (q,a))' uses the general equivalence between `T' and `forall o. (T -> o) -> o'
2021-04-12 06:07:27 +0200ulfryk(~ulfryk@2a01:4b00:872d:e600:a55a:b8e3:54cc:d8d6) (Ping timeout: 260 seconds)
2021-04-12 06:07:52 +0200 <ski> in this case, we get `forall o. ((exists q. (q,a -> q -> q,q -> Maybe (q,a))) -> o) -> o' which then is equivalent to `forall o. (forall q. (q,a -> q -> q,q -> Maybe (q,a)) -> o) -> o', or, currying the callback/continuation, `forall o. (forall q. q -> (a -> q -> q) -> (q -> Maybe (q,a)) -> o) -> o'. this is a rank-two type, since it has a `forall' in an argument type
2021-04-12 06:07:54 +0200pavonia(~user@unaffiliated/siracusa) (Quit: Bye!)
2021-04-12 06:08:08 +0200ulfryk(~ulfryk@2a01:4b00:872d:e600:a55a:b8e3:54cc:d8d6)
2021-04-12 06:08:39 +0200 <ski> (i stress that there's *two* encodings to emphasize that `ExistentialQuantification' is not "the way to do existentials". it's *one* possible way)
2021-04-12 06:08:57 +0200skinods to Newbievarine
2021-04-12 06:09:21 +0200 <ski> fwiw, did you ever check out "Polymorphic Type Inference" by Michael I. Schwartzbach in 1995-03 at <https://cs.au.dk/~amoeller/mis/typeinf.p(s|df)>,<https://citeseerx.ist.psu.edu/viewdoc/summary?doi=10.1.1.57.1493> ?
2021-04-12 06:10:06 +0200 <ski> it also mentions existentials. might be interesting to take a glance at
2021-04-12 06:10:14 +0200 <ski> @where on-understanding
2021-04-12 06:10:14 +0200 <lambdabot> "On Understanding Types, Data Abstraction, and Polymorphism" by Luca Cardelli,Peter Wegner in 1985-12 at <http://lucacardelli.name/Papers/OnUnderstanding.A4.pdf>
2021-04-12 06:10:19 +0200 <ski> is also nice
2021-04-12 06:12:00 +0200 <Newbievarine> thanks for the references
2021-04-12 06:12:06 +0200 <ski> @where on-understanding-revisited
2021-04-12 06:12:06 +0200 <lambdabot> "On Understanding Data Abstraction, Revisited" by William R. Cook in 2009-10 at <http://www.cs.utexas.edu/~wcook/Drafts/2009/essay.pdf>
2021-04-12 06:12:37 +0200ulfryk(~ulfryk@2a01:4b00:872d:e600:a55a:b8e3:54cc:d8d6) (Ping timeout: 250 seconds)
2021-04-12 06:12:38 +0200PragCypher_(~cypher@li1507-98.members.linode.com)
2021-04-12 06:12:38 +0200 <ski> talks a bit more on OO vs. ADT (abstract data types). both are related to existentials, albeit different ways of using them
2021-04-12 06:12:43 +0200dminuoso_(~dminuoso@static.88-198-218-68.clients.your-server.de)
2021-04-12 06:12:53 +0200electrostat_(~dag@unaffiliated/electrostat)
2021-04-12 06:13:28 +0200pieguy128_(~pieguy128@bas1-quebec14-67-70-101-46.dsl.bell.ca)
2021-04-12 06:13:47 +0200texasmynsted_(~texasmyns@99.96.221.112)
2021-04-12 06:14:11 +0200 <ski> relevant here is that `exists s. (s,s -> ..s..)' is equivalent to `nu s. ..s..' (greatest fixedpoint). similarly to how `forall r. (..r.. -> r) -> r' is equivalent to `mu r. ..r..' (least fixedpoint)
2021-04-12 06:14:49 +0200dilinger(~dilinger@spindle.queued.net)
2021-04-12 06:14:59 +0200oleks_(~oleks@188.166.34.97)
2021-04-12 06:15:11 +0200akhesaca1o(~caro@212.83.144.58)
2021-04-12 06:15:28 +0200tristanC_(~tristanC@unaffiliated/tristanc)
2021-04-12 06:15:36 +0200AWizzArd_(~code@gehrels.uberspace.de)
2021-04-12 06:15:52 +0200cafce25_(~cafce25@ipbcc3009d.dynamic.kabel-deutschland.de)
2021-04-12 06:15:53 +0200 <ski> e.g., taking `exists q. (q,a -> q -> q,q -> Maybe (q,a))', we can rephrase this as `exists q. (q,q -> (a -> q,Maybe (q,a)))', which then becomes `nu q. (a -> q,Maybe (q,a))'. which translates to the recursive (thought of as coinductive) `data QueueOps a = MkQOps (a -> QueueOps a) (Maybe (a,QueueOps a))'
2021-04-12 06:15:55 +0200 <Newbievarine> anyway says right here at the beginning https://downloads.haskell.org/~ghc/latest/docs/html/users_guide/exts/existential_quantification.ht… that the syntax is such that "data Blah = forall a. Boop a" means a construct Boop of type forall a. a -> Blah
2021-04-12 06:16:02 +0200texasmynsted(~texasmyns@99.96.221.112) (Killed (tolkien.freenode.net (Nickname regained by services)))
2021-04-12 06:16:02 +0200texasmynsted_texasmynsted
2021-04-12 06:16:05 +0200 <Newbievarine> suppose I should've read that part  :D
2021-04-12 06:16:15 +0200 <ski> yup
2021-04-12 06:16:50 +0200 <ski> so .. often, instead of using existentials, one can use recursive types
2021-04-12 06:17:10 +0200 <ski> (and this is a typically OO thing to do)
2021-04-12 06:17:58 +0200 <ski> (however, this fails if one e.g. have "binary methods", like if we had had `q -> q -> q', for merging two queues into a single queue, or something like that)
2021-04-12 06:19:12 +0200wraithm_(~wraithm@unaffiliated/wraithm)
2021-04-12 06:19:16 +0200jiribenes(~jiribenes@rosa.jiribenes.com) (Remote host closed the connection)
2021-04-12 06:20:02 +0200jiribenes(~jiribenes@rosa.jiribenes.com)
2021-04-12 06:20:18 +0200aib42(~aib@unaffiliated/aib42)
2021-04-12 06:20:25 +0200pnotequalnp[m](pnotequaln@gateway/shell/matrix.org/x-vbfhpdihocudbihr) (*.net *.split)
2021-04-12 06:20:25 +0200amerocu[m](amerocumat@gateway/shell/matrix.org/x-qxnfpxkjfoepsjkc) (*.net *.split)
2021-04-12 06:20:25 +0200Poyo[m](stikynotha@gateway/shell/matrix.org/x-hdaxlpnazrfvbqll) (*.net *.split)
2021-04-12 06:20:26 +0200heck-to-the-gnom(heck-to-th@gateway/shell/matrix.org/x-odwuoyyyfqjuhqfr) (*.net *.split)
2021-04-12 06:20:26 +0200VarikValefor[m](varikvalef@gateway/shell/matrix.org/x-rxkwfuaqsqeyxnjv) (*.net *.split)
2021-04-12 06:20:26 +0200anon1891[m](anon1891ma@gateway/shell/matrix.org/x-onnujzintxhdncvb) (*.net *.split)
2021-04-12 06:20:26 +0200cafce25(~cafce25@ipbcc3009d.dynamic.kabel-deutschland.de) (*.net *.split)
2021-04-12 06:20:26 +0200beardhatcode(robbertbea@gateway/shell/matrix.org/x-xwmepnlvznlpjdga) (*.net *.split)
2021-04-12 06:20:26 +0200kadoban(kadobanemp@gateway/shell/matrix.org/x-gxlvabnrocccxmxd) (*.net *.split)
2021-04-12 06:20:26 +0200mly(mlydisenco@gateway/shell/matrix.org/x-hdizmtyvxksdkslu) (*.net *.split)
2021-04-12 06:20:26 +0200DevTurks[m](turkdevops@gateway/shell/matrix.org/x-ojlnprlhammzunlz) (*.net *.split)
2021-04-12 06:20:26 +0200pieguy128(~pieguy128@bras-base-mtrlpq5031w-grc-47-67-70-101-46.dsl.bell.ca) (*.net *.split)
2021-04-12 06:20:26 +0200jtojnar(jtojnarmat@gateway/shell/matrix.org/x-lztialmegsqbabni) (*.net *.split)
2021-04-12 06:20:27 +0200wraithm(~wraithm@unaffiliated/wraithm) (*.net *.split)
2021-04-12 06:20:27 +0200norsxa(uid494793@gateway/web/irccloud.com/x-wurwmiwscjouwjvh) (*.net *.split)
2021-04-12 06:20:27 +0200angerman(sid209936@gateway/web/irccloud.com/x-telvwebhmibfciob) (*.net *.split)
2021-04-12 06:20:27 +0200amatecha____(sid10006@gateway/web/irccloud.com/x-zvybgedfthmrvwqy) (*.net *.split)
2021-04-12 06:20:27 +0200cawfee(chiya@2406:3003:2077:2341::babe) (*.net *.split)
2021-04-12 06:20:27 +0200SolarAquarion(SolarAquar@gateway/shell/panicbnc/x-jhqcerqxwmhuufxz) (*.net *.split)
2021-04-12 06:20:27 +0200Papa(~papa@unaffiliated/papa) (*.net *.split)
2021-04-12 06:20:27 +0200AWizzArd(~code@unaffiliated/awizzard) (*.net *.split)
2021-04-12 06:20:27 +0200tristanC(~tristanC@unaffiliated/tristanc) (*.net *.split)
2021-04-12 06:20:27 +0200gambpang(~gambpang@unaffiliated/gambpang) (*.net *.split)
2021-04-12 06:20:27 +0200Klumben(Nsaiswatch@gateway/shell/panicbnc/x-tsikniggqbsrqudz) (*.net *.split)
2021-04-12 06:20:27 +0200urdh(~urdh@unaffiliated/urdh) (*.net *.split)
2021-04-12 06:20:27 +0200dminuoso(~dminuoso@static.88-198-218-68.clients.your-server.de) (*.net *.split)
2021-04-12 06:20:27 +0200PragCypher(~cypher@li1507-98.members.linode.com) (*.net *.split)
2021-04-12 06:20:27 +0200aib(~aib@unaffiliated/aib42) (*.net *.split)
2021-04-12 06:20:27 +0200electrostat(~dag@unaffiliated/electrostat) (*.net *.split)
2021-04-12 06:20:27 +0200PatrickRobotham_(sid18270@gateway/web/irccloud.com/x-oiupfqgvgmcusgoi) (*.net *.split)
2021-04-12 06:20:27 +0200sclv(sid39734@haskell/developer/sclv) (*.net *.split)
2021-04-12 06:20:27 +0200scav(sid309693@gateway/web/irccloud.com/x-uslhiglasceegqqw) (*.net *.split)
2021-04-12 06:20:27 +0200anderson(~ande@159.65.95.130) (*.net *.split)
2021-04-12 06:20:27 +0200akhesacaro(~caro@212.83.144.58) (*.net *.split)
2021-04-12 06:20:27 +0200earthy_(~arthurvl@deban2.xs4all.space) (*.net *.split)
2021-04-12 06:20:27 +0200oleks(~oleks@188.166.34.97) (*.net *.split)
2021-04-12 06:20:27 +0200dilinger_(~dilinger@spindle.queued.net) (*.net *.split)
2021-04-12 06:20:27 +0200electrostat_electrostat
2021-04-12 06:20:40 +0200 <ski> (the OO way of using existentials consists of opening up a package of a state, and methods. doing some operation on the state, using methods. in case we get a new state back, we repackage it up again with the methods. the ADT way, starts by opening the existential at the beginning, and then passing around the raw states directly, not repackaging. this allows such "binary operations", like merging)
2021-04-12 06:21:03 +0200outerpassage_(outerpassa@2600:3c01::f03c:92ff:fed1:4643) (Quit: quitting)
2021-04-12 06:21:17 +0200outerpassage(~outerpass@li1196-30.members.linode.com)
2021-04-12 06:21:25 +0200Papa(~papa@unaffiliated/papa)
2021-04-12 06:22:14 +0200gambpang(~gambpang@unaffiliated/gambpang)
2021-04-12 06:22:22 +0200DevTurks[m](turkdevops@gateway/shell/matrix.org/x-ijvxwxyebgqvrzsn)
2021-04-12 06:22:33 +0200 <ski> (however, my naming `QueueOps a' above, and that i labelled the `q' part of the triple as "empty" rather than as "current queue state", suggested that i was thinking of it in the ADT way. however, the transformation from `exists' to `nu' above that i showed really makes sense for the OO usage of existentials, not the ADT, so i guess i ought to have renamed `QueueOps' to `Queue' ..)
2021-04-12 06:23:09 +0200star_cloud(~star_clou@ec2-34-220-44-120.us-west-2.compute.amazonaws.com) (Ping timeout: 265 seconds)
2021-04-12 06:23:25 +0200anderson(~ande@159.65.95.130)
2021-04-12 06:26:22 +0200earthy_(~arthurvl@deban2.xs4all.space)
2021-04-12 06:27:49 +0200machinedgod(~machinedg@135-23-192-217.cpe.pppoe.ca) (Ping timeout: 252 seconds)
2021-04-12 06:28:05 +0200blankhart(~blankhart@pool-72-88-174-206.nwrknj.fios.verizon.net) (Ping timeout: 246 seconds)
2021-04-12 06:28:30 +0200blankhart(~blankhart@pool-72-88-174-206.nwrknj.fios.verizon.net)
2021-04-12 06:30:11 +0200swater(bouhier200@perso.iiens.net) (Ping timeout: 240 seconds)
2021-04-12 06:30:12 +0200Tario(~Tario@201.192.165.173) (Read error: Connection reset by peer)
2021-04-12 06:30:38 +0200Tario(~Tario@201.192.165.173)
2021-04-12 06:31:45 +0200snowflake(~snowflake@gateway/tor-sasl/snowflake) (Remote host closed the connection)
2021-04-12 06:32:12 +0200snowflake(~snowflake@gateway/tor-sasl/snowflake)
2021-04-12 06:34:36 +0200PatrickRobotham_(sid18270@gateway/web/irccloud.com/x-dsytamzyvqvdenoe)
2021-04-12 06:34:38 +0200norsxa(uid494793@gateway/web/irccloud.com/x-qcpmzqxcuhseltht)
2021-04-12 06:34:42 +0200scav(sid309693@gateway/web/irccloud.com/x-zpwaikoxdaqjtkjd)
2021-04-12 06:34:43 +0200angerman(sid209936@gateway/web/irccloud.com/x-vwzrxwwqpznmvfzd)
2021-04-12 06:34:44 +0200cawfee(chiya@2406:3003:2077:2341::babe)
2021-04-12 06:34:54 +0200urdh(~urdh@unaffiliated/urdh)
2021-04-12 06:34:56 +0200sclv(sid39734@haskell/developer/sclv)
2021-04-12 06:35:18 +0200amatecha____(sid10006@gateway/web/irccloud.com/x-gvwvasnyguqtijeo)
2021-04-12 06:35:26 +0200quinn(~quinn@c-73-223-224-163.hsd1.ca.comcast.net) (Quit: ZNC 1.8.1 - https://znc.in)
2021-04-12 06:37:10 +0200Poyo[m](stikynotha@gateway/shell/matrix.org/x-uiqhsetlapuwwlht)
2021-04-12 06:37:10 +0200merijn(~merijn@83-160-49-249.ip.xs4all.nl) (Ping timeout: 252 seconds)
2021-04-12 06:38:30 +0200pnotequalnp[m](pnotequaln@gateway/shell/matrix.org/x-ilonrmhzsbjadrsm)
2021-04-12 06:38:34 +0200amerocu[m](amerocumat@gateway/shell/matrix.org/x-qzhlcptahjtnfoav)
2021-04-12 06:39:13 +0200anon1891[m](anon1891ma@gateway/shell/matrix.org/x-luqmyjielnldrpsd)
2021-04-12 06:39:13 +0200VarikValefor[m](varikvalef@gateway/shell/matrix.org/x-uozhdqikwobvzrfg)
2021-04-12 06:40:45 +0200mly(mlydisenco@gateway/shell/matrix.org/x-hffzasvjgrikcwzr)
2021-04-12 06:41:13 +0200jtojnar(jtojnarmat@gateway/shell/matrix.org/x-letamvhzjtbwxmeu)
2021-04-12 06:41:25 +0200beardhatcode(robbertbea@gateway/shell/matrix.org/x-lsjnjwfsaaqmayss)
2021-04-12 06:41:34 +0200kadoban(kadobanemp@gateway/shell/matrix.org/x-zvjltlxvjsvasrie)
2021-04-12 06:41:41 +0200geowiesnot(~user@87-89-181-157.abo.bbox.fr) (Ping timeout: 240 seconds)
2021-04-12 06:41:46 +0200quinn(~quinn@c-73-223-224-163.hsd1.ca.comcast.net)
2021-04-12 06:42:06 +0200heck-to-the-gnom(heck-to-th@gateway/shell/matrix.org/x-bjzlaxrwotuujapr)
2021-04-12 06:45:53 +0200Newbievarine(1829ec3e@24.41.236.62) (Quit: Connection closed)
2021-04-12 06:46:06 +0200SolarAquarion(SolarAquar@gateway/shell/panicbnc/x-sxxrzckrtiulpjwg)
2021-04-12 06:46:57 +0200ulfryk(~ulfryk@2a01:4b00:872d:e600:a55a:b8e3:54cc:d8d6)
2021-04-12 06:48:29 +0200gioyik(~gioyik@gateway/tor-sasl/gioyik) (Remote host closed the connection)
2021-04-12 06:48:54 +0200gioyik(~gioyik@gateway/tor-sasl/gioyik)
2021-04-12 06:52:43 +0200ulfryk(~ulfryk@2a01:4b00:872d:e600:a55a:b8e3:54cc:d8d6) (Ping timeout: 260 seconds)
2021-04-12 06:53:08 +0200myShoggoth(~myShoggot@75.164.73.93) (Remote host closed the connection)
2021-04-12 06:53:36 +0200myShoggoth(~myShoggot@75.164.73.93)
2021-04-12 06:55:05 +0200justanotheruser(~justanoth@unaffiliated/justanotheruser) (Ping timeout: 250 seconds)
2021-04-12 06:57:45 +0200vicfred(vicfred@gateway/vpn/mullvad/vicfred) (Quit: Leaving)
2021-04-12 07:00:10 +0200Klumben(Nsaiswatch@gateway/shell/panicbnc/x-igfvivsmqpanwyqa)
2021-04-12 07:03:48 +0200v01d4lph4(~v01d4lph4@223.177.186.2)
2021-04-12 07:06:59 +0200nbloomf(~nbloomf@76.217.43.73) (Quit: My MacBook has gone to sleep. ZZZzzz…)
2021-04-12 07:10:14 +0200kiweun(~kiweun@2607:fea8:2a62:9600:4e:3fe1:fdb1:102) (Remote host closed the connection)
2021-04-12 07:15:17 +0200howdoi(uid224@gateway/web/irccloud.com/x-xnusfecbnfnfbkmf)
2021-04-12 07:18:58 +0200wroathe(~wroathe@c-68-54-25-135.hsd1.mn.comcast.net) (Ping timeout: 252 seconds)
2021-04-12 07:21:51 +0200ulfryk(~ulfryk@2a01:4b00:872d:e600:a55a:b8e3:54cc:d8d6)
2021-04-12 07:23:33 +0200Tario(~Tario@201.192.165.173) (Ping timeout: 240 seconds)
2021-04-12 07:26:17 +0200ulfryk(~ulfryk@2a01:4b00:872d:e600:a55a:b8e3:54cc:d8d6) (Ping timeout: 250 seconds)
2021-04-12 07:37:15 +0200anandprabhu(uid495588@gateway/web/irccloud.com/x-eezubqkxedpeqasj)
2021-04-12 07:43:18 +0200myShoggoth(~myShoggot@75.164.73.93) (Ping timeout: 268 seconds)
2021-04-12 07:44:39 +0200berberman_(~berberman@unaffiliated/berberman) (Quit: ZNC 1.8.2 - https://znc.in)
2021-04-12 07:45:33 +0200berberman(~berberman@unaffiliated/berberman)
2021-04-12 07:55:09 +0200GZJ0X_(~gzj@unaffiliated/gzj) (Remote host closed the connection)
2021-04-12 07:55:28 +0200GZJ0X_(~gzj@unaffiliated/gzj)
2021-04-12 07:59:11 +0200abhixec(~abhixec@c-67-169-139-16.hsd1.ca.comcast.net) (Ping timeout: 240 seconds)
2021-04-12 08:01:33 +0200snowflake(~snowflake@gateway/tor-sasl/snowflake) (Remote host closed the connection)
2021-04-12 08:01:55 +0200kav(~kari@dsl-hkibng42-56733f-225.dhcp.inet.fi) (Remote host closed the connection)
2021-04-12 08:02:05 +0200Jajik(xchlup2@gateway/shell/fi.muni.cz/x-xsxkgiwziqlucamx) (Ping timeout: 258 seconds)
2021-04-12 08:02:13 +0200xsarnik0(xsarnik@gateway/shell/fi.muni.cz/x-ejzqrdqgatevcaqk) (Ping timeout: 246 seconds)
2021-04-12 08:02:41 +0200Moyst_(~moyst@212-149-213-144.bb.dnainternet.fi)
2021-04-12 08:02:51 +0200Moyst(~moyst@212-149-213-144.bb.dnainternet.fi) (Ping timeout: 258 seconds)
2021-04-12 08:05:10 +0200cole-h(~cole-h@c-73-48-197-220.hsd1.ca.comcast.net) (Ping timeout: 252 seconds)
2021-04-12 08:10:03 +0200Codaraxis_(Codaraxis@gateway/vpn/mullvad/codaraxis)
2021-04-12 08:10:12 +0200kristijonas(~kristijon@78-56-32-39.static.zebra.lt) (Read error: Connection reset by peer)
2021-04-12 08:10:31 +0200kav(~kari@dsl-hkibng42-56733f-225.dhcp.inet.fi)
2021-04-12 08:11:05 +0200Gurkenglas(~Gurkengla@unaffiliated/gurkenglas)
2021-04-12 08:11:22 +0200snowflake(~snowflake@gateway/tor-sasl/snowflake)
2021-04-12 08:11:49 +0200cfricke(~cfricke@unaffiliated/cfricke)
2021-04-12 08:12:03 +0200hiroaki(~hiroaki@2a02:8108:8c40:2bb8:5814:9eff:6ec3:1fa9) (Ping timeout: 260 seconds)
2021-04-12 08:12:03 +0200hiroaki_(~hiroaki@2a02:8108:8c40:2bb8:5814:9eff:6ec3:1fa9) (Ping timeout: 260 seconds)
2021-04-12 08:13:25 +0200Codaraxis__(~Codaraxis@ip68-5-90-227.oc.oc.cox.net) (Ping timeout: 252 seconds)
2021-04-12 08:18:22 +0200kristijonas(~kristijon@78-56-32-39.static.zebra.lt)
2021-04-12 08:19:23 +0200Lowl3v3l(~Lowl3v3l@dslb-002-207-103-026.002.207.pools.vodafone-ip.de)
2021-04-12 08:21:27 +0200_ht(~quassel@82-169-194-8.biz.kpn.net)
2021-04-12 08:22:13 +0200danvet(~Daniel@2a02:168:57f4:0:efd0:b9e5:5ae6:c2fa)
2021-04-12 08:24:13 +0200hiroaki_(~hiroaki@2a02:8108:8c40:2bb8:803f:da32:c6d7:e902)
2021-04-12 08:24:23 +0200rnat2(uid73555@gateway/web/irccloud.com/x-xyybgrwhpsswrqnb)
2021-04-12 08:24:24 +0200hiroaki(~hiroaki@2a02:8108:8c40:2bb8:803f:da32:c6d7:e902)
2021-04-12 08:25:04 +0200snowflake(~snowflake@gateway/tor-sasl/snowflake) (Remote host closed the connection)
2021-04-12 08:25:31 +0200snowflake(~snowflake@gateway/tor-sasl/snowflake)
2021-04-12 08:26:53 +0200falafel(~falafel@pool-96-255-70-50.washdc.fios.verizon.net) (Ping timeout: 265 seconds)
2021-04-12 08:28:14 +0200jpe90(~user@pool-108-31-85-19.washdc.fios.verizon.net)
2021-04-12 08:32:54 +0200srk(~sorki@unaffiliated/srk)
2021-04-12 08:33:53 +0200merijn(~merijn@83-160-49-249.ip.xs4all.nl)
2021-04-12 08:34:08 +0200GZJ0X_(~gzj@unaffiliated/gzj) (Read error: Connection reset by peer)
2021-04-12 08:34:28 +0200GZJ0X_(~gzj@unaffiliated/gzj)
2021-04-12 08:36:22 +0200cfricke(~cfricke@unaffiliated/cfricke) (Quit: WeeChat 3.1)
2021-04-12 08:38:19 +0200takuan(~takuan@178-116-218-225.access.telenet.be)
2021-04-12 08:41:30 +0200michalz(~user@185.246.204.61)
2021-04-12 08:44:09 +0200dpl(~dpl@77-121-78-163.chn.volia.net)
2021-04-12 08:47:56 +0200cfricke(~cfricke@unaffiliated/cfricke)
2021-04-12 08:50:49 +0200BosonCollider(~olofs@90-227-86-119-no542.tbcn.telia.com)
2021-04-12 08:52:35 +0200thc202(~thc202@unaffiliated/thc202)
2021-04-12 08:53:19 +0200Sgeo(~Sgeo@ool-18b98aa4.dyn.optonline.net) (Read error: Connection reset by peer)
2021-04-12 08:54:53 +0200solvr(57e3c46d@87.227.196.109)
2021-04-12 08:58:18 +0200Guest78317(~laudiacay@67.176.215.84)
2021-04-12 08:58:31 +0200Varis(~Tadas@unaffiliated/varis)
2021-04-12 09:00:01 +0200fiedlr(~fiedlr@83.148.33.254) (Remote host closed the connection)
2021-04-12 09:00:15 +0200fiedlr(~fiedlr@83.148.33.254)
2021-04-12 09:02:26 +0200Guest78317(~laudiacay@67.176.215.84) (Ping timeout: 246 seconds)
2021-04-12 09:05:27 +0200snowflake(~snowflake@gateway/tor-sasl/snowflake) (Remote host closed the connection)
2021-04-12 09:06:26 +0200snowflake(~snowflake@gateway/tor-sasl/snowflake)
2021-04-12 09:07:15 +0200coot(~coot@37.30.50.130.nat.umts.dynamic.t-mobile.pl)
2021-04-12 09:08:06 +0200merijn(~merijn@83-160-49-249.ip.xs4all.nl) (Ping timeout: 260 seconds)
2021-04-12 09:08:06 +0200elfets(~elfets@ip-37-201-23-96.hsi13.unitymediagroup.de)
2021-04-12 09:09:51 +0200zeenk(~zeenk@2a02:2f04:a10b:af00:91ba:3645:1cdb:9a75)
2021-04-12 09:10:47 +0200kiweun(~kiweun@2607:fea8:2a62:9600:fd13:61f6:41c7:dd98)
2021-04-12 09:10:50 +0200Rudd0(~Rudd0@185.189.115.108) (Ping timeout: 246 seconds)
2021-04-12 09:10:57 +0200Aquazi(uid312403@gateway/web/irccloud.com/x-lebgsvzszhbzqzrr)
2021-04-12 09:12:01 +0200malumore(~malumore@151.62.112.168)
2021-04-12 09:12:16 +0200BosonCollider(~olofs@90-227-86-119-no542.tbcn.telia.com) (Ping timeout: 252 seconds)
2021-04-12 09:13:13 +0200Sorna(~Sornaensi@077213203030.dynamic.telenor.dk)
2021-04-12 09:13:21 +0200Jajik(xchlup2@gateway/shell/fi.muni.cz/x-opqjhtmxhszjujsj)
2021-04-12 09:15:40 +0200kiweun(~kiweun@2607:fea8:2a62:9600:fd13:61f6:41c7:dd98) (Ping timeout: 258 seconds)
2021-04-12 09:16:12 +0200jespada(~jespada@90.254.243.187)
2021-04-12 09:18:57 +0200gioyik(~gioyik@gateway/tor-sasl/gioyik) (Quit: WeeChat 3.0)
2021-04-12 09:20:55 +0200nut(~user@roc37-h01-176-170-197-243.dsl.sta.abo.bbox.fr)
2021-04-12 09:22:45 +0200ulfryk(~ulfryk@2a01:4b00:872d:e600:a55a:b8e3:54cc:d8d6)
2021-04-12 09:23:08 +0200BosonCollider(~olofs@90-227-86-119-no542.tbcn.telia.com)
2021-04-12 09:23:55 +0200lawid(~quassel@2a02:8109:b5c0:8af9:265e:beff:fe2a:dde8) (Ping timeout: 260 seconds)
2021-04-12 09:24:00 +0200juri__juri_
2021-04-12 09:26:46 +0200tzh(~tzh@c-24-21-73-154.hsd1.or.comcast.net) (Quit: zzz)
2021-04-12 09:27:11 +0200ulfryk(~ulfryk@2a01:4b00:872d:e600:a55a:b8e3:54cc:d8d6) (Ping timeout: 260 seconds)
2021-04-12 09:27:45 +0200Sorny(~Sornaensi@79.142.232.102.static.router4.bolignet.dk)
2021-04-12 09:28:22 +0200ulfryk(~ulfryk@2a01:4b00:872d:e600:a55a:b8e3:54cc:d8d6)
2021-04-12 09:29:41 +0200kuribas(~user@ptr-25vy0i8r0t0fnc1atgj.18120a2.ip6.access.telenet.be)
2021-04-12 09:31:02 +0200Sorna(~Sornaensi@077213203030.dynamic.telenor.dk) (Ping timeout: 260 seconds)
2021-04-12 09:32:47 +0200ulfryk(~ulfryk@2a01:4b00:872d:e600:a55a:b8e3:54cc:d8d6) (Ping timeout: 260 seconds)
2021-04-12 09:33:37 +0200merijn(~merijn@83-160-49-249.ip.xs4all.nl)
2021-04-12 09:33:59 +0200ulfryk(~ulfryk@2a01:4b00:872d:e600:a55a:b8e3:54cc:d8d6)
2021-04-12 09:37:29 +0200frozenErebus(~frozenEre@37.231.244.249)
2021-04-12 09:38:40 +0200ulfryk(~ulfryk@2a01:4b00:872d:e600:a55a:b8e3:54cc:d8d6) (Ping timeout: 258 seconds)
2021-04-12 09:38:44 +0200xsarnik0(xsarnik@gateway/shell/fi.muni.cz/x-uidtystkyvzekhjq)
2021-04-12 09:39:19 +0200howdoi(uid224@gateway/web/irccloud.com/x-xnusfecbnfnfbkmf) (Quit: Connection closed for inactivity)
2021-04-12 09:39:35 +0200ulfryk(~ulfryk@2a01:4b00:872d:e600:a55a:b8e3:54cc:d8d6)
2021-04-12 09:42:20 +0200mikoto-chan(~anass@gateway/tor-sasl/mikoto-chan)
2021-04-12 09:44:27 +0200ulfryk(~ulfryk@2a01:4b00:872d:e600:a55a:b8e3:54cc:d8d6) (Ping timeout: 260 seconds)
2021-04-12 09:44:50 +0200idhugo(~idhugo@87-49-147-45-mobile.dk.customer.tdc.net)
2021-04-12 09:51:03 +0200lawid(~quassel@ip5b41869c.dynamic.kabel-deutschland.de)
2021-04-12 09:52:39 +0200minoru_shiraeesh(~shiraeesh@109.166.56.28)
2021-04-12 09:54:37 +0200sedeki(~textual@unaffiliated/sedeki)
2021-04-12 09:55:53 +0200quinn(~quinn@c-73-223-224-163.hsd1.ca.comcast.net) (Ping timeout: 240 seconds)
2021-04-12 09:56:16 +0200raym(~ray@45.64.220.116) (Ping timeout: 252 seconds)
2021-04-12 09:57:15 +0200jpe90(~user@pool-108-31-85-19.washdc.fios.verizon.net) (Remote host closed the connection)
2021-04-12 09:57:26 +0200ulfryk(~ulfryk@2a01:4b00:872d:e600:a55a:b8e3:54cc:d8d6)
2021-04-12 09:57:30 +0200ulfryk(~ulfryk@2a01:4b00:872d:e600:a55a:b8e3:54cc:d8d6) (Remote host closed the connection)
2021-04-12 09:57:43 +0200ulfryk(~ulfryk@2a01:4b00:872d:e600:a55a:b8e3:54cc:d8d6)
2021-04-12 10:00:46 +0200nut(~user@roc37-h01-176-170-197-243.dsl.sta.abo.bbox.fr) (Ping timeout: 260 seconds)
2021-04-12 10:01:34 +0200evanjs(~evanjs@075-129-098-007.res.spectrum.com) (Read error: Connection reset by peer)
2021-04-12 10:02:03 +0200LKoen(~LKoen@65.250.88.92.rev.sfr.net)
2021-04-12 10:02:18 +0200ulfryk(~ulfryk@2a01:4b00:872d:e600:a55a:b8e3:54cc:d8d6) (Client Quit)
2021-04-12 10:02:41 +0200mrchampion(~mrchampio@38.18.109.23) (Ping timeout: 240 seconds)
2021-04-12 10:02:43 +0200evanjs(~evanjs@075-129-098-007.res.spectrum.com)
2021-04-12 10:05:14 +0200tdammers_tdammers
2021-04-12 10:06:11 +0200sedeki(~textual@unaffiliated/sedeki) (Quit: Textual IRC Client: www.textualapp.com)
2021-04-12 10:07:02 +0200zariuq(~zar@fw1.ciirc.cvut.cz) (Quit: Leaving)
2021-04-12 10:07:13 +0200hendursaga(~weechat@gateway/tor-sasl/hendursaga)
2021-04-12 10:09:33 +0200hendursa1(~weechat@gateway/tor-sasl/hendursaga) (Ping timeout: 240 seconds)
2021-04-12 10:10:19 +0200lawid(~quassel@ip5b41869c.dynamic.kabel-deutschland.de) (Quit: lawid)
2021-04-12 10:12:23 +0200swater(~swater@perso.iiens.net)
2021-04-12 10:13:05 +0200GZJ0X_(~gzj@unaffiliated/gzj) (Remote host closed the connection)
2021-04-12 10:13:25 +0200GZJ0X_(~gzj@unaffiliated/gzj)
2021-04-12 10:14:05 +0200GZJ0X_(~gzj@unaffiliated/gzj) (Remote host closed the connection)
2021-04-12 10:14:27 +0200GZJ0X_(~gzj@unaffiliated/gzj)
2021-04-12 10:15:58 +0200gehmehgeh(~ircuser1@gateway/tor-sasl/gehmehgeh)
2021-04-12 10:18:37 +0200normie(~normie@S0106ac202e2069c3.vw.shawcable.net) (Quit: WeeChat 3.1)
2021-04-12 10:25:17 +0200snowflake(~snowflake@gateway/tor-sasl/snowflake) (Remote host closed the connection)
2021-04-12 10:25:44 +0200snowflake(~snowflake@gateway/tor-sasl/snowflake)
2021-04-12 10:26:36 +0200tony42(5c10c36d@host-92-16-195-109.as13285.net)
2021-04-12 10:27:11 +0200 <tony42> Hi, I'm getting a problem installing haskell on a mac mini (applesilicon)
2021-04-12 10:27:15 +0200quinn(~quinn@c-73-223-224-163.hsd1.ca.comcast.net)
2021-04-12 10:29:18 +0200 <tony42> is there an IDE I can use, I tried the intelliJ plugin but I can't start a new project with haskell
2021-04-12 10:30:33 +0200 <merijn> "Is there an IDE?" not really, for most common definitions of IDE
2021-04-12 10:31:17 +0200 <merijn> tony42: As for "problems installing", it'd help to mention: How you are installing, what the error is, etc.
2021-04-12 10:31:23 +0200AWizzArd_AWizzArd
2021-04-12 10:31:36 +0200AWizzArd(~code@gehrels.uberspace.de) (Changing host)
2021-04-12 10:31:36 +0200AWizzArd(~code@unaffiliated/awizzard)
2021-04-12 10:32:04 +0200frozenErebus(~frozenEre@37.231.244.249) (Ping timeout: 265 seconds)
2021-04-12 10:32:41 +0200snowflake(~snowflake@gateway/tor-sasl/snowflake) (Remote host closed the connection)
2021-04-12 10:32:49 +0200 <maerwald> apple silicon isn't supported yet, you have to usr -arch x86_64 compat mode
2021-04-12 10:33:30 +0200 <maerwald> https://gitlab.haskell.org/haskell/ghcup-hs/-/issues/101#note_319402
2021-04-12 10:33:35 +0200Neuromancer(~Neuromanc@unaffiliated/neuromancer)
2021-04-12 10:34:27 +0200snowflake(~snowflake@gateway/tor-sasl/snowflake)
2021-04-12 10:35:42 +0200jpe90(~user@pool-108-31-85-19.washdc.fios.verizon.net)
2021-04-12 10:36:40 +0200epipav(2ec500f6@46.197.0.246)
2021-04-12 10:37:55 +0200mrchampion(~mrchampio@38.18.109.23)
2021-04-12 10:38:26 +0200 <tony42> ok thank you Maerwald, it did have a specific download for apple silicon
2021-04-12 10:44:35 +0200akhesaca1oakhesacaro
2021-04-12 10:45:36 +0200drbean_(~drbean@TC210-63-209-92.static.apol.com.tw) (Ping timeout: 265 seconds)
2021-04-12 10:49:05 +0200rdivyanshu(uid322626@gateway/web/irccloud.com/x-tjgowmwnssyxkqkn) (Quit: Connection closed for inactivity)
2021-04-12 10:50:39 +0200 <jackdk> Is anyone familiar with the `some` library? I'm looking for a way to derive GEq. My type has four constructors, so it's not critical, but some TH would be nice
2021-04-12 10:52:22 +0200minoru_shiraeesh(~shiraeesh@109.166.56.28) (Ping timeout: 265 seconds)
2021-04-12 10:52:59 +0200 <jackdk> Ah, it seems to still be in dependent-sum-template
2021-04-12 10:55:18 +0200mananamenos(~mananamen@62.red-88-11-67.dynamicip.rima-tde.net)
2021-04-12 10:55:57 +0200 <jackdk> hm, no. that only gives me GShow, and seems to be wired into the dependent-sum universe a bit
2021-04-12 10:57:01 +0200fendor(~fendor@91.141.0.248.wireless.dyn.drei.com)
2021-04-12 10:57:12 +0200 <jackdk> no, the functions i need are there after all
2021-04-12 11:00:05 +0200plumenator[m](plumenator@gateway/shell/matrix.org/x-mccaaaafsjcbbjtb) (Quit: Idle for 30+ days)
2021-04-12 11:02:40 +0200nut(~user@roc37-h01-176-170-197-243.dsl.sta.abo.bbox.fr)
2021-04-12 11:09:06 +0200GZJ0X_(~gzj@unaffiliated/gzj) (Remote host closed the connection)
2021-04-12 11:09:27 +0200GZJ0X_(~gzj@unaffiliated/gzj)
2021-04-12 11:09:40 +0200Guest61238(~textual@2603-7000-3040-0000-35a2-98b5-94af-f785.res6.spectrum.com) (Quit: My MacBook has gone to sleep. ZZZzzz…)
2021-04-12 11:09:41 +0200paddymahoney(~paddymaho@cpe9050ca207f83-cm9050ca207f80.cpe.net.cable.rogers.com) (Remote host closed the connection)
2021-04-12 11:10:09 +0200mananamenos(~mananamen@62.red-88-11-67.dynamicip.rima-tde.net) (Quit: Leaving)
2021-04-12 11:11:51 +0200kiweun(~kiweun@2607:fea8:2a62:9600:c91f:da77:c91e:d06d)
2021-04-12 11:14:42 +0200acidjnk_new(~acidjnk@p200300d0c72b950365222184c91f1222.dip0.t-ipconnect.de)
2021-04-12 11:15:07 +0200mnrmnaughawk
2021-04-12 11:15:11 +0200ulidtko|k(~ulidtko@31.133.98.215)
2021-04-12 11:16:25 +0200kiweun(~kiweun@2607:fea8:2a62:9600:c91f:da77:c91e:d06d) (Ping timeout: 258 seconds)
2021-04-12 11:21:54 +0200raehik(~raehik@cpc95906-rdng25-2-0-cust156.15-3.cable.virginm.net)
2021-04-12 11:22:13 +0200haskellstudent(~quassel@213-225-6-101.nat.highway.a1.net)
2021-04-12 11:22:39 +0200Guest_69(5d4bdf9b@93.75.223.155)
2021-04-12 11:23:58 +0200nut(~user@roc37-h01-176-170-197-243.dsl.sta.abo.bbox.fr) (Ping timeout: 240 seconds)
2021-04-12 11:25:03 +0200awkmnrmnaugh
2021-04-12 11:26:31 +0200 <Guest_69> Hi haskellers, question from noobie why https://www.haskell.org/ghcup/ installs cabal and not stack?
2021-04-12 11:27:07 +0200 <sclv> because stack has its own installer
2021-04-12 11:27:21 +0200 <sclv> and ghcup is for installing ghc and cabal
2021-04-12 11:27:23 +0200 <Guest_69> I have trouble with cabal => installed Haskell => install blaze-markup => iHaskell call import => ending with Could not find module ‘Text.Blaze.Html4.Strict’
2021-04-12 11:27:47 +0200 <Guest_69> but Haskell.org/ghcup sounds very official, like way to go
2021-04-12 11:28:06 +0200 <Guest_69> cabal and stack can live together or they conflict?
2021-04-12 11:28:55 +0200 <Guest_69> * installed IHaskell (https://github.com/gibiansky/IHaskell)
2021-04-12 11:29:25 +0200idhugo_(~idhugo@87-49-44-84-mobile.dk.customer.tdc.net)
2021-04-12 11:29:29 +0200 <Guest_69> Haskell port to Jupiter (wanna drop some functional code into the cells
2021-04-12 11:29:44 +0200 <sclv> they can live together. stack installs its own ghc even. its totally removed from the system toolchain
2021-04-12 11:30:33 +0200 <Guest_69> so stack its like nvm, ram or virtualenv from python?
2021-04-12 11:30:44 +0200 <Guest_69> rvm* for ruby
2021-04-12 11:31:30 +0200 <Guest_69> if so what's the difference of ghcup against stack?
2021-04-12 11:31:52 +0200 <Guest_69> ghcup manages only single ghc?
2021-04-12 11:31:58 +0200idhugo(~idhugo@87-49-147-45-mobile.dk.customer.tdc.net) (Ping timeout: 252 seconds)
2021-04-12 11:32:40 +0200rnat2(uid73555@gateway/web/irccloud.com/x-xyybgrwhpsswrqnb) (Quit: Connection closed for inactivity)
2021-04-12 11:32:54 +0200 <maerwald> Guest_69: stack incorporates a) tool to develop haskell projects b) automatic installation of GHC c) package release sets as opposed to rolling. ghcup is just an installer for GHC and cabal. Cabal is the other tool to develop haskell projects
2021-04-12 11:33:34 +0200 <maerwald> So a common (but not only) combination is: 1. stack or 2. ghcup + cabal
2021-04-12 11:35:06 +0200worc3131(~quassel@2a02:c7f:dcc4:6500:cf0e:3346:8766:ab20)
2021-04-12 11:37:04 +0200 <maerwald> in terms of philosphy you could say stack is more "batteries included" and ghcup+cabal more UNIX
2021-04-12 11:37:33 +0200 <maerwald> there's nothing major you can't achieve with either tool... it boils down to taste, mostly
2021-04-12 11:37:52 +0200 <maerwald> so every beginner has to waste half an hour on this question :)
2021-04-12 11:39:46 +0200 <maerwald> like kung fu vs karate
2021-04-12 11:40:06 +0200 <Guest_69> reading article https://medium.com/@fommil/why-not-both-8adadb71a5ed sayd cabal for libs and stack for apps
2021-04-12 11:41:39 +0200 <Guest_69> I think I just need some more time to get into it… my main points right now is that I want to add blaze-markup (or any other lib) so it can be available from iHaskell (installed from any random location with `cabal install ihaskell` and then `~/.cabal/bin/ihaskell install`)
2021-04-12 11:42:25 +0200 <Guest_69> when doing `import Text.Blaze.Html4.Strict` gives me `Could not find module ‘Text.Blaze.Html4.Strict’` though installation went well
2021-04-12 11:42:52 +0200 <maerwald> ihaskell README suggests using stack
2021-04-12 11:43:08 +0200 <maerwald> also https://github.com/gibiansky/IHaskell#where-are-my-packages-ihaskell--stack
2021-04-12 11:43:36 +0200 <Guest_69> should I create a cabal project? But package will be installed globally to my user `~/.cabal/packages/hackage.haskell.org/`
2021-04-12 11:43:46 +0200 <maerwald> unless you're already familiar with both tools, I suggest going with whatever the readme of the project you're using suggests
2021-04-12 11:44:24 +0200 <Guest_69> yes, it told to be so - but then I faced an issue and this one worked for me too https://github.com/gibiansky/IHaskell/issues/1128#issuecomment-560000760
2021-04-12 11:44:42 +0200 <Guest_69> so I have it installed with stack and cabal
2021-04-12 11:44:51 +0200 <kuribas> maerwald: kung-fu vs karate would be more like C++ vs functional programming.
2021-04-12 11:44:59 +0200 <kuribas> maerwald: other way around
2021-04-12 11:45:05 +0200 <maerwald> it seems you're neck deep in tooling issues already
2021-04-12 11:45:16 +0200 <maerwald> I'm sorry for that
2021-04-12 11:45:27 +0200 <Guest_69> my problem was with that `GHC_PACKAGE_PATH`
2021-04-12 11:45:59 +0200 <maerwald> kuribas: C++ isn't a langague, it's a language toolbox :p
2021-04-12 11:46:20 +0200 <Guest_69> imports didn't recognize new things installed
2021-04-12 11:46:39 +0200DavidEichmann(~david@47.27.93.209.dyn.plus.net)
2021-04-12 11:47:02 +0200 <kuribas> maerwald: more like a moster of frankenstein language
2021-04-12 11:49:27 +0200Guest_6943(5d4bdf9b@93.75.223.155)
2021-04-12 11:49:56 +0200 <kuribas> maerwald: KungFu isn't a martial arts style, it literally means "discipline", or "skill".
2021-04-12 11:50:14 +0200 <kuribas> maerwald: you could have Kung-Fu in haskell :)
2021-04-12 11:50:37 +0200 <Guest_6943> karate is a subclass to kungfu (or maybe some other Indian guy)
2021-04-12 11:50:53 +0200 <Guest_6943> so what I think to do, remove stack/cabal - reinstall iHaskell
2021-04-12 11:51:14 +0200 <Guest_6943> setup `GHC_PACKAGE_PATH` with output from `stack path --ghc-package-path`
2021-04-12 11:51:23 +0200Guest_69(5d4bdf9b@93.75.223.155) (Ping timeout: 240 seconds)
2021-04-12 11:51:37 +0200 <Guest_6943> and do the `source .env && Jupiter notebook` in the new "Haskell project"
2021-04-12 11:51:48 +0200 <Guest_6943> and do the `source .env \& Jupiter notebook` in the new "Haskell project"
2021-04-12 11:51:54 +0200 <Guest_6943> and do the `source .env \&& Jupiter notebook` in the new "Haskell project"
2021-04-12 11:52:09 +0200 <Guest_6943> can't remove duplicates 🤔
2021-04-12 11:52:13 +0200gnumonic(~gnumonic@c-73-170-91-210.hsd1.ca.comcast.net) (Ping timeout: 240 seconds)
2021-04-12 11:53:30 +0200heatsink(~heatsink@108-201-191-115.lightspeed.sntcca.sbcglobal.net) (Remote host closed the connection)
2021-04-12 11:56:41 +0200viluon(uid453725@gateway/web/irccloud.com/x-nfhjdcxtvlbhsvti)
2021-04-12 11:57:16 +0200jpe90(~user@pool-108-31-85-19.washdc.fios.verizon.net) (Ping timeout: 252 seconds)
2021-04-12 12:01:18 +0200Alleria(~textual@zrcout.mskcc.org)
2021-04-12 12:01:42 +0200AlleriaGuest19986
2021-04-12 12:04:08 +0200Guest_6943(5d4bdf9b@93.75.223.155) (Quit: Ping timeout (120 seconds))
2021-04-12 12:05:57 +0200Rudd0(~Rudd0@185.189.115.108)
2021-04-12 12:06:13 +0200quinn(~quinn@c-73-223-224-163.hsd1.ca.comcast.net) (Quit: ZNC 1.8.2 - https://znc.in)
2021-04-12 12:07:38 +0200quinn(~quinn@c-73-223-224-163.hsd1.ca.comcast.net)
2021-04-12 12:08:10 +0200xff0x(~xff0x@2001:1a81:52af:1400:3ce5:1261:85cb:8b42) (Ping timeout: 258 seconds)
2021-04-12 12:08:51 +0200xff0x(~xff0x@2001:1a81:52af:1400:26ad:e192:c14b:a6d5)
2021-04-12 12:10:58 +0200dhil(~dhil@80.208.56.181)
2021-04-12 12:13:01 +0200merijn(~merijn@83-160-49-249.ip.xs4all.nl) (Ping timeout: 252 seconds)
2021-04-12 12:13:08 +0200solvr(57e3c46d@87.227.196.109) (Quit: Connection closed)
2021-04-12 12:14:42 +0200merijn(~merijn@83-160-49-249.ip.xs4all.nl)
2021-04-12 12:19:46 +0200merijn(~merijn@83-160-49-249.ip.xs4all.nl) (Ping timeout: 240 seconds)
2021-04-12 12:20:29 +0200comerijn(~merijn@83-160-49-249.ip.xs4all.nl)
2021-04-12 12:21:42 +0200gnumonic(~gnumonic@c-73-170-91-210.hsd1.ca.comcast.net)
2021-04-12 12:21:44 +0200quaestor(~quaestor@griffith.christophrauch.de)
2021-04-12 12:23:56 +0200idhugo__(~idhugo@87-49-147-45-mobile.dk.customer.tdc.net)
2021-04-12 12:24:02 +0200jpe90(~user@pool-108-31-85-19.washdc.fios.verizon.net)
2021-04-12 12:25:05 +0200comerijn(~merijn@83-160-49-249.ip.xs4all.nl) (Ping timeout: 246 seconds)
2021-04-12 12:25:49 +0200merijn(~merijn@83-160-49-249.ip.xs4all.nl)
2021-04-12 12:26:23 +0200worc3131(~quassel@2a02:c7f:dcc4:6500:cf0e:3346:8766:ab20) (Ping timeout: 260 seconds)
2021-04-12 12:26:48 +0200tony42(5c10c36d@host-92-16-195-109.as13285.net) (Quit: Connection closed)
2021-04-12 12:26:57 +0200idhugo_(~idhugo@87-49-44-84-mobile.dk.customer.tdc.net) (Ping timeout: 268 seconds)
2021-04-12 12:31:02 +0200merijn(~merijn@83-160-49-249.ip.xs4all.nl) (Ping timeout: 246 seconds)
2021-04-12 12:31:13 +0200epipav(2ec500f6@46.197.0.246) (Quit: Connection closed)
2021-04-12 12:32:07 +0200merijn(~merijn@83-160-49-249.ip.xs4all.nl)
2021-04-12 12:32:41 +0200lemmih_lemmih
2021-04-12 12:36:27 +0200zebrag(~inkbottle@aaubervilliers-654-1-2-51.w83-200.abo.wanadoo.fr)
2021-04-12 12:36:42 +0200ulidtko|kk(~ulidtko@194.54.80.38)
2021-04-12 12:37:11 +0200merijn(~merijn@83-160-49-249.ip.xs4all.nl) (Ping timeout: 240 seconds)
2021-04-12 12:37:48 +0200merijn(~merijn@83-160-49-249.ip.xs4all.nl)
2021-04-12 12:39:03 +0200ulidtko|k(~ulidtko@31.133.98.215) (Ping timeout: 252 seconds)
2021-04-12 12:42:41 +0200merijn(~merijn@83-160-49-249.ip.xs4all.nl) (Ping timeout: 240 seconds)
2021-04-12 12:43:42 +0200merijn(~merijn@83-160-49-249.ip.xs4all.nl)
2021-04-12 12:53:08 +0200GZJ0X_(~gzj@unaffiliated/gzj) (Remote host closed the connection)
2021-04-12 12:53:28 +0200GZJ0X_(~gzj@unaffiliated/gzj)
2021-04-12 12:54:00 +0200heatsink(~heatsink@108-201-191-115.lightspeed.sntcca.sbcglobal.net)
2021-04-12 12:54:06 +0200GZJ0X_(~gzj@unaffiliated/gzj) (Remote host closed the connection)
2021-04-12 12:54:25 +0200GZJ0X_(~gzj@unaffiliated/gzj)
2021-04-12 12:55:48 +0200lawid(~quassel@ip5b41869c.dynamic.kabel-deutschland.de)
2021-04-12 12:57:14 +0200v01d4lph4(~v01d4lph4@223.177.186.2) (Read error: Connection reset by peer)
2021-04-12 12:57:57 +0200darjeeling_(~darjeelin@122.245.120.156) (Quit: WeeChat 3.0)
2021-04-12 12:58:59 +0200v01d4lph4(~v01d4lph4@223.177.186.2)
2021-04-12 12:59:06 +0200cgfbee(~bot@oc1.itim-cj.ro) (Read error: Connection reset by peer)
2021-04-12 12:59:08 +0200darjeeling_(~darjeelin@122.245.120.156)
2021-04-12 12:59:58 +0200heatsink(~heatsink@108-201-191-115.lightspeed.sntcca.sbcglobal.net) (Ping timeout: 265 seconds)
2021-04-12 13:03:11 +0200dariof4(~dario@217.171.72.98)
2021-04-12 13:03:13 +0200frozenErebus(~frozenEre@37.231.244.249)
2021-04-12 13:06:13 +0200conjunctive(sid433686@gateway/web/irccloud.com/x-hhhjkiinhlcnbbgs) (Quit: Connection closed for inactivity)
2021-04-12 13:10:11 +0200usr25(~usr25@unaffiliated/usr25)
2021-04-12 13:19:02 +0200drbean_(~drbean@TC210-63-209-84.static.apol.com.tw)
2021-04-12 13:20:10 +0200cgfbee(~bot@oc1.itim-cj.ro)
2021-04-12 13:27:42 +0200kiweun(~kiweun@2607:fea8:2a62:9600:7842:3793:f21:78a5)
2021-04-12 13:30:24 +0200xzmsl(4e208274@78.32.130.116)
2021-04-12 13:32:07 +0200kiweun(~kiweun@2607:fea8:2a62:9600:7842:3793:f21:78a5) (Ping timeout: 258 seconds)
2021-04-12 13:32:47 +0200urodna(~urodna@unaffiliated/urodna)
2021-04-12 13:37:22 +0200 <xzmsl> Hey! Say I have an event type represented as a huge sum type, each with different fields with other types nested within them deeply. Anywhere in this structure there might be fields of a particular type T that I'm looking for. Given one of these events, is there a nice way of extracting a list [T] of all of the T types in this nested structure,
2021-04-12 13:37:23 +0200 <xzmsl> making sure to not miss any? This feels like maybe something lens-y but I'm not sure where to look
2021-04-12 13:39:57 +0200Kaeipi(~Kaiepi@47.54.252.148)
2021-04-12 13:40:06 +0200Kaiepi(~Kaiepi@47.54.252.148) (Read error: No route to host)
2021-04-12 13:43:08 +0200 <wrunt> look in Control.Lens.Plated
2021-04-12 13:43:57 +0200nut(~user@roc37-h01-176-170-197-243.dsl.sta.abo.bbox.fr)
2021-04-12 13:44:53 +0200frozenErebus(~frozenEre@37.231.244.249) (Ping timeout: 240 seconds)
2021-04-12 13:44:55 +0200Gurkenglas_(~Gurkengla@unaffiliated/gurkenglas)
2021-04-12 13:46:10 +0200Lowl3v3l(~Lowl3v3l@dslb-002-207-103-026.002.207.pools.vodafone-ip.de) (Ping timeout: 252 seconds)
2021-04-12 13:47:22 +0200Lowl3v3l(~Lowl3v3l@dslb-002-207-103-026.002.207.pools.vodafone-ip.de)
2021-04-12 13:47:49 +0200Gurkenglas(~Gurkengla@unaffiliated/gurkenglas) (Ping timeout: 252 seconds)
2021-04-12 13:49:05 +0200whataday(~xxx@2400:8902::f03c:92ff:fe60:98d8) (Remote host closed the connection)
2021-04-12 13:49:36 +0200mikoto-chan(~anass@gateway/tor-sasl/mikoto-chan) (Remote host closed the connection)
2021-04-12 13:50:12 +0200whataday(~xxx@2400:8902::f03c:92ff:fe60:98d8)
2021-04-12 13:52:08 +0200zebrag(~inkbottle@aaubervilliers-654-1-2-51.w83-200.abo.wanadoo.fr) (Quit: Konversation terminated!)
2021-04-12 13:52:23 +0200 <wrunt> 'deep' may be what you're after
2021-04-12 13:52:29 +0200zebrag(~inkbottle@aaubervilliers-654-1-2-51.w83-200.abo.wanadoo.fr)
2021-04-12 13:53:54 +0200rprije(~rprije@59-102-63-15.tpgi.com.au) (Ping timeout: 268 seconds)
2021-04-12 13:54:43 +0200hendursaga(~weechat@gateway/tor-sasl/hendursaga) (Quit: hendursaga)
2021-04-12 13:55:11 +0200hendursaga(~weechat@gateway/tor-sasl/hendursaga)
2021-04-12 13:57:38 +0200machinedgod(~machinedg@135-23-192-217.cpe.pppoe.ca)
2021-04-12 13:59:19 +0200frozenErebus(~frozenEre@37.231.244.249)
2021-04-12 14:00:59 +0200LKoen(~LKoen@65.250.88.92.rev.sfr.net) (Read error: Connection reset by peer)
2021-04-12 14:02:42 +0200LKoen(~LKoen@65.250.88.92.rev.sfr.net)
2021-04-12 14:07:10 +0200fiedlr(~fiedlr@83.148.33.254) (Remote host closed the connection)
2021-04-12 14:07:39 +0200solvr(57e3c46d@87.227.196.109)
2021-04-12 14:12:34 +0200frozenErebus(~frozenEre@37.231.244.249) (Ping timeout: 252 seconds)
2021-04-12 14:14:34 +0200Vq(~vq@90-227-195-41-no77.tbcn.telia.com) (Read error: Connection reset by peer)
2021-04-12 14:14:57 +0200usr25(~usr25@unaffiliated/usr25) (Read error: Connection reset by peer)
2021-04-12 14:15:25 +0200Vq(~vq@90-227-195-41-no77.tbcn.telia.com)
2021-04-12 14:15:47 +0200Vq(~vq@90-227-195-41-no77.tbcn.telia.com) (Remote host closed the connection)
2021-04-12 14:16:19 +0200fiedlr(~fiedlr@83.148.33.254)
2021-04-12 14:18:15 +0200jonathanx_(~jonathan@h-176-109.A357.priv.bahnhof.se)
2021-04-12 14:18:48 +0200jonathanx(~jonathan@h-176-109.A357.priv.bahnhof.se) (Read error: Connection reset by peer)
2021-04-12 14:19:27 +0200 <L29Ah> compiler/GHC/Prelude.hs:41:8: error:
2021-04-12 14:19:28 +0200 <L29Ah> Could not find module ‘GHC.Bits’
2021-04-12 14:19:29 +0200 <L29Ah> omg apparently ghc master is too new for ghc-9.0.1
2021-04-12 14:19:47 +0200 <L29Ah> bgamari_: have you poked my repro case?
2021-04-12 14:21:15 +0200 <xzmsl> wrunt: thanks, just what i was looking for!
2021-04-12 14:22:34 +0200ClaudiusMaximus(~claude@cpc98210-croy26-2-0-cust137.19-2.cable.virginm.net)
2021-04-12 14:22:34 +0200ClaudiusMaximus(~claude@cpc98210-croy26-2-0-cust137.19-2.cable.virginm.net) (Changing host)
2021-04-12 14:22:34 +0200ClaudiusMaximus(~claude@unaffiliated/claudiusmaximus)
2021-04-12 14:28:26 +0200elfets(~elfets@ip-37-201-23-96.hsi13.unitymediagroup.de) (Ping timeout: 240 seconds)
2021-04-12 14:28:49 +0200Mrbuck(~Mrbuck@gateway/tor-sasl/mrbuck)
2021-04-12 14:31:31 +0200ulidtko(~ulidtko@31.133.98.215)
2021-04-12 14:31:58 +0200ulidtko|kk(~ulidtko@194.54.80.38) (Ping timeout: 240 seconds)
2021-04-12 14:32:36 +0200olligobber(olligobber@gateway/vpn/privateinternetaccess/olligobber) (Remote host closed the connection)
2021-04-12 14:33:23 +0200ulidtko|k(~ulidtko@194.54.80.38)
2021-04-12 14:33:28 +0200bitdex(~bitdex@gateway/tor-sasl/bitdex) (Quit: = "")
2021-04-12 14:36:09 +0200ulidtko(~ulidtko@31.133.98.215) (Ping timeout: 265 seconds)
2021-04-12 14:36:37 +0200kristijonas(~kristijon@78-56-32-39.static.zebra.lt) (Remote host closed the connection)
2021-04-12 14:41:59 +0200waleee-cl(uid373333@gateway/web/irccloud.com/x-laygyesnubfpnshz)
2021-04-12 14:43:02 +0200mikoto-chan(~anass@gateway/tor-sasl/mikoto-chan)
2021-04-12 14:45:05 +0200APic(apic@apic.name) (Ping timeout: 268 seconds)
2021-04-12 14:45:13 +0200 <zzz> i am getting 'fdLock: invalid argument (Invalid argument)' on cabal update and cabal install wtv on ubuntu and am struggling with google. any ideas?
2021-04-12 14:46:22 +0200supercoven(~Supercove@dsl-hkibng31-58c384-213.dhcp.inet.fi)
2021-04-12 14:46:22 +0200APic(apic@apic.name)
2021-04-12 14:47:22 +0200ddellacosta(~ddellacos@ool-44c73afa.dyn.optonline.net)
2021-04-12 14:47:41 +0200ddellacosta(~ddellacos@ool-44c73afa.dyn.optonline.net) (Remote host closed the connection)
2021-04-12 14:48:21 +0200Sornaensis(~Sornaensi@077213203030.dynamic.telenor.dk)
2021-04-12 14:50:41 +0200 <merijn> sounds like a broken file/file lock in the cabal metadata directory
2021-04-12 14:50:47 +0200 <maerwald> WSL?
2021-04-12 14:51:16 +0200 <zzz> no wsl
2021-04-12 14:52:07 +0200zebrag(~inkbottle@aaubervilliers-654-1-2-51.w83-200.abo.wanadoo.fr) (Quit: Konversation terminated!)
2021-04-12 14:52:09 +0200Sorny(~Sornaensi@79.142.232.102.static.router4.bolignet.dk) (Ping timeout: 252 seconds)
2021-04-12 14:52:29 +0200zebrag(~inkbottle@aaubervilliers-654-1-2-51.w83-200.abo.wanadoo.fr)
2021-04-12 14:55:17 +0200xzmsl(4e208274@78.32.130.116) (Quit: Connection closed)
2021-04-12 14:56:31 +0200heatsink(~heatsink@108-201-191-115.lightspeed.sntcca.sbcglobal.net)
2021-04-12 15:00:15 +0200hyperisco(~hyperisco@d192-186-117-226.static.comm.cgocable.net)
2021-04-12 15:00:48 +0200forell(~forell@unaffiliated/forell) (Ping timeout: 265 seconds)
2021-04-12 15:00:58 +0200heatsink(~heatsink@108-201-191-115.lightspeed.sntcca.sbcglobal.net) (Ping timeout: 252 seconds)
2021-04-12 15:01:03 +0200forell(~forell@unaffiliated/forell)
2021-04-12 15:04:01 +0200rembo10(~rembo10@wally.codeshy.com) (Quit: ZNC 1.8.2 - https://znc.in)
2021-04-12 15:06:08 +0200GZJ0X_(~gzj@unaffiliated/gzj) (Remote host closed the connection)
2021-04-12 15:06:28 +0200GZJ0X_(~gzj@unaffiliated/gzj)
2021-04-12 15:06:49 +0200xkapastel(uid17782@gateway/web/irccloud.com/x-xevksgpnhxylybkh)
2021-04-12 15:07:52 +0200Sorna(~Sornaensi@79.142.232.102.static.router4.bolignet.dk)
2021-04-12 15:08:11 +0200rembo10(~rembo10@wally.codeshy.com)
2021-04-12 15:08:59 +0200freusque(63e6e881@cpef85e4245f305-cmf85e4245f303.cpe.net.cable.rogers.com)
2021-04-12 15:10:18 +0200Sornaensis(~Sornaensi@077213203030.dynamic.telenor.dk) (Ping timeout: 240 seconds)
2021-04-12 15:10:38 +0200nut(~user@roc37-h01-176-170-197-243.dsl.sta.abo.bbox.fr) (Ping timeout: 246 seconds)
2021-04-12 15:12:09 +0200GZJ0X_(~gzj@unaffiliated/gzj) (Remote host closed the connection)
2021-04-12 15:12:15 +0200ram19890(~ram@49.207.130.109) (Remote host closed the connection)
2021-04-12 15:12:18 +0200lawid(~quassel@ip5b41869c.dynamic.kabel-deutschland.de) (Quit: lawid)
2021-04-12 15:12:30 +0200GZJ0X_(~gzj@unaffiliated/gzj)
2021-04-12 15:12:59 +0200frozenErebus(~frozenEre@37.231.244.249)
2021-04-12 15:14:53 +0200LKoen(~LKoen@65.250.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-12 15:15:19 +0200lawid(~quassel@ip5b41869c.dynamic.kabel-deutschland.de)
2021-04-12 15:16:56 +0200jonathanx_(~jonathan@h-176-109.A357.priv.bahnhof.se) (Remote host closed the connection)
2021-04-12 15:19:04 +0200freusque(63e6e881@cpef85e4245f305-cmf85e4245f303.cpe.net.cable.rogers.com) (Quit: Connection closed)
2021-04-12 15:19:10 +0200GZJ0X_(~gzj@unaffiliated/gzj) (Remote host closed the connection)
2021-04-12 15:19:31 +0200GZJ0X_(~gzj@unaffiliated/gzj)
2021-04-12 15:20:10 +0200GZJ0X_(~gzj@unaffiliated/gzj) (Remote host closed the connection)
2021-04-12 15:20:30 +0200GZJ0X_(~gzj@unaffiliated/gzj)
2021-04-12 15:22:10 +0200GZJ0X_(~gzj@unaffiliated/gzj) (Remote host closed the connection)
2021-04-12 15:22:19 +0200bitmagie(~Thunderbi@200116b8061cbc00e8696d8688336284.dip.versatel-1u1.de)
2021-04-12 15:22:31 +0200GZJ0X_(~gzj@unaffiliated/gzj)
2021-04-12 15:23:10 +0200GZJ0X_(~gzj@unaffiliated/gzj) (Remote host closed the connection)
2021-04-12 15:23:32 +0200GZJ0X_(~gzj@unaffiliated/gzj)
2021-04-12 15:24:09 +0200GZJ0X_(~gzj@unaffiliated/gzj) (Remote host closed the connection)
2021-04-12 15:24:29 +0200GZJ0X_(~gzj@unaffiliated/gzj)
2021-04-12 15:25:09 +0200mikoto-chan(~anass@gateway/tor-sasl/mikoto-chan) (Ping timeout: 240 seconds)
2021-04-12 15:25:34 +0200mikoto-chan(~anass@gateway/tor-sasl/mikoto-chan)
2021-04-12 15:26:34 +0200jonathanx(~jonathan@h-176-109.A357.priv.bahnhof.se)
2021-04-12 15:26:59 +0200_bin(~bin@2600:1700:10a1:38d0:552:2a84:dc6:b119) (Ping timeout: 260 seconds)
2021-04-12 15:27:46 +0200ddellacosta(~ddellacos@ool-44c73afa.dyn.optonline.net)
2021-04-12 15:28:14 +0200Mrbuck(~Mrbuck@gateway/tor-sasl/mrbuck) (Remote host closed the connection)
2021-04-12 15:28:31 +0200kiweun(~kiweun@2607:fea8:2a62:9600:c9a3:9dbc:99dc:a4cc)
2021-04-12 15:29:12 +0200Mrbuck(~Mrbuck@gateway/tor-sasl/mrbuck)
2021-04-12 15:29:16 +0200_bin(~bin@2600:1700:10a1:38d0:6924:8e26:a144:5b39)
2021-04-12 15:29:22 +0200nbloomf(~nbloomf@2600:1700:ad14:3020:68e0:e795:2871:903f)
2021-04-12 15:30:51 +0200Mrbuck(~Mrbuck@gateway/tor-sasl/mrbuck) (Remote host closed the connection)
2021-04-12 15:31:40 +0200Mrbuck(~Mrbuck@gateway/tor-sasl/mrbuck)
2021-04-12 15:32:52 +0200kiweun(~kiweun@2607:fea8:2a62:9600:c9a3:9dbc:99dc:a4cc) (Ping timeout: 258 seconds)
2021-04-12 15:35:53 +0200Tario(~Tario@201.192.165.173)
2021-04-12 15:38:05 +0200ddellacosta(~ddellacos@ool-44c73afa.dyn.optonline.net) (Remote host closed the connection)
2021-04-12 15:42:47 +0200carlomagno(~cararell@148.87.23.4)
2021-04-12 15:43:05 +0200whataday(~xxx@2400:8902::f03c:92ff:fe60:98d8) (Remote host closed the connection)
2021-04-12 15:44:12 +0200whataday(~xxx@2400:8902::f03c:92ff:fe60:98d8)
2021-04-12 15:44:30 +0200bitmagie(~Thunderbi@200116b8061cbc00e8696d8688336284.dip.versatel-1u1.de) (Quit: bitmagie)
2021-04-12 15:44:55 +0200APic(apic@apic.name) (Ping timeout: 268 seconds)
2021-04-12 15:45:14 +0200Synthetica(uid199651@gateway/web/irccloud.com/x-angnetldjalsgvuz)
2021-04-12 15:46:55 +0200APic(apic@185.203.114.187)
2021-04-12 15:47:31 +0200drbean_(~drbean@TC210-63-209-84.static.apol.com.tw) (Quit: ZNC 1.8.2+cygwin2 - https://znc.in)
2021-04-12 15:48:20 +0200acarrico(~acarrico@dhcp-68-142-39-249.greenmountainaccess.net)
2021-04-12 15:48:53 +0200Mo49(549d3d1a@p549d3d1a.dip0.t-ipconnect.de)
2021-04-12 15:49:23 +0200Mo49(549d3d1a@p549d3d1a.dip0.t-ipconnect.de) (Client Quit)
2021-04-12 15:50:33 +0200nut(~user@roc37-h01-176-170-197-243.dsl.sta.abo.bbox.fr)
2021-04-12 15:51:13 +0200APic(apic@185.203.114.187) (Ping timeout: 240 seconds)
2021-04-12 15:51:53 +0200dpl(~dpl@77-121-78-163.chn.volia.net) (Ping timeout: 240 seconds)
2021-04-12 15:52:07 +0200zebrag(~inkbottle@aaubervilliers-654-1-2-51.w83-200.abo.wanadoo.fr) (Quit: Konversation terminated!)
2021-04-12 15:52:29 +0200zebrag(~inkbottle@aaubervilliers-654-1-2-51.w83-200.abo.wanadoo.fr)
2021-04-12 15:52:48 +0200Vq(~vq@90-227-195-41-no77.tbcn.telia.com)
2021-04-12 15:53:09 +0200GZJ0X_(~gzj@unaffiliated/gzj) (Remote host closed the connection)
2021-04-12 15:53:42 +0200APic(apic@apic.name)
2021-04-12 15:55:32 +0200v01d4lph4(~v01d4lph4@223.177.186.2) (Remote host closed the connection)
2021-04-12 15:57:18 +0200ddellaco_(~ddellacos@ool-44c73afa.dyn.optonline.net)
2021-04-12 15:58:15 +0200idhugo__(~idhugo@87-49-147-45-mobile.dk.customer.tdc.net) (Ping timeout: 246 seconds)
2021-04-12 15:58:34 +0200ram19890(~ram@49.207.130.109)
2021-04-12 15:59:53 +0200elfets(~elfets@ip-37-201-23-96.hsi13.unitymediagroup.de)
2021-04-12 16:03:39 +0200Guest_69(c22c6f46@194.44.111.70)
2021-04-12 16:03:41 +0200Alleria(~textual@mskresolve-a.mskcc.org)
2021-04-12 16:04:05 +0200AlleriaGuest35124
2021-04-12 16:04:13 +0200elliott_(~elliott@pool-108-51-101-42.washdc.fios.verizon.net) (Ping timeout: 240 seconds)
2021-04-12 16:04:43 +0200oniijin(~oniijin@185.204.1.185)
2021-04-12 16:05:12 +0200Guest19986(~textual@zrcout.mskcc.org) (Ping timeout: 240 seconds)
2021-04-12 16:05:44 +0200rj(~x@gateway/tor-sasl/rj)
2021-04-12 16:05:50 +0200Guest_69(c22c6f46@194.44.111.70) (Client Quit)
2021-04-12 16:09:02 +0200finn_elija(~finn_elij@gateway/tor-sasl/finnelija/x-67402716) (Remote host closed the connection)
2021-04-12 16:09:08 +0200Mrbuck(~Mrbuck@gateway/tor-sasl/mrbuck) (Remote host closed the connection)
2021-04-12 16:09:31 +0200finn_elija(~finn_elij@gateway/tor-sasl/finnelija/x-67402716)
2021-04-12 16:11:04 +0200superstar64(6ccefa7c@108-206-250-124.lightspeed.miamfl.sbcglobal.net)
2021-04-12 16:11:57 +0200rj(~x@gateway/tor-sasl/rj) (Ping timeout: 240 seconds)
2021-04-12 16:13:56 +0200 <thblt> Potentially stupid question I don't know how to Google: I have a few record types like `data Student { studentId :: StudentID, classes :: [Class] }`. 99% of the time I only care about the `classes` field, so I end up doing a lot of eg func s@(Student _ c) = s { classes = fmap … }. Is there a way (that isn't horrible) to somehow apply the field's Functor (and Monoid, and Monad, and so on) instances to the whole Student type,
2021-04-12 16:13:56 +0200 <thblt> so I can fmap over a Student and it actually fmaps over what really matters, `classes`.
2021-04-12 16:14:00 +0200ram19890_(~ram@49.207.130.109)
2021-04-12 16:14:13 +0200ram19890_(~ram@49.207.130.109) (Remote host closed the connection)
2021-04-12 16:14:30 +0200ddellaco_(~ddellacos@ool-44c73afa.dyn.optonline.net) (Remote host closed the connection)
2021-04-12 16:14:33 +0200ram19890_(~ram@49.207.130.109)
2021-04-12 16:14:46 +0200ram19890_(~ram@49.207.130.109) (Max SendQ exceeded)
2021-04-12 16:15:08 +0200 <merijn> Well, fmap can't work, because Student doesn't have a type variable
2021-04-12 16:15:11 +0200frozenErebus(~frozenEre@37.231.244.249) (Ping timeout: 240 seconds)
2021-04-12 16:15:30 +0200ram19890_(~ram@49.207.130.109)
2021-04-12 16:15:33 +0200 <lyxia> thblt: modifyClasses f s@(Student _ c) = s { classes = f c }
2021-04-12 16:15:34 +0200 <merijn> You could, theoretically fix that, though
2021-04-12 16:15:44 +0200 <merijn> But yeah, lyxia's suggestion is common
2021-04-12 16:16:10 +0200 <thblt> merijn: lyxia: thank you both!
2021-04-12 16:16:30 +0200ep1ctetus(~epictetus@ip72-194-215-136.sb.sd.cox.net)
2021-04-12 16:17:25 +0200ram19890_ram19890_1
2021-04-12 16:19:00 +0200ram19890_1(~ram@49.207.130.109) (Client Quit)
2021-04-12 16:19:41 +0200son0p(~ff@181.136.122.143)
2021-04-12 16:21:13 +0200Sgeo(~Sgeo@ool-18b98aa4.dyn.optonline.net)
2021-04-12 16:22:54 +0200ram19890_(~ram@49.207.130.109)
2021-04-12 16:22:57 +0200ram19890_(~ram@49.207.130.109) (Remote host closed the connection)
2021-04-12 16:22:57 +0200ram19890(~ram@49.207.130.109) (Quit: Leaving)
2021-04-12 16:23:18 +0200ram19890(~ram@49.207.130.109)
2021-04-12 16:23:18 +0200ep1ctetus(~epictetus@ip72-194-215-136.sb.sd.cox.net) (Read error: Connection reset by peer)
2021-04-12 16:23:37 +0200xff0x(~xff0x@2001:1a81:52af:1400:26ad:e192:c14b:a6d5) (Ping timeout: 250 seconds)
2021-04-12 16:24:32 +0200xff0x(~xff0x@2001:1a81:52af:1400:ec8a:b59a:161d:e7ba)
2021-04-12 16:24:49 +0200ddellaco_(~ddellacos@ool-44c73afa.dyn.optonline.net)
2021-04-12 16:25:41 +0200ram19890(~ram@49.207.130.109) (Remote host closed the connection)
2021-04-12 16:26:02 +0200ram19890(~ram@49.207.130.109)
2021-04-12 16:26:59 +0200 <kuribas> thblt: sounds like lenses
2021-04-12 16:27:44 +0200 <kuribas> thblt: over classesLens f student
2021-04-12 16:27:52 +0200Tops2(~Tobias@dyndsl-091-249-083-203.ewe-ip-backbone.de)
2021-04-12 16:27:57 +0200 <kuribas> where classesLens is a lens that targets the classes field.
2021-04-12 16:28:43 +0200 <kuribas> a lens is a traverse, rather than a fmap.
2021-04-12 16:29:21 +0200rj(~x@gateway/tor-sasl/rj)
2021-04-12 16:31:00 +0200minoru_shiraeesh(~shiraeesh@109.166.57.218)
2021-04-12 16:31:50 +0200acarrico(~acarrico@dhcp-68-142-39-249.greenmountainaccess.net) (Quit: Leaving.)
2021-04-12 16:35:14 +0200malumore(~malumore@151.62.112.168) (Quit: Leaving)
2021-04-12 16:35:31 +0200rj(~x@gateway/tor-sasl/rj) (Quit: rj)
2021-04-12 16:35:39 +0200ram19890(~ram@49.207.130.109) (Quit: Leaving)
2021-04-12 16:36:01 +0200ram19890(~ram@49.207.130.109)
2021-04-12 16:36:04 +0200ram19890(~ram@49.207.130.109) (Read error: Connection reset by peer)
2021-04-12 16:36:13 +0200malumore(~malumore@151.62.112.168)
2021-04-12 16:36:24 +0200ram19890(~ram@49.207.130.109)
2021-04-12 16:36:30 +0200gnumonic(~gnumonic@c-73-170-91-210.hsd1.ca.comcast.net) (Ping timeout: 265 seconds)
2021-04-12 16:36:30 +0200ram19890(~ram@49.207.130.109) (Read error: Connection reset by peer)
2021-04-12 16:37:46 +0200 <thblt> kuribas: thank you! I thought lenses when I was writing the question, but I'm not comfortable enough with them for now :)
2021-04-12 16:38:04 +0200cr3(~cr3@192-222-143-195.qc.cable.ebox.net)
2021-04-12 16:39:11 +0200 <merijn> thblt: lyxia's modifyClasses is basically a highly specialise lens :p
2021-04-12 16:39:46 +0200ram19890(~ram@49.207.130.109)
2021-04-12 16:42:33 +0200dpl(~dpl@77-121-78-163.chn.volia.net)
2021-04-12 16:44:13 +0200ram19890(~ram@49.207.130.109) (Client Quit)
2021-04-12 16:44:33 +0200ram19890(~ram@49.207.130.109)
2021-04-12 16:44:56 +0200ram19890(~ram@49.207.130.109) (Max SendQ exceeded)
2021-04-12 16:46:12 +0200ram19890(~ram@49.207.130.109)
2021-04-12 16:46:52 +0200rj(~x@gateway/tor-sasl/rj)
2021-04-12 16:48:04 +0200ram19890(~ram@49.207.130.109) (Client Quit)
2021-04-12 16:48:20 +0200ram19890(~ram@49.207.130.109)
2021-04-12 16:49:38 +0200frozenErebus(~frozenEre@37.231.244.249)
2021-04-12 16:50:42 +0200oleks_(~oleks@188.166.34.97) (Quit: leaving)
2021-04-12 16:50:58 +0200oleks(~oleks@188.166.34.97)
2021-04-12 16:51:10 +0200ram19890(~ram@49.207.130.109) (Client Quit)
2021-04-12 16:52:07 +0200zebrag(~inkbottle@aaubervilliers-654-1-2-51.w83-200.abo.wanadoo.fr) (Quit: Konversation terminated!)
2021-04-12 16:52:27 +0200zebrag(~inkbottle@aaubervilliers-654-1-2-51.w83-200.abo.wanadoo.fr)
2021-04-12 16:54:56 +0200minoru_shiraeesh(~shiraeesh@109.166.57.218) (Ping timeout: 246 seconds)
2021-04-12 16:55:43 +0200poscat(~poscat@114.245.106.173) (Ping timeout: 252 seconds)
2021-04-12 16:55:59 +0200dyeplexer(~lol@unaffiliated/terpin)
2021-04-12 16:56:33 +0200poscat(~poscat@114.245.106.173)
2021-04-12 16:56:51 +0200dcbdan(~dcbdan@c-73-76-129-120.hsd1.tx.comcast.net) (Quit: leaving)
2021-04-12 16:57:33 +0200mikoto-chan(~anass@gateway/tor-sasl/mikoto-chan) (Ping timeout: 240 seconds)
2021-04-12 16:58:44 +0200kristijonas(~kristijon@78-56-32-39.static.zebra.lt)
2021-04-12 17:00:29 +0200minoru_shiraeesh(~shiraeesh@109.166.57.218)
2021-04-12 17:01:46 +0200nut(~user@roc37-h01-176-170-197-243.dsl.sta.abo.bbox.fr) (Ping timeout: 260 seconds)
2021-04-12 17:04:21 +0200acidjnk_new(~acidjnk@p200300d0c72b950365222184c91f1222.dip0.t-ipconnect.de) (Ping timeout: 250 seconds)
2021-04-12 17:04:32 +0200ddellaco_(~ddellacos@ool-44c73afa.dyn.optonline.net) (Remote host closed the connection)
2021-04-12 17:05:00 +0200ddellacosta(~ddellacos@ool-44c73afa.dyn.optonline.net)
2021-04-12 17:06:24 +0200ddellacosta(~ddellacos@ool-44c73afa.dyn.optonline.net) (Remote host closed the connection)
2021-04-12 17:08:54 +0200usr25(~usr25@unaffiliated/usr25)
2021-04-12 17:10:21 +0200rj(~x@gateway/tor-sasl/rj) (Ping timeout: 240 seconds)
2021-04-12 17:12:28 +0200ddellaco_(~ddellacos@ool-44c73afa.dyn.optonline.net)
2021-04-12 17:16:14 +0200johnw(~johnw@haskell/developer/johnw) (Remote host closed the connection)
2021-04-12 17:24:06 +0200ddellaco_(~ddellacos@ool-44c73afa.dyn.optonline.net) (Remote host closed the connection)
2021-04-12 17:24:25 +0200Deide(~Deide@217.155.19.23)
2021-04-12 17:24:41 +0200pfurla_(~pfurla@ool-182ed2e2.dyn.optonline.net) (Read error: Connection reset by peer)
2021-04-12 17:27:17 +0200fendor_(~fendor@e244-003.eduroam.tuwien.ac.at)
2021-04-12 17:27:51 +0200myShoggoth(~myShoggot@75.164.73.93)
2021-04-12 17:29:05 +0200ddellacosta(~ddellacos@ool-44c73afa.dyn.optonline.net)
2021-04-12 17:29:10 +0200kiweun(~kiweun@2607:fea8:2a62:9600:fd49:971:910:f13a)
2021-04-12 17:32:34 +0200Gurkenglas_(~Gurkengla@unaffiliated/gurkenglas) (Read error: Connection reset by peer)
2021-04-12 17:32:34 +0200jpe90(~user@pool-108-31-85-19.washdc.fios.verizon.net) (Ping timeout: 265 seconds)
2021-04-12 17:34:00 +0200kiweun(~kiweun@2607:fea8:2a62:9600:fd49:971:910:f13a) (Ping timeout: 258 seconds)
2021-04-12 17:35:11 +0200jle`(~mstksg@unaffiliated/mstksg) (Ping timeout: 260 seconds)
2021-04-12 17:35:22 +0200idhugo__(~idhugo@87-49-147-45-mobile.dk.customer.tdc.net)
2021-04-12 17:35:44 +0200ram19890(~ram@49.207.130.109)
2021-04-12 17:36:33 +0200APic(apic@apic.name) (Ping timeout: 240 seconds)
2021-04-12 17:40:35 +0200mach1speed(~textual@S0106f0b4d2c39cee.va.shawcable.net) (Quit: My MacBook Air has gone to sleep. ZZZzzz…)
2021-04-12 17:41:05 +0200mach1speed(~textual@S0106f0b4d2c39cee.va.shawcable.net)
2021-04-12 17:41:22 +0200neiluj(~jco@91-167-203-101.subs.proxad.net)
2021-04-12 17:41:22 +0200neiluj(~jco@91-167-203-101.subs.proxad.net) (Changing host)
2021-04-12 17:41:22 +0200neiluj(~jco@unaffiliated/neiluj)
2021-04-12 17:41:24 +0200mach1speed(~textual@S0106f0b4d2c39cee.va.shawcable.net) (Client Quit)
2021-04-12 17:41:30 +0200meinhof(4eb96741@78.185.103.65)
2021-04-12 17:41:55 +0200mach1speed(~textual@S0106f0b4d2c39cee.va.shawcable.net)
2021-04-12 17:42:12 +0200mach1speed(~textual@S0106f0b4d2c39cee.va.shawcable.net) (Client Quit)
2021-04-12 17:43:48 +0200APic(apic@apic.name)
2021-04-12 17:45:33 +0200Tario(~Tario@201.192.165.173) (Ping timeout: 240 seconds)
2021-04-12 17:45:58 +0200Tario(~Tario@200.119.184.160)
2021-04-12 17:46:43 +0200Tuplanolla(~Tuplanoll@91-159-68-239.elisa-laajakaista.fi)
2021-04-12 17:50:18 +0200geowiesnot(~user@i15-les02-ix2-87-89-181-157.sfr.lns.abo.bbox.fr)
2021-04-12 17:50:56 +0200elfets(~elfets@ip-37-201-23-96.hsi13.unitymediagroup.de) (Ping timeout: 260 seconds)
2021-04-12 17:52:07 +0200zebrag(~inkbottle@aaubervilliers-654-1-2-51.w83-200.abo.wanadoo.fr) (Quit: Konversation terminated!)
2021-04-12 17:52:29 +0200zebrag(~inkbottle@aaubervilliers-654-1-2-51.w83-200.abo.wanadoo.fr)
2021-04-12 17:55:27 +0200 <solvr> Isn't it odd that no CPU I can think of does lazy execution. But almost any CPU I can think of does the exact opposite: speculative execution (i.e. executing before it needs to).
2021-04-12 17:55:46 +0200ChanServ+o monochrom
2021-04-12 17:55:48 +0200johnw(~johnw@haskell/developer/johnw)
2021-04-12 17:55:52 +0200monochrom+b *!*@87.227.196.109
2021-04-12 17:55:52 +0200solvrmonochromsolvr
2021-04-12 17:56:28 +0200monochrom-b+b-o *!*@87.227.196.109 $a:solvr monochrom
2021-04-12 17:59:12 +0200heatsink(~heatsink@108-201-191-115.lightspeed.sntcca.sbcglobal.net)
2021-04-12 17:59:43 +0200meinhof(4eb96741@78.185.103.65) (Ping timeout: 240 seconds)
2021-04-12 17:59:51 +0200pengjiz(~user@2601:547:902:6d00::2)
2021-04-12 18:03:34 +0200abhixec(~abhixec@c-67-169-139-16.hsd1.ca.comcast.net)
2021-04-12 18:08:06 +0200whataday(~xxx@2400:8902::f03c:92ff:fe60:98d8) (Remote host closed the connection)
2021-04-12 18:08:09 +0200tzh(~tzh@c-24-21-73-154.hsd1.wa.comcast.net)
2021-04-12 18:09:13 +0200whataday(~xxx@2400:8902::f03c:92ff:fe60:98d8)
2021-04-12 18:09:24 +0200geekosaur(930099da@rrcs-147-0-153-218.central.biz.rr.com)
2021-04-12 18:11:18 +0200merijn(~merijn@83-160-49-249.ip.xs4all.nl) (Ping timeout: 240 seconds)
2021-04-12 18:12:25 +0200 <bgamari_> L29Ah, sadly not yet
2021-04-12 18:12:32 +0200 <bgamari_> I'm a bit under water at the moment
2021-04-12 18:14:10 +0200DavideDV(DavideDV@93.51.53.166)
2021-04-12 18:14:17 +0200 <DavideDV> ciao!
2021-04-12 18:14:22 +0200 <DavideDV> list!
2021-04-12 18:14:30 +0200gehmehgeh(~ircuser1@gateway/tor-sasl/gehmehgeh) (Quit: Leaving)
2021-04-12 18:14:58 +0200Moyst_Moyst
2021-04-12 18:17:31 +0200frozenErebus(~frozenEre@37.231.244.249) (Ping timeout: 265 seconds)
2021-04-12 18:17:38 +0200DavideDV(DavideDV@93.51.53.166) ("Closing Window")
2021-04-12 18:17:43 +0200puke(~vroom@217.138.252.196)
2021-04-12 18:17:56 +0200pavonia(~user@unaffiliated/siracusa)
2021-04-12 18:18:59 +0200jakalx(~jakalx@base.jakalx.net) ("Error from remote client")
2021-04-12 18:20:01 +0200simplegauss(~simplegau@2001:19f0:ac01:247:5400:ff:fe5c:689f) (Quit: Bye)
2021-04-12 18:20:01 +0200sveit(~sveit@2001:19f0:ac01:247:5400:ff:fe5c:689f) (Quit: Bye)
2021-04-12 18:21:29 +0200cfricke(~cfricke@unaffiliated/cfricke) (Ping timeout: 250 seconds)
2021-04-12 18:21:31 +0200sveit(~sveit@45.77.0.246)
2021-04-12 18:22:00 +0200simplegauss(~simplegau@2001:19f0:ac01:247:5400:ff:fe5c:689f)
2021-04-12 18:23:26 +0200zeenk(~zeenk@2a02:2f04:a10b:af00:91ba:3645:1cdb:9a75) (Read error: Connection reset by peer)
2021-04-12 18:23:26 +0200Tario(~Tario@200.119.184.160) (Read error: Connection reset by peer)
2021-04-12 18:23:42 +0200Tario(~Tario@201.192.165.173)
2021-04-12 18:23:47 +0200ddellacosta(~ddellacos@ool-44c73afa.dyn.optonline.net) (Remote host closed the connection)
2021-04-12 18:25:21 +0200ddellaco_(~ddellacos@ool-44c73afa.dyn.optonline.net)
2021-04-12 18:25:30 +0200cfricke(~cfricke@unaffiliated/cfricke)
2021-04-12 18:26:34 +0200LKoen(~LKoen@65.250.88.92.rev.sfr.net)
2021-04-12 18:26:53 +0200xsarnik0(xsarnik@gateway/shell/fi.muni.cz/x-uidtystkyvzekhjq) (Ping timeout: 240 seconds)
2021-04-12 18:26:53 +0200Jajik(xchlup2@gateway/shell/fi.muni.cz/x-opqjhtmxhszjujsj) (Ping timeout: 240 seconds)
2021-04-12 18:29:41 +0200xsarnik0(xsarnik@gateway/shell/fi.muni.cz/x-bdqphpqxvzmclymb)
2021-04-12 18:33:09 +0200kritzefitz(~kritzefit@212.86.56.80)
2021-04-12 18:34:19 +0200jakalx(~jakalx@base.jakalx.net)
2021-04-12 18:35:19 +0200gitgood(~gitgood@80-44-10-33.dynamic.dsl.as9105.com)
2021-04-12 18:35:38 +0200merijn(~merijn@83-160-49-249.ip.xs4all.nl)
2021-04-12 18:40:33 +0200merijn(~merijn@83-160-49-249.ip.xs4all.nl) (Ping timeout: 240 seconds)
2021-04-12 18:41:36 +0200wroathe(~wroathe@c-68-54-25-135.hsd1.mn.comcast.net)
2021-04-12 18:42:52 +0200arpl(~ARPL@84-107-171-239.cable.dynamic.v4.ziggo.nl)
2021-04-12 18:44:09 +0200alx741(~alx741@181.196.68.37) (Quit: alx741)
2021-04-12 18:46:49 +0200ep1ctetus(~epictetus@ip72-194-215-136.sb.sd.cox.net)
2021-04-12 18:48:31 +0200alx741(~alx741@181.196.68.37)
2021-04-12 18:51:45 +0200fendor__(~fendor@77.119.130.199.wireless.dyn.drei.com)
2021-04-12 18:51:47 +0200chenshen(~chenshen@2620:10d:c090:400::5:f4f2)
2021-04-12 18:52:49 +0200ddellaco_(~ddellacos@ool-44c73afa.dyn.optonline.net) (Remote host closed the connection)
2021-04-12 18:53:34 +0200howdoi(uid224@gateway/web/irccloud.com/x-wqwlliyoydaqzoui)
2021-04-12 18:54:15 +0200Gurkenglas(~Gurkengla@unaffiliated/gurkenglas)
2021-04-12 18:54:50 +0200fendor(~fendor@91.141.0.248.wireless.dyn.drei.com) (Ping timeout: 268 seconds)
2021-04-12 18:55:11 +0200justanotheruser(~justanoth@unaffiliated/justanotheruser)
2021-04-12 18:55:50 +0200pfurla(~pfurla@ool-182ed2e2.dyn.optonline.net)
2021-04-12 18:57:12 +0200p8m_(p8m@gateway/vpn/protonvpn/p8m)
2021-04-12 18:57:25 +0200nbloomf(~nbloomf@2600:1700:ad14:3020:68e0:e795:2871:903f) (Quit: My MacBook has gone to sleep. ZZZzzz…)
2021-04-12 18:57:27 +0200p8m(p8m@gateway/vpn/protonvpn/p8m) (Ping timeout: 260 seconds)
2021-04-12 18:58:14 +0200fendor_(~fendor@e244-003.eduroam.tuwien.ac.at) (Quit: Leaving)
2021-04-12 18:58:38 +0200nbloomf(~nbloomf@76.217.43.73)
2021-04-12 18:59:05 +0200Guest60991(d5cdf004@213.205.240.4)
2021-04-12 19:00:09 +0200dominicusin[m](dominicusi@gateway/shell/matrix.org/x-cjngkratdjygajhy)
2021-04-12 19:01:38 +0200p8m_(p8m@gateway/vpn/protonvpn/p8m) (Ping timeout: 240 seconds)
2021-04-12 19:02:07 +0200chenshen(~chenshen@2620:10d:c090:400::5:f4f2) (Quit: My MacBook Pro has gone to sleep. ZZZzzz…)
2021-04-12 19:02:08 +0200ddellaco_(~ddellacos@ool-44c73afa.dyn.optonline.net)
2021-04-12 19:02:54 +0200Jajik(xchlup2@gateway/shell/fi.muni.cz/x-addkanorupodyldz)
2021-04-12 19:03:05 +0200jakalx(~jakalx@base.jakalx.net) ()
2021-04-12 19:03:47 +0200chenshen(~chenshen@2620:10d:c090:400::5:f4f2)
2021-04-12 19:05:58 +0200geowiesnot(~user@i15-les02-ix2-87-89-181-157.sfr.lns.abo.bbox.fr) (Ping timeout: 240 seconds)
2021-04-12 19:09:25 +0200heatsink(~heatsink@108-201-191-115.lightspeed.sntcca.sbcglobal.net) (Remote host closed the connection)
2021-04-12 19:10:45 +0200 <Guest60991> does anyone have a link to some examples of smart constructors for recursion-schemes defined using Mu/Nu constructors?
2021-04-12 19:10:45 +0200hypercube(hypercube@gateway/vpn/protonvpn/hypercube)
2021-04-12 19:10:53 +0200 <Guest60991> every tutorial I can find explains how to use them with Fix
2021-04-12 19:10:58 +0200 <Guest60991> but not with Mu/Nu
2021-04-12 19:11:21 +0200 <monochrom> Just s/Fix/Mu/
2021-04-12 19:11:25 +0200chenin(bab7251a@186.183.37.26)
2021-04-12 19:12:33 +0200 <Guest60991> different types, though? newtype Mu f = Mu (forall a. (f a → a) → a) vs data Fix f = Fix { project ∷ f (Fix f) }
2021-04-12 19:12:45 +0200 <monochrom> Ah
2021-04-12 19:13:06 +0200merijn(~merijn@83-160-49-249.ip.xs4all.nl)
2021-04-12 19:13:35 +0200heatsink(~heatsink@108-201-191-115.lightspeed.sntcca.sbcglobal.net)
2021-04-12 19:14:52 +0200 <Guest60991> yeah, like, here's a standard example from a tutorial: data ListF a r = Cons a r | Nil
2021-04-12 19:14:52 +0200 <Guest60991> type List a = Mu (ListF a)
2021-04-12 19:14:53 +0200 <Guest60991> type CoList a = Nu (ListF a)
2021-04-12 19:15:02 +0200 <Guest60991> but ... how do I build a value of Mu(ListF a) ?
2021-04-12 19:15:02 +0200jakalx(~jakalx@base.jakalx.net)
2021-04-12 19:15:19 +0200p8m(p8m@gateway/vpn/protonvpn/p8m)
2021-04-12 19:15:46 +0200heatsink_(~heatsink@108-201-191-115.lightspeed.sntcca.sbcglobal.net)
2021-04-12 19:15:57 +0200heatsink(~heatsink@108-201-191-115.lightspeed.sntcca.sbcglobal.net) (Remote host closed the connection)
2021-04-12 19:18:20 +0200geowiesnot(~user@87-89-181-157.abo.bbox.fr)
2021-04-12 19:19:03 +0200frozenErebus(~frozenEre@37.231.244.249)
2021-04-12 19:19:50 +0200chenshen(~chenshen@2620:10d:c090:400::5:f4f2) (Quit: My MacBook Pro has gone to sleep. ZZZzzz…)
2021-04-12 19:21:30 +0200__monty__(~toonn@unaffiliated/toonn)
2021-04-12 19:21:40 +0200ep1ctetus(~epictetus@ip72-194-215-136.sb.sd.cox.net) (Ping timeout: 252 seconds)
2021-04-12 19:23:03 +0200elfets(~elfets@ip-37-201-23-96.hsi13.unitymediagroup.de)
2021-04-12 19:24:18 +0200lordyod(~lordyod@c-67-169-144-132.hsd1.ca.comcast.net)
2021-04-12 19:24:20 +0200jb55(~jb55@gateway/tor-sasl/jb55)
2021-04-12 19:24:42 +0200haskellstudent(~quassel@213-225-6-101.nat.highway.a1.net) (Ping timeout: 265 seconds)
2021-04-12 19:26:58 +0200chenshen(~chenshen@2620:10d:c090:400::5:f4f2)
2021-04-12 19:28:13 +0200superstar64(6ccefa7c@108-206-250-124.lightspeed.miamfl.sbcglobal.net) (Quit: Connection closed)
2021-04-12 19:28:15 +0200chenshen(~chenshen@2620:10d:c090:400::5:f4f2) (Client Quit)
2021-04-12 19:29:35 +0200superstar64(6ccefa7c@108-206-250-124.lightspeed.miamfl.sbcglobal.net)
2021-04-12 19:30:02 +0200kiweun(~kiweun@2607:fea8:2a62:9600:e4bf:b288:514c:1188)
2021-04-12 19:30:24 +0200 <monochrom> Guest60991: https://paste.tomsmeding.com/E1fzjdjK
2021-04-12 19:30:38 +0200cole-h(~cole-h@c-73-48-197-220.hsd1.ca.comcast.net)
2021-04-12 19:30:53 +0200Jajik(xchlup2@gateway/shell/fi.muni.cz/x-addkanorupodyldz) (Ping timeout: 240 seconds)
2021-04-12 19:30:53 +0200xsarnik0(xsarnik@gateway/shell/fi.muni.cz/x-bdqphpqxvzmclymb) (Ping timeout: 240 seconds)
2021-04-12 19:31:29 +0200dmytrish(~mitra@2a02:8084:a82:d900:b81f:59fe:5cfc:b422)
2021-04-12 19:33:04 +0200chenshen(~chenshen@2620:10d:c090:400::5:f4f2)
2021-04-12 19:34:22 +0200kiweun(~kiweun@2607:fea8:2a62:9600:e4bf:b288:514c:1188) (Ping timeout: 258 seconds)
2021-04-12 19:35:32 +0200Jajik(xchlup2@gateway/shell/fi.muni.cz/x-mbreufimrxubbqnd)
2021-04-12 19:35:35 +0200frozenErebus(~frozenEre@37.231.244.249) (Ping timeout: 252 seconds)
2021-04-12 19:36:37 +0200Pickchea(~private@unaffiliated/pickchea)
2021-04-12 19:39:02 +0200 <Guest60991> @monochrom ahhh thanks so much! I've been stuck on this for ages, can't believe it's not spelled out anywhere
2021-04-12 19:39:02 +0200 <lambdabot> Unknown command, try @list
2021-04-12 19:39:11 +0200 <Guest60991> monochrom: ahhh thanks so much! I've been stuck on this for ages, can't believe it's not spelled out anywhere
2021-04-12 19:40:29 +0200idhugo__(~idhugo@87-49-147-45-mobile.dk.customer.tdc.net) (Ping timeout: 268 seconds)
2021-04-12 19:40:31 +0200 <monochrom> :)
2021-04-12 19:43:04 +0200 <monochrom> My (\(Mu e) -> e alg) there is (cata alg). "in_ c = Mu (\alg -> alg (fmap (cata alg) c))" may be more easily reconcilable with the famous commuting diagram of in_ (the initial algebra), cata, and alg (the arbitrary algebra).
2021-04-12 19:46:39 +0200heatsink_(~heatsink@108-201-191-115.lightspeed.sntcca.sbcglobal.net) (Remote host closed the connection)
2021-04-12 19:47:12 +0200merijn(~merijn@83-160-49-249.ip.xs4all.nl) (Ping timeout: 240 seconds)
2021-04-12 19:50:09 +0200jamm_(~jamm@unaffiliated/jamm)
2021-04-12 19:50:28 +0200jamm_(~jamm@unaffiliated/jamm) (Remote host closed the connection)
2021-04-12 19:50:33 +0200Jajik(xchlup2@gateway/shell/fi.muni.cz/x-mbreufimrxubbqnd) (Ping timeout: 240 seconds)
2021-04-12 19:50:39 +0200jamm_(~jamm@unaffiliated/jamm)
2021-04-12 19:52:07 +0200zebrag(~inkbottle@aaubervilliers-654-1-2-51.w83-200.abo.wanadoo.fr) (Quit: Konversation terminated!)
2021-04-12 19:52:18 +0200Jajik(xchlup2@gateway/shell/fi.muni.cz/x-ynaunapgbwfqheim)
2021-04-12 19:52:18 +0200cansis(uid90033@gateway/web/irccloud.com/x-ifsukysjwkgufywd)
2021-04-12 19:52:27 +0200zebrag(~inkbottle@aaubervilliers-654-1-2-51.w83-200.abo.wanadoo.fr)
2021-04-12 19:54:10 +0200 <Guest60991> Aha, yes. And the type makes it quite clear that we're translating a nested expression "f (Mu f)" into "Mu f"
2021-04-12 19:54:51 +0200dmytrish(~mitra@2a02:8084:a82:d900:b81f:59fe:5cfc:b422) (Ping timeout: 260 seconds)
2021-04-12 19:55:01 +0200ddellaco_(~ddellacos@ool-44c73afa.dyn.optonline.net) (Remote host closed the connection)
2021-04-12 19:56:12 +0200ddellaco_(~ddellacos@ool-44c73afa.dyn.optonline.net)
2021-04-12 19:56:15 +0200Aquazi(uid312403@gateway/web/irccloud.com/x-lebgsvzszhbzqzrr) (Quit: Connection closed for inactivity)
2021-04-12 19:56:23 +0200dmytrish(~mitra@37.228.247.154)
2021-04-12 19:57:17 +0200chenin(bab7251a@186.183.37.26) ()
2021-04-12 19:57:32 +0200myShoggoth(~myShoggot@75.164.73.93) (Ping timeout: 260 seconds)
2021-04-12 19:58:35 +0200myShoggoth(~myShoggot@97-120-72-12.ptld.qwest.net)
2021-04-12 19:58:48 +0200kiweun(~kiweun@2607:fea8:2a62:9600:21ac:92a1:db64:4dd2)
2021-04-12 19:59:22 +0200xsarnik0(xsarnik@gateway/shell/fi.muni.cz/x-nisloqezbzpgxfhz)
2021-04-12 20:06:46 +0200ddellaco_(~ddellacos@ool-44c73afa.dyn.optonline.net) (Remote host closed the connection)
2021-04-12 20:08:58 +0200ddellaco_(~ddellacos@ool-44c73afa.dyn.optonline.net)
2021-04-12 20:09:05 +0200idhugo__(~idhugo@87-49-147-45-mobile.dk.customer.tdc.net)
2021-04-12 20:10:42 +0200kritzefitz(~kritzefit@212.86.56.80) (Ping timeout: 268 seconds)
2021-04-12 20:12:50 +0200cole-h(~cole-h@c-73-48-197-220.hsd1.ca.comcast.net) (Quit: Goodbye)
2021-04-12 20:14:08 +0200vicfred(~vicfred@unaffiliated/vicfred)
2021-04-12 20:14:28 +0200jumper149(~jumper149@80.240.31.34)
2021-04-12 20:14:53 +0200lawid(~quassel@ip5b41869c.dynamic.kabel-deutschland.de) (Ping timeout: 240 seconds)
2021-04-12 20:14:56 +0200ddellaco_(~ddellacos@ool-44c73afa.dyn.optonline.net) (Remote host closed the connection)
2021-04-12 20:15:04 +0200cole-h(~cole-h@c-73-48-197-220.hsd1.ca.comcast.net)
2021-04-12 20:15:17 +0200rj(~x@gateway/tor-sasl/rj)
2021-04-12 20:15:26 +0200dyeplexer(~lol@unaffiliated/terpin) (Remote host closed the connection)
2021-04-12 20:16:03 +0200lawid(~quassel@ip5b41869c.dynamic.kabel-deutschland.de)
2021-04-12 20:16:19 +0200frozenErebus(~frozenEre@37.231.244.249)
2021-04-12 20:17:46 +0200takuan(~takuan@178-116-218-225.access.telenet.be) (Ping timeout: 240 seconds)
2021-04-12 20:20:38 +0200haskellstudent(~quassel@213-225-6-101.nat.highway.a1.net)
2021-04-12 20:20:58 +0200ddellaco_(~ddellacos@ool-44c73afa.dyn.optonline.net)
2021-04-12 20:23:04 +0200 <arpl> Today I noticed a resource leak (handles) on my Windows laptop. I have pinpointed it to WinGHCi. Running the same code in GHCi (on both Windows and Linux) works just fine. (When I noticed it I had about 15k of iterations resulting in 150k handles. When I ran it in GHCi with 500k iterations handles remained stable.) Is there any point in looking into this any deeper/further? I hardly ever use WinGHCi and I don´t think many people do ei
2021-04-12 20:23:04 +0200 <arpl> her. Also, the handles are released the moment WinGHCi is closed.
2021-04-12 20:25:35 +0200 <d34df00d> koz_: gave it a shot with massiv — well, it's a bit faster, but not too much faster (think 1.6-1.7 seconds now).
2021-04-12 20:25:39 +0200ddellaco_(~ddellacos@ool-44c73afa.dyn.optonline.net) (Remote host closed the connection)
2021-04-12 20:25:45 +0200 <d34df00d> Although slicing in massiv is indeed way nicer than in repa!
2021-04-12 20:25:58 +0200heatsink(~heatsink@108-201-191-115.lightspeed.sntcca.sbcglobal.net)
2021-04-12 20:26:12 +0200 <koz_> With massiv questions, you could try asking lehins (the author), but he's not here. :(
2021-04-12 20:26:36 +0200idhugo_(~idhugo@87-49-44-84-mobile.dk.customer.tdc.net)
2021-04-12 20:27:32 +0200vv8(~egp_@128-71-69-136.broadband.corbina.ru) (Ping timeout: 265 seconds)
2021-04-12 20:29:28 +0200idhugo__(~idhugo@87-49-147-45-mobile.dk.customer.tdc.net) (Ping timeout: 265 seconds)
2021-04-12 20:29:29 +0200quinn(~quinn@c-73-223-224-163.hsd1.ca.comcast.net) (Ping timeout: 252 seconds)
2021-04-12 20:30:31 +0200nilof(~olofs@90-227-86-119-no542.tbcn.telia.com)
2021-04-12 20:31:07 +0200Guest60991(d5cdf004@213.205.240.4) (Quit: Connection closed)
2021-04-12 20:32:24 +0200jamm_(~jamm@unaffiliated/jamm) (Remote host closed the connection)
2021-04-12 20:32:25 +0200rajivr(uid269651@gateway/web/irccloud.com/x-wqstqfwsmnwqeeor) (Quit: Connection closed for inactivity)
2021-04-12 20:32:37 +0200idhugo__(~idhugo@87-49-44-84-mobile.dk.customer.tdc.net)
2021-04-12 20:33:01 +0200Sorny(~Sornaensi@077213203030.dynamic.telenor.dk)
2021-04-12 20:33:33 +0200BosonCollider(~olofs@90-227-86-119-no542.tbcn.telia.com) (Ping timeout: 240 seconds)
2021-04-12 20:35:22 +0200idhugo_(~idhugo@87-49-44-84-mobile.dk.customer.tdc.net) (Ping timeout: 252 seconds)
2021-04-12 20:36:12 +0200Sorna(~Sornaensi@79.142.232.102.static.router4.bolignet.dk) (Ping timeout: 240 seconds)
2021-04-12 20:37:41 +0200ystael(~ystael@209.6.50.55) (Ping timeout: 240 seconds)
2021-04-12 20:40:22 +0200 <d34df00d> I'l stick around!
2021-04-12 20:40:47 +0200cfricke(~cfricke@unaffiliated/cfricke) (Quit: WeeChat 3.1)
2021-04-12 20:41:36 +0200rj(~x@gateway/tor-sasl/rj) (Quit: rj)
2021-04-12 20:42:07 +0200ddellaco_(~ddellacos@ool-44c73afa.dyn.optonline.net)
2021-04-12 20:44:22 +0200 <koz_> They have a Gitter you could hit up?
2021-04-12 20:44:36 +0200 <koz_> https://gitter.im/haskell-massiv
2021-04-12 20:44:52 +0200quinn(~quinn@c-73-223-224-163.hsd1.ca.comcast.net)
2021-04-12 20:45:18 +0200poscat(~poscat@114.245.106.173) (Ping timeout: 260 seconds)
2021-04-12 20:46:21 +0200Rudd0(~Rudd0@185.189.115.108) (Ping timeout: 252 seconds)
2021-04-12 20:47:01 +0200poscat(~poscat@114.245.106.173)
2021-04-12 20:47:50 +0200APic(apic@apic.name) (Ping timeout: 265 seconds)
2021-04-12 20:48:23 +0200 <d34df00d> Oh, cool!
2021-04-12 20:49:00 +0200kritzefitz(~kritzefit@212.86.56.80)
2021-04-12 20:49:27 +0200hiroaki(~hiroaki@2a02:8108:8c40:2bb8:803f:da32:c6d7:e902) (Ping timeout: 260 seconds)
2021-04-12 20:49:27 +0200hiroaki_(~hiroaki@2a02:8108:8c40:2bb8:803f:da32:c6d7:e902) (Ping timeout: 260 seconds)
2021-04-12 20:52:06 +0200zebrag(~inkbottle@aaubervilliers-654-1-2-51.w83-200.abo.wanadoo.fr) (Quit: Konversation terminated!)
2021-04-12 20:52:28 +0200zebrag(~inkbottle@aaubervilliers-654-1-2-51.w83-200.abo.wanadoo.fr)
2021-04-12 20:58:23 +0200rj(~x@gateway/tor-sasl/rj)
2021-04-12 21:00:16 +0200aerona(~aerona@2600:6c54:4600:f300:469c:10f6:fe62:fc1c)
2021-04-12 21:00:17 +0200geowiesnot(~user@87-89-181-157.abo.bbox.fr) (Ping timeout: 252 seconds)
2021-04-12 21:01:19 +0200jortsnckx
2021-04-12 21:01:25 +0200hiroaki_(~hiroaki@2a02:8108:8c40:2bb8:c438:feb2:e809:229a)
2021-04-12 21:01:35 +0200hiroaki(~hiroaki@2a02:8108:8c40:2bb8:c438:feb2:e809:229a)
2021-04-12 21:05:29 +0200vicfred(~vicfred@unaffiliated/vicfred) (Quit: Leaving)
2021-04-12 21:08:22 +0200idhugo__(~idhugo@87-49-44-84-mobile.dk.customer.tdc.net) (Ping timeout: 252 seconds)
2021-04-12 21:08:40 +0200Jesin(~Jesin@pool-72-66-101-18.washdc.fios.verizon.net) (Ping timeout: 268 seconds)
2021-04-12 21:08:53 +0200raehik(~raehik@cpc95906-rdng25-2-0-cust156.15-3.cable.virginm.net) (Ping timeout: 240 seconds)
2021-04-12 21:09:26 +0200__minoru__shirae(~shiraeesh@109.166.56.189)
2021-04-12 21:09:53 +0200minoru_shiraeesh(~shiraeesh@109.166.57.218) (Ping timeout: 240 seconds)
2021-04-12 21:11:15 +0200raehik(~raehik@cpc95906-rdng25-2-0-cust156.15-3.cable.virginm.net)
2021-04-12 21:11:16 +0200superstar64(6ccefa7c@108-206-250-124.lightspeed.miamfl.sbcglobal.net) (Quit: Connection closed)
2021-04-12 21:14:49 +0200ystael(~ystael@214.sub-174-242-80.myvzw.com)
2021-04-12 21:14:52 +0200kuribas(~user@ptr-25vy0i8r0t0fnc1atgj.18120a2.ip6.access.telenet.be) (Quit: ERC (IRC client for Emacs 26.3))
2021-04-12 21:17:13 +0200geowiesnot(~user@i15-les02-ix2-87-89-181-157.sfr.lns.abo.bbox.fr)
2021-04-12 21:17:26 +0200raehik(~raehik@cpc95906-rdng25-2-0-cust156.15-3.cable.virginm.net) (Ping timeout: 240 seconds)
2021-04-12 21:19:42 +0200fiedlr(~fiedlr@83.148.33.254) (Remote host closed the connection)
2021-04-12 21:19:52 +0200neiluj(~jco@unaffiliated/neiluj) (Remote host closed the connection)
2021-04-12 21:19:53 +0200nullifidian(~nullifidi@unaffiliated/nullifidian)
2021-04-12 21:20:59 +0200supercoven(~Supercove@dsl-hkibng31-58c384-213.dhcp.inet.fi) (Ping timeout: 268 seconds)
2021-04-12 21:22:28 +0200kini(~kini@unaffiliated/kini) (Ping timeout: 258 seconds)
2021-04-12 21:22:40 +0200frozenErebus(~frozenEre@37.231.244.249) (Ping timeout: 252 seconds)
2021-04-12 21:22:49 +0200krkini(~kini@unaffiliated/kini)
2021-04-12 21:23:55 +0200usr25(~usr25@unaffiliated/usr25) (Quit: Leaving)
2021-04-12 21:24:02 +0200HannaM(~quassel@p54849510.dip0.t-ipconnect.de)
2021-04-12 21:26:13 +0200ddellaco_(~ddellacos@ool-44c73afa.dyn.optonline.net) (Remote host closed the connection)
2021-04-12 21:27:16 +0200quinn(~quinn@c-73-223-224-163.hsd1.ca.comcast.net) (Quit: ZNC 1.8.1 - https://znc.in)
2021-04-12 21:27:39 +0200kadobanana(~mud@unaffiliated/kadoban) (Quit: bye)
2021-04-12 21:28:45 +0200rj(~x@gateway/tor-sasl/rj) (Ping timeout: 240 seconds)
2021-04-12 21:29:22 +0200heatsink(~heatsink@108-201-191-115.lightspeed.sntcca.sbcglobal.net) (Remote host closed the connection)
2021-04-12 21:30:01 +0200mikoto-chan(~anass@gateway/tor-sasl/mikoto-chan)
2021-04-12 21:32:12 +0200mud(~mud@unaffiliated/kadoban)
2021-04-12 21:32:48 +0200rj(~x@gateway/tor-sasl/rj)
2021-04-12 21:32:56 +0200quinn(~quinn@c-73-223-224-163.hsd1.ca.comcast.net)
2021-04-12 21:33:47 +0200cuz(~user@38.140.58.234)
2021-04-12 21:33:47 +0200shutdown_-h_now(~arjan@2001:1c06:2d0b:2312:cde1:2c3d:19e0:545) (Ping timeout: 260 seconds)
2021-04-12 21:35:19 +0200hypercube(hypercube@gateway/vpn/protonvpn/hypercube) (Ping timeout: 252 seconds)
2021-04-12 21:37:36 +0200Codaraxis__(~Codaraxis@ip68-5-90-227.oc.oc.cox.net)
2021-04-12 21:39:34 +0200merijn(~merijn@83-160-49-249.ip.xs4all.nl)
2021-04-12 21:39:40 +0200shutdown_-h_now(~arjan@2001:1c06:2d0b:2312:88d8:adcd:b46:7f64)
2021-04-12 21:40:12 +0200geowiesnot(~user@i15-les02-ix2-87-89-181-157.sfr.lns.abo.bbox.fr) (Ping timeout: 260 seconds)
2021-04-12 21:40:49 +0200chenshen(~chenshen@2620:10d:c090:400::5:f4f2) (Quit: My MacBook Pro has gone to sleep. ZZZzzz…)
2021-04-12 21:40:50 +0200heatsink(~heatsink@108-201-191-115.lightspeed.sntcca.sbcglobal.net)
2021-04-12 21:40:53 +0200Codaraxis_(Codaraxis@gateway/vpn/mullvad/codaraxis) (Ping timeout: 240 seconds)
2021-04-12 21:42:27 +0200DavidEichmann(~david@47.27.93.209.dyn.plus.net) (Remote host closed the connection)
2021-04-12 21:43:59 +0200ClaudiusMaximus(~claude@unaffiliated/claudiusmaximus) (Quit: ->)
2021-04-12 21:46:23 +0200ddellaco_(~ddellacos@ool-44c73afa.dyn.optonline.net)
2021-04-12 21:46:57 +0200jathan(~jathan@69.61.93.38)
2021-04-12 21:49:45 +0200falafel(~falafel@pool-96-255-70-50.washdc.fios.verizon.net)
2021-04-12 21:50:13 +0200nullifidian(~nullifidi@unaffiliated/nullifidian) (Quit: Leaving)
2021-04-12 21:50:34 +0200Pickchea(~private@unaffiliated/pickchea) (Quit: Leaving)
2021-04-12 21:50:42 +0200Lord_of_Life_(~Lord@unaffiliated/lord-of-life/x-0885362)
2021-04-12 21:51:50 +0200dpl(~dpl@77-121-78-163.chn.volia.net) (Ping timeout: 268 seconds)
2021-04-12 21:54:18 +0200Lord_of_Life(~Lord@unaffiliated/lord-of-life/x-0885362) (Ping timeout: 268 seconds)
2021-04-12 21:54:18 +0200Lord_of_Life_Lord_of_Life
2021-04-12 21:55:00 +0200chenshen(~chenshen@2620:10d:c090:400::5:f4f2)
2021-04-12 21:56:00 +0200vgtw(~vgtw@gateway/tor-sasl/vgtw) (Quit: ZNC - https://znc.in)
2021-04-12 21:56:15 +0200vgtw(~vgtw@gateway/tor-sasl/vgtw)
2021-04-12 21:56:40 +0200fiedlr(~fiedlr@83.148.33.254)
2021-04-12 21:56:46 +0200chenshen(~chenshen@2620:10d:c090:400::5:f4f2) (Client Quit)
2021-04-12 21:58:41 +0200ddellaco_(~ddellacos@ool-44c73afa.dyn.optonline.net) (Remote host closed the connection)
2021-04-12 21:59:33 +0200finn_elija(~finn_elij@gateway/tor-sasl/finnelija/x-67402716) (Remote host closed the connection)
2021-04-12 21:59:48 +0200ddellaco_(~ddellacos@ool-44c73afa.dyn.optonline.net)
2021-04-12 22:00:32 +0200_ht(~quassel@82-169-194-8.biz.kpn.net) (Remote host closed the connection)
2021-04-12 22:03:11 +0200danvet(~Daniel@2a02:168:57f4:0:efd0:b9e5:5ae6:c2fa) (Ping timeout: 260 seconds)
2021-04-12 22:03:39 +0200finn_elija(~finn_elij@gateway/tor-sasl/finnelija/x-67402716)
2021-04-12 22:05:36 +0200hypercube(hypercube@gateway/vpn/protonvpn/hypercube)
2021-04-12 22:07:42 +0200chenshen(~chenshen@2620:10d:c090:400::5:f4f2)
2021-04-12 22:08:27 +0200falafel(~falafel@pool-96-255-70-50.washdc.fios.verizon.net) (Remote host closed the connection)
2021-04-12 22:08:49 +0200chenshen(~chenshen@2620:10d:c090:400::5:f4f2) (Client Quit)
2021-04-12 22:10:44 +0200Lycurgus(~niemand@98.4.118.65)
2021-04-12 22:13:33 +0200rj(~x@gateway/tor-sasl/rj) (Ping timeout: 240 seconds)
2021-04-12 22:14:01 +0200merijn(~merijn@83-160-49-249.ip.xs4all.nl) (Ping timeout: 268 seconds)
2021-04-12 22:17:30 +0200rj(~x@gateway/tor-sasl/rj)
2021-04-12 22:20:09 +0200liyang(~liyang@90.253.54.54) (Ping timeout: 265 seconds)
2021-04-12 22:22:12 +0200kritzefitz(~kritzefit@212.86.56.80) (Remote host closed the connection)
2021-04-12 22:23:27 +0200araujo(~araujo@unaffiliated/araujo)
2021-04-12 22:25:32 +0200frozenErebus(~frozenEre@37.231.244.249)
2021-04-12 22:25:35 +0200mikoto-chan(~anass@gateway/tor-sasl/mikoto-chan) (Remote host closed the connection)
2021-04-12 22:25:40 +0200Lycurgus(~niemand@98.4.118.65) (Quit: Exeunt)
2021-04-12 22:27:28 +0200geekosaur(930099da@rrcs-147-0-153-218.central.biz.rr.com) (Quit: Connection closed)
2021-04-12 22:27:48 +0200bobey88(~bobey@72-172-218-188.fidnet.com)
2021-04-12 22:28:08 +0200geowiesnot(~user@87-89-181-157.abo.bbox.fr)
2021-04-12 22:32:38 +0200NGravity(csp@gateway/shell/xshellz/x-fqlktjjmzfodnifg) (Excess Flood)
2021-04-12 22:32:50 +0200NGravity(csp@gateway/shell/xshellz/x-wehocrdvpegpsnls)
2021-04-12 22:32:55 +0200jamm_(~jamm@unaffiliated/jamm)
2021-04-12 22:34:57 +0200chenshen(~chenshen@2620:10d:c090:400::5:c73d)
2021-04-12 22:36:12 +0200kiweun(~kiweun@2607:fea8:2a62:9600:21ac:92a1:db64:4dd2) (Remote host closed the connection)
2021-04-12 22:36:33 +0200kiweun(~kiweun@2607:fea8:2a62:9600:21ac:92a1:db64:4dd2)
2021-04-12 22:37:13 +0200jamm_(~jamm@unaffiliated/jamm) (Ping timeout: 258 seconds)
2021-04-12 22:38:03 +0200jumper149(~jumper149@80.240.31.34) (Quit: WeeChat 3.1)
2021-04-12 22:39:00 +0200falafel(~falafel@pool-96-255-70-50.washdc.fios.verizon.net)
2021-04-12 22:43:41 +0200usr25(~usr25@unaffiliated/usr25)
2021-04-12 22:44:31 +0200coot(~coot@37.30.50.130.nat.umts.dynamic.t-mobile.pl) (Quit: coot)
2021-04-12 22:46:53 +0200elfets(~elfets@ip-37-201-23-96.hsi13.unitymediagroup.de) (Ping timeout: 240 seconds)
2021-04-12 22:46:59 +0200jstn(~jstn@89.197.183.98)
2021-04-12 22:47:50 +0200mud(~mud@unaffiliated/kadoban) (Quit: bye)
2021-04-12 22:50:07 +0200fendor__fendor
2021-04-12 22:51:19 +0200LKoen(~LKoen@65.250.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-12 22:52:30 +0200justan0theruser(~justanoth@unaffiliated/justanotheruser)
2021-04-12 22:53:49 +0200bobey88(~bobey@72-172-218-188.fidnet.com) (Quit: The Lounge - https://thelounge.chat)
2021-04-12 22:54:31 +0200justanotheruser(~justanoth@unaffiliated/justanotheruser) (Ping timeout: 260 seconds)
2021-04-12 22:56:21 +0200arpl(~ARPL@84-107-171-239.cable.dynamic.v4.ziggo.nl) ()
2021-04-12 22:56:26 +0200ystael(~ystael@214.sub-174-242-80.myvzw.com) (Read error: Connection reset by peer)
2021-04-12 22:56:31 +0200ram19890(~ram@49.207.130.109) (Ping timeout: 252 seconds)
2021-04-12 22:58:15 +0200freusque(63e6e881@cpef85e4245f305-cmf85e4245f303.cpe.net.cable.rogers.com)
2021-04-12 22:58:58 +0200nbloomf(~nbloomf@76.217.43.73) (Quit: My MacBook has gone to sleep. ZZZzzz…)
2021-04-12 22:59:13 +0200Sorny(~Sornaensi@077213203030.dynamic.telenor.dk) (Ping timeout: 240 seconds)
2021-04-12 23:00:21 +0200rj(~x@gateway/tor-sasl/rj) (Ping timeout: 240 seconds)
2021-04-12 23:00:21 +0200andreas303(~andreas@gateway/tor-sasl/andreas303) (Ping timeout: 240 seconds)
2021-04-12 23:01:03 +0200Chai-T-Rex(~ChaiTRex@gateway/tor-sasl/chaitrex) (Remote host closed the connection)
2021-04-12 23:01:24 +0200Chai-T-Rex(~ChaiTRex@gateway/tor-sasl/chaitrex)
2021-04-12 23:01:28 +0200hiroaki(~hiroaki@2a02:8108:8c40:2bb8:c438:feb2:e809:229a) (Quit: Leaving)
2021-04-12 23:03:16 +0200bobey88(~bobey@72-172-218-188.fidnet.com)
2021-04-12 23:03:18 +0200vv8(~egp_@2.95.117.163)
2021-04-12 23:04:40 +0200rj(~x@gateway/tor-sasl/rj)
2021-04-12 23:04:42 +0200mud(~mud@unaffiliated/kadoban)
2021-04-12 23:04:45 +0200andreas303(~andreas@gateway/tor-sasl/andreas303)
2021-04-12 23:06:20 +0200Jesin(~Jesin@pool-72-66-101-18.washdc.fios.verizon.net)
2021-04-12 23:06:28 +0200bobey88(~bobey@72-172-218-188.fidnet.com) (Client Quit)
2021-04-12 23:07:07 +0200hyperisco(~hyperisco@d192-186-117-226.static.comm.cgocable.net) (Ping timeout: 260 seconds)
2021-04-12 23:11:28 +0200nut(~user@roc37-h01-176-170-197-243.dsl.sta.abo.bbox.fr)
2021-04-12 23:12:05 +0200nut(~user@roc37-h01-176-170-197-243.dsl.sta.abo.bbox.fr) (Remote host closed the connection)
2021-04-12 23:13:13 +0200nut(~user@roc37-h01-176-170-197-243.dsl.sta.abo.bbox.fr)
2021-04-12 23:14:34 +0200bobey88(~bobey@72-172-218-188.fidnet.com)
2021-04-12 23:16:19 +0200frozenErebus(~frozenEre@37.231.244.249) (Ping timeout: 252 seconds)
2021-04-12 23:16:20 +0200Varis(~Tadas@unaffiliated/varis) (Read error: Connection reset by peer)
2021-04-12 23:17:50 +0200jstn(~jstn@89.197.183.98) (Ping timeout: 246 seconds)
2021-04-12 23:27:12 +0200ixlun(~user@109.249.184.235)
2021-04-12 23:28:42 +0200dansho(~dansho@ec2-13-112-45-179.ap-northeast-1.compute.amazonaws.com)
2021-04-12 23:28:52 +0200ixlun(~user@109.249.184.235) (Remote host closed the connection)
2021-04-12 23:30:25 +0200freusque(63e6e881@cpef85e4245f305-cmf85e4245f303.cpe.net.cable.rogers.com) (Quit: Connection closed)
2021-04-12 23:31:01 +0200Gurkenglas(~Gurkengla@unaffiliated/gurkenglas) (Remote host closed the connection)
2021-04-12 23:31:19 +0200Gurkenglas(~Gurkengla@unaffiliated/gurkenglas)
2021-04-12 23:32:40 +0200ystael(~ystael@209.6.50.55)
2021-04-12 23:35:54 +0200cr3(~cr3@192-222-143-195.qc.cable.ebox.net) (Quit: leaving)
2021-04-12 23:40:32 +0200elfets(~elfets@ip-37-201-23-96.hsi13.unitymediagroup.de)
2021-04-12 23:41:56 +0200Feuermagier_(~Feuermagi@2a02:2488:4211:3400:7285:c2ff:fe22:172e) (Read error: Connection reset by peer)
2021-04-12 23:42:09 +0200Feuermagier_(~Feuermagi@2a02:2488:4211:3400:7285:c2ff:fe22:172e)
2021-04-12 23:43:02 +0200 <maralorn> I wonder how this code could leak because the call to concurrently breaks tail call detection:
2021-04-12 23:43:06 +0200Guest35124(~textual@mskresolve-a.mskcc.org) (Ping timeout: 260 seconds)
2021-04-12 23:43:30 +0200maralorn < https://matrix.org/_matrix/media/r0/download/matrix.org/RpMuWoqelieVjAEJGjBTcTNx/message.txt >
2021-04-12 23:44:21 +0200rj(~x@gateway/tor-sasl/rj) (Ping timeout: 240 seconds)
2021-04-12 23:44:59 +0200M9ndres[m](m9ndresmat@gateway/shell/matrix.org/x-dfiqdthtgevvjnld)
2021-04-12 23:45:22 +0200 <monochrom> Is that a fork bomb?
2021-04-12 23:45:33 +0200elfets(~elfets@ip-37-201-23-96.hsi13.unitymediagroup.de) (Ping timeout: 240 seconds)
2021-04-12 23:47:52 +0200falafel(~falafel@pool-96-255-70-50.washdc.fios.verizon.net) (Ping timeout: 252 seconds)
2021-04-12 23:47:58 +0200rj(~x@gateway/tor-sasl/rj)
2021-04-12 23:50:00 +0200 <maralorn> monochrom: What? No. Well if that queue were very full maybe …
2021-04-12 23:50:11 +0200Althar(5e039f1a@94.3.159.26)
2021-04-12 23:51:25 +0200 <maralorn> But it doesn‘t feel very bomby to me seeing that the number of threads grows only linear. But the handler is not supposed to run very long anyways.
2021-04-12 23:51:35 +0200 <Althar> Hello all, anyone with experience using haddock around here? I am trying to figure out if it is possible to exclude a module from the documentation. Specifically, I have an autogen module which I don't really want to feature in the documentation. I have another project setup similarly, with an autogen & somehow the module isn't documented there;
2021-04-12 23:51:36 +0200 <Althar> not sure what the difference could be. Thanks
2021-04-12 23:52:17 +0200 <Althar> specifically, I'm trying to hide my Paths_ autogen module
2021-04-12 23:53:00 +0200 <wz1000> maralorn: there is no 'tail call detection', but it probably leaks because of the way concurrently_ is defined (it retains a reference to the ThreadId of both threads until they both terminate)
2021-04-12 23:54:50 +0200 <maralorn> Now I wonder how I could work around that …
2021-04-12 23:55:07 +0200 <monochrom> concurrently_ waits for both jobs to finish. One such job is a recursive call. This is intentionally non-tail.
2021-04-12 23:55:33 +0200 <wz1000> but you probably don't want to use concurrently_ at all since if there is an exception in the handler it will bring down both threads
2021-04-12 23:56:18 +0200fendor(~fendor@77.119.130.199.wireless.dyn.drei.com) (Remote host closed the connection)
2021-04-12 23:56:49 +0200 <wz1000> tail calls don't mean much in Haskell
2021-04-12 23:57:09 +0200 <monochrom> But it regains the usual imperative meaning in IO.
2021-04-12 23:57:59 +0200srk(~sorki@unaffiliated/srk) (Ping timeout: 260 seconds)
2021-04-12 23:58:12 +0200 <monochrom> main = do { x; y; z } totally exhibits tail-call behaviour with the last statement z.
2021-04-12 23:58:13 +0200 <wz1000> not necessarily. If `concurrently_` was just defined as `concurrently_ left right = right` (as a degenerate example) it wouldn't grow the stack
2021-04-12 23:58:52 +0200 <wz1000> even though the original function still isn't tail call
2021-04-12 23:59:06 +0200 <wz1000> (this is true even with NOINLINE concurrently_)