2021/06/19

2021-06-19 00:03:06 +0200jesus_centaur(~Guest91@cpe-172-89-127-163.socal.res.rr.com) (Quit: Connection closed)
2021-06-19 00:06:31 +0200adanwan(~adanwan@gateway/tor-sasl/adanwan) (Remote host closed the connection)
2021-06-19 00:06:44 +0200adanwan(~adanwan@gateway/tor-sasl/adanwan)
2021-06-19 00:09:51 +0200fef(~thedawn@user/thedawn)
2021-06-19 00:09:53 +0200lavaman(~lavaman@98.38.249.169)
2021-06-19 00:11:01 +0200jmcarthur(~jmcarthur@c-73-29-224-10.hsd1.nj.comcast.net) (Quit: My MacBook Air has gone to sleep. ZZZzzz…)
2021-06-19 00:12:58 +0200jmcarthur(~jmcarthur@c-73-29-224-10.hsd1.nj.comcast.net)
2021-06-19 00:14:32 +0200lavaman(~lavaman@98.38.249.169) (Ping timeout: 268 seconds)
2021-06-19 00:14:40 +0200kayprish(~kayprish@46.240.143.86)
2021-06-19 00:15:13 +0200derelict(~derelict@user/derelict) (Ping timeout: 272 seconds)
2021-06-19 00:15:16 +0200ddellacosta(~ddellacos@86.106.121.100)
2021-06-19 00:16:07 +0200derelict(~derelict@user/derelict)
2021-06-19 00:17:07 +0200__monty__(~toonn@user/toonn) (Quit: leaving)
2021-06-19 00:19:30 +0200ddellacosta(~ddellacos@86.106.121.100) (Ping timeout: 240 seconds)
2021-06-19 00:20:55 +0200ec(~ec@gateway/tor-sasl/ec) (Ping timeout: 252 seconds)
2021-06-19 00:21:10 +0200zangi(~zangi@103.154.230.130) (Read error: Connection reset by peer)
2021-06-19 00:23:06 +0200chrysanthematic(~chrysanth@user/chrysanthematic) (Ping timeout: 264 seconds)
2021-06-19 00:24:32 +0200caubert(~caubert@136.244.111.235) (Quit: WeeChat 3.1)
2021-06-19 00:24:46 +0200caubert(~caubert@136.244.111.235)
2021-06-19 00:25:37 +0200zangi(~zangi@103.154.230.130)
2021-06-19 00:25:37 +0200waleee(~waleee@2001:9b0:216:8200:d457:9189:7843:1dbd)
2021-06-19 00:29:55 +0200HarveyPwca(~HarveyPwc@2601:246:c180:a570:29df:3b00:ad0e:3a06)
2021-06-19 00:30:13 +0200amahl(~amahl@dsl-jklbng12-54fbca-64.dhcp.inet.fi) (Remote host closed the connection)
2021-06-19 00:31:20 +0200yangby(~secret@115.199.97.206) (Ping timeout: 245 seconds)
2021-06-19 00:32:06 +0200fjmorazan(~quassel@user/fjmorazan) (Quit: fjmorazan)
2021-06-19 00:32:29 +0200caubert(~caubert@136.244.111.235) (Quit: WeeChat 3.1)
2021-06-19 00:32:42 +0200waleee(~waleee@2001:9b0:216:8200:d457:9189:7843:1dbd) (Ping timeout: 240 seconds)
2021-06-19 00:32:42 +0200fjmorazan(~quassel@user/fjmorazan)
2021-06-19 00:33:00 +0200caubert(~caubert@136.244.111.235)
2021-06-19 00:34:08 +0200caubert(~caubert@136.244.111.235) (Client Quit)
2021-06-19 00:34:20 +0200caubert(~caubert@136.244.111.235)
2021-06-19 00:34:57 +0200waleee(~waleee@h-98-128-228-119.NA.cust.bahnhof.se)
2021-06-19 00:36:45 +0200merijn(~merijn@83-160-49-249.ip.xs4all.nl)
2021-06-19 00:36:46 +0200jmcarthur(~jmcarthur@c-73-29-224-10.hsd1.nj.comcast.net) (Quit: My MacBook Air has gone to sleep. ZZZzzz…)
2021-06-19 00:38:19 +0200fizbin(~fizbin@c-68-83-100-68.hsd1.nj.comcast.net)
2021-06-19 00:39:54 +0200shapr(~user@pool-100-36-247-68.washdc.fios.verizon.net) (Ping timeout: 264 seconds)
2021-06-19 00:42:54 +0200fizbin(~fizbin@c-68-83-100-68.hsd1.nj.comcast.net) (Ping timeout: 268 seconds)
2021-06-19 00:43:27 +0200chrysanthematic(~chrysanth@user/chrysanthematic)
2021-06-19 00:46:50 +0200ddellacosta(~ddellacos@86.106.121.100)
2021-06-19 00:47:23 +0200elf_fortrez(~elf_fortr@adsl-64-237-239-58.prtc.net) (Quit: Client closed)
2021-06-19 00:47:43 +0200warnz(~warnz@2600:1700:77c0:5610:7144:467c:eae6:37e7)
2021-06-19 00:47:58 +0200elf_fortrez(~elf_fortr@adsl-64-237-239-58.prtc.net)
2021-06-19 00:51:57 +0200ddellacosta(~ddellacos@86.106.121.100) (Ping timeout: 272 seconds)
2021-06-19 00:56:17 +0200lbseale_(~lbseale@user/ep1ctetus) (Read error: Connection reset by peer)
2021-06-19 00:57:18 +0200lavaman(~lavaman@98.38.249.169)
2021-06-19 00:58:30 +0200involans(~alex@cpc92718-cmbg20-2-0-cust157.5-4.cable.virginm.net) (Ping timeout: 264 seconds)
2021-06-19 01:00:07 +0200gehmehgeh(~user@user/gehmehgeh) (Quit: Leaving)
2021-06-19 01:00:14 +0200derelict(~derelict@user/derelict) (Ping timeout: 252 seconds)
2021-06-19 01:00:34 +0200slice(~slice@user/slice) (Quit: o/)
2021-06-19 01:07:21 +0200teaSlurper(~chris@81.96.113.213) (Remote host closed the connection)
2021-06-19 01:07:30 +0200jlamothe(~jlamothe@198.251.57.81) (Ping timeout: 240 seconds)
2021-06-19 01:10:46 +0200merijn(~merijn@83-160-49-249.ip.xs4all.nl) (Ping timeout: 268 seconds)
2021-06-19 01:11:06 +0200jlamothe(~jlamothe@198.251.57.81)
2021-06-19 01:14:22 +0200fabfianda(~fabfianda@net-93-148-121-206.cust.dsl.teletu.it) (Ping timeout: 244 seconds)
2021-06-19 01:15:24 +0200Deide(~Deide@user/deide) (Quit: Seeee yaaaa)
2021-06-19 01:15:37 +0200fabfianda(~fabfianda@mob-5-90-248-17.net.vodafone.it)
2021-06-19 01:19:31 +0200ddellacosta(~ddellacos@86.106.121.100)
2021-06-19 01:20:22 +0200chrysanthematic(~chrysanth@user/chrysanthematic) (Quit: chrysanthematic)
2021-06-19 01:22:38 +0200fabfianda(~fabfianda@mob-5-90-248-17.net.vodafone.it) (Ping timeout: 244 seconds)
2021-06-19 01:23:49 +0200fabfianda(~fabfianda@net-109-116-251-109.cust.vodafonedsl.it)
2021-06-19 01:23:53 +0200ddellacosta(~ddellacos@86.106.121.100) (Ping timeout: 252 seconds)
2021-06-19 01:24:21 +0200v01d4lph4(~v01d4lph4@122.160.65.250)
2021-06-19 01:24:21 +0200v01d4lph4(~v01d4lph4@122.160.65.250) (Changing host)
2021-06-19 01:24:21 +0200v01d4lph4(~v01d4lph4@user/v01d4lph4)
2021-06-19 01:27:33 +0200bitdex(~bitdex@gateway/tor-sasl/bitdex)
2021-06-19 01:28:43 +0200 <cdsmith> Well, I'm stumped. In two places in my code, I have `initClassIfNeeded (Proxy :: Proxy cls)` where cls has kind `(* -> *) -> Constraint`. In one place GHC is fine with it. In the other, it says "Couldn't match kind ‘*’ with ‘(* -> *) -> Constraint’"
2021-06-19 01:28:46 +0200chrysanthematic(~chrysanth@user/chrysanthematic)
2021-06-19 01:28:50 +0200v01d4lph4(~v01d4lph4@user/v01d4lph4) (Ping timeout: 252 seconds)
2021-06-19 01:29:23 +0200derelict(~derelict@user/derelict)
2021-06-19 01:29:46 +0200waleee(~waleee@h-98-128-228-119.NA.cust.bahnhof.se) (Ping timeout: 268 seconds)
2021-06-19 01:30:43 +0200 <cdsmith> Never mind... I figured it out. I needed an explicit forall to use scoped type vars
2021-06-19 01:33:28 +0200azeem(~azeem@dynamic-adsl-78-13-238-239.clienti.tiscali.it) (Read error: Connection reset by peer)
2021-06-19 01:34:06 +0200chrysanthematic(~chrysanth@user/chrysanthematic) (Ping timeout: 268 seconds)
2021-06-19 01:34:39 +0200kayprish(~kayprish@46.240.143.86) (Remote host closed the connection)
2021-06-19 01:35:04 +0200renzhi(~xp@2607:fa49:6501:9500:5589:4dab:9f77:1a6b)
2021-06-19 01:35:24 +0200beka(~beka@104.193.170-244.PUBLIC.monkeybrains.net)
2021-06-19 01:40:41 +0200jmcarthur(~jmcarthur@c-73-29-224-10.hsd1.nj.comcast.net)
2021-06-19 01:41:42 +0200chomwitt(~Pitsikoko@athedsl-20549.home.otenet.gr) (Ping timeout: 264 seconds)
2021-06-19 01:44:34 +0200warnz(~warnz@2600:1700:77c0:5610:7144:467c:eae6:37e7) (Remote host closed the connection)
2021-06-19 01:46:17 +0200hrnz(~ulli@irc.plumbing) (Quit: das ist mir zu bld hier; bb)
2021-06-19 01:46:43 +0200hrnz(~ulli@irc.plumbing)
2021-06-19 01:47:02 +0200dhil(~dhil@195.213.192.47) (Ping timeout: 268 seconds)
2021-06-19 01:47:19 +0200NieDzejkob(~quassel@195.149.98.3) (Read error: Connection reset by peer)
2021-06-19 01:47:48 +0200NieDzejkob(~quassel@195.149.98.3)
2021-06-19 01:51:40 +0200derelict(~derelict@user/derelict) (Quit: WeeChat 3.2)
2021-06-19 01:52:25 +0200zeenk(~zeenk@82.76.113.130) (Quit: Konversation terminated!)
2021-06-19 01:54:25 +0200derelict(~derelict@user/derelict)
2021-06-19 01:58:25 +0200ddellacosta(~ddellacos@86.106.121.100)
2021-06-19 01:59:09 +0200fizbin(~fizbin@c-68-83-100-68.hsd1.nj.comcast.net)
2021-06-19 01:59:40 +0200fizbin(~fizbin@c-68-83-100-68.hsd1.nj.comcast.net) (Remote host closed the connection)
2021-06-19 01:59:55 +0200fizbin(~fizbin@c-68-83-100-68.hsd1.nj.comcast.net)
2021-06-19 01:59:56 +0200shapr(~user@pool-108-28-144-11.washdc.fios.verizon.net)
2021-06-19 02:00:36 +0200oxide(~lambda@user/oxide) (Ping timeout: 268 seconds)
2021-06-19 02:02:10 +0200oxide(~lambda@user/oxide)
2021-06-19 02:03:11 +0200 <qrpnxz> applicative ((->) r) is SKI calculus wtf?!?! amazin!
2021-06-19 02:03:18 +0200ddellacosta(~ddellacos@86.106.121.100) (Ping timeout: 264 seconds)
2021-06-19 02:03:40 +0200jess(~jess@libera/staff/jess)
2021-06-19 02:04:07 +0200 <boxscape> yes it's neat :) though you need newtypes to satisfy haskell's type system and avoid infinite types
2021-06-19 02:04:20 +0200 <boxscape> if you actually want to use it that way
2021-06-19 02:06:33 +0200qwin(~yaaic@ip-96-43-230-90.dsl.netrevolution.com) (Ping timeout: 244 seconds)
2021-06-19 02:09:42 +0200nate1(~nate@156.39.10.47)
2021-06-19 02:16:41 +0200hegstal(~hegstal@2a02:c7f:7604:8a00:f9a1:6a30:5a54:d88f) (Ping timeout: 252 seconds)
2021-06-19 02:19:30 +0200beka(~beka@104.193.170-244.PUBLIC.monkeybrains.net) (Ping timeout: 240 seconds)
2021-06-19 02:21:34 +0200nate1(~nate@156.39.10.47) (Ping timeout: 268 seconds)
2021-06-19 02:21:46 +0200fizbin(~fizbin@c-68-83-100-68.hsd1.nj.comcast.net) (Remote host closed the connection)
2021-06-19 02:24:06 +0200Tuplanolla(~Tuplanoll@91-159-68-239.elisa-laajakaista.fi) (Quit: Leaving.)
2021-06-19 02:28:02 +0200elf_fortrez(~elf_fortr@adsl-64-237-239-58.prtc.net) (Ping timeout: 250 seconds)
2021-06-19 02:35:05 +0200elf_fortrez(~elf_fortr@adsl-64-237-239-58.prtc.net)
2021-06-19 02:36:44 +0200ddellacosta(~ddellacos@86.106.121.100)
2021-06-19 02:37:04 +0200Ariakenom__(~Ariakenom@2001:9b1:efb:fc00:35e3:9001:de86:167f) (Read error: Connection reset by peer)
2021-06-19 02:41:10 +0200ddellacosta(~ddellacos@86.106.121.100) (Ping timeout: 244 seconds)
2021-06-19 02:45:18 +0200betelgeuse(~john2gb@94-225-47-8.access.telenet.be) (Quit: The Lounge - https://thelounge.chat)
2021-06-19 02:49:20 +0200mousey(~skymouse@gateway/tor-sasl/mousey) (Quit: leaving)
2021-06-19 02:50:13 +0200hgolden(~hgolden2@cpe-172-114-84-61.socal.res.rr.com) (Quit: Konversation terminated!)
2021-06-19 02:50:31 +0200bitdex(~bitdex@gateway/tor-sasl/bitdex) (Ping timeout: 252 seconds)
2021-06-19 02:51:39 +0200jmcarthur(~jmcarthur@c-73-29-224-10.hsd1.nj.comcast.net) (Quit: My MacBook Air has gone to sleep. ZZZzzz…)
2021-06-19 02:52:59 +0200zangi(~zangi@103.154.230.130) (Ping timeout: 252 seconds)
2021-06-19 02:54:57 +0200hgolden(~hgolden2@cpe-172-114-84-61.socal.res.rr.com)
2021-06-19 02:56:53 +0200Melvar(~melvar@dslb-088-066-199-085.088.066.pools.vodafone-ip.de)
2021-06-19 02:58:03 +0200bitdex(~bitdex@gateway/tor-sasl/bitdex)
2021-06-19 03:00:22 +0200ukari(~ukari@user/ukari) (Remote host closed the connection)
2021-06-19 03:02:53 +0200machinedgod(~machinedg@24.105.81.50)
2021-06-19 03:07:21 +0200merijn(~merijn@83-160-49-249.ip.xs4all.nl)
2021-06-19 03:08:38 +0200bitdex(~bitdex@gateway/tor-sasl/bitdex) (Remote host closed the connection)
2021-06-19 03:09:32 +0200bitdex(~bitdex@gateway/tor-sasl/bitdex)
2021-06-19 03:13:30 +0200Lycurgus(~juan@cpe-45-46-140-49.buffalo.res.rr.com)
2021-06-19 03:13:36 +0200ddellacosta(~ddellacos@86.106.121.100)
2021-06-19 03:18:15 +0200ddellacosta(~ddellacos@86.106.121.100) (Ping timeout: 272 seconds)
2021-06-19 03:22:37 +0200boxscape(~boxscape@user/boxscape) (Ping timeout: 268 seconds)
2021-06-19 03:31:01 +0200 <sclv> slightly lazy question -- how do I check if a port is open to be _potentially_ bound to without actually binding to it?
2021-06-19 03:31:36 +0200 <sclv> I'm setting up some stuff wrapping ssh tunneling and want the nicest way to probe if I can pick a port to tunnel thru for subsequent commands...
2021-06-19 03:31:51 +0200 <geekosaur> I think the best you can do is parse netstat or lsof output
2021-06-19 03:32:07 +0200 <sclv> uggghhhhh
2021-06-19 03:32:08 +0200 <geekosaur> there's no way to ask if a port is available because that's a race condition waiting to happen
2021-06-19 03:32:17 +0200 <sclv> yeah its a race condition and i want to do it anyway lol
2021-06-19 03:32:43 +0200 <sclv> i guess i can just try to do the binding and then parse the failure message if there is one to decide if i want to retry or not :-/
2021-06-19 03:33:14 +0200 <sclv> like as long as we're just parsing stuff that cli utilities spit out at you
2021-06-19 03:34:23 +0200 <sclv> also could bind to it, then release again i guess...
2021-06-19 03:34:56 +0200 <geekosaur> the usual trick is to pick a port for a service you aren't running locally
2021-06-19 03:35:21 +0200willbush(~user@47.183.200.14) (Quit: ERC (IRC client for Emacs 28.0.50))
2021-06-19 03:38:02 +0200xff0x(~xff0x@port-92-193-217-187.dynamic.as20676.net) (Ping timeout: 268 seconds)
2021-06-19 03:38:24 +0200 <dsal> sclv: can you just tell it to bind to 0 and ask what it got?
2021-06-19 03:38:52 +0200 <geekosaur> no, this is about ssh tunneling, you have to specify
2021-06-19 03:38:53 +0200 <sclv> oh, nice, not a bad idea!
2021-06-19 03:39:02 +0200 <sclv> that works though, lol
2021-06-19 03:39:13 +0200 <geekosaur> if it were C you'd bind to 0 and ask it
2021-06-19 03:39:13 +0200 <sclv> I can bind to 0, see what it gets, then release and just use it
2021-06-19 03:39:24 +0200xff0x(~xff0x@2001:1a81:5339:fe00:d07c:a9be:d34f:e68)
2021-06-19 03:39:26 +0200 <sclv> i mean its a race condition, but one i can live with
2021-06-19 03:39:33 +0200derelict(~derelict@user/derelict) (Ping timeout: 244 seconds)
2021-06-19 03:40:13 +0200 <sclv> (btw the lack of a psshx lib for haskell is a bit of a PITA, but merijn 's posix-pty makes this whole thing livable at least)
2021-06-19 03:40:25 +0200Lycurgus(~juan@cpe-45-46-140-49.buffalo.res.rr.com) (Quit: Exeunt)
2021-06-19 03:40:26 +0200 <geekosaur> hope ssh uses SO_REUSEPORT
2021-06-19 03:41:14 +0200 <sclv> geekosaur: can't i just release the port I get from binding to 0?
2021-06-19 03:41:27 +0200 <sclv> and then try to use it, knowing it was guaranteed free at least recently?
2021-06-19 03:41:29 +0200 <geekosaur> no, because of TIME_WAIT to wait for any delayed packets
2021-06-19 03:41:37 +0200 <sclv> oh right, damb
2021-06-19 03:41:42 +0200 <sclv> networks suck
2021-06-19 03:41:44 +0200merijn(~merijn@83-160-49-249.ip.xs4all.nl) (Ping timeout: 268 seconds)
2021-06-19 03:41:53 +0200 <Melvar> Does anyone know if and where I could submit an issue regarding the GHC manual?
2021-06-19 03:42:00 +0200 <sclv> and uh, i should remember this, since i work on network parsing software lol
2021-06-19 03:42:15 +0200 <geekosaur> Melvar, there's a documentation topic in ghc's gitlab
2021-06-19 03:44:10 +0200 <geekosaur> more precisely a documentation label in their issue tracker
2021-06-19 03:44:22 +0200 <geekosaur> https://gitlab.haskell.org/ghc/ghc/-/issues
2021-06-19 03:44:28 +0200 <Melvar> Thank you.
2021-06-19 03:46:41 +0200 <Boarders> when GHC makes a suggestion for a name in scope close to the one you have provided in its error reporting e.g. if you write like lenght instead of length then does anyone know what algorithm GHC uses for that?
2021-06-19 03:46:55 +0200 <qrpnxz> how come 4.14 traversable (https://hackage.haskell.org/package/base-4.14.1.0/docs/Data-Traversable.html) has a bunch of laws, but 4.15 traversable (https://hackage.haskell.org/package/base-4.15.0.0/docs/Data-Traversable.html) doesn't?
2021-06-19 03:46:58 +0200ddellacosta(~ddellacos@86.106.121.100)
2021-06-19 03:47:18 +0200NieDzejkob(~quassel@195.149.98.3) (Ping timeout: 244 seconds)
2021-06-19 03:51:06 +0200ddellacosta(~ddellacos@86.106.121.100) (Ping timeout: 240 seconds)
2021-06-19 03:51:49 +0200 <geekosaur> qrpnxz, it instead contains a reference to https://hackage.haskell.org/package/base-4.15.0.0/docs/Data-Traversable.html#overview which has a "Laws" section
2021-06-19 03:52:43 +0200 <geekosaur> which, since it has the same base url, is just a rearrangement of the page
2021-06-19 03:55:05 +0200NieDzejkob(~quassel@195.149.98.3)
2021-06-19 03:57:52 +0200 <sclv> Boarders: https://github.com/ghc/ghc/blob/25977ab542a30df4ae71d9699d015bcdd1ab7cfb/compiler/GHC/Utils/Misc.h…
2021-06-19 03:57:54 +0200dajoer(~david@softbank126019120204.bbtec.net)
2021-06-19 04:02:43 +0200MQ-17J(~MQ-17J@d14-69-206-129.try.wideopenwest.com) (Read error: Connection reset by peer)
2021-06-19 04:03:12 +0200MQ-17J(~MQ-17J@8.6.144.186)
2021-06-19 04:03:52 +0200 <Boarders> thanks!
2021-06-19 04:06:27 +0200ddellacosta(~ddellacos@86.106.121.100)
2021-06-19 04:09:27 +0200teaSlurper(~chris@81.96.113.213)
2021-06-19 04:16:14 +0200eggplantade(~Eggplanta@2600:1700:bef1:5e10:c962:f999:5484:e62b) (Ping timeout: 244 seconds)
2021-06-19 04:17:34 +0200 <qrpnxz> lol i scroll over that page and i miss laws right there thanks
2021-06-19 04:17:56 +0200awth13(~user@user/awth13)
2021-06-19 04:17:59 +0200 <qrpnxz> btw, how come it has to be a foldable
2021-06-19 04:18:52 +0200eggplantade(~Eggplanta@2600:1700:bef1:5e10:1543:9aaf:78fa:158)
2021-06-19 04:22:23 +0200fizbin(~fizbin@c-68-83-100-68.hsd1.nj.comcast.net)
2021-06-19 04:26:26 +0200 <qrpnxz> ah you can show all traversable are foldable ok
2021-06-19 04:26:36 +0200vicfred(~vicfred@user/vicfred)
2021-06-19 04:27:02 +0200fizbin(~fizbin@c-68-83-100-68.hsd1.nj.comcast.net) (Ping timeout: 252 seconds)
2021-06-19 04:30:40 +0200derelict(~derelict@user/derelict)
2021-06-19 04:31:05 +0200FinnElija(~finn_elij@user/finn-elija/x-0085643) (Ping timeout: 268 seconds)
2021-06-19 04:32:06 +0200xff0x(~xff0x@2001:1a81:5339:fe00:d07c:a9be:d34f:e68) (Ping timeout: 264 seconds)
2021-06-19 04:32:35 +0200xff0x(~xff0x@2001:1a81:5339:fe00:8365:3158:f169:6936)
2021-06-19 04:32:55 +0200FinnElija(~finn_elij@user/finn-elija/x-0085643)
2021-06-19 04:40:32 +0200elf_fortrez(~elf_fortr@adsl-64-237-239-58.prtc.net) (Quit: Client closed)
2021-06-19 04:48:24 +0200llh(~coke@user/llh)
2021-06-19 04:49:12 +0200lbseale(~lbseale@user/ep1ctetus)
2021-06-19 04:56:43 +0200ukari(~ukari@user/ukari)
2021-06-19 04:58:40 +0200CookE[](~thedawn@user/thedawn)
2021-06-19 04:59:50 +0200ding(~ding@2001:19f0:5:14c2:5400:2ff:fee0:a42c)
2021-06-19 05:00:03 +0200td_(~td@muedsl-82-207-238-207.citykom.de) (Ping timeout: 268 seconds)
2021-06-19 05:00:30 +0200elf_fortrez(~elf_fortr@adsl-64-237-239-58.prtc.net)
2021-06-19 05:01:37 +0200td_(~td@muedsl-82-207-238-182.citykom.de)
2021-06-19 05:01:58 +0200fef(~thedawn@user/thedawn) (Ping timeout: 252 seconds)
2021-06-19 05:02:43 +0200pfurla_(~pfurla@216.131.82.52)
2021-06-19 05:02:44 +0200cheater(~Username@user/cheater) (Ping timeout: 244 seconds)
2021-06-19 05:03:06 +0200cheater(~Username@user/cheater)
2021-06-19 05:05:36 +0200pfurla(~pfurla@ool-182ed2e2.dyn.optonline.net) (Ping timeout: 268 seconds)
2021-06-19 05:06:50 +0200machinedgod(~machinedg@24.105.81.50) (Ping timeout: 268 seconds)
2021-06-19 05:09:06 +0200renzhi(~xp@2607:fa49:6501:9500:5589:4dab:9f77:1a6b) (Ping timeout: 240 seconds)
2021-06-19 05:09:27 +0200MQ-17J(~MQ-17J@8.6.144.186) (Ping timeout: 244 seconds)
2021-06-19 05:09:37 +0200elf_fortrez(~elf_fortr@adsl-64-237-239-58.prtc.net) (Quit: Client closed)
2021-06-19 05:10:57 +0200 <cdsmith> Did GHC 9 change anything regarding overlapping instances? I have some code with two overlapping instances (one annotated with OVERLAPPABLE), and GHC 9 chooses the overlappable one, while all earlier GHC choose the other intended instance.
2021-06-19 05:11:02 +0200derelict(~derelict@user/derelict) (Ping timeout: 252 seconds)
2021-06-19 05:16:48 +0200sheepduck(~sheepduck@cpe98524a8cef7c-cm98524a8cef7a.cpe.net.cable.rogers.com) (Remote host closed the connection)
2021-06-19 05:19:06 +0200sheepduck(~sheepduck@cpe98524a8cef7c-cm98524a8cef7a.cpe.net.cable.rogers.com)
2021-06-19 05:22:01 +0200MQ-17J(~MQ-17J@d14-69-206-129.try.wideopenwest.com)
2021-06-19 05:29:02 +0200oxide(~lambda@user/oxide) (Ping timeout: 268 seconds)
2021-06-19 05:35:05 +0200Lord_of_Life_(~Lord@user/lord-of-life/x-2819915)
2021-06-19 05:35:17 +0200Lord_of_Life(~Lord@user/lord-of-life/x-2819915) (Ping timeout: 244 seconds)
2021-06-19 05:36:18 +0200Lord_of_Life_Lord_of_Life
2021-06-19 05:38:00 +0200merijn(~merijn@83-160-49-249.ip.xs4all.nl)
2021-06-19 05:40:08 +0200 <curiousgay> fix :: (a -> a) -> a
2021-06-19 05:40:08 +0200 <curiousgay> fix f = let x = f x in x
2021-06-19 05:40:24 +0200 <curiousgay> this is an ouch to my brain
2021-06-19 05:40:50 +0200 <curiousgay> fix (\rec x -> if x == 0 then 1 else x * rec (pred x)) 10 == product [1..10]
2021-06-19 05:41:02 +0200ddellacosta(~ddellacos@86.106.121.100) (Remote host closed the connection)
2021-06-19 05:43:25 +0200 <curiousgay> I have no idea why that invocation works, it looks illegal
2021-06-19 05:51:54 +0200 <c_wraith> a can unify with a function
2021-06-19 05:55:19 +0200CookE[](~thedawn@user/thedawn) (Ping timeout: 252 seconds)
2021-06-19 05:55:48 +0200ddellacosta(~ddellacos@86.106.121.100)
2021-06-19 05:59:57 +0200wei2912(~wei2912@112.199.250.21)
2021-06-19 06:00:01 +0200jolly(~jolly@208.180.97.158) (Quit: Connection closed)
2021-06-19 06:01:38 +0200shapr(~user@pool-108-28-144-11.washdc.fios.verizon.net) (Ping timeout: 244 seconds)
2021-06-19 06:02:46 +0200chexum(~chexum@gateway/tor-sasl/chexum) (Remote host closed the connection)
2021-06-19 06:03:00 +0200chexum(~chexum@gateway/tor-sasl/chexum)
2021-06-19 06:05:51 +0200cheater1__(~Username@user/cheater)
2021-06-19 06:06:02 +0200cheater(~Username@user/cheater) (Ping timeout: 268 seconds)
2021-06-19 06:06:03 +0200cheater1__cheater
2021-06-19 06:08:07 +0200 <c_wraith> curiousgay: for instance, in that case, fix :: ((Integer -> Integer) -> (Integer -> Intger)) -> (Integer -> Integer)
2021-06-19 06:08:49 +0200 <c_wraith> curiousgay: but some of those parens are redundant, and it's equivalent to fix :: ((Integer -> Integer) -> Integer -> Integer) -> Integer -> Integer
2021-06-19 06:09:34 +0200 <c_wraith> curiousgay: so the lambda has two arguments, the first of type (Integer -> Integer), the second of type Integer, and returns an Integer
2021-06-19 06:09:54 +0200 <c_wraith> curiousgay: and applying fix to that lambda gives you back a function of type Integer -> Integer
2021-06-19 06:11:15 +0200zaquest(~notzaques@5.128.210.178) (Remote host closed the connection)
2021-06-19 06:12:13 +0200zaquest(~notzaques@5.128.210.178)
2021-06-19 06:12:19 +0200merijn(~merijn@83-160-49-249.ip.xs4all.nl) (Ping timeout: 268 seconds)
2021-06-19 06:12:54 +0200jao(jao@gateway/vpn/protonvpn/jao) (Ping timeout: 264 seconds)
2021-06-19 06:13:08 +0200 <curiousgay> c_wraith: typing here is not enough to understand why it works
2021-06-19 06:13:54 +0200 <curiousgay> `let x = f x in x` is confusing, it looks like a recursion
2021-06-19 06:14:06 +0200 <c_wraith> well, that's why it's not a type error. why it *works* is totally separate
2021-06-19 06:14:31 +0200 <curiousgay> and somehow I need to shorter that one to 4 characters
2021-06-19 06:17:16 +0200 <c_wraith> fix is a combinator for abstracting out general recursion
2021-06-19 06:17:43 +0200 <c_wraith> about the only thing it can't do is polymorphic recursion.
2021-06-19 06:18:15 +0200 <c_wraith> it's generally more of theoretical interest than practical
2021-06-19 06:18:16 +0200lavaman(~lavaman@98.38.249.169) (Remote host closed the connection)
2021-06-19 06:18:30 +0200lavaman(~lavaman@98.38.249.169)
2021-06-19 06:18:38 +0200lavaman(~lavaman@98.38.249.169) (Remote host closed the connection)
2021-06-19 06:19:03 +0200 <c_wraith> though there are certain rare occasions when it can make code look a bit cleaner. but as I said... *rare* occasions
2021-06-19 06:19:17 +0200adanwan(~adanwan@gateway/tor-sasl/adanwan) (Remote host closed the connection)
2021-06-19 06:19:31 +0200adanwan(~adanwan@gateway/tor-sasl/adanwan)
2021-06-19 06:19:53 +0200 <curiousgay> but that recursive definition looks like it never terminates, but at the same time it somehow finds the value of x while not being a logic programming language?
2021-06-19 06:21:07 +0200curiousgaythinks even Prolog can't terminate this one
2021-06-19 06:21:20 +0200 <c_wraith> it's not well-founded. it's general recursion.
2021-06-19 06:21:42 +0200 <c_wraith> it will diverge on all sorts of inputs
2021-06-19 06:21:54 +0200 <c_wraith> > fix (+)
2021-06-19 06:21:56 +0200 <lambdabot> error:
2021-06-19 06:21:56 +0200 <lambdabot> • Occurs check: cannot construct the infinite type: a ~ a -> a
2021-06-19 06:21:56 +0200 <lambdabot> Expected type: (a -> a) -> a -> a
2021-06-19 06:22:01 +0200 <monochrom> Right, termination still depends on what f you choose.
2021-06-19 06:22:18 +0200 <c_wraith> err, that one wasn't even close to well typed.
2021-06-19 06:22:32 +0200 <monochrom> And "x = f x" is meant to express recursion. The whole point of fix.
2021-06-19 06:22:43 +0200chexum_(~chexum@gateway/tor-sasl/chexum)
2021-06-19 06:23:01 +0200 <c_wraith> > fix $ (0:) . scanl (+) 1 -- this is not a case where fix makes things better, but it's a classic.
2021-06-19 06:23:03 +0200 <lambdabot> [0,1,1,2,3,5,8,13,21,34,55,89,144,233,377,610,987,1597,2584,4181,6765,10946,...
2021-06-19 06:23:07 +0200elf_fortrez(~elf_fortr@adsl-64-237-239-58.prtc.net)
2021-06-19 06:26:40 +0200chexum(~chexum@gateway/tor-sasl/chexum) (Ping timeout: 252 seconds)
2021-06-19 06:27:47 +0200aplainzetakind(~johndoe@captainludd.powered.by.lunarbnc.net) (Read error: Connection reset by peer)
2021-06-19 06:28:42 +0200aplainzetakind(~johndoe@captainludd.powered.by.lunarbnc.net)
2021-06-19 06:31:35 +0200ddellacosta(~ddellacos@86.106.121.100) (Remote host closed the connection)
2021-06-19 06:32:06 +0200kmetric(~karthik@49.206.9.195)
2021-06-19 06:34:11 +0200 <qrpnxz> >$< associated the wrong way smh
2021-06-19 06:35:50 +0200 <qrpnxz> lmao that really do give fibbonacci wtf
2021-06-19 06:35:57 +0200 <qrpnxz> *fibonacci
2021-06-19 06:38:43 +0200lavaman(~lavaman@98.38.249.169)
2021-06-19 06:40:58 +0200bitdex(~bitdex@gateway/tor-sasl/bitdex) (Remote host closed the connection)
2021-06-19 06:41:03 +0200ormaaj(~ormaaj@2001:470:69fc:105::35ca)
2021-06-19 06:41:47 +0200bitdex(~bitdex@gateway/tor-sasl/bitdex)
2021-06-19 06:44:34 +0200elf_fortrez(~elf_fortr@adsl-64-237-239-58.prtc.net) (Ping timeout: 250 seconds)
2021-06-19 06:46:11 +0200teaSlurper(~chris@81.96.113.213) (Remote host closed the connection)
2021-06-19 06:46:43 +0200teaSlurper(~chris@81.96.113.213)
2021-06-19 06:51:40 +0200wwalker(~wwalker@platinum.solid-constructs.com) ()
2021-06-19 06:51:40 +0200teaSlurper(~chris@81.96.113.213) (Ping timeout: 268 seconds)
2021-06-19 06:53:30 +0200Feuermagier_(~Feuermagi@154.28.188.168)
2021-06-19 06:56:43 +0200Feuermagier(~Feuermagi@user/feuermagier) (Ping timeout: 268 seconds)
2021-06-19 07:07:38 +0200slowButPresent(~slowButPr@user/slowbutpresent) (Quit: leaving)
2021-06-19 07:07:50 +0200ddellacosta(~ddellacos@86.106.121.100)
2021-06-19 07:09:13 +0200berberman_(~berberman@user/berberman)
2021-06-19 07:09:18 +0200berberman(~berberman@user/berberman) (Ping timeout: 264 seconds)
2021-06-19 07:12:35 +0200ddellacosta(~ddellacos@86.106.121.100) (Ping timeout: 272 seconds)
2021-06-19 07:18:29 +0200Guest9(~Guest9@103.250.137.30)
2021-06-19 07:19:20 +0200AgentM(~agentm@pool-162-83-130-212.nycmny.fios.verizon.net)
2021-06-19 07:21:21 +0200takuan(~takuan@178-116-218-225.access.telenet.be)
2021-06-19 07:33:36 +0200bontaq(~user@ool-18e47f8d.dyn.optonline.net) (Ping timeout: 268 seconds)
2021-06-19 07:33:38 +0200fef(~thedawn@user/thedawn)
2021-06-19 07:34:31 +0200chomwitt(~Pitsikoko@2a02:587:dc02:b00:98b0:cd42:bd6f:8295)
2021-06-19 07:37:14 +0200trent(~trent@2001:8003:340d:d00:b2de:b98:7a93:b0ea)
2021-06-19 07:41:02 +0200cercerilla(~rebecca@024-178-254-009.res.spectrum.com)
2021-06-19 07:41:30 +0200ddellacosta(~ddellacos@86.106.121.100)
2021-06-19 07:43:23 +0200wroathe(~wroathe@c-68-54-25-135.hsd1.mn.comcast.net) (Ping timeout: 252 seconds)
2021-06-19 07:45:56 +0200ddellacosta(~ddellacos@86.106.121.100) (Ping timeout: 268 seconds)
2021-06-19 07:51:32 +0200wroathe(~wroathe@c-68-54-25-135.hsd1.mn.comcast.net)
2021-06-19 07:55:09 +0200aplainzetakind(~johndoe@captainludd.powered.by.lunarbnc.net) (Quit: Free ZNC ~ Powered by LunarBNC: https://LunarBNC.net)
2021-06-19 07:55:18 +0200aplainzetakind(~johndoe@captainludd.powered.by.lunarbnc.net)
2021-06-19 07:55:36 +0200arahael(~arahael@203-206-95-53.tpgi.com.au) (Ping timeout: 272 seconds)
2021-06-19 07:55:40 +0200arahael1(~arahael@120.88.166.123)
2021-06-19 07:56:42 +0200arahael1Arahael
2021-06-19 07:58:23 +0200wroathe(~wroathe@c-68-54-25-135.hsd1.mn.comcast.net) (Ping timeout: 268 seconds)
2021-06-19 07:59:35 +0200hololeap(hololeap@user/hololeap) (Quit: Bye)
2021-06-19 08:02:58 +0200AgentM(~agentm@pool-162-83-130-212.nycmny.fios.verizon.net) (Quit: Leaving.)
2021-06-19 08:04:07 +0200hololeap(hololeap@user/hololeap)
2021-06-19 08:06:18 +0200trent(~trent@2001:8003:340d:d00:b2de:b98:7a93:b0ea) (Ping timeout: 264 seconds)
2021-06-19 08:06:39 +0200Scotty_Trees(~Scotty_Tr@162-234-179-169.lightspeed.brhmal.sbcglobal.net) (Quit: Leaving)
2021-06-19 08:08:36 +0200merijn(~merijn@83-160-49-249.ip.xs4all.nl)
2021-06-19 08:15:14 +0200ddellacosta(~ddellacos@86.106.121.100)
2021-06-19 08:15:17 +0200wroathe(~wroathe@c-68-54-25-135.hsd1.mn.comcast.net)
2021-06-19 08:19:16 +0200Bartosz(~textual@24.35.90.211)
2021-06-19 08:19:32 +0200benin0369(~benin@183.82.205.58)
2021-06-19 08:19:51 +0200wroathe(~wroathe@c-68-54-25-135.hsd1.mn.comcast.net) (Ping timeout: 268 seconds)
2021-06-19 08:19:58 +0200ddellacosta(~ddellacos@86.106.121.100) (Ping timeout: 268 seconds)
2021-06-19 08:24:35 +0200 <dajoer> exit
2021-06-19 08:24:38 +0200dajoer(~david@softbank126019120204.bbtec.net) (Quit: leaving)
2021-06-19 08:24:44 +0200azeem(~azeem@dynamic-adsl-78-13-238-239.clienti.tiscali.it)
2021-06-19 08:26:38 +0200mikoto-chan(~mikoto-ch@ip-213-49-189-31.dsl.scarlet.be)
2021-06-19 08:30:25 +0200fef(~thedawn@user/thedawn) (Ping timeout: 252 seconds)
2021-06-19 08:31:43 +0200zaquest(~notzaques@5.128.210.178) (Read error: Connection reset by peer)
2021-06-19 08:34:06 +0200qbt(~edun@user/edun)
2021-06-19 08:35:54 +0200tromp(~textual@dhcp-077-249-230-040.chello.nl)
2021-06-19 08:36:49 +0200sheepduck(~sheepduck@cpe98524a8cef7c-cm98524a8cef7a.cpe.net.cable.rogers.com) (Remote host closed the connection)
2021-06-19 08:39:34 +0200sheepduck(~sheepduck@cpe98524a8cef7c-cm98524a8cef7a.cpe.net.cable.rogers.com)
2021-06-19 08:42:40 +0200merijn(~merijn@83-160-49-249.ip.xs4all.nl) (Ping timeout: 268 seconds)
2021-06-19 08:45:09 +0200sheepduck(~sheepduck@cpe98524a8cef7c-cm98524a8cef7a.cpe.net.cable.rogers.com) (Remote host closed the connection)
2021-06-19 08:45:39 +0200qoelet(~kumo@139.180.144.166)
2021-06-19 08:47:54 +0200ddellacosta(~ddellacos@86.106.121.100)
2021-06-19 08:48:12 +0200wroathe(~wroathe@c-68-54-25-135.hsd1.mn.comcast.net)
2021-06-19 08:49:05 +0200amahl(~amahl@dsl-jklbng12-54fbca-64.dhcp.inet.fi)
2021-06-19 08:49:12 +0200zaquest(~notzaques@5.128.210.178)
2021-06-19 08:52:18 +0200wroathe(~wroathe@c-68-54-25-135.hsd1.mn.comcast.net) (Ping timeout: 240 seconds)
2021-06-19 08:52:32 +0200ddellacosta(~ddellacos@86.106.121.100) (Ping timeout: 268 seconds)
2021-06-19 08:52:41 +0200fendor_(~fendor@77.119.131.188.wireless.dyn.drei.com) (Ping timeout: 252 seconds)
2021-06-19 09:01:35 +0200gehmehgeh(~user@user/gehmehgeh)
2021-06-19 09:02:51 +0200Bartosz(~textual@24.35.90.211) (Quit: My MacBook has gone to sleep. ZZZzzz…)
2021-06-19 09:04:15 +0200voldial(~user@user/voldial) (Ping timeout: 272 seconds)
2021-06-19 09:08:48 +0200lavaman(~lavaman@98.38.249.169) (Remote host closed the connection)
2021-06-19 09:08:58 +0200trent(~trent@2001:8003:340d:d00:b2de:b98:7a93:b0ea)
2021-06-19 09:10:50 +0200delYsid(~user@62-178-101-151.cable.dynamic.surfer.at)
2021-06-19 09:11:11 +0200fef(~thedawn@user/thedawn)
2021-06-19 09:12:05 +0200CookE[](~thedawn@user/thedawn)
2021-06-19 09:14:03 +0200 <delYsid> Hmm, I like package.yaml and I find it quite ugly to check autogenerated foo.cabal. I guess I am quite alone on that one?
2021-06-19 09:14:03 +0200jim`(~user@host-79-78-246-49.static.as9105.net) (Read error: Connection reset by peer)
2021-06-19 09:14:21 +0200 <delYsid> s/check/check in/
2021-06-19 09:15:27 +0200ukari(~ukari@user/ukari) (Remote host closed the connection)
2021-06-19 09:15:59 +0200ukari(~ukari@user/ukari)
2021-06-19 09:16:04 +0200fef(~thedawn@user/thedawn) (Ping timeout: 252 seconds)
2021-06-19 09:18:12 +0200Bartosz(~textual@24.35.90.211)
2021-06-19 09:22:31 +0200ddellacosta(~ddellacos@86.106.121.100)
2021-06-19 09:22:46 +0200arjun(~user@user/arjun)
2021-06-19 09:26:13 +0200 <sm[m]> delYsid: I also use it except in small packages
2021-06-19 09:27:20 +0200ddellacosta(~ddellacos@86.106.121.100) (Ping timeout: 252 seconds)
2021-06-19 09:29:30 +0200arjun(~user@user/arjun) (Remote host closed the connection)
2021-06-19 09:30:16 +0200neceve(~quassel@2a02:c7f:607e:d600:a95a:ecd2:e57a:3130)
2021-06-19 09:30:47 +0200llh(~coke@user/llh) (Ping timeout: 268 seconds)
2021-06-19 09:31:10 +0200ukari(~ukari@user/ukari) (Remote host closed the connection)
2021-06-19 09:31:11 +0200 <delYsid> sm[m]: You are using package.yaml or you check in your generated .cabal?
2021-06-19 09:32:03 +0200ukari(~ukari@user/ukari)
2021-06-19 09:32:26 +0200Guest9(~Guest9@103.250.137.30) (Ping timeout: 244 seconds)
2021-06-19 09:34:14 +0200 <sm[m]> delYsid: both. Usually it's recommended to check it in for non stack users
2021-06-19 09:35:06 +0200trent(~trent@2001:8003:340d:d00:b2de:b98:7a93:b0ea) (Ping timeout: 264 seconds)
2021-06-19 09:36:21 +0200Bartosz(~textual@24.35.90.211) (Quit: My MacBook has gone to sleep. ZZZzzz…)
2021-06-19 09:38:29 +0200hmmmas(~chenqisu1@183.217.200.246)
2021-06-19 09:38:50 +0200 <delYsid> I can see why that would be useful. I still cringe on checking in generated files....
2021-06-19 09:40:16 +0200CookE[](~thedawn@user/thedawn) (Ping timeout: 252 seconds)
2021-06-19 09:41:06 +0200chomwitt(~Pitsikoko@2a02:587:dc02:b00:98b0:cd42:bd6f:8295) (Ping timeout: 264 seconds)
2021-06-19 09:43:39 +0200delYsid(~user@62-178-101-151.cable.dynamic.surfer.at) (ERC (IRC client for Emacs 27.1.50))
2021-06-19 09:46:19 +0200nilof(~olofs@90-227-86-119-no542.tbcn.telia.com)
2021-06-19 09:50:17 +0200econo(uid147250@user/econo) (Quit: Connection closed for inactivity)
2021-06-19 09:51:07 +0200oxide(~lambda@user/oxide)
2021-06-19 09:54:55 +0200ddellacosta(~ddellacos@86.106.121.100)
2021-06-19 09:56:18 +0200amahl(~amahl@dsl-jklbng12-54fbca-64.dhcp.inet.fi) (Remote host closed the connection)
2021-06-19 09:56:38 +0200Lycurgus(~juan@cpe-45-46-140-49.buffalo.res.rr.com)
2021-06-19 09:57:07 +0200teaSlurper(~chris@81.96.113.213)
2021-06-19 09:59:30 +0200_ht(~quassel@82-169-194-8.biz.kpn.net)
2021-06-19 09:59:42 +0200ddellacosta(~ddellacos@86.106.121.100) (Ping timeout: 264 seconds)
2021-06-19 10:00:26 +0200merijn(~merijn@83-160-49-249.ip.xs4all.nl)
2021-06-19 10:01:22 +0200Pickchea(~private@user/pickchea)
2021-06-19 10:03:09 +0200CookE[](~thedawn@user/thedawn)
2021-06-19 10:05:56 +0200Lycurgus(~juan@cpe-45-46-140-49.buffalo.res.rr.com) (Quit: Exeunt)
2021-06-19 10:06:34 +0200hendursa1(~weechat@user/hendursaga)
2021-06-19 10:09:19 +0200kayprish(~kayprish@46.240.143.86)
2021-06-19 10:09:21 +0200lavaman(~lavaman@98.38.249.169)
2021-06-19 10:09:25 +0200hendursaga(~weechat@user/hendursaga) (Ping timeout: 252 seconds)
2021-06-19 10:10:23 +0200boxscape(~boxscape@user/boxscape)
2021-06-19 10:10:32 +0200chomwitt(~Pitsikoko@athedsl-351576.home.otenet.gr)
2021-06-19 10:12:55 +0200Guest9(~Guest9@103.250.137.30)
2021-06-19 10:13:12 +0200boxscape79(~boxscape@user/boxscape)
2021-06-19 10:14:03 +0200lavaman(~lavaman@98.38.249.169) (Ping timeout: 268 seconds)
2021-06-19 10:14:55 +0200CookE[](~thedawn@user/thedawn) (Ping timeout: 252 seconds)
2021-06-19 10:16:52 +0200boxscape(~boxscape@user/boxscape) (Ping timeout: 244 seconds)
2021-06-19 10:17:42 +0200geekosaur(~geekosaur@xmonad/geekosaur) (Killed (NickServ (GHOST command used by allbery_b)))
2021-06-19 10:17:42 +0200allbery_b(~geekosaur@xmonad/geekosaur)
2021-06-19 10:19:13 +0200martin02(silas@hund.fs.lmu.de)
2021-06-19 10:21:06 +0200notzmv(~zmv@user/notzmv) (Ping timeout: 240 seconds)
2021-06-19 10:22:16 +0200Tuplanolla(~Tuplanoll@91-159-68-239.elisa-laajakaista.fi)
2021-06-19 10:26:42 +0200ddellacosta(~ddellacos@86.106.121.100)
2021-06-19 10:31:08 +0200ddellacosta(~ddellacos@86.106.121.100) (Ping timeout: 252 seconds)
2021-06-19 10:31:19 +0200azeem(~azeem@dynamic-adsl-78-13-238-239.clienti.tiscali.it) (Ping timeout: 268 seconds)
2021-06-19 10:31:28 +0200tzh(~tzh@c-24-21-73-154.hsd1.or.comcast.net) (Quit: zzz)
2021-06-19 10:32:38 +0200azeem(~azeem@176.200.221.31)
2021-06-19 10:35:32 +0200hnOsmium0001(uid453710@id-453710.stonehaven.irccloud.com) (Quit: Connection closed for inactivity)
2021-06-19 10:40:22 +0200boxscape79boxscape
2021-06-19 10:40:34 +0200azeem(~azeem@176.200.221.31) (Read error: Connection reset by peer)
2021-06-19 10:41:10 +0200azeem(~azeem@dynamic-adsl-78-13-238-239.clienti.tiscali.it)
2021-06-19 10:46:50 +0200MoC(~moc@user/moc)
2021-06-19 10:52:34 +0200fendor(~fendor@77.119.131.188.wireless.dyn.drei.com)
2021-06-19 10:55:25 +0200chddr(~Thunderbi@31.148.23.125)
2021-06-19 10:58:19 +0200tromp(~textual@dhcp-077-249-230-040.chello.nl) (Quit: My iMac has gone to sleep. ZZZzzz…)
2021-06-19 11:01:49 +0200tromp(~textual@dhcp-077-249-230-040.chello.nl)
2021-06-19 11:02:30 +0200ddellacosta(~ddellacos@86.106.121.100)
2021-06-19 11:04:30 +0200merijn(~merijn@83-160-49-249.ip.xs4all.nl) (Ping timeout: 268 seconds)
2021-06-19 11:07:33 +0200ddellacosta(~ddellacos@86.106.121.100) (Ping timeout: 272 seconds)
2021-06-19 11:09:07 +0200elf_fortrez(~elf_fortr@adsl-64-237-239-58.prtc.net)
2021-06-19 11:13:16 +0200waleee(~waleee@2001:9b0:216:8200:d457:9189:7843:1dbd)
2021-06-19 11:15:13 +0200 <maerwald[m]> @delYsid:libera.chat: well, under normal circumstances they are not generated
2021-06-19 11:15:13 +0200 <lambdabot> Unknown command, try @list
2021-06-19 11:15:55 +0200Cajun(~Cajun@ip98-163-211-112.no.no.cox.net)
2021-06-19 11:17:26 +0200yoctocell(~yoctocell@h87-96-130-155.cust.a3fiber.se)
2021-06-19 11:17:48 +0200 <Cajun> im trying to install the `accelerate` library and im running into some error with `cabal install` involving versioning. i have no idea how to update GHC to a new version (i have 8.8.4) if thats what it requires. ive also had `repa-devil` fail in a similar way with very similar errors. output: https://paste.tomsmeding.com/V22ZOKfz
2021-06-19 11:20:51 +0200Patrick157(~Patrick@pool-100-36-167-42.washdc.fios.verizon.net) (*.net *.split)
2021-06-19 11:20:51 +0200troydm(~troydm@host-176-37-124-197.b025.la.net.ua) (*.net *.split)
2021-06-19 11:20:51 +0200sudden(~cat@h-98-128-128-173.A351.priv.bahnhof.se) (*.net *.split)
2021-06-19 11:20:51 +0200johnw_(~johnw@76-234-69-149.lightspeed.frokca.sbcglobal.net) (*.net *.split)
2021-06-19 11:21:02 +0200sudden(~cat@h-98-128-128-173.A351.priv.bahnhof.se)
2021-06-19 11:21:13 +0200troydm(~troydm@host-176-37-124-197.b025.la.net.ua)
2021-06-19 11:21:43 +0200 <tomsmeding> maerwald[m]: interesting, they already left the channel on irc, and your mention of their name is a mxid here on irc
2021-06-19 11:22:00 +0200 <maerwald[m]> I'd try `--allow-older=binary`
2021-06-19 11:22:02 +0200 <Axman6> Cajun: how did you install ghc?
2021-06-19 11:22:33 +0200 <Cajun> its been a while but i followed almost exactly what was on the haskell website. so whatever that suggests, it was that
2021-06-19 11:22:34 +0200 <maerwald[m]> Most of the time, version bounds are incorrect anyway, so mighh be worth a shot
2021-06-19 11:23:07 +0200 <tomsmeding> Cajun: are you sure your ghc is 8.8.4? That error looks like it thinks your installed ghc is 8.7.0
2021-06-19 11:23:11 +0200kayprish(~kayprish@46.240.143.86) (Remote host closed the connection)
2021-06-19 11:23:30 +0200 <Cajun> when i do `ghc -V` it says 8.8.4
2021-06-19 11:23:38 +0200 <tomsmeding> (if it isn't then dminuoso help your wisdom regarding cabal solver output syntax is needed)
2021-06-19 11:23:40 +0200johnw(~johnw@76-234-69-149.lightspeed.frokca.sbcglobal.net)
2021-06-19 11:23:47 +0200 <tomsmeding> Cajun: ah
2021-06-19 11:24:03 +0200 <maerwald[m]> `--allow-older=binary`
2021-06-19 11:25:48 +0200Sgeo(~Sgeo@user/sgeo) (Read error: Connection reset by peer)
2021-06-19 11:26:38 +0200 <Cajun> maerwald[m] that didnt seem to work https://paste.tomsmeding.com/H7CyPr8Y
2021-06-19 11:27:18 +0200 <maerwald[m]> Then you need at least ghc 8.10.1
2021-06-19 11:27:33 +0200 <tomsmeding> I'm confused, what package is requiring ghc 8.10 here?
2021-06-19 11:27:49 +0200 <tomsmeding> 'binary' isn't (https://hackage.haskell.org/package/binary-0.8.8.0/binary.cabal) and 'accelerate' also isn't (https://hackage.haskell.org/package/accelerate-1.3.0.0/accelerate.cabal) I believe
2021-06-19 11:28:03 +0200 <maerwald[m]> Binary comes with ghc
2021-06-19 11:28:14 +0200 <maerwald[m]> https://gitlab.haskell.org/ghc/ghc/-/wikis/commentary/libraries/version-history
2021-06-19 11:28:30 +0200 <tomsmeding> ooooh
2021-06-19 11:29:31 +0200 <Cajun> maerwald[m] if i used ghcup to install, does that only require `ghcup install` to update my GHC version?
2021-06-19 11:29:43 +0200 <tomsmeding> so something in the dep tree requires binary-0.8.8.0 apparently?
2021-06-19 11:29:55 +0200 <maerwald[m]> Yes
2021-06-19 11:30:21 +0200 <maerwald[m]> More qualified would be `ghcup install ghc 8.10.5`
2021-06-19 11:30:59 +0200fizbin(~fizbin@c-68-83-100-68.hsd1.nj.comcast.net)
2021-06-19 11:31:37 +0200 <Cajun> after i updated ghcup `ghcup install` automatically selected 8.10.5. once thats finished ill see if that allows me to install accelerate. would i still require `--allow-older=binary`?
2021-06-19 11:32:47 +0200 <tomsmeding> Cajun: should not be necessary
2021-06-19 11:33:32 +0200 <maerwald[m]> You also need to run `ghcup set`
2021-06-19 11:34:07 +0200 <Cajun> yeah i figured that out after seeing `ghc -V` still say 8.8.4. now `cabal install accelerate` appears to be working fine. many thanks!
2021-06-19 11:34:07 +0200MQ-17J(~MQ-17J@d14-69-206-129.try.wideopenwest.com) (Read error: Connection reset by peer)
2021-06-19 11:34:31 +0200MQ-17J(~MQ-17J@8.6.144.186)
2021-06-19 11:35:17 +0200 <tomsmeding> Cajun: I'm going to check if accelerate can be fixed to also install with ghc 8.8.4 :)
2021-06-19 11:35:58 +0200fizbin(~fizbin@c-68-83-100-68.hsd1.nj.comcast.net) (Ping timeout: 268 seconds)
2021-06-19 11:39:49 +0200ddellacosta(~ddellacos@86.106.121.100)
2021-06-19 11:40:28 +0200lavaman(~lavaman@98.38.249.169)
2021-06-19 11:41:53 +0200 <tomsmeding> hm, if I install ghc 8.8.4 in a clean ubuntu container and then run 'cabal install accelerate --lib', it seems to work
2021-06-19 11:42:00 +0200tomsmedingcannot reproduce
2021-06-19 11:42:51 +0200 <Cajun> i have the faintest of clues. all i know is updating GHC appears to have worked
2021-06-19 11:43:26 +0200 <tomsmeding> Cajun: cool! :)
2021-06-19 11:43:45 +0200 <tomsmeding> You might want to consider removing the old(er) GHC from your system now that you're using ghcup
2021-06-19 11:43:58 +0200 <tomsmeding> should you want ghc 8.8.4 again, you can always still install it using ghcup
2021-06-19 11:44:17 +0200ddellacosta(~ddellacos@86.106.121.100) (Ping timeout: 252 seconds)
2021-06-19 11:44:42 +0200Pickchea(~private@user/pickchea) (Ping timeout: 244 seconds)
2021-06-19 11:44:50 +0200ukari(~ukari@user/ukari) (Remote host closed the connection)
2021-06-19 11:44:51 +0200 <maerwald[m]> It's possible that overuse of `--lib` caused a weird ghc environment file
2021-06-19 11:45:02 +0200 <Cajun> ill confirm all my current stuff still builds then delete the older version
2021-06-19 11:45:05 +0200Cajun(~Cajun@ip98-163-211-112.no.no.cox.net) (*.net *.split)
2021-06-19 11:45:05 +0200elf_fortrez(~elf_fortr@adsl-64-237-239-58.prtc.net) (*.net *.split)
2021-06-19 11:45:05 +0200fluffyballoon(~fluffybal@2620:72:0:6480::11fd) (*.net *.split)
2021-06-19 11:45:09 +0200 <maerwald[m]> They are somewhede in ~/.ghc
2021-06-19 11:45:19 +0200Cajun(~Cajun@ip98-163-211-112.no.no.cox.net)
2021-06-19 11:45:19 +0200lavaman(~lavaman@98.38.249.169) (Ping timeout: 268 seconds)
2021-06-19 11:46:00 +0200elf_fortrez(~elf_fortr@adsl-64-237-239-58.prtc.net)
2021-06-19 11:46:14 +0200 <tomsmeding> maerwald[m]: hm, sounds plausible
2021-06-19 11:46:14 +0200ukari(~ukari@user/ukari)
2021-06-19 12:02:22 +0200tromp(~textual@dhcp-077-249-230-040.chello.nl) (Quit: My iMac has gone to sleep. ZZZzzz…)
2021-06-19 12:02:46 +0200juhp(~juhp@128.106.188.66) (Quit: juhp)
2021-06-19 12:03:00 +0200juhp(~juhp@128.106.188.66)
2021-06-19 12:03:54 +0200saolof(~olofs@185.247.71.68)
2021-06-19 12:04:25 +0200amirouche(~amirouche@static.62.204.203.116.clients.your-server.de) (Quit: I will be back!)
2021-06-19 12:04:38 +0200waleee(~waleee@2001:9b0:216:8200:d457:9189:7843:1dbd) (Ping timeout: 252 seconds)
2021-06-19 12:05:20 +0200 <dragestil> Does anyone have a streaming url for zurihac? I can't find it at https://zfoh.ch/zurihac2021/
2021-06-19 12:06:47 +0200waleee(~waleee@h-98-128-228-119.NA.cust.bahnhof.se)
2021-06-19 12:06:53 +0200kuribas(~user@ptr-25vy0i7qpn0l1vseydq.18120a2.ip6.access.telenet.be)
2021-06-19 12:07:30 +0200nilof(~olofs@90-227-86-119-no542.tbcn.telia.com) (Ping timeout: 264 seconds)
2021-06-19 12:09:04 +0200tromp(~textual@dhcp-077-249-230-040.chello.nl)
2021-06-19 12:10:22 +0200 <fendor> dragestil, for the current talk: https://us02web.zoom.us/j/83721486748?pwd=QTV5WXNqWlRhN09sSkRJbWJsRythUT09
2021-06-19 12:11:09 +0200 <dragestil> Thanks fendor, i thought they use youtube...
2021-06-19 12:11:21 +0200 <fendor> dragestil, for some talks they do
2021-06-19 12:11:34 +0200MQ-17J(~MQ-17J@8.6.144.186) (Ping timeout: 244 seconds)
2021-06-19 12:11:37 +0200involans(~alex@cpc92718-cmbg20-2-0-cust157.5-4.cable.virginm.net)
2021-06-19 12:11:56 +0200 <fendor> I guess, when they want interaction, they use zoom? Idk
2021-06-19 12:13:02 +0200 <dragestil> I was looking for a streaming link for non hackathon / interactive talks but could not find any on their site
2021-06-19 12:13:04 +0200fabfianda(~fabfianda@net-109-116-251-109.cust.vodafonedsl.it) (Ping timeout: 268 seconds)
2021-06-19 12:13:25 +0200fabfianda(~fabfianda@mob-5-90-246-42.net.vodafone.it)
2021-06-19 12:14:21 +0200 <dragestil> I guess the links are posted in discord. Thanks anyway
2021-06-19 12:15:33 +0200teaSlurper(~chris@81.96.113.213) (Remote host closed the connection)
2021-06-19 12:17:28 +0200 <boxscape> dragestil originally the plan was to do interactive talks in discord, but there turned out to be a 25 person limit for a room
2021-06-19 12:18:07 +0200gehmehgeh(~user@user/gehmehgeh) (Ping timeout: 252 seconds)
2021-06-19 12:18:42 +0200ddellacosta(~ddellacos@86.106.121.100)
2021-06-19 12:19:00 +0200Guest9(~Guest9@103.250.137.30) (Quit: Connection closed)
2021-06-19 12:19:22 +0200 <dragestil> I see. Not familiar with discord. I guess I'll watch the recording on invidious / youtube when the event is over :)
2021-06-19 12:20:04 +0200 <dragestil> Some talks from yesterday seem to be available already
2021-06-19 12:20:22 +0200involans(~alex@cpc92718-cmbg20-2-0-cust157.5-4.cable.virginm.net) (Ping timeout: 268 seconds)
2021-06-19 12:20:27 +0200teaSlurper(~chris@81.96.113.213)
2021-06-19 12:20:42 +0200gehmehgeh(~user@user/gehmehgeh)
2021-06-19 12:21:56 +0200notzmv(~zmv@user/notzmv)
2021-06-19 12:23:20 +0200ddellacosta(~ddellacos@86.106.121.100) (Ping timeout: 252 seconds)
2021-06-19 12:23:55 +0200teaSlurper(~chris@81.96.113.213) (Remote host closed the connection)
2021-06-19 12:24:35 +0200teaSlurper(~chris@81.96.113.213)
2021-06-19 12:26:38 +0200notzmv(~zmv@user/notzmv) (Ping timeout: 252 seconds)
2021-06-19 12:26:44 +0200 <kuribas> :i zipWithM
2021-06-19 12:26:49 +0200 <kuribas> :t zipWithM
2021-06-19 12:26:50 +0200 <lambdabot> Applicative m => (a -> b -> m c) -> [a] -> [b] -> m [c]
2021-06-19 12:27:52 +0200 <kuribas> should have been zipWithA
2021-06-19 12:27:55 +0200 <kuribas> :t zipWithA
2021-06-19 12:27:57 +0200 <lambdabot> error:
2021-06-19 12:27:57 +0200 <lambdabot> • Variable not in scope: zipWithA
2021-06-19 12:27:57 +0200 <lambdabot> • Perhaps you meant one of these:
2021-06-19 12:28:35 +0200killsushi(~killsushi@user/killsushi) (Quit: Leaving)
2021-06-19 12:29:00 +0200ubert(~Thunderbi@p200300ecdf259d37e6b318fffe838f33.dip0.t-ipconnect.de)
2021-06-19 12:29:03 +0200 <tomsmeding> :t sequence
2021-06-19 12:29:04 +0200 <lambdabot> (Traversable t, Monad m) => t (m a) -> m (t a)
2021-06-19 12:29:05 +0200 <tomsmeding> :t sequenceA
2021-06-19 12:29:06 +0200 <lambdabot> (Traversable t, Applicative f) => t (f a) -> f (t a)
2021-06-19 12:29:47 +0200tomsmedingwonders why 'sequence' isn't just changed to only require Applicative
2021-06-19 12:29:49 +0200chaosite(~chaosite@user/chaosite)
2021-06-19 12:30:16 +0200tomsmedingrealises that that would be a breaking change because it's a class method
2021-06-19 12:34:18 +0200fabfianda(~fabfianda@mob-5-90-246-42.net.vodafone.it) (Ping timeout: 240 seconds)
2021-06-19 12:34:32 +0200fabfianda(~fabfianda@net-109-116-251-109.cust.vodafonedsl.it)
2021-06-19 12:36:51 +0200cheater(~Username@user/cheater) (Ping timeout: 272 seconds)
2021-06-19 12:37:09 +0200cheater(~Username@user/cheater)
2021-06-19 12:37:30 +0200Guest95(~Guest95@202.36.179.107)
2021-06-19 12:37:55 +0200altern(~altern@altern.corbina.com.ua)
2021-06-19 12:40:35 +0200eggplantade(~Eggplanta@2600:1700:bef1:5e10:1543:9aaf:78fa:158) (Remote host closed the connection)
2021-06-19 12:40:58 +0200nilof(~olofs@90-227-86-119-no542.tbcn.telia.com)
2021-06-19 12:41:51 +0200hmmmas(~chenqisu1@183.217.200.246) (Quit: Leaving.)
2021-06-19 12:43:07 +0200 <kuribas> I am missing infix for partially applied functions.
2021-06-19 12:43:23 +0200 <kuribas> like: foo `partially 1` bar
2021-06-19 12:43:50 +0200 <kuribas> or: foo `partially 1` bar `partially 2` fu `partially 3` fuga
2021-06-19 12:44:44 +0200 <kuribas> I guess "partially 1 foo $ partially 2 fu $ partially 3 fuga" is fine :-)
2021-06-19 12:45:08 +0200saolof(~olofs@185.247.71.68) (Ping timeout: 268 seconds)
2021-06-19 12:47:49 +0200Pickchea(~private@user/pickchea)
2021-06-19 12:51:43 +0200 <teaSlurper> hey
2021-06-19 12:51:48 +0200 <boxscape> kuribas foo &partially 1$ bar
2021-06-19 12:52:11 +0200 <boxscape> hey teaSlurper
2021-06-19 12:52:13 +0200 <teaSlurper> how do i refer to a variable name in same file that has an ambiguous name with another namespace in the prelude library
2021-06-19 12:52:16 +0200 <kuribas> boxscape: noice :)
2021-06-19 12:52:27 +0200 <teaSlurper> example
2021-06-19 12:52:28 +0200 <teaSlurper> pi
2021-06-19 12:52:33 +0200 <kuribas> teaSlurper: with a qualified import.
2021-06-19 12:52:57 +0200 <boxscape> import qualified MyLibrary as ML
2021-06-19 12:52:59 +0200 <boxscape> ML.pi
2021-06-19 12:53:21 +0200 <boxscape> or just `import qualified MyLibrary` and then `MyLibrary.pi`
2021-06-19 12:53:23 +0200 <kuribas> teaSlurper: you can import the prelude qualified. That said, try to avoid clashing with prelude...
2021-06-19 12:53:44 +0200 <boxscape> oh wait, defined in the same file
2021-06-19 12:53:58 +0200 <boxscape> teaSlurper what I said would only work if it's in a different file, but what kuribas said works
2021-06-19 12:53:59 +0200 <teaSlurper> in same file ye, 'hiding' keyword?
2021-06-19 12:54:06 +0200 <boxscape> yes, hiding works, too
2021-06-19 12:54:09 +0200 <boxscape> import Prelude hiding (pi)
2021-06-19 12:54:39 +0200 <teaSlurper> thx
2021-06-19 12:54:46 +0200ddellacosta(~ddellacos@86.106.121.100)
2021-06-19 12:54:47 +0200 <teaSlurper> is prelude haskell's standard library?
2021-06-19 12:55:07 +0200 <boxscape> it's the parts of the standard libraries that are imported by default
2021-06-19 12:55:31 +0200 <boxscape> there are other parts of the standard libraries you have to import explicitly
2021-06-19 12:55:39 +0200 <boxscape> like some of the things in Data.List, for example
2021-06-19 12:56:10 +0200 <teaSlurper> i see, thx
2021-06-19 12:59:19 +0200waleee(~waleee@h-98-128-228-119.NA.cust.bahnhof.se) (Ping timeout: 268 seconds)
2021-06-19 12:59:50 +0200ddellacosta(~ddellacos@86.106.121.100) (Ping timeout: 268 seconds)
2021-06-19 13:00:32 +0200merijn(~merijn@83-160-49-249.ip.xs4all.nl)
2021-06-19 13:02:11 +0200xff0x(~xff0x@2001:1a81:5339:fe00:8365:3158:f169:6936) (Ping timeout: 272 seconds)
2021-06-19 13:02:46 +0200xff0x(~xff0x@2001:1a81:5339:fe00:214:efbd:9851:b8b5)
2021-06-19 13:03:41 +0200hmmmas(~chenqisu1@183.217.200.246)
2021-06-19 13:08:59 +0200ubert(~Thunderbi@p200300ecdf259d37e6b318fffe838f33.dip0.t-ipconnect.de) (Ping timeout: 252 seconds)
2021-06-19 13:13:21 +0200tromp(~textual@dhcp-077-249-230-040.chello.nl) (Quit: My iMac has gone to sleep. ZZZzzz…)
2021-06-19 13:14:14 +0200 <boxscape> anyone got any experience with ImpredicativeTypes? I'm wondering how to make this work https://paste.tomsmeding.com/ig2UQ1O0
2021-06-19 13:16:27 +0200chrysanthematic(~chrysanth@user/chrysanthematic)
2021-06-19 13:17:57 +0200adpRCCaLTxuh(~adpRCCaLT@88.155.39.126)
2021-06-19 13:17:57 +0200 <adpRCCaLTxuh> Go bA(k tO FreEn0dE or n0rTH koReA nukeS YOu
2021-06-19 13:17:57 +0200adpRCCaLTxuh(~adpRCCaLT@88.155.39.126) (Client Quit)
2021-06-19 13:18:20 +0200nilof(~olofs@90-227-86-119-no542.tbcn.telia.com) (Ping timeout: 268 seconds)
2021-06-19 13:19:04 +0200 <boxscape> (it's trivial with a newtype but if ImpredicativeTypes works it might be a bit nicer)
2021-06-19 13:20:20 +0200 <nitrix> ) Just closing the paren adpRCCaLTxhh left opened.
2021-06-19 13:20:40 +0200 <boxscape> appreciated
2021-06-19 13:20:41 +0200 <nitrix> Okay I feel better now.
2021-06-19 13:23:06 +0200ubert(~Thunderbi@p200300ecdf259d37e6b318fffe838f33.dip0.t-ipconnect.de)
2021-06-19 13:27:24 +0200hmmmas(~chenqisu1@183.217.200.246) (Quit: Leaving.)
2021-06-19 13:27:39 +0200betelgeuse(~john2gb@94-225-47-8.access.telenet.be)
2021-06-19 13:28:24 +0200ddellacosta(~ddellacos@86.106.121.100)
2021-06-19 13:28:52 +0200ubert(~Thunderbi@p200300ecdf259d37e6b318fffe838f33.dip0.t-ipconnect.de) (Ping timeout: 244 seconds)
2021-06-19 13:30:09 +0200tromp(~textual@dhcp-077-249-230-040.chello.nl)
2021-06-19 13:32:21 +0200hegstal(~hegstal@2a02:c7f:7604:8a00:1e4a:1cd5:4170:e3e0)
2021-06-19 13:32:50 +0200ddellacosta(~ddellacos@86.106.121.100) (Ping timeout: 252 seconds)
2021-06-19 13:33:56 +0200hmmmas(~chenqisu1@183.217.200.246)
2021-06-19 13:34:17 +0200hmmmas(~chenqisu1@183.217.200.246) (Client Quit)
2021-06-19 13:35:05 +0200merijn(~merijn@83-160-49-249.ip.xs4all.nl) (Ping timeout: 268 seconds)
2021-06-19 13:35:07 +0200 <teaSlurper> is there a function pattern for "match once first"
2021-06-19 13:35:11 +0200 <teaSlurper> or do this first
2021-06-19 13:36:29 +0200nilof(~olofs@90-227-86-119-no542.tbcn.telia.com)
2021-06-19 13:36:42 +0200Pickchea(~private@user/pickchea) (Ping timeout: 240 seconds)
2021-06-19 13:37:10 +0200 <boxscape> teaSlurper hmm, it's not really clear to me what you're asking
2021-06-19 13:37:29 +0200 <boxscape> maybe an example would help
2021-06-19 13:37:46 +0200 <teaSlurper> i'm generating a bunch of fractionals
2021-06-19 13:37:51 +0200 <teaSlurper> going down from n
2021-06-19 13:38:14 +0200trent(~trent@2001:8003:340d:d00:b2de:b98:7a93:b0ea)
2021-06-19 13:38:17 +0200 <teaSlurper> so n = 4, [1/4, 1/3, 1/2, 1/1]
2021-06-19 13:38:42 +0200favonia(~favonia@user/favonia) (Ping timeout: 264 seconds)
2021-06-19 13:40:36 +0200 <teaSlurper> i solved the problem is cool, but in a different way
2021-06-19 13:41:33 +0200eggplantade(~Eggplanta@2600:1700:bef1:5e10:1543:9aaf:78fa:158)
2021-06-19 13:41:53 +0200lavaman(~lavaman@98.38.249.169)
2021-06-19 13:41:54 +0200geekosaur(~geekosaur@xmonad/geekosaur)
2021-06-19 13:43:38 +0200allbery_b(~geekosaur@xmonad/geekosaur) (Ping timeout: 252 seconds)
2021-06-19 13:45:13 +0200Guest95(~Guest95@202.36.179.107) (Ping timeout: 246 seconds)
2021-06-19 13:45:54 +0200eggplantade(~Eggplanta@2600:1700:bef1:5e10:1543:9aaf:78fa:158) (Ping timeout: 240 seconds)
2021-06-19 13:46:24 +0200lavaman(~lavaman@98.38.249.169) (Ping timeout: 252 seconds)
2021-06-19 13:48:43 +0200 <kuribas> What's your opinion on testing on the REPL vs unit tests?
2021-06-19 13:48:44 +0200azeem(~azeem@dynamic-adsl-78-13-238-239.clienti.tiscali.it) (Read error: Connection reset by peer)
2021-06-19 13:48:56 +0200azeem(~azeem@dynamic-adsl-78-13-238-239.clienti.tiscali.it)
2021-06-19 13:49:17 +0200 <kuribas> I can see an advantage for unit tests (and property tests) when you have complicated algorithms or business logic, that may still evolve.
2021-06-19 13:49:36 +0200 <kuribas> However is there a point in unit testing simple functions which do one thing, and can easily be tested on the REPL?
2021-06-19 13:50:10 +0200 <teaSlurper> i don't know anything about unit-testing with haskell, but the idea is all your tests are automated
2021-06-19 13:50:18 +0200 <teaSlurper> in general
2021-06-19 13:50:26 +0200 <Morrow> You can have your cake and eat it too
2021-06-19 13:50:26 +0200 <kuribas> well, you need to write them first :)
2021-06-19 13:50:43 +0200 <Morrow> You can load up your test file in the REPL
2021-06-19 13:50:49 +0200 <teaSlurper> unit testing acts as a form of documentation in a way aswell
2021-06-19 13:51:12 +0200 <teaSlurper> and keeps a history of edge cases you've tested
2021-06-19 13:51:30 +0200 <kuribas> they also take up time in CICD if you have a lot of them.
2021-06-19 13:51:31 +0200 <teaSlurper> and catches bugs in regressions
2021-06-19 13:51:44 +0200 <tomsmeding> kuribas: sounds to me like a lack of ergonomics in specifying tests; if writing the unit test would be just as easy as opening a repl and entering it there, then you wouldn't ask the question
2021-06-19 13:51:47 +0200 <tomsmeding> perhaps doctests?
2021-06-19 13:51:47 +0200 <Morrow> Especially with frameworks that have test caching
2021-06-19 13:52:03 +0200tomsmedingisn't sure how ergonomic the tooling around doctests is, but it exists
2021-06-19 13:52:09 +0200 <kuribas> tomsmeding: doctests are nice :)
2021-06-19 13:52:31 +0200 <kuribas> tomsmeding: tests are also code, which needs to be maintained.
2021-06-19 13:52:58 +0200 <tomsmeding> also true
2021-06-19 13:53:06 +0200 <teaSlurper> with repl you can only test if your code works now, oppose to against future changes which is what unit tests are for more than anything perhaps
2021-06-19 13:53:34 +0200hmmmas(~chenqisu1@183.217.200.246)
2021-06-19 13:54:05 +0200 <teaSlurper> if 1 function stops working from a future change it could break 5 other unit tests
2021-06-19 13:54:31 +0200 <teaSlurper> make em all green, then you know with more confidence your thing as a whole works
2021-06-19 13:54:53 +0200 <kuribas> tomsmeding: I find unit tests in haskell quite ergonomic.
2021-06-19 13:55:59 +0200 <tomsmeding> don't get me wrong, I'm quite bad at getting myself to write tests in the first place for anything but the most complicated code
2021-06-19 13:56:40 +0200Pickchea(~private@user/pickchea)
2021-06-19 13:57:17 +0200 <kuribas> I don't think code quality is a measure of number of unit tests.
2021-06-19 13:57:34 +0200 <kuribas> We hardly have any unit tests in our code, but the quality is quite high.
2021-06-19 13:57:58 +0200 <kuribas> In another company we had more tests than code :) The code was aweful.
2021-06-19 13:58:32 +0200 <kuribas> Although in one project (our REST API) we now have a large amount of tests.
2021-06-19 13:58:43 +0200 <hpc> sometimes how hard it is to write tests is the test itself
2021-06-19 13:58:58 +0200 <hpc> as soon as it becomes hard to test something, you know it has modularity problems
2021-06-19 13:59:00 +0200 <kuribas> I feel I could write the same code with 1/10 the tests, and more confidence by doing it in haskell (vs clojure).
2021-06-19 13:59:38 +0200ddellacosta(~ddellacos@86.106.121.100)
2021-06-19 13:59:41 +0200 <kuribas> hpc: certainly
2021-06-19 13:59:48 +0200 <kuribas> but it can be easy and still tedious :)
2021-06-19 13:59:51 +0200 <kuribas> to find all edge cases.
2021-06-19 14:00:23 +0200fizbin(~fizbin@c-68-83-100-68.hsd1.nj.comcast.net)
2021-06-19 14:00:46 +0200 <kuribas> maybe property tests are better in that case;..
2021-06-19 14:02:25 +0200 <tomsmeding> property tests take away one dimension of "finding edge cases", but sometimes there are more such dimensions
2021-06-19 14:02:56 +0200 <hpc> they save you a lot of "basic" unit tests
2021-06-19 14:03:06 +0200 <tomsmeding> which can sometimes also be covered with more generic generators, but not always
2021-06-19 14:03:07 +0200 <hpc> you only have to write out the tricky cases by hand
2021-06-19 14:04:00 +0200ddellacosta(~ddellacos@86.106.121.100) (Ping timeout: 252 seconds)
2021-06-19 14:04:13 +0200 <tomsmeding> I recently wrote tests for a tricky program transformation; property testing allowed me to leave selecting _inputs_ for the transformed programs to the randomiser, but generating random _programs_ is hard enough that I resolved to writing those by hand
2021-06-19 14:04:43 +0200fizbin(~fizbin@c-68-83-100-68.hsd1.nj.comcast.net) (Ping timeout: 265 seconds)
2021-06-19 14:05:37 +0200merijn(~merijn@83-160-49-249.ip.xs4all.nl)
2021-06-19 14:09:13 +0200 <tomsmeding> (I did try generating programs for a bit, but then rediscovered how that's a hard problem :p)
2021-06-19 14:10:53 +0200merijn(~merijn@83-160-49-249.ip.xs4all.nl) (Ping timeout: 258 seconds)
2021-06-19 14:13:13 +0200jneira_(~jneira_@131.red-79-155-1.dynamicip.rima-tde.net) (Ping timeout: 268 seconds)
2021-06-19 14:13:26 +0200slowButPresent(~slowButPr@user/slowbutpresent)
2021-06-19 14:19:49 +0200jmcarthur(~jmcarthur@c-73-29-224-10.hsd1.nj.comcast.net)
2021-06-19 14:23:43 +0200notzmv(~zmv@user/notzmv)
2021-06-19 14:26:49 +0200hmmmas(~chenqisu1@183.217.200.246) (Quit: Leaving.)
2021-06-19 14:27:27 +0200wei2912(~wei2912@112.199.250.21) (Quit: Lost terminal)
2021-06-19 14:29:22 +0200nilof(~olofs@90-227-86-119-no542.tbcn.telia.com) (Ping timeout: 265 seconds)
2021-06-19 14:32:44 +0200ddellacosta(~ddellacos@86.106.121.100)
2021-06-19 14:34:54 +0200fizbin(~fizbin@c-68-83-100-68.hsd1.nj.comcast.net)
2021-06-19 14:37:20 +0200ddellacosta(~ddellacos@86.106.121.100) (Ping timeout: 258 seconds)
2021-06-19 14:38:18 +0200mpt(~tom@2a02:908:1862:49e0::2)
2021-06-19 14:39:12 +0200fizbin(~fizbin@c-68-83-100-68.hsd1.nj.comcast.net) (Ping timeout: 252 seconds)
2021-06-19 14:49:02 +0200derelict(~derelict@user/derelict)
2021-06-19 14:49:29 +0200Hanicef(~gustaf@81-229-9-108-no92.tbcn.telia.com)
2021-06-19 14:51:05 +0200mpt(~tom@2a02:908:1862:49e0::2) (Ping timeout: 265 seconds)
2021-06-19 14:58:47 +0200elf_fortrez(~elf_fortr@adsl-64-237-239-58.prtc.net) (Quit: Client closed)
2021-06-19 15:00:52 +0200chrysanthematic(~chrysanth@user/chrysanthematic) (Quit: chrysanthematic)
2021-06-19 15:01:12 +0200jmcarthur(~jmcarthur@c-73-29-224-10.hsd1.nj.comcast.net) (Quit: My MacBook Air has gone to sleep. ZZZzzz…)
2021-06-19 15:01:34 +0200 <maerwald> Property tests are only as good as your generators and writing good generators for non trivial data is very hard
2021-06-19 15:02:29 +0200 <maerwald> I prefer unit tests, unless the data is simple or I have a genius idea about a good generator
2021-06-19 15:06:44 +0200 <Rembane> I did my master thesis on generating random programs using QuickCheck and I can vouch that it is a hard problem. Pałka et al has a good paper on it though.
2021-06-19 15:08:00 +0200trent(~trent@2001:8003:340d:d00:b2de:b98:7a93:b0ea) (Ping timeout: 265 seconds)
2021-06-19 15:08:29 +0200ddellacosta(~ddellacos@86.106.121.100)
2021-06-19 15:08:37 +0200mpt(~tom@2a02:908:1862:49e0::2)
2021-06-19 15:09:07 +0200hegstal(~hegstal@2a02:c7f:7604:8a00:1e4a:1cd5:4170:e3e0) (Remote host closed the connection)
2021-06-19 15:09:22 +0200ubert(~Thunderbi@p200300ecdf259d37e6b318fffe838f33.dip0.t-ipconnect.de)
2021-06-19 15:11:31 +0200favonia(~favonia@user/favonia)
2021-06-19 15:12:41 +0200 <tomsmeding> Rembane: this one? https://dl.acm.org/doi/10.1145/1982595.1982615
2021-06-19 15:12:59 +0200 <Rembane> tomsmeding: Bingo!
2021-06-19 15:12:59 +0200ddellacosta(~ddellacos@86.106.121.100) (Ping timeout: 258 seconds)
2021-06-19 15:13:28 +0200nilof(~olofs@90-227-86-119-no542.tbcn.telia.com)
2021-06-19 15:15:12 +0200 <Axman6> I have scoped type variables enabled, but I'm getting Could not deduce Parameter a0 from context Parameter a for this code, what am I missing?
2021-06-19 15:15:13 +0200 <Axman6> elementMod :: forall a. Parameter a => Integer -> ElementMod a
2021-06-19 15:15:14 +0200 <Axman6> elementMod n = ElementMod (n `mod` param' @a Proxy)
2021-06-19 15:15:33 +0200 <Axman6> where class Parameter (a :: ParamName) where param' :: p a -> Integer
2021-06-19 15:15:40 +0200elf_fortrez(~elf_fortr@adsl-64-237-239-58.prtc.net)
2021-06-19 15:15:49 +0200kuribas(~user@ptr-25vy0i7qpn0l1vseydq.18120a2.ip6.access.telenet.be) (Quit: ERC (IRC client for Emacs 26.3))
2021-06-19 15:16:29 +0200 <Axman6> and newtype ElementMod (n :: ParamName) = ElementMod Integer in case that's not clear
2021-06-19 15:18:22 +0200zebrag(~chris@user/zebrag)
2021-06-19 15:18:26 +0200 <Axman6> uh actually, the error is in this:
2021-06-19 15:18:27 +0200 <Axman6> param :: forall a. Parameter a => Integer
2021-06-19 15:18:27 +0200 <Axman6> param = param' (Proxy :: Proxy a)
2021-06-19 15:19:57 +0200 <Axman6> ok, I guess I don't need that function, problem solved
2021-06-19 15:20:17 +0200 <tomsmeding> Axman6: are you sure that function gives an error while scopedtypevariables is enabled?
2021-06-19 15:21:09 +0200 <tomsmeding> ooh right the problem is that the type 'Integer', in the type signature for 'param', does not mention the type variable 'a'
2021-06-19 15:21:09 +0200mpt(~tom@2a02:908:1862:49e0::2) (Ping timeout: 268 seconds)
2021-06-19 15:21:30 +0200 <tomsmeding> so in a usage of 'param' GHC will never (without an explicit type application) be able to infer with what type variable to instantiate that 'a'
2021-06-19 15:22:18 +0200 <tomsmeding> to let ghc stop complaining and hence be forced to use an explicit type application, you can enable AllowAmbiguousTypes as the error says, but I strongly advise against that :p
2021-06-19 15:24:28 +0200 <tomsmeding> if only because AllowAmbiguousTypes is a sledgehammer that is bound to give super weird effects in other places
2021-06-19 15:26:05 +0200fef(~thedawn@user/thedawn)
2021-06-19 15:27:43 +0200Ariakenom(~Ariakenom@2001:9b1:efb:fc00:5da5:d011:e09d:f192)
2021-06-19 15:28:27 +0200chddr(~Thunderbi@31.148.23.125) (Ping timeout: 268 seconds)
2021-06-19 15:28:58 +0200 <dminuoso> What super weird effects do you get?
2021-06-19 15:29:44 +0200ph88^(~ph88@2a02:8109:9e00:7e5c:1960:9d14:60f8:23cf)
2021-06-19 15:33:49 +0200j0xaf(~j0xaf@p200300f7771750ed30afbc7d326d0573.dip0.t-ipconnect.de)
2021-06-19 15:34:34 +0200oxide(~lambda@user/oxide) (Quit: oxide)
2021-06-19 15:36:34 +0200favonia(~favonia@user/favonia) (Ping timeout: 268 seconds)
2021-06-19 15:36:53 +0200favonia(~favonia@user/favonia)
2021-06-19 15:39:47 +0200HarveyPwca(~HarveyPwc@2601:246:c180:a570:29df:3b00:ad0e:3a06) (Quit: Leaving)
2021-06-19 15:40:29 +0200ddellacosta(~ddellacos@86.106.121.100)
2021-06-19 15:40:53 +0200 <tomsmeding> you don't get any if you are flawless, but in my experience, making doing something wrong in the vicinity of ambiguous types with that extension on gives very odd type errors if you aren't prepared for it
2021-06-19 15:41:04 +0200 <tomsmeding> but maybe my memory makes it worse than it was :p
2021-06-19 15:41:10 +0200Pickchea(~private@user/pickchea) (Ping timeout: 252 seconds)
2021-06-19 15:43:25 +0200eggplantade(~Eggplanta@2600:1700:bef1:5e10:1543:9aaf:78fa:158)
2021-06-19 15:44:18 +0200favonia(~favonia@user/favonia) (Ping timeout: 240 seconds)
2021-06-19 15:44:50 +0200ddellacosta(~ddellacos@86.106.121.100) (Ping timeout: 252 seconds)
2021-06-19 15:45:30 +0200 <dminuoso> I'm flawless, which is why I -fdefer-type-errors. GHC is just wrong.
2021-06-19 15:46:56 +0200 <dminuoso> The GHC user manual at least suggests that AllowAmbiguousTypes can interact badly with RankNTypes sometimes
2021-06-19 15:47:32 +0200eggplantade(~Eggplanta@2600:1700:bef1:5e10:1543:9aaf:78fa:158) (Ping timeout: 244 seconds)
2021-06-19 15:47:33 +0200 <dminuoso> Interestingly the example listed seems like it might not even compile with simplified subsumption.
2021-06-19 15:47:36 +0200 <dminuoso> https://ghc.gitlab.haskell.org/ghc/doc/users_guide/exts/ambiguous_types.html
2021-06-19 15:48:54 +0200ubert(~Thunderbi@p200300ecdf259d37e6b318fffe838f33.dip0.t-ipconnect.de) (Ping timeout: 268 seconds)
2021-06-19 15:49:02 +0200favonia(~favonia@user/favonia)
2021-06-19 15:51:07 +0200jmcarthur(~jmcarthur@c-73-29-224-10.hsd1.nj.comcast.net)
2021-06-19 15:51:34 +0200awth13(~user@user/awth13) (Read error: Connection reset by peer)
2021-06-19 15:52:03 +0200ubert(~Thunderbi@p200300ecdf259d37e6b318fffe838f33.dip0.t-ipconnect.de)
2021-06-19 15:52:08 +0200awth13(~user@user/awth13)
2021-06-19 15:52:08 +0200jmcarthur(~jmcarthur@c-73-29-224-10.hsd1.nj.comcast.net) (Client Quit)
2021-06-19 15:52:30 +0200dhil(~dhil@195.213.192.47)
2021-06-19 15:57:31 +0200raehik(~raehik@cpc95906-rdng25-2-0-cust156.15-3.cable.virginm.net)
2021-06-19 16:01:01 +0200pavonia(~user@user/siracusa) (Quit: Bye!)
2021-06-19 16:02:03 +0200fabfianda(~fabfianda@net-109-116-251-109.cust.vodafonedsl.it) (Ping timeout: 272 seconds)
2021-06-19 16:02:47 +0200fabfianda(~fabfianda@mob-5-90-241-120.net.vodafone.it)
2021-06-19 16:06:30 +0200merijn(~merijn@83-160-49-249.ip.xs4all.nl)
2021-06-19 16:07:02 +0200HarveyPwca(~HarveyPwc@2601:246:c180:a570:29df:3b00:ad0e:3a06)
2021-06-19 16:07:02 +0200fabfianda(~fabfianda@mob-5-90-241-120.net.vodafone.it) (Ping timeout: 258 seconds)
2021-06-19 16:07:53 +0200jao(jao@gateway/vpn/protonvpn/jao)
2021-06-19 16:08:19 +0200lavaman(~lavaman@98.38.249.169)
2021-06-19 16:08:41 +0200fabfianda(~fabfianda@mob-5-90-241-140.net.vodafone.it)
2021-06-19 16:11:46 +0200fendor_(~fendor@77.119.128.145.wireless.dyn.drei.com)
2021-06-19 16:11:48 +0200ubert(~Thunderbi@p200300ecdf259d37e6b318fffe838f33.dip0.t-ipconnect.de) (Ping timeout: 265 seconds)
2021-06-19 16:12:27 +0200eight(~eight@user/eight)
2021-06-19 16:12:47 +0200lavaman(~lavaman@98.38.249.169) (Ping timeout: 258 seconds)
2021-06-19 16:14:01 +0200ddellacosta(~ddellacos@86.106.121.100)
2021-06-19 16:14:27 +0200fendor_(~fendor@77.119.128.145.wireless.dyn.drei.com) (Remote host closed the connection)
2021-06-19 16:14:42 +0200fendor(~fendor@77.119.131.188.wireless.dyn.drei.com) (Ping timeout: 268 seconds)
2021-06-19 16:14:42 +0200Ferdirand(~somebody@user/ferdirand) (Ping timeout: 264 seconds)
2021-06-19 16:14:57 +0200fendor_(~fendor@77.119.128.145.wireless.dyn.drei.com)
2021-06-19 16:16:21 +0200Deewiant(~deewiant@de1.ut.deewiant.iki.fi) (Quit: Switching servers)
2021-06-19 16:16:45 +0200Deewiant_Deewiant
2021-06-19 16:18:34 +0200ddellacosta(~ddellacos@86.106.121.100) (Ping timeout: 252 seconds)
2021-06-19 16:20:03 +0200fendor_fendor
2021-06-19 16:20:15 +0200Ferdirand(~somebody@2001:4c78:2012:5000::2)
2021-06-19 16:20:42 +0200mikoto-chan(~mikoto-ch@ip-213-49-189-31.dsl.scarlet.be) (Ping timeout: 264 seconds)
2021-06-19 16:21:08 +0200pretty_dumm_guy(trottel@gateway/vpn/protonvpn/prettydummguy/x-88029655)
2021-06-19 16:23:26 +0200xff0x(~xff0x@2001:1a81:5339:fe00:214:efbd:9851:b8b5) (Ping timeout: 268 seconds)
2021-06-19 16:24:57 +0200xff0x(~xff0x@185.65.135.235)
2021-06-19 16:27:59 +0200Pickchea(~private@user/pickchea)
2021-06-19 16:29:01 +0200chddr(~Thunderbi@31.148.23.125)
2021-06-19 16:29:16 +0200xff0x(~xff0x@185.65.135.235) (Ping timeout: 258 seconds)
2021-06-19 16:30:19 +0200involans(~alex@cpc92718-cmbg20-2-0-cust157.5-4.cable.virginm.net)
2021-06-19 16:31:09 +0200xff0x(~xff0x@2001:1a81:5339:fe00:214:efbd:9851:b8b5)
2021-06-19 16:37:51 +0200fabfianda(~fabfianda@mob-5-90-241-140.net.vodafone.it) (Read error: Connection reset by peer)
2021-06-19 16:38:00 +0200fabfianda(~fabfianda@net-109-116-251-109.cust.vodafonedsl.it)
2021-06-19 16:39:48 +0200jmcarthur(~jmcarthur@c-73-29-224-10.hsd1.nj.comcast.net)
2021-06-19 16:40:23 +0200merijn(~merijn@83-160-49-249.ip.xs4all.nl) (Ping timeout: 258 seconds)
2021-06-19 16:40:49 +0200Hanicef(~gustaf@81-229-9-108-no92.tbcn.telia.com) (Quit: leaving)
2021-06-19 16:41:37 +0200bitmapper(uid464869@id-464869.tooting.irccloud.com)
2021-06-19 16:41:47 +0200favonia(~favonia@user/favonia) (Ping timeout: 244 seconds)
2021-06-19 16:42:11 +0200favonia(~favonia@user/favonia)
2021-06-19 16:43:46 +0200AgentM(~agentm@pool-162-83-130-212.nycmny.fios.verizon.net)
2021-06-19 16:45:58 +0200ddellacosta(~ddellacos@86.106.121.100)
2021-06-19 16:46:04 +0200noddy(~user@user/noddy) (Quit: WeeChat 3.1)
2021-06-19 16:49:10 +0200noddy(~user@user/noddy)
2021-06-19 16:50:53 +0200byorgey(~byorgey@155.138.238.211)
2021-06-19 16:56:35 +0200elf_fortrez(~elf_fortr@adsl-64-237-239-58.prtc.net) (Quit: Client closed)
2021-06-19 16:56:41 +0200AkechiShiro(~licht@user/akechishiro) (Ping timeout: 252 seconds)
2021-06-19 16:56:46 +0200favonia(~favonia@user/favonia) (Ping timeout: 244 seconds)
2021-06-19 16:57:09 +0200favonia(~favonia@user/favonia)
2021-06-19 16:57:18 +0200Raito_Bezarius(~Raito@wireguard/tunneler/raito-bezarius) (Ping timeout: 264 seconds)
2021-06-19 16:57:34 +0200AkechiShiro(~licht@user/akechishiro)
2021-06-19 16:57:38 +0200nilof(~olofs@90-227-86-119-no542.tbcn.telia.com) (Ping timeout: 258 seconds)
2021-06-19 16:57:45 +0200elf_fortrez(~elf_fortr@adsl-64-237-239-58.prtc.net)
2021-06-19 16:58:39 +0200aplainzetakind(~johndoe@captainludd.powered.by.lunarbnc.net) (Quit: Free ZNC ~ Powered by LunarBNC: https://LunarBNC.net)
2021-06-19 16:58:42 +0200aplainze1akind(~johndoe@captainludd.powered.by.lunarbnc.net)
2021-06-19 16:58:56 +0200Raito_Bezarius(~Raito@wireguard/tunneler/raito-bezarius)
2021-06-19 17:00:05 +0200Scotty_Trees(~Scotty_Tr@162-234-179-169.lightspeed.brhmal.sbcglobal.net)
2021-06-19 17:01:07 +0200lavaman(~lavaman@98.38.249.169)
2021-06-19 17:01:43 +0200pretty_dumm_guy(trottel@gateway/vpn/protonvpn/prettydummguy/x-88029655) (Quit: WeeChat 3.3-dev)
2021-06-19 17:01:51 +0200Pickchea(~private@user/pickchea) (Ping timeout: 258 seconds)
2021-06-19 17:01:58 +0200fabfianda(~fabfianda@net-109-116-251-109.cust.vodafonedsl.it) (Read error: Connection reset by peer)
2021-06-19 17:02:04 +0200Ariakenom(~Ariakenom@2001:9b1:efb:fc00:5da5:d011:e09d:f192) (Ping timeout: 265 seconds)
2021-06-19 17:02:13 +0200fabfianda(~fabfianda@mob-5-90-241-140.net.vodafone.it)
2021-06-19 17:04:16 +0200Lycurgus(~juan@cpe-45-46-140-49.buffalo.res.rr.com)
2021-06-19 17:05:42 +0200favonia(~favonia@user/favonia) (Ping timeout: 264 seconds)
2021-06-19 17:06:13 +0200aplainze1akind(~johndoe@captainludd.powered.by.lunarbnc.net) (Quit: Free ZNC ~ Powered by LunarBNC: https://LunarBNC.net)
2021-06-19 17:08:07 +0200aplainzetakind(~johndoe@captainludd.powered.by.lunarbnc.net)
2021-06-19 17:08:37 +0200 <Lycurgus> retrie is copyright facebook, glad it's not part of anything that could go out the door
2021-06-19 17:08:46 +0200aplainzetakind(~johndoe@captainludd.powered.by.lunarbnc.net) (Client Quit)
2021-06-19 17:10:07 +0200favonia(~favonia@user/favonia)
2021-06-19 17:10:24 +0200aplainzetakind(~johndoe@captainludd.powered.by.lunarbnc.net)
2021-06-19 17:10:48 +0200 <phaazon> what’s the literal name of <$ / $> ?
2021-06-19 17:11:05 +0200 <dminuoso> Of what?
2021-06-19 17:11:12 +0200 <phaazon> mapping with const
2021-06-19 17:11:12 +0200 <dminuoso> Oh. Haha. I read that as a single operator.
2021-06-19 17:11:22 +0200 <phaazon> I’m implementing a similar thing in Rust
2021-06-19 17:11:28 +0200 <phaazon> and since we don’t have custom operators… :D
2021-06-19 17:11:34 +0200 <phaazon> I plan to call that const_map
2021-06-19 17:11:36 +0200 <phaazon> but meh
2021-06-19 17:11:38 +0200 <phaazon> too long!
2021-06-19 17:12:14 +0200 <dminuoso> Mmm, I had never pondered about it. Personally, I might call it fconst perhaps.
2021-06-19 17:12:18 +0200 <dminuoso> (both of them)
2021-06-19 17:12:33 +0200 <dminuoso> Though I never used $> before. Just a lot of <$
2021-06-19 17:12:54 +0200Ariakenom(~Ariakenom@2001:9b1:efb:fc00:8d64:c14b:88a:5ff6)
2021-06-19 17:13:06 +0200juhp(~juhp@128.106.188.66) (Quit: juhp)
2021-06-19 17:13:08 +0200Lycurgusthought / was part of the thing at first
2021-06-19 17:13:20 +0200juhp(~juhp@128.106.188.66)
2021-06-19 17:13:23 +0200aplainzetakind(~johndoe@captainludd.powered.by.lunarbnc.net) (Client Quit)
2021-06-19 17:13:27 +0200acairncross(~aiken@33.2.143.150.dyn.plus.net)
2021-06-19 17:13:35 +0200 <tomsmeding> @hoogle <$/$>
2021-06-19 17:13:36 +0200 <lambdabot> No results found
2021-06-19 17:13:41 +0200tomsmedingis disappointed
2021-06-19 17:14:22 +0200 <tomsmeding> phaazon: probably bad name, but in my mind I call it "replace"
2021-06-19 17:14:30 +0200acairncross(~aiken@33.2.143.150.dyn.plus.net) (Client Quit)
2021-06-19 17:15:00 +0200nilof(~olofs@90-227-86-119-no542.tbcn.telia.com)
2021-06-19 17:15:02 +0200 <tomsmeding> (possibly replace_with)
2021-06-19 17:15:11 +0200hendursa1(~weechat@user/hendursaga) (Quit: hendursa1)
2021-06-19 17:15:34 +0200hendursaga(~weechat@user/hendursaga)
2021-06-19 17:16:50 +0200 <phaazon> I’ll stick around const_map :P
2021-06-19 17:17:05 +0200aplainzetakind(~johndoe@captainludd.powered.by.lunarbnc.net)
2021-06-19 17:17:06 +0200Lycurgus(~juan@cpe-45-46-140-49.buffalo.res.rr.com) (Quit: Exeunt)
2021-06-19 17:17:36 +0200aplainzetakind(~johndoe@captainludd.powered.by.lunarbnc.net) (Client Quit)
2021-06-19 17:19:23 +0200aplainzetakind(~johndoe@captainludd.powered.by.lunarbnc.net)
2021-06-19 17:19:57 +0200favonia(~favonia@user/favonia) (Ping timeout: 265 seconds)
2021-06-19 17:20:57 +0200favonia(~favonia@user/favonia)
2021-06-19 17:25:18 +0200johnli(~jl@c83-252-118-64.bredband.tele2.se)
2021-06-19 17:27:14 +0200fef(~thedawn@user/thedawn) (Remote host closed the connection)
2021-06-19 17:27:51 +0200fef(~thedawn@user/thedawn)
2021-06-19 17:29:26 +0200wroathe(~wroathe@c-68-54-25-135.hsd1.mn.comcast.net)
2021-06-19 17:32:58 +0200Bartosz(~textual@24.35.90.211)
2021-06-19 17:34:21 +0200noddy(~user@user/noddy) (Quit: WeeChat 3.2)
2021-06-19 17:35:29 +0200noddy(~user@user/noddy)
2021-06-19 17:36:21 +0200mjs2600(~mjs2600@c-24-91-3-49.hsd1.vt.comcast.net) (Ping timeout: 244 seconds)
2021-06-19 17:44:01 +0200ddellaco_(~ddellacos@86.106.121.100)
2021-06-19 17:44:38 +0200lavaman(~lavaman@98.38.249.169) (Ping timeout: 265 seconds)
2021-06-19 17:45:02 +0200ezzieyguywuf(~Unknown@user/ezzieyguywuf) (Read error: No route to host)
2021-06-19 17:47:18 +0200ddellacosta(~ddellacos@86.106.121.100) (Ping timeout: 252 seconds)
2021-06-19 17:49:08 +0200ddellaco_(~ddellacos@86.106.121.100) (Ping timeout: 252 seconds)
2021-06-19 17:52:53 +0200eggplantade(~Eggplanta@2600:1700:bef1:5e10:1543:9aaf:78fa:158)
2021-06-19 17:54:10 +0200jmcarthur(~jmcarthur@c-73-29-224-10.hsd1.nj.comcast.net) (Quit: My MacBook Air has gone to sleep. ZZZzzz…)
2021-06-19 17:55:24 +0200mjs2600(~mjs2600@c-24-91-3-49.hsd1.vt.comcast.net)
2021-06-19 17:56:37 +0200jmcarthur(~jmcarthur@c-73-29-224-10.hsd1.nj.comcast.net)
2021-06-19 17:57:13 +0200eggplantade(~Eggplanta@2600:1700:bef1:5e10:1543:9aaf:78fa:158) (Ping timeout: 244 seconds)
2021-06-19 17:59:22 +0200egoist(~egoist@186.235.85.86)
2021-06-19 18:00:33 +0200Hanicef(~gustaf@81-229-9-108-no92.tbcn.telia.com)
2021-06-19 18:02:25 +0200fef(~thedawn@user/thedawn) (Ping timeout: 252 seconds)
2021-06-19 18:02:32 +0200merijn(~merijn@83-160-49-249.ip.xs4all.nl)
2021-06-19 18:05:16 +0200derelict(~derelict@user/derelict) (Ping timeout: 252 seconds)
2021-06-19 18:11:25 +0200fef(~thedawn@user/thedawn)
2021-06-19 18:14:05 +0200aplainzetakind(~johndoe@captainludd.powered.by.lunarbnc.net) (Read error: Connection reset by peer)
2021-06-19 18:14:09 +0200aplainze1akind(~johndoe@captainludd.powered.by.lunarbnc.net)
2021-06-19 18:16:10 +0200fef(~thedawn@user/thedawn) (Ping timeout: 252 seconds)
2021-06-19 18:16:34 +0200kayprish(~kayprish@46.240.143.86)
2021-06-19 18:16:35 +0200econo(uid147250@user/econo)
2021-06-19 18:18:05 +0200kayprish(~kayprish@46.240.143.86) (Remote host closed the connection)
2021-06-19 18:18:58 +0200chrysanthematic(~chrysanth@user/chrysanthematic)
2021-06-19 18:19:04 +0200tzh(~tzh@c-24-21-73-154.hsd1.wa.comcast.net)
2021-06-19 18:19:57 +0200chrysanthematic(~chrysanth@user/chrysanthematic) (Client Quit)
2021-06-19 18:22:40 +0200tromp(~textual@dhcp-077-249-230-040.chello.nl) (Quit: My iMac has gone to sleep. ZZZzzz…)
2021-06-19 18:23:19 +0200chrysanthematic(~chrysanth@user/chrysanthematic)
2021-06-19 18:23:27 +0200 <tomsmeding> is there an overview of which ghc language extensions imply which ones?
2021-06-19 18:23:55 +0200 <dminuoso> tomsmeding: the GHC user manual.
2021-06-19 18:24:24 +0200 <tomsmeding> also in transposed form? i.e. to check which extensions imply extension X
2021-06-19 18:24:40 +0200 <tomsmeding> I know the user manual says which are implied _by_ X :)
2021-06-19 18:25:10 +0200 <tomsmeding> oh wait the overview does seem to have that info
2021-06-19 18:25:44 +0200 <dminuoso> tomsmeding: impliedXFlags in GHC/Driver/Session.hs
2021-06-19 18:26:06 +0200jakalx(~jakalx@base.jakalx.net) ()
2021-06-19 18:26:10 +0200 <dminuoso> Though, at first glance that seems to diverse from the user manual strangely
2021-06-19 18:26:32 +0200jakalx(~jakalx@base.jakalx.net)
2021-06-19 18:26:36 +0200 <dminuoso> Ah no, I just misread
2021-06-19 18:26:39 +0200 <dminuoso> That's it
2021-06-19 18:26:53 +0200 <tomsmeding> okay then extension implications apparently don't answer my core question which is: why the hell does ghc want me to set LANGUAGE PatternGuards to use pattern guards in one project but not the other
2021-06-19 18:28:09 +0200Lycurgus(~juan@cpe-45-46-140-49.buffalo.res.rr.com)
2021-06-19 18:28:16 +0200 <Melvar> Maybe one of them has PatternGuards as a default-extension in the cabal file (or equivalent)?
2021-06-19 18:28:57 +0200 <geekosaur> one is implied language Haskell98?
2021-06-19 18:29:15 +0200 <geekosaur> PG should be H2010
2021-06-19 18:30:36 +0200 <dminuoso> NoPatternGuards seems to be implied by Haskell98
2021-06-19 18:30:37 +0200 <tomsmeding> I explicitly have default-language: Haskell2010 in the project where I get the warning
2021-06-19 18:33:15 +0200tomsmedingis confused, hold on
2021-06-19 18:34:34 +0200 <tomsmeding> somehow the default-language from the .cabal file is not getting read?
2021-06-19 18:34:43 +0200 <tomsmeding> having LANGUAGE Haskell2010 _does_ silence the warning
2021-06-19 18:36:11 +0200 <tomsmeding> MAN "Warning: ircbrowse.cabal:101:3: The field "default-language" is available only since the Cabal specification version 1.10. This field will be ignored."
2021-06-19 18:36:22 +0200 <tomsmeding> please ignore my rambling my problem hath been solved
2021-06-19 18:36:38 +0200jonatan(~nate@h77-53-70-163.cust.a3fiber.se)
2021-06-19 18:36:50 +0200merijn(~merijn@83-160-49-249.ip.xs4all.nl) (Ping timeout: 265 seconds)
2021-06-19 18:37:48 +0200jonatan(~nate@h77-53-70-163.cust.a3fiber.se) (Client Quit)
2021-06-19 18:38:11 +0200jonatan(~nate@h77-53-70-163.cust.a3fiber.se)
2021-06-19 18:39:06 +0200 <tomsmeding> that's what I get for picking up a years-old project I guess
2021-06-19 18:39:39 +0200fizbin(~fizbin@c-73-33-197-160.hsd1.nj.comcast.net)
2021-06-19 18:40:31 +0200Bartosz(~textual@24.35.90.211) (Quit: My MacBook has gone to sleep. ZZZzzz…)
2021-06-19 18:40:43 +0200Sgeo(~Sgeo@user/sgeo)
2021-06-19 18:41:06 +0200benin0369(~benin@183.82.205.58) (Ping timeout: 264 seconds)
2021-06-19 18:42:57 +0200Lycurgus(~juan@cpe-45-46-140-49.buffalo.res.rr.com) (Quit: Exeunt)
2021-06-19 18:46:19 +0200Bartosz(~textual@24.35.90.211)
2021-06-19 18:49:59 +0200warnz(~warnz@2600:1700:77c0:5610:d5d8:e36a:2948:a4e3)
2021-06-19 18:50:43 +0200benin0369(~benin@183.82.205.58)
2021-06-19 18:53:17 +0200qbt(~edun@user/edun) (Ping timeout: 252 seconds)
2021-06-19 18:53:47 +0200notzmv(~zmv@user/notzmv) (Ping timeout: 258 seconds)
2021-06-19 18:54:12 +0200chddr(~Thunderbi@31.148.23.125) (Ping timeout: 265 seconds)
2021-06-19 18:55:47 +0200__monty__(~toonn@user/toonn)
2021-06-19 18:58:19 +0200tromp(~textual@dhcp-077-249-230-040.chello.nl)
2021-06-19 18:58:36 +0200mikoto-chan(~mikoto-ch@ip-213-49-189-31.dsl.scarlet.be)
2021-06-19 19:00:36 +0200ptrcmd(~ptrcmd@user/ptrcmd) (Ping timeout: 272 seconds)
2021-06-19 19:00:52 +0200ptrcmd(~ptrcmd@user/ptrcmd)
2021-06-19 19:02:48 +0200jneira[m](~jneira@163.red-176-83-85.dynamicip.rima-tde.net)
2021-06-19 19:05:27 +0200Pickchea(~private@user/pickchea)
2021-06-19 19:08:08 +0200eggplantade(~Eggplanta@2600:1700:bef1:5e10:1543:9aaf:78fa:158)
2021-06-19 19:09:59 +0200ezzieyguywuf(~Unknown@user/ezzieyguywuf)
2021-06-19 19:12:27 +0200L29Ah[XMPP]L29Ah
2021-06-19 19:12:34 +0200eggplantade(~Eggplanta@2600:1700:bef1:5e10:1543:9aaf:78fa:158) (Ping timeout: 265 seconds)
2021-06-19 19:17:38 +0200jneira[m](~jneira@163.red-176-83-85.dynamicip.rima-tde.net) (Remote host closed the connection)
2021-06-19 19:18:31 +0200hnOsmium0001(uid453710@id-453710.stonehaven.irccloud.com)
2021-06-19 19:19:56 +0200tromp(~textual@dhcp-077-249-230-040.chello.nl) (Quit: My iMac has gone to sleep. ZZZzzz…)
2021-06-19 19:20:40 +0200Bartosz(~textual@24.35.90.211) (Quit: My MacBook has gone to sleep. ZZZzzz…)
2021-06-19 19:23:18 +0200ezzieyguywuf(~Unknown@user/ezzieyguywuf) (Remote host closed the connection)
2021-06-19 19:24:14 +0200ezzieyguywuf(~Unknown@user/ezzieyguywuf)
2021-06-19 19:25:20 +0200aplainze1akind(~johndoe@captainludd.powered.by.lunarbnc.net) (Quit: Free ZNC ~ Powered by LunarBNC: https://LunarBNC.net)
2021-06-19 19:25:45 +0200aplainzetakind(~johndoe@captainludd.powered.by.lunarbnc.net)
2021-06-19 19:26:35 +0200favonia(~favonia@user/favonia) (Ping timeout: 268 seconds)
2021-06-19 19:27:00 +0200favonia(~favonia@user/favonia)
2021-06-19 19:29:26 +0200azeem(~azeem@dynamic-adsl-78-13-238-239.clienti.tiscali.it) (Ping timeout: 258 seconds)
2021-06-19 19:30:42 +0200azeem(~azeem@176.200.221.31)
2021-06-19 19:30:56 +0200henninb(~user@63.226.174.157)
2021-06-19 19:32:13 +0200azeem(~azeem@176.200.221.31) (Read error: Connection reset by peer)
2021-06-19 19:33:37 +0200fizbin(~fizbin@c-73-33-197-160.hsd1.nj.comcast.net) (Remote host closed the connection)
2021-06-19 19:33:51 +0200boxscape(~boxscape@user/boxscape) (Quit: Connection closed)
2021-06-19 19:34:06 +0200derelict(~derelict@user/derelict)
2021-06-19 19:34:42 +0200azeem(~azeem@dynamic-adsl-78-13-255-154.clienti.tiscali.it)
2021-06-19 19:35:15 +0200boxscape(~boxscape@user/boxscape)
2021-06-19 19:36:34 +0200machinedgod(~machinedg@24.105.81.50)
2021-06-19 19:41:00 +0200chrysanthematic(~chrysanth@user/chrysanthematic) (Quit: chrysanthematic)
2021-06-19 19:41:30 +0200lavaman(~lavaman@98.38.249.169)
2021-06-19 19:41:34 +0200derelict(~derelict@user/derelict) (Ping timeout: 265 seconds)
2021-06-19 19:42:48 +0200Deide(~Deide@wire.desu.ga)
2021-06-19 19:42:48 +0200Deide(~Deide@wire.desu.ga) (Changing host)
2021-06-19 19:42:48 +0200Deide(~Deide@user/deide)
2021-06-19 19:43:01 +0200egoist(~egoist@186.235.85.86) (Ping timeout: 265 seconds)
2021-06-19 19:49:45 +0200egoist(~egoist@186.235.85.100)
2021-06-19 19:49:51 +0200kmetric(~karthik@49.206.9.195) (Ping timeout: 244 seconds)
2021-06-19 19:52:51 +0200pera(~pera@154.red-79-155-45.dynamicip.rima-tde.net)
2021-06-19 19:53:15 +0200peraGuest5562
2021-06-19 19:53:41 +0200azeem(~azeem@dynamic-adsl-78-13-255-154.clienti.tiscali.it) (Ping timeout: 265 seconds)
2021-06-19 19:53:57 +0200azeem(~azeem@176.200.221.31)
2021-06-19 19:56:44 +0200 <gentauro> tomsmeding: I have `default-language: Haskell98` in all of my .cabal files. Are you saying its not being read?
2021-06-19 19:56:47 +0200cuz(~user@2601:182:cc02:8b0:2101:5597:2ede:b8bf)
2021-06-19 19:57:38 +0200dyeplexer(~dyeplexer@user/dyeplexer)
2021-06-19 19:57:45 +0200Bartosz(~textual@24.35.90.211)
2021-06-19 19:58:37 +0200 <geekosaur> <tomsmeding> MAN "Warning: ircbrowse.cabal:101:3: The field "default-language" is available only since the Cabal specification version 1.10. This field will be ignored."
2021-06-19 19:58:52 +0200 <geekosaur> <tomsmeding> that's what I get for picking up a years-old project I guess
2021-06-19 19:58:58 +0200awth13(~user@user/awth13) (Ping timeout: 265 seconds)
2021-06-19 19:59:30 +0200leeb(~leeb@KD111239153103.au-net.ne.jp)
2021-06-19 20:03:42 +0200lavaman(~lavaman@98.38.249.169) (Ping timeout: 252 seconds)
2021-06-19 20:05:24 +0200beka(~beka@104.193.170-244.PUBLIC.monkeybrains.net)
2021-06-19 20:05:46 +0200azeem(~azeem@176.200.221.31) (Ping timeout: 265 seconds)
2021-06-19 20:07:25 +0200favonia(~favonia@user/favonia) (Ping timeout: 244 seconds)
2021-06-19 20:07:49 +0200favonia(~favonia@user/favonia)
2021-06-19 20:07:58 +0200azeem(~azeem@176.200.221.31)
2021-06-19 20:08:48 +0200kayprish(~kayprish@cable-188-2-246-223.dynamic.sbb.rs)
2021-06-19 20:09:12 +0200pfurla(~pfurla@ool-182ed2e2.dyn.optonline.net)
2021-06-19 20:09:14 +0200azeem(~azeem@176.200.221.31) (Read error: Connection reset by peer)
2021-06-19 20:09:53 +0200azeem(~azeem@dynamic-adsl-84-220-241-126.clienti.tiscali.it)
2021-06-19 20:09:54 +0200hendursaga(~weechat@user/hendursaga) (Remote host closed the connection)
2021-06-19 20:10:18 +0200hendursaga(~weechat@user/hendursaga)
2021-06-19 20:12:13 +0200pfurla_(~pfurla@216.131.82.52) (Ping timeout: 268 seconds)
2021-06-19 20:13:36 +0200wroathe(~wroathe@c-68-54-25-135.hsd1.mn.comcast.net) (Ping timeout: 252 seconds)
2021-06-19 20:16:33 +0200henninb(~user@63.226.174.157) (Quit: ERC (IRC client for Emacs 27.2))
2021-06-19 20:17:26 +0200wootehfoot(~wootehfoo@c-772e524e.032-69-6762675.bbcust.telenor.se)
2021-06-19 20:20:25 +0200Bartosz(~textual@24.35.90.211) (Quit: My MacBook has gone to sleep. ZZZzzz…)
2021-06-19 20:20:50 +0200kayprish(~kayprish@cable-188-2-246-223.dynamic.sbb.rs) (Remote host closed the connection)
2021-06-19 20:21:45 +0200AlexNoo_(~AlexNoo@178.34.160.156)
2021-06-19 20:22:58 +0200pbrisbin(~patrick@pool-72-92-38-164.phlapa.fios.verizon.net)
2021-06-19 20:23:50 +0200Alex_test(~al_test@178.34.151.147) (Ping timeout: 268 seconds)
2021-06-19 20:24:38 +0200wootehfoot(~wootehfoo@c-772e524e.032-69-6762675.bbcust.telenor.se) (Quit: Leaving)
2021-06-19 20:24:39 +0200 <tomsmeding> Yep thanks geekosaur, gentauro: it is being read, as long as your cabal version is specified to be >= 1.10
2021-06-19 20:25:06 +0200AlexNoo(~AlexNoo@178.34.151.147) (Ping timeout: 240 seconds)
2021-06-19 20:25:20 +0200azeem(~azeem@dynamic-adsl-84-220-241-126.clienti.tiscali.it) (Ping timeout: 252 seconds)
2021-06-19 20:25:23 +0200AlexZenon_2(~alex@178.34.160.156)
2021-06-19 20:25:31 +0200AlexZenon(~alex@178.34.151.147) (Ping timeout: 272 seconds)
2021-06-19 20:25:49 +0200AlexNoo_AlexNoo
2021-06-19 20:25:50 +0200azeem(~azeem@176.200.221.31)
2021-06-19 20:26:13 +0200AlexZenon_2AlexZenon
2021-06-19 20:26:36 +0200jneira_(~jneira_@131.red-79-155-1.dynamicip.rima-tde.net)
2021-06-19 20:27:08 +0200Alex_test(~al_test@178.34.160.156)
2021-06-19 20:28:34 +0200wootehfoot(~wootehfoo@c-772e524e.032-69-6762675.bbcust.telenor.se)
2021-06-19 20:29:23 +0200 <monochrom> IIRC if your cabal-version: field is high enough, the default becomes Haskell2010
2021-06-19 20:29:56 +0200wootehfoot(~wootehfoo@c-772e524e.032-69-6762675.bbcust.telenor.se) (Changing host)
2021-06-19 20:29:56 +0200wootehfoot(~wootehfoo@user/wootehfoot)
2021-06-19 20:30:24 +0200azeem(~azeem@176.200.221.31) (Read error: Connection reset by peer)
2021-06-19 20:30:31 +0200 <monochrom> oops, default becomes whatever the compiler defaults to. https://cabal.readthedocs.io/en/3.4/file-format-changelog.html#cabal-version-3-4
2021-06-19 20:30:38 +0200azeem(~azeem@dynamic-adsl-84-220-237-222.clienti.tiscali.it)
2021-06-19 20:31:13 +0200j0xaf(~j0xaf@p200300f7771750ed30afbc7d326d0573.dip0.t-ipconnect.de) (Quit: Client closed)
2021-06-19 20:33:15 +0200merijn(~merijn@83-160-49-249.ip.xs4all.nl)
2021-06-19 20:33:25 +0200jmcarthur(~jmcarthur@c-73-29-224-10.hsd1.nj.comcast.net) (Quit: My MacBook Air has gone to sleep. ZZZzzz…)
2021-06-19 20:34:47 +0200pavonia(~user@user/siracusa)
2021-06-19 20:34:59 +0200pretty_dumm_guy(trottel@gateway/vpn/protonvpn/prettydummguy/x-88029655)
2021-06-19 20:35:22 +0200dyeplexer(~dyeplexer@user/dyeplexer) (Remote host closed the connection)
2021-06-19 20:35:58 +0200Guest5562(~pera@154.red-79-155-45.dynamicip.rima-tde.net) (Ping timeout: 252 seconds)
2021-06-19 20:36:12 +0200tromp(~textual@dhcp-077-249-230-040.chello.nl)
2021-06-19 20:37:37 +0200chexum_(~chexum@gateway/tor-sasl/chexum) (Remote host closed the connection)
2021-06-19 20:37:40 +0200jneira_(~jneira_@131.red-79-155-1.dynamicip.rima-tde.net) (Ping timeout: 265 seconds)
2021-06-19 20:37:48 +0200chexum(~chexum@gateway/tor-sasl/chexum)
2021-06-19 20:38:26 +0200arjun(~user@user/arjun)
2021-06-19 20:39:11 +0200 <arjun> hi! anyone here uses haskell-mode with emacs ?
2021-06-19 20:39:36 +0200warnz(~warnz@2600:1700:77c0:5610:d5d8:e36a:2948:a4e3) (Remote host closed the connection)
2021-06-19 20:39:50 +0200fendor(~fendor@77.119.128.145.wireless.dyn.drei.com) (Read error: Connection reset by peer)
2021-06-19 20:40:08 +0200warnz(~warnz@2600:1700:77c0:5610:d5d8:e36a:2948:a4e3)
2021-06-19 20:40:08 +0200 <dminuoso> Yes.
2021-06-19 20:40:58 +0200 <arjun> dminuoso: i am having issues with interactive part
2021-06-19 20:41:15 +0200qbt(~edun@user/edun)
2021-06-19 20:41:20 +0200 <arjun> "Could not load module ‘Options.Applicative’
2021-06-19 20:41:20 +0200 <arjun> It is a member of the hidden package ‘optparse-applicative-0.16.1.0’.
2021-06-19 20:41:20 +0200 <arjun> Perhaps you need to add ‘optparse-applicative’ to the build-depends in your .cabal file.
2021-06-19 20:41:20 +0200 <arjun> It is a member of the hidden package ‘optparse-applicative-0.15.1.0’.
2021-06-19 20:41:23 +0200 <arjun> Perhaps you need to add ‘optparse-applicative’ to the build-depends in your .cabal file."
2021-06-19 20:41:31 +0200 <arjun> when clearly it's in my cabal file ?
2021-06-19 20:41:57 +0200 <dminuoso> Do you use stack/cabal/nix?
2021-06-19 20:42:03 +0200 <arjun> cabal
2021-06-19 20:42:10 +0200 <dminuoso> What is your haskell-process-type set to?
2021-06-19 20:42:18 +0200amahl(~amahl@dsl-jklbng12-54fbca-64.dhcp.inet.fi)
2021-06-19 20:42:24 +0200 <arjun> auto -> cabal-repl ?
2021-06-19 20:42:47 +0200 <dminuoso> It probably should be cabal-new-repl, try that one.
2021-06-19 20:42:55 +0200Bartosz(~textual@24.35.90.211)
2021-06-19 20:43:04 +0200 <arjun> dminuoso: cabal-new-repl seems depriciated
2021-06-19 20:44:11 +0200azeem(~azeem@dynamic-adsl-84-220-237-222.clienti.tiscali.it) (Ping timeout: 258 seconds)
2021-06-19 20:44:14 +0200 <arjun> i am trying to load a file from a project into the repl with (C-c C-l)
2021-06-19 20:44:26 +0200azeem(~azeem@176.200.221.31)
2021-06-19 20:44:42 +0200 <arjun> am i missing something here?
2021-06-19 20:44:53 +0200warnz(~warnz@2600:1700:77c0:5610:d5d8:e36a:2948:a4e3) (Ping timeout: 265 seconds)
2021-06-19 20:44:57 +0200 <dminuoso> arjun: Hold on, is optparse-applicative in your build-depends?
2021-06-19 20:45:18 +0200 <arjun> sure
2021-06-19 20:45:20 +0200Bartosz(~textual@24.35.90.211) (Client Quit)
2021-06-19 20:45:40 +0200 <arjun> its the ghcup-hs repo
2021-06-19 20:46:06 +0200 <dminuoso> Is there multiple components?
2021-06-19 20:46:32 +0200 <arjun> dminuoso: looks like
2021-06-19 20:46:32 +0200 <dminuoso> Ah there you go
2021-06-19 20:46:36 +0200 <arjun> https://gitlab.haskell.org/haskell/ghcup-hs/-/blob/master/ghcup.cabal
2021-06-19 20:46:37 +0200elf_fortrez(~elf_fortr@adsl-64-237-239-58.prtc.net) (Ping timeout: 246 seconds)
2021-06-19 20:46:43 +0200 <dminuoso> `cabal repl` doesnt support multiple components (yet)
2021-06-19 20:46:51 +0200 <dminuoso> It probably uses the "wrong" component
2021-06-19 20:47:03 +0200azeem(~azeem@176.200.221.31) (Read error: Connection reset by peer)
2021-06-19 20:47:06 +0200favonia(~favonia@user/favonia) (Ping timeout: 264 seconds)
2021-06-19 20:47:15 +0200 <arjun> dminuoso: that must be it!
2021-06-19 20:47:16 +0200azeem(~azeem@dynamic-adsl-94-34-49-60.clienti.tiscali.it)
2021-06-19 20:47:31 +0200 <dminuoso> Or hold on. No it doesnt suppport multiple projects
2021-06-19 20:47:36 +0200 <dminuoso> What it does with multiple components, I have no clue
2021-06-19 20:47:50 +0200lisq_lisq
2021-06-19 20:48:03 +0200 <arjun> dminuoso: there's also a cabal.project file in there to spice it up more
2021-06-19 20:48:13 +0200 <arjun> https://gitlab.haskell.org/haskell/ghcup-hs/-/blob/master/cabal.project
2021-06-19 20:48:32 +0200 <dminuoso> That shouldnt matter
2021-06-19 20:49:25 +0200 <arjun> dminuoso: when i go here -> https://gitlab.haskell.org/haskell/ghcup-hs/-/blob/master/app/ghcup/Main.hs
2021-06-19 20:49:27 +0200 <tomsmeding> dminuoso: with multiple components, `cabal repl` errors out and asks you to specify a component
2021-06-19 20:49:42 +0200 <arjun> and try to load the file with C-c C-l
2021-06-19 20:49:55 +0200 <tomsmeding> Rembane: is that Palka paper the state of the art, or is there a less ad-hoc approach known? :P
2021-06-19 20:49:59 +0200 <dminuoso> tomsmeding: Are you sure? Judging from the code it should work
2021-06-19 20:50:09 +0200 <arjun> it builds some stuff and then pops up those hidden module errors : /
2021-06-19 20:50:20 +0200 <tomsmeding> dminuoso: haven't looked at cabal's source, just user experience :p
2021-06-19 20:50:25 +0200notzmv(~zmv@user/notzmv)
2021-06-19 20:50:26 +0200favonia(~favonia@user/favonia)
2021-06-19 20:50:29 +0200 <dminuoso> tomsmeding: you probably experienced multiple packages
2021-06-19 20:50:42 +0200 <dminuoso> arjun: judging fom the source code `cabal repl`, if no target is specified, will default to:
2021-06-19 20:50:47 +0200jneira_(~jneira_@131.red-79-155-1.dynamicip.rima-tde.net)
2021-06-19 20:50:52 +0200 <dminuoso> 1. the library, if there's exactly one buildable library
2021-06-19 20:51:10 +0200 <dminuoso> 2. the executable, if there's exactly one buildable executable
2021-06-19 20:51:15 +0200 <tomsmeding> Hmm I might have, sorry for the noise then
2021-06-19 20:51:37 +0200 <tomsmeding> Though in my case the cabal file has 2 executables
2021-06-19 20:51:42 +0200 <dminuoso> arjun: so your `cabal repl` likely defaults to the (unnamed) library
2021-06-19 20:51:58 +0200 <dminuoso> tomsmeding: Like I said above.
2021-06-19 20:52:02 +0200 <arjun> dminuoso: that's probably it
2021-06-19 20:52:10 +0200 <arjun> dminuoso: what do i do here?
2021-06-19 20:52:34 +0200 <dminuoso> arjun: you can specify by running `cabal repl ghcup:exe:ghcup`
2021-06-19 20:52:58 +0200 <arjun> dminuoso: from the terminal or emacs?
2021-06-19 20:53:04 +0200 <dminuoso> Yes.
2021-06-19 20:53:05 +0200 <arjun> pardon the noobness
2021-06-19 20:53:23 +0200eggplantade(~Eggplanta@2600:1700:bef1:5e10:1543:9aaf:78fa:158)
2021-06-19 20:53:34 +0200 <dminuoso> arjun: It doesnt matter. If you invoke `cabal repl` from the terminal, you should observe the same behavior. Can you verify?
2021-06-19 20:53:36 +0200chrysanthematic(~chrysanth@user/chrysanthematic)
2021-06-19 20:53:38 +0200is7s(~is7s@2a01:4b00:895f:3d00:ddd:ae00:86d4:d79c)
2021-06-19 20:55:57 +0200ddellacosta(~ddellacos@86.106.121.100)
2021-06-19 20:55:57 +0200 <arjun> dminuoso: right. so it seemed it worked from terminal
2021-06-19 20:56:06 +0200phma(phma@2001:5b0:210b:98b8:ef83:24f5:5460:8a3e) (Read error: Connection reset by peer)
2021-06-19 20:56:11 +0200 <dminuoso> Mmm
2021-06-19 20:56:26 +0200 <dminuoso> arjun: so `cabal repl` from terminal lets you import Options.Applicative?
2021-06-19 20:56:31 +0200jneira_(~jneira_@131.red-79-155-1.dynamicip.rima-tde.net) (Ping timeout: 265 seconds)
2021-06-19 20:56:34 +0200 <dminuoso> Or did you run `cabal repl ghcup:exe:ghcup`?
2021-06-19 20:56:41 +0200 <arjun> the second one
2021-06-19 20:56:44 +0200Hanicef(~gustaf@81-229-9-108-no92.tbcn.telia.com) (Quit: leaving)
2021-06-19 20:57:01 +0200 <arjun> caba repl whatyousaid
2021-06-19 20:57:21 +0200jmcarthur(~jmcarthur@c-73-29-224-10.hsd1.nj.comcast.net)
2021-06-19 20:57:24 +0200 <dminuoso> arjun: for emacs, I believe it could be sufficient to: M-: (set haskell-process-args-cabal-repl "ghcup:exe:ghcup")
2021-06-19 20:57:37 +0200 <dminuoso> this is very inconvenient obviously, but right now there's no other way
2021-06-19 20:57:47 +0200 <dminuoso> err *setq
2021-06-19 20:57:56 +0200eggplantade(~Eggplanta@2600:1700:bef1:5e10:1543:9aaf:78fa:158) (Ping timeout: 265 seconds)
2021-06-19 20:59:19 +0200 <dminuoso> Ideally there should be a setting that if set, would read-string for the cabal target each time cabal commands are invoked.
2021-06-19 21:00:32 +0200ddellacosta(~ddellacos@86.106.121.100) (Ping timeout: 252 seconds)
2021-06-19 21:00:38 +0200 <arjun> dminuoso: i restarted the process after setq'ing it
2021-06-19 21:00:55 +0200 <arjun> i guess i messed up somewhere because eveyting is dying now : P
2021-06-19 21:01:22 +0200ubert(~Thunderbi@p200300ecdf259d37886351c709683887.dip0.t-ipconnect.de)
2021-06-19 21:01:55 +0200phma(phma@2001:5b0:210d:afc8:5ec1:374f:fafc:21e6)
2021-06-19 21:03:17 +0200 <arjun> dminuoso: hang on. let me kill emacs and try again. maybe i found something
2021-06-19 21:03:35 +0200 <arjun> i'd have to log back in here since i am on here with ERC : P
2021-06-19 21:03:36 +0200 <arjun> brb
2021-06-19 21:03:41 +0200arjun(~user@user/arjun) (Remote host closed the connection)
2021-06-19 21:04:06 +0200 <Cajun> so i updated my GHC last night to 8.10.5 and im trying to install `friday` from cabal, but its complaining about `accelerate` among other things. i successfully installed `accelerate` yesterday so i have no idea why its complaining about it. output: https://paste.tomsmeding.com/w9xudI7Z
2021-06-19 21:05:02 +0200Bartosz(~textual@24.35.90.211)
2021-06-19 21:05:13 +0200pbrisbin(~patrick@pool-72-92-38-164.phlapa.fios.verizon.net) (Ping timeout: 265 seconds)
2021-06-19 21:05:36 +0200 <dminuoso> Cajun: So ideally just stop using `cabal install --lib`
2021-06-19 21:06:08 +0200arjun(~user@user/arjun)
2021-06-19 21:06:20 +0200 <arjun> dminuoso: back
2021-06-19 21:06:25 +0200 <arjun> ITS A WIN
2021-06-19 21:06:29 +0200 <Cajun> in what other way should i go about installing the library?
2021-06-19 21:06:31 +0200 <dminuoso> The problem has to do with the fact that each project you install produces fixed constraints. This quickly leads to unbuildable projects if you install one lib at a time.
2021-06-19 21:06:57 +0200 <dminuoso> Cajun: Presumably you're writing some software project, right?
2021-06-19 21:07:08 +0200merijn(~merijn@83-160-49-249.ip.xs4all.nl) (Ping timeout: 252 seconds)
2021-06-19 21:07:23 +0200 <arjun> dminuoso: so what you have to do is. first let it start in whatever target it starts. then you CHANGE the target with `haskell-session-change-target`
2021-06-19 21:07:45 +0200warnz(~warnz@2600:1700:77c0:5610:d5d8:e36a:2948:a4e3)
2021-06-19 21:07:51 +0200 <dminuoso> arjun: Ah, that sounds better indeed.
2021-06-19 21:08:01 +0200 <dminuoso> Im not familiar with haskell interactive mode, so Im just skimming the source
2021-06-19 21:08:12 +0200 <arjun> dminuoso: you were a real help
2021-06-19 21:08:13 +0200 <dminuoso> arjun: since you appear to be using haskell-mode yourself
2021-06-19 21:08:17 +0200 <dminuoso> can you give me 5 minutes of your time?
2021-06-19 21:08:27 +0200 <arjun> dminuoso: you have em.
2021-06-19 21:08:31 +0200 <Cajun> dminuoso: working through the parallel/concurrent textbook and `repa-devil` for one of the examples is deprecated in favor of `friday`. i have no idea how to use cabal (i know more about stack, but stack just hates building this project) so adding it to the dependencies seems daunting
2021-06-19 21:08:50 +0200 <dminuoso> arjun: Can you try and reproduce this one quickly? https://github.com/haskell/haskell-mode/issues/1751
2021-06-19 21:08:56 +0200 <dminuoso> (please try both terminal and gui mode)
2021-06-19 21:09:36 +0200 <dminuoso> Cajun: So the usual method is to set up a project directly, use `cabal init`, and then add all dependencies to the build-depends section
2021-06-19 21:09:56 +0200 <dminuoso> Then, assuming you have a relatively recent version of cabal, you just `cabal build`, and it will automatically grab dependencies for you
2021-06-19 21:10:24 +0200 <dminuoso> arjun: if you're on nix, dont use my nix expression.
2021-06-19 21:10:33 +0200amirouche(~amirouche@user/amirouche)
2021-06-19 21:10:35 +0200 <amirouche> hello
2021-06-19 21:10:56 +0200 <arjun> dminuoso: i am just reading through the issue now.
2021-06-19 21:10:57 +0200jneira_(~jneira_@131.red-79-155-1.dynamicip.rima-tde.net)
2021-06-19 21:11:06 +0200 <arjun> i was having similar scroll problems
2021-06-19 21:11:16 +0200 <arjun> solved them by disabling lsp-ui-mode
2021-06-19 21:11:33 +0200 <amirouche> what is the name of the relation between to predicates p1 and p2, for all x, p1(x) != p2(x)
2021-06-19 21:11:34 +0200 <amirouche> ?
2021-06-19 21:11:39 +0200 <amirouche> s/to/two/
2021-06-19 21:11:42 +0200 <dminuoso> arjun: are you on graphical emacs or terminal?
2021-06-19 21:11:53 +0200warnz(~warnz@2600:1700:77c0:5610:d5d8:e36a:2948:a4e3) (Ping timeout: 252 seconds)
2021-06-19 21:12:02 +0200ubert(~Thunderbi@p200300ecdf259d37886351c709683887.dip0.t-ipconnect.de) (Quit: ubert)
2021-06-19 21:12:08 +0200 <arjun> dminuoso: graphical. pgtk nativecomp at that : P
2021-06-19 21:12:44 +0200 <dminuoso> arjun: then it likely wouldnt reproduce. but give it a run in both gui and terminal
2021-06-19 21:12:48 +0200 <dminuoso> so far I can only reproduce in terminal
2021-06-19 21:13:04 +0200 <arjun> i see.
2021-06-19 21:13:09 +0200 <dminuoso> I havent quite figured out what makes terminal so special, because the underlying issue should be apparent in both
2021-06-19 21:13:57 +0200 <Cajun> dminuoso: thanks a bunch, im new to cabal and adding it to the project dependencies went entirely over my head
2021-06-19 21:14:43 +0200 <dminuoso> Cajun: It should be really straight forward. Feel free to present any issue you have
2021-06-19 21:16:41 +0200tomsmedingthought the thing of adding dependencies to the project instead of installing them globally worked that way with stack too
2021-06-19 21:18:50 +0200eight(~eight@user/eight) (Remote host closed the connection)
2021-06-19 21:19:27 +0200jneira_(~jneira_@131.red-79-155-1.dynamicip.rima-tde.net) (Ping timeout: 258 seconds)
2021-06-19 21:20:08 +0200Ed901(~Ed901@73.59.251.217)
2021-06-19 21:21:01 +0200euandreh(~euandreh@2804:14c:33:9fe5:fa26:649a:e763:b306) (Quit: WeeChat 3.1)
2021-06-19 21:21:11 +0200rawles(~o@sputnik.rawles.net)
2021-06-19 21:21:17 +0200euandreh(~euandreh@2804:14c:33:9fe5:c617:f0e4:6f11:e3af)
2021-06-19 21:22:03 +0200darxun(sid504814@id-504814.tinside.irccloud.com)
2021-06-19 21:22:03 +0200 <arjun> dminuoso: i think i do not get what i have to cut paste repeatedly?
2021-06-19 21:22:09 +0200 <dminuoso> mmm
2021-06-19 21:22:35 +0200 <arjun> the file is 11575 lines
2021-06-19 21:22:56 +0200 <dminuoso> arjun: Yes. Go to the last definition of `info`
2021-06-19 21:23:01 +0200 <dminuoso> And then cut everything below it
2021-06-19 21:23:23 +0200 <arjun> did
2021-06-19 21:23:26 +0200 <arjun> now ?
2021-06-19 21:23:30 +0200 <dminuoso> yank it back in
2021-06-19 21:23:32 +0200 <dminuoso> repeat 3-4 times
2021-06-19 21:23:48 +0200 <arjun> undo it?
2021-06-19 21:23:51 +0200 <dminuoso> No
2021-06-19 21:23:53 +0200 <arjun> or cut it again?
2021-06-19 21:24:00 +0200 <dminuoso> you shouldnt even have undo-tree-mode enabled :)
2021-06-19 21:24:03 +0200 <dminuoso> cut it again
2021-06-19 21:24:11 +0200 <arjun> yea, i read the instructions
2021-06-19 21:24:14 +0200 <arjun> disabled it
2021-06-19 21:24:36 +0200 <dminuoso> the idea is to simulate some editing by removing stuff and inserting it
2021-06-19 21:26:23 +0200 <dminuoso> The size of chunk is just what I experimentally determined to work fast with just 3-4 cut and yank operations to make scrolling over the top part incredibly slow.
2021-06-19 21:26:48 +0200 <arjun> dminuoso: can reproduce
2021-06-19 21:27:00 +0200 <arjun> slow af after 5-6 cut/pastes
2021-06-19 21:27:01 +0200 <dminuoso> arjun: just on terminal or gui too?
2021-06-19 21:27:03 +0200Ed901(~Ed901@73.59.251.217) (Quit: Client closed)
2021-06-19 21:27:18 +0200 <arjun> fast af after i M-: (garbage-collect)
2021-06-19 21:27:33 +0200tromp(~textual@dhcp-077-249-230-040.chello.nl) (Quit: My iMac has gone to sleep. ZZZzzz…)
2021-06-19 21:27:40 +0200 <arjun> dminuoso: this was on terminal (emacs -nw)
2021-06-19 21:27:51 +0200 <dminuoso> Alright, this is good. can you make a not in the issue and include your emacs version, as well as the output of your `C-h v system-configuration-options`
2021-06-19 21:28:19 +0200 <arjun> its the default terminal gnome emluator not something gpu accelerated like alacritty
2021-06-19 21:28:30 +0200 <dminuoso> yeah thats fine
2021-06-19 21:28:34 +0200 <arjun> dminuoso: i guess? give me a sec.
2021-06-19 21:28:34 +0200 <dminuoso> its not related to the terminal
2021-06-19 21:28:49 +0200 <dminuoso> Ive pinpointed the immediate cause of the slowness, I just dont know what triggers it
2021-06-19 21:29:07 +0200 <dminuoso> there's something about the font locking code in haskell-mode that appears to introduce markers for each line inserted
2021-06-19 21:29:25 +0200 <arjun> lsp-mode scrolling is also screwed up
2021-06-19 21:29:30 +0200phma(phma@2001:5b0:210d:afc8:5ec1:374f:fafc:21e6) (Read error: Connection reset by peer)
2021-06-19 21:29:37 +0200ddellacosta(~ddellacos@86.106.121.100)
2021-06-19 21:29:40 +0200phma(~phma@host-67-44-209-29.hnremote.net)
2021-06-19 21:29:40 +0200 <qrpnxz> how come Applicative and Monad are in Control, but Functor is in Data?
2021-06-19 21:29:43 +0200 <arjun> which gets better after disabling lsp-ui-mode, i found out.
2021-06-19 21:29:48 +0200 <dminuoso> qrpnxz: hysterical raisins
2021-06-19 21:29:55 +0200 <qrpnxz> wut
2021-06-19 21:30:16 +0200 <arjun> qrpnxz: he probably want's to say "historical reasons"
2021-06-19 21:30:19 +0200 <dminuoso> It's a homophone on "historical reasons"
2021-06-19 21:30:25 +0200 <geekosaur> "historical reasons" aka nobody really thought things out back then
2021-06-19 21:30:30 +0200 <qrpnxz> lol
2021-06-19 21:30:56 +0200 <boxscape> qrpnxz https://www.tweag.io/blog/2020-01-16-data-vs-control/
2021-06-19 21:31:02 +0200 <qrpnxz> i thought maybe there was a deeper philosophical reason
2021-06-19 21:31:04 +0200 <qrpnxz> ty box
2021-06-19 21:31:17 +0200jmcarthur(~jmcarthur@c-73-29-224-10.hsd1.nj.comcast.net) (Quit: My MacBook Air has gone to sleep. ZZZzzz…)
2021-06-19 21:32:10 +0200 <qrpnxz> oh boy it's bringing up linear types
2021-06-19 21:32:12 +0200 <qrpnxz> hahaha
2021-06-19 21:32:22 +0200voldial(~user@195.179.201.175)
2021-06-19 21:32:44 +0200 <dminuoso> boxscape: That seems more like a retroactive definition.
2021-06-19 21:32:51 +0200ormaajiteratee
2021-06-19 21:32:56 +0200 <boxscape> dminuoso ...yes, I suppose it is
2021-06-19 21:33:55 +0200 <qrpnxz> even if it's retroactive it can be valid. If they put them in the correct modules by accident, it would still be correct xD
2021-06-19 21:34:01 +0200ddellacosta(~ddellacos@86.106.121.100) (Ping timeout: 258 seconds)
2021-06-19 21:34:08 +0200 <qrpnxz> and they coulda changed it
2021-06-19 21:34:27 +0200 <boxscape> well, things change slowly in base
2021-06-19 21:34:41 +0200fizbin(~fizbin@c-73-33-197-160.hsd1.nj.comcast.net)
2021-06-19 21:35:10 +0200 <boxscape> (for good reason, since you wouldn't want every package maintainer to have to change their import list for this change)
2021-06-19 21:36:48 +0200voldial(~user@195.179.201.175) (Changing host)
2021-06-19 21:36:48 +0200voldial(~user@user/voldial)
2021-06-19 21:38:27 +0200 <arjun> dminuoso: https://github.com/haskell/haskell-mode/issues/1751#issuecomment-864454402
2021-06-19 21:39:02 +0200fizbin(~fizbin@c-73-33-197-160.hsd1.nj.comcast.net) (Ping timeout: 252 seconds)
2021-06-19 21:39:03 +0200iterateeormaaj
2021-06-19 21:40:29 +0200 <dminuoso> arjun: cheers, which exact version did you use?
2021-06-19 21:40:52 +0200 <arjun> dminuoso: uhm, version of what?
2021-06-19 21:41:36 +0200 <qrpnxz> interesting article box, thought i don't see how these linearly typed modifications relate to the actual fun, app, mon classes in base
2021-06-19 21:41:47 +0200 <dminuoso> arjun: your emacs?
2021-06-19 21:41:48 +0200warnz(~warnz@2600:1700:77c0:5610:d5d8:e36a:2948:a4e3)
2021-06-19 21:41:59 +0200ormaaj(~ormaaj@2001:470:69fc:105::35ca) (Quit: Reconnecting)
2021-06-19 21:42:17 +0200 <arjun> dminuoso: This is GNU Emacs 28.0.50 (build 3, x86_64-pc-linux-gnu, GTK+ Version 3.24.29, cairo version 1.17.4)
2021-06-19 21:42:17 +0200 <arjun> of 2021-06-04
2021-06-19 21:42:18 +0200 <arjun> Copyright (C) 2021 Free Software Foundation, Inc.
2021-06-19 21:42:18 +0200ormaaj(~ormaaj@2001:470:69fc:105::35ca)
2021-06-19 21:42:32 +0200 <dminuoso> Cheers, could you include that into your comment as well? That's it, you've been a big help./
2021-06-19 21:42:53 +0200 <arjun> dminuoso: hey, you help people, you get helped. period.
2021-06-19 21:43:13 +0200 <qrpnxz> nvm i think i get it
2021-06-19 21:44:00 +0200Bartosz(~textual@24.35.90.211) (Quit: My MacBook has gone to sleep. ZZZzzz…)
2021-06-19 21:44:22 +0200benin0369(~benin@183.82.205.58) (Ping timeout: 258 seconds)
2021-06-19 21:44:32 +0200eggplantade(~Eggplanta@2600:1700:bef1:5e10:1543:9aaf:78fa:158)
2021-06-19 21:44:41 +0200 <arjun> dminuoso: did the edit.
2021-06-19 21:44:43 +0200 <arjun> see you around
2021-06-19 21:44:43 +0200rawles(~o@sputnik.rawles.net) (Quit: -)
2021-06-19 21:45:05 +0200 <qrpnxz> boxscape, is it the case then that all functor instances for monad instances are these kinds of linear control functors?
2021-06-19 21:45:23 +0200 <qrpnxz> and likewise that data.applicatives don't have monad instances?
2021-06-19 21:45:50 +0200 <boxscape> qrpnxz I believe so, though I haven't thought about it in detail
2021-06-19 21:45:50 +0200 <qrpnxz> or rather "data.monad" lol
2021-06-19 21:45:58 +0200 <qrpnxz> very very interesting
2021-06-19 21:46:06 +0200warnz(~warnz@2600:1700:77c0:5610:d5d8:e36a:2948:a4e3) (Ping timeout: 244 seconds)
2021-06-19 21:46:14 +0200 <qrpnxz> thx again
2021-06-19 21:46:25 +0200 <boxscape> you're welcome
2021-06-19 21:47:37 +0200arjun(~user@user/arjun) (Remote host closed the connection)
2021-06-19 21:48:12 +0200fabfianda(~fabfianda@mob-5-90-241-140.net.vodafone.it) (Ping timeout: 252 seconds)
2021-06-19 21:48:20 +0200benin0369(~benin@183.82.205.58)
2021-06-19 21:49:10 +0200eggplantade(~Eggplanta@2600:1700:bef1:5e10:1543:9aaf:78fa:158) (Ping timeout: 265 seconds)
2021-06-19 21:49:13 +0200fabfianda(~fabfianda@net-109-116-251-109.cust.vodafonedsl.it)
2021-06-19 21:49:45 +0200eggplantade(~Eggplanta@2600:1700:bef1:5e10:1543:9aaf:78fa:158)
2021-06-19 21:51:53 +0200betelgeuse(~john2gb@94-225-47-8.access.telenet.be) (Quit: The Lounge - https://thelounge.chat)
2021-06-19 21:57:11 +0200zeenk(~zeenk@82.76.113.130)
2021-06-19 22:00:49 +0200ddellacosta(~ddellacos@86.106.121.100)
2021-06-19 22:01:02 +0200jneira_(~jneira_@131.red-79-155-1.dynamicip.rima-tde.net)
2021-06-19 22:04:15 +0200rawles(~o@sputnik.rawles.net)
2021-06-19 22:05:04 +0200ddellacosta(~ddellacos@86.106.121.100) (Ping timeout: 252 seconds)
2021-06-19 22:05:04 +0200juhp(~juhp@128.106.188.66) (Ping timeout: 258 seconds)
2021-06-19 22:07:53 +0200juhp(~juhp@128.106.188.66)
2021-06-19 22:09:32 +0200tromp(~textual@dhcp-077-249-230-040.chello.nl)
2021-06-19 22:09:50 +0200jao(jao@gateway/vpn/protonvpn/jao) (Ping timeout: 252 seconds)
2021-06-19 22:11:19 +0200ddellacosta(~ddellacos@86.106.121.100)
2021-06-19 22:11:52 +0200jao(~jao@cpc103048-sgyl39-2-0-cust502.18-2.cable.virginm.net)
2021-06-19 22:12:48 +0200 <boxscape> ugh, the haskell report says "variables bound by let have fully polymorphic types while those defined by <-are lambda bound and are thus monomorphic" and then gives the identity laws for <- in terms of let
2021-06-19 22:13:02 +0200 <boxscape> oh wait
2021-06-19 22:13:15 +0200 <boxscape> I suppose the let defines a function, which is the same as a lambda
2021-06-19 22:13:24 +0200 <boxscape> I guess that's the important bit
2021-06-19 22:15:56 +0200 <boxscape> mainly I'm wondering if having `do {x <- ask; return x}` throw a compile time error, but `ask >>= \x -> return x` work in some situations constitutes a GHC bug or could be seen as expected behavior
2021-06-19 22:17:30 +0200warnz(~warnz@2600:1700:77c0:5610:d5d8:e36a:2948:a4e3)
2021-06-19 22:19:28 +0200tromp(~textual@dhcp-077-249-230-040.chello.nl) (Quit: My iMac has gone to sleep. ZZZzzz…)
2021-06-19 22:19:39 +0200jneira_(~jneira_@131.red-79-155-1.dynamicip.rima-tde.net) (Ping timeout: 265 seconds)
2021-06-19 22:19:46 +0200Morrow(~MorrowM_@bzq-110-168-31-106.red.bezeqint.net) (Ping timeout: 268 seconds)
2021-06-19 22:19:49 +0200 <boxscape> (this is the example I'm looking at https://paste.tomsmeding.com/RNgN10f2 )
2021-06-19 22:19:58 +0200_ht(~quassel@82-169-194-8.biz.kpn.net) (Remote host closed the connection)
2021-06-19 22:20:18 +0200 <dminuoso> boxscape: which GHC version?
2021-06-19 22:20:22 +0200 <boxscape> HEAD
2021-06-19 22:20:23 +0200Morrow(~Morrow@bzq-110-168-31-106.red.bezeqint.net)
2021-06-19 22:20:33 +0200 <boxscape> (i.e. 9.3)
2021-06-19 22:20:34 +0200 <dminuoso> Has quicklook been merged into that already?
2021-06-19 22:20:37 +0200 <boxscape> yes
2021-06-19 22:21:09 +0200 <dminuoso> Curious, what compilation error do you get?
2021-06-19 22:21:22 +0200 <boxscape> right, I was going to include that, hold on
2021-06-19 22:22:02 +0200warnz(~warnz@2600:1700:77c0:5610:d5d8:e36a:2948:a4e3) (Ping timeout: 265 seconds)
2021-06-19 22:22:47 +0200 <boxscape> dminuoso https://paste.tomsmeding.com/h9KZpAeO
2021-06-19 22:24:20 +0200stefan-_(~cri@42dots.de) (Ping timeout: 244 seconds)
2021-06-19 22:25:27 +0200MorrowM(~MorrowM_@bzq-110-168-31-106.red.bezeqint.net)
2021-06-19 22:25:30 +0200 <dminuoso> boxscape: Judging from the haskell report, your quoted section does seem to apply, no?
2021-06-19 22:25:58 +0200wroathe(~wroathe@c-68-54-25-135.hsd1.mn.comcast.net)
2021-06-19 22:26:11 +0200 <boxscape> yes, but I would expect that this shouldn't make the two different? Since x is "lambda bound" in both
2021-06-19 22:26:32 +0200blackbart(~sv@pool-173-63-177-191.nwrknj.fios.verizon.net) (Quit: leaving)
2021-06-19 22:26:43 +0200 <boxscape> (Not sure if you were arguing for it being a bug or it being expected, actually)
2021-06-19 22:27:01 +0200 <dminuoso> The term "lambda bound" is sadly not defined anywhere
2021-06-19 22:27:58 +0200derelict(~derelict@user/derelict)
2021-06-19 22:28:22 +0200stefan-_(~cri@42dots.de)
2021-06-19 22:29:06 +0200cuz(~user@2601:182:cc02:8b0:2101:5597:2ede:b8bf) (Ping timeout: 240 seconds)
2021-06-19 22:30:42 +0200 <dminuoso> boxscape: but I guess you are right
2021-06-19 22:32:17 +0200 <dminuoso> boxscape: out of curiosity, is this in GHCi or GHC?
2021-06-19 22:32:22 +0200 <boxscape> ghci
2021-06-19 22:32:58 +0200 <dminuoso> I stumbled over some fancy bits suggesting that there's some subtle differences in type checking depending on whether its in GHCi or not....
2021-06-19 22:33:03 +0200 <dminuoso> o.o
2021-06-19 22:33:12 +0200 <boxscape> huh, well, I'll try ghc
2021-06-19 22:33:35 +0200 <boxscape> same thing
2021-06-19 22:33:38 +0200 <dminuoso> boxscape: judging from the code its the other way around
2021-06-19 22:33:42 +0200 <dminuoso> ghci admits slightly more
2021-06-19 22:33:46 +0200 <boxscape> I see
2021-06-19 22:36:38 +0200 <boxscape> dminuoso it could be that due to RankNTypes variables bound by lambdas can be polymorphic (during checking, but not inference) but that this doesn't extend to variables bound by <-. Which would not need to be covered by the report since it doesn't have RankNTypes
2021-06-19 22:38:31 +0200 <boxscape> I wonder if I can find an example of this that doesn't need ImpredicativeTypes, but RankNTypes
2021-06-19 22:39:19 +0200xff0x(~xff0x@2001:1a81:5339:fe00:214:efbd:9851:b8b5) (Ping timeout: 244 seconds)
2021-06-19 22:39:53 +0200Guest9(~Guest9@103.250.137.22)
2021-06-19 22:40:27 +0200xff0x(~xff0x@2001:1a81:5339:fe00:6f23:db32:56d4:ea84)
2021-06-19 22:41:21 +0200ml90864(~ml90864@81-204-103-231.fixed.kpn.net) (Quit: Lost terminal)
2021-06-19 22:45:45 +0200jneira_(~jneira_@131.red-79-155-1.dynamicip.rima-tde.net)
2021-06-19 22:45:53 +0200 <dminuoso> boxscape: what about `newtype F = F (forall s. s)` and `do { F s <- ... }`?
2021-06-19 22:46:18 +0200MoC(~moc@user/moc) (Quit: Konversation terminated!)
2021-06-19 22:48:03 +0200 <boxscape> dminuoso ah, interesting, that doesn't produce a compile error, and s is indeed polymorphic
2021-06-19 22:49:10 +0200 <boxscape> I suppose I'll report it as a bug then
2021-06-19 22:51:21 +0200bitmapper(uid464869@id-464869.tooting.irccloud.com) (Quit: Connection closed for inactivity)
2021-06-19 22:53:50 +0200mikoto-chan(~mikoto-ch@ip-213-49-189-31.dsl.scarlet.be) (Ping timeout: 252 seconds)
2021-06-19 22:59:08 +0200neceve(~quassel@2a02:c7f:607e:d600:a95a:ecd2:e57a:3130) (Ping timeout: 252 seconds)
2021-06-19 23:03:49 +0200merijn(~merijn@83-160-49-249.ip.xs4all.nl)
2021-06-19 23:04:51 +0200wootehfoot(~wootehfoo@user/wootehfoot) (Quit: Leaving)
2021-06-19 23:05:14 +0200wootehfoot(~wootehfoo@user/wootehfoot)
2021-06-19 23:06:34 +0200 <boxscape> turns out the Reader newtype isn't necessary, the same thing happens without it, but *only* if ImpredicativeTypes is on, otherwise neither version will compile
2021-06-19 23:07:50 +0200jmcarthur(~jmcarthur@c-73-29-224-10.hsd1.nj.comcast.net)
2021-06-19 23:08:05 +0200jonathanx_(~jonathan@h-178-174-176-109.A357.priv.bahnhof.se) (Remote host closed the connection)
2021-06-19 23:08:24 +0200jonathanx_(~jonathan@h-178-174-176-109.A357.priv.bahnhof.se)
2021-06-19 23:09:54 +0200hueso(~root@user/hueso) (Ping timeout: 264 seconds)
2021-06-19 23:11:19 +0200chazza(~igloo@94.5.6.23)
2021-06-19 23:12:59 +0200chazza(~igloo@94.5.6.23) (Remote host closed the connection)
2021-06-19 23:14:06 +0200hueso(~root@user/hueso)
2021-06-19 23:15:16 +0200pbrisbin(~patrick@pool-72-92-38-164.phlapa.fios.verizon.net)
2021-06-19 23:17:48 +0200ddellaco_(~ddellacos@86.106.121.100)
2021-06-19 23:20:02 +0200ddellacosta(~ddellacos@86.106.121.100) (Ping timeout: 265 seconds)
2021-06-19 23:20:35 +0200boxscape(~boxscape@user/boxscape) (Quit: Connection closed)
2021-06-19 23:21:26 +0200boxscape(~boxscape@user/boxscape)
2021-06-19 23:23:04 +0200img(~img@user/img) (Quit: ZNC 1.8.2 - https://znc.in)
2021-06-19 23:23:48 +0200Guest9(~Guest9@103.250.137.22) (Quit: Connection closed)
2021-06-19 23:24:37 +0200img(~img@user/img)
2021-06-19 23:24:47 +0200xff0x(~xff0x@2001:1a81:5339:fe00:6f23:db32:56d4:ea84) (Ping timeout: 244 seconds)
2021-06-19 23:24:48 +0200chrysanthematic(~chrysanth@user/chrysanthematic) (Quit: chrysanthematic)
2021-06-19 23:25:39 +0200xff0x(~xff0x@2001:1a81:5339:fe00:b030:ca5c:f625:5fbb)
2021-06-19 23:26:06 +0200werneta(~werneta@70-142-214-115.lightspeed.irvnca.sbcglobal.net)
2021-06-19 23:26:48 +0200ph88^(~ph88@2a02:8109:9e00:7e5c:1960:9d14:60f8:23cf) (Ping timeout: 265 seconds)
2021-06-19 23:27:26 +0200cercerilla(~rebecca@024-178-254-009.res.spectrum.com) (Quit: WeeChat 3.2)
2021-06-19 23:27:41 +0200bilegeek(~bilegeek@2600:1008:b017:63a6:c26d:d119:faaa:a6d7)
2021-06-19 23:27:43 +0200wootehfoot(~wootehfoo@user/wootehfoot) (Quit: Leaving)
2021-06-19 23:37:50 +0200merijn(~merijn@83-160-49-249.ip.xs4all.nl) (Ping timeout: 258 seconds)
2021-06-19 23:38:02 +0200jmcarthur(~jmcarthur@c-73-29-224-10.hsd1.nj.comcast.net) (Quit: My MacBook Air has gone to sleep. ZZZzzz…)
2021-06-19 23:38:20 +0200finsternis(~Y@23.226.237.192) (Remote host closed the connection)
2021-06-19 23:39:28 +0200gehmehgeh(~user@user/gehmehgeh) (Quit: Leaving)
2021-06-19 23:40:29 +0200 <qrpnxz> eh, bind is kind of like traverse. If i map kleisi over a monad and then join it, that's bind. Likewise if i map a "normal" func over a traversal and then sequence it, that's traverse.
2021-06-19 23:40:49 +0200 <qrpnxz> they both kind of "collapse"
2021-06-19 23:40:51 +0200 <dminuoso> qrpnxz: not quite
2021-06-19 23:41:09 +0200 <qrpnxz> what's not quite what
2021-06-19 23:41:20 +0200qbt(~edun@user/edun) (Ping timeout: 265 seconds)
2021-06-19 23:41:25 +0200 <dminuoso> % :t sequence
2021-06-19 23:41:26 +0200 <yahb> dminuoso: (Traversable t, Monad m) => t (m a) -> m (t a)
2021-06-19 23:41:27 +0200 <dminuoso> % :t join
2021-06-19 23:41:27 +0200 <yahb> dminuoso: Monad m => m (m a) -> m a
2021-06-19 23:41:53 +0200 <qrpnxz> yes
2021-06-19 23:41:57 +0200 <dminuoso> qrpnxz: sequence sort of "flips" these two around (which amounts to running the effects in some structure, in sequence, while putting the results back in)
2021-06-19 23:42:02 +0200 <dminuoso> There's no "collapse"
2021-06-19 23:42:55 +0200 <dminuoso> Let's set t ~ [], m ~ IO and a ~ Int for arguments sake:
2021-06-19 23:43:02 +0200 <dminuoso> [IO Int] -> IO [Int]
2021-06-19 23:43:09 +0200 <dminuoso> See how the list is still there at the end?
2021-06-19 23:43:12 +0200Morrow(~Morrow@bzq-110-168-31-106.red.bezeqint.net) (Ping timeout: 258 seconds)
2021-06-19 23:43:38 +0200 <qrpnxz> ya know i put scare quotes on that for a reason lol
2021-06-19 23:43:46 +0200 <qrpnxz> point is they are kinda similar
2021-06-19 23:44:04 +0200ddellacosta(~ddellacos@86.106.121.100)
2021-06-19 23:44:08 +0200 <dminuoso> only in the sense that `sequence` uses `join/bind` internally
2021-06-19 23:44:14 +0200egoist(~egoist@186.235.85.100) (Ping timeout: 265 seconds)
2021-06-19 23:44:15 +0200 <dminuoso> but that's the extend of it.
2021-06-19 23:44:16 +0200ddellacosta(~ddellacos@86.106.121.100) (Remote host closed the connection)
2021-06-19 23:44:22 +0200ddellaco_(~ddellacos@86.106.121.100) (Read error: Connection reset by peer)
2021-06-19 23:44:33 +0200 <dminuoso> strictly speaking, it doesnt even need join/bin, applicative is enough
2021-06-19 23:44:38 +0200 <dminuoso> % :t sequenceA
2021-06-19 23:44:39 +0200 <yahb> dminuoso: (Traversable t, Applicative f) => t (f a) -> f (t a)
2021-06-19 23:45:04 +0200 <qrpnxz> i think the idea that there's a map of a certain kind of function and then the results has a magical transformation is what i'm drawn to
2021-06-19 23:45:27 +0200 <dminuoso> well sure, there's a sort of visual similarity between
2021-06-19 23:45:31 +0200 <dminuoso> % :t (=<<)
2021-06-19 23:45:32 +0200 <yahb> dminuoso: Monad m => (a -> m b) -> m a -> m b
2021-06-19 23:45:35 +0200 <dminuoso> % :t traverse
2021-06-19 23:45:36 +0200 <yahb> dminuoso: (Traversable t, Applicative f) => (a -> f b) -> t a -> f (t b)
2021-06-19 23:47:30 +0200 <qrpnxz> (=<<) f = join . fmap f and traverse f = sequence . fmap f
2021-06-19 23:48:25 +0200 <qrpnxz> so then i wonder like monad is a thing in category theory, i wonder if then also traversal has a kind of thing in cat theory as well that is simple idk
2021-06-19 23:49:43 +0200 <qrpnxz> I think i read somewhere that if you can form a kleisli category for your type then it's a monad. I wonder if there's something like that for tranverse
2021-06-19 23:49:55 +0200 <qrpnxz> *traverse
2021-06-19 23:50:27 +0200 <dminuoso> So Im looking at a paper that introduces the notion of a "traversable functor" defined as
2021-06-19 23:51:05 +0200 <qrpnxz> would that be to traversable as applicative is to monads?
2021-06-19 23:51:35 +0200 <qrpnxz> sorry i'll let you finish
2021-06-19 23:51:44 +0200 <dminuoso> T : Set -> Set, equipped with a family of natural transfomrations δ_f_x : TFX - > FTX natural in F and respecting the monoidal structure of applicative functor composition.
2021-06-19 23:52:17 +0200 <qrpnxz> that's beyond me lol
2021-06-19 23:52:25 +0200 <qrpnxz> i'll look into it tho
2021-06-19 23:52:25 +0200Morrow_(~MorrowM_@bzq-110-168-31-106.red.bezeqint.net)
2021-06-19 23:52:59 +0200ph88^(~ph88@2a02:8109:9e00:7e5c:1960:9d14:60f8:23cf)
2021-06-19 23:53:10 +0200Lycurgus(~juan@cpe-45-46-140-49.buffalo.res.rr.com)
2021-06-19 23:54:11 +0200 <dminuoso> Well I guess this really is just a traversable functor
2021-06-19 23:54:20 +0200 <dminuoso> It's a 1:1 mapping of the traversable laws
2021-06-19 23:54:25 +0200 <qrpnxz> yes
2021-06-19 23:54:33 +0200 <dminuoso> If we consider
2021-06-19 23:54:37 +0200 <dminuoso> traverse (Compose . fmap g . f) = Compose . fmap (traverse g) . traverse f
2021-06-19 23:54:40 +0200 <dminuoso> traverse Identity = Identity
2021-06-19 23:55:06 +0200 <dminuoso> Identity being the identity element with respect to functor composition
2021-06-19 23:55:28 +0200MorrowM(~MorrowM_@bzq-110-168-31-106.red.bezeqint.net) (Ping timeout: 258 seconds)
2021-06-19 23:55:45 +0200 <dminuoso> qrpnxz: but really, its different from monad in a lot of ways
2021-06-19 23:56:28 +0200egoist(~egoist@186.235.85.100)
2021-06-19 23:56:35 +0200 <dminuoso> In some way you can think of traversal as being able to update with sequenced effects, but that is independent of which monad being used.
2021-06-19 23:56:42 +0200 <qrpnxz> Yeah they are for totally different things afaict. It just seemed neat that they kind of "rhyme"
2021-06-19 23:57:07 +0200 <dminuoso> qrpnxz: If you care for such pleasantries, you might perhaps be interested in the inner workings on `lens` perhaps.
2021-06-19 23:57:52 +0200 <qrpnxz> i've been looking into lens a lot yeah. The traversal class in particular. The author made a really nice presentation on it that kind of blew my mind and i have to watch it again xd
2021-06-19 23:58:09 +0200 <dminuoso> Lenses are coalgebras of the costate comonad.
2021-06-19 23:58:15 +0200 <dminuoso> :)
2021-06-19 23:58:19 +0200Melvar(~melvar@dslb-088-066-199-085.088.066.pools.vodafone-ip.de) (Quit: WeeChat 3.0.1)
2021-06-19 23:58:25 +0200 <qrpnxz> 😂️
2021-06-19 23:59:00 +0200 <qrpnxz> i'm reading through The Essence of the Iterator Pattern right now thought, because i want better foundation in my head for traversable before i can look more into traversal
2021-06-19 23:59:36 +0200chrysanthematic(~chrysanth@user/chrysanthematic)