2022/11/07

2022-11-07 00:02:44 +0100ec_(~ec@gateway/tor-sasl/ec) (Remote host closed the connection)
2022-11-07 00:02:50 +0100mixfix41(~sdeny9ee@user/mixfix41)
2022-11-07 00:03:18 +0100ec_(~ec@gateway/tor-sasl/ec)
2022-11-07 00:03:22 +0100merijn(~merijn@86-86-29-250.fixed.kpn.net) (Ping timeout: 252 seconds)
2022-11-07 00:04:59 +0100perrierjouet(~perrier-j@modemcable048.127-56-74.mc.videotron.ca) (Quit: WeeChat 3.7.1)
2022-11-07 00:08:05 +0100acidjnk(~acidjnk@p200300d6e7137a34a83ca8648edd44e3.dip0.t-ipconnect.de) (Ping timeout: 246 seconds)
2022-11-07 00:15:55 +0100 <Axman6> anyone know which parser combinator libraries have IsString instalces for their parsers?
2022-11-07 00:16:21 +0100ec_(~ec@gateway/tor-sasl/ec) (Remote host closed the connection)
2022-11-07 00:16:44 +0100ec_(~ec@gateway/tor-sasl/ec)
2022-11-07 00:17:11 +0100 <tomsmeding> (can't you write an orphan instance for any lib?)
2022-11-07 00:17:40 +0100perrierjouet(~perrier-j@modemcable048.127-56-74.mc.videotron.ca)
2022-11-07 00:18:12 +0100mcglk(~mcglk@131.191.49.120) (Read error: Connection reset by peer)
2022-11-07 00:19:39 +0100notzmv(~zmv@user/notzmv) (Ping timeout: 248 seconds)
2022-11-07 00:20:31 +0100mcglk(~mcglk@131.191.49.120)
2022-11-07 00:26:45 +0100 <jackdk> nooooooooo
2022-11-07 00:27:37 +0100perrierjouet(~perrier-j@modemcable048.127-56-74.mc.videotron.ca) (Quit: WeeChat 3.7.1)
2022-11-07 00:28:07 +0100gurkenglas(~gurkengla@p548ac72e.dip0.t-ipconnect.de) (Ping timeout: 252 seconds)
2022-11-07 00:31:28 +0100 <hyiltiz> tomsmeding: I see, thanks for the brief intro; now I think I can take a peek and attempt to understand
2022-11-07 00:32:03 +0100thyriaen(~thyriaen@2a01:aea0:dd4:470d:6245:cbff:fe9f:48b1) (Remote host closed the connection)
2022-11-07 00:37:40 +0100zeenk(~zeenk@2a02:2f04:a105:5d00:c862:f190:2ea:d494) (Quit: Konversation terminated!)
2022-11-07 00:38:19 +0100libertyprime(~libertypr@118-92-78-165.dsl.dyn.ihug.co.nz) (Ping timeout: 248 seconds)
2022-11-07 00:39:28 +0100elevenkb(~elevenkb@105.184.125.168)
2022-11-07 00:46:01 +0100libertyprime(~libertypr@118-92-78-165.dsl.dyn.ihug.co.nz)
2022-11-07 00:46:16 +0100elevenkb(~elevenkb@105.184.125.168) (Remote host closed the connection)
2022-11-07 00:50:19 +0100ph88(~ph88@2a02:8109:9e00:71d0:5eeb:df0e:8181:78db) (Quit: Leaving)
2022-11-07 00:51:36 +0100simpleauthority(~simpleaut@user/simpleauthority) (Quit: ZNC 1.8.2 - https://znc.in)
2022-11-07 00:52:07 +0100simpleauthority(~simpleaut@user/simpleauthority)
2022-11-07 00:54:59 +0100chomwitt(~chomwitt@2a02:587:7a0a:c00:1ac0:4dff:fedb:a3f1) (Ping timeout: 255 seconds)
2022-11-07 00:55:34 +0100perrierjouet(~perrier-j@modemcable048.127-56-74.mc.videotron.ca)
2022-11-07 00:58:35 +0100Tuplanolla(~Tuplanoll@91-159-69-11.elisa-laajakaista.fi) (Ping timeout: 248 seconds)
2022-11-07 00:58:47 +0100justache(~justache@user/justache) (Quit: ZNC 1.8.2 - https://znc.in)
2022-11-07 01:05:44 +0100freeside(~mengwong@bb115-66-48-84.singnet.com.sg) (Ping timeout: 260 seconds)
2022-11-07 01:07:38 +0100 <cheater> i have a foo.cabal in which i have library (unnamed) and library foo-test-lib with exposed-modules Test.Foo, and then a test-suite foo-test. When I try to import Test.Foo in the test-suite executable, cabal says Test.Foo is in library foo-0.1.0.0, and i should add it. but when i add it, it says "solver did not find a plan that included the test suites for foo-0.1.0.0" ... what gives?
2022-11-07 01:07:54 +0100 <cheater> library foo-test-lib also has foo mentioned as build-depends btw
2022-11-07 01:08:04 +0100hueso(~root@user/hueso) (Ping timeout: 260 seconds)
2022-11-07 01:08:19 +0100hueso(~root@user/hueso)
2022-11-07 01:09:49 +0100nate4(~nate@98.45.169.16) (Ping timeout: 260 seconds)
2022-11-07 01:10:16 +0100justache(~justache@user/justache)
2022-11-07 01:12:38 +0100 <Axman6> can you share the cabal file?
2022-11-07 01:16:39 +0100TonyStone(~TonyStone@cpe-74-76-51-197.nycap.res.rr.com) (Ping timeout: 272 seconds)
2022-11-07 01:17:34 +0100 <cheater> Axman6: yeah, i could
2022-11-07 01:21:15 +0100 <cheater> Axman6: https://paste.ubuntu.com/p/Qcx7sJZ4HR/
2022-11-07 01:24:29 +0100vn36(~vn36@123.63.203.210)
2022-11-07 01:25:13 +0100 <Axman6> "You need to be logged in to view this paste."
2022-11-07 01:25:17 +0100 <Axman6> @where paste
2022-11-07 01:25:17 +0100 <lambdabot> Help us help you: please paste full code, input and/or output at e.g. https://paste.tomsmeding.com
2022-11-07 01:28:39 +0100 <cheater> sorry
2022-11-07 01:29:12 +0100TonyStone(~TonyStone@cpe-74-76-51-197.nycap.res.rr.com)
2022-11-07 01:30:50 +0100 <cheater> Axman6: https://paste.tomsmeding.com/EGIqYs74
2022-11-07 01:32:04 +0100 <Axman6> surely you need to add foo-test-lib as a build-depends for foo-test?
2022-11-07 01:32:21 +0100 <cheater> cabal isn't asking for it
2022-11-07 01:32:28 +0100 <cheater> i tried it, but it still kept complaining about foo
2022-11-07 01:32:50 +0100 <Axman6> add both?
2022-11-07 01:32:55 +0100 <cheater> yes, i tried that too
2022-11-07 01:33:13 +0100 <cheater> adding foo alone or together with foo-test-lib results in the error message
2022-11-07 01:34:16 +0100 <sclv> this is because cabal cannot find a build plan satisfying all dependencies
2022-11-07 01:34:44 +0100freeside(~mengwong@bb115-66-48-84.singnet.com.sg)
2022-11-07 01:34:51 +0100 <sclv> the deps in common and test conflict and that needs to be fixed
2022-11-07 01:35:12 +0100 <sclv> the solver output should explain the source of conflict
2022-11-07 01:35:13 +0100 <cheater> how do they conflict?
2022-11-07 01:35:16 +0100 <cheater> there are no conflicts
2022-11-07 01:35:27 +0100 <sclv> the message is literally that there are conflicts
2022-11-07 01:35:34 +0100 <Axman6> please share the cabal error you get for the file you shared
2022-11-07 01:35:56 +0100 <cheater> sclv: no. it does not mention conflicts.
2022-11-07 01:35:58 +0100 <cheater> Axman6: ok
2022-11-07 01:36:46 +0100 <cheater> but i've noticed something weird... now when i add build-depends: foo in test-suite foo-test, it still can't find Test.Foo because it's a member of a hidden package foo
2022-11-07 01:36:58 +0100 <cheater> let me pastebin that
2022-11-07 01:40:45 +0100 <cheater> Axman6: https://paste.tomsmeding.com/torEJihu
2022-11-07 01:43:05 +0100 <Axman6> I'm surprised it thinks it's part of foo, since it's not in any of the source dirs for foo
2022-11-07 01:44:05 +0100 <cheater> yes. this is particularly stupid
2022-11-07 01:44:10 +0100 <cheater> i think it's a bug in cabal
2022-11-07 01:48:14 +0100mmhat(~mmh@p200300f1c739c9cbee086bfffe095315.dip0.t-ipconnect.de) (Quit: WeeChat 3.7.1)
2022-11-07 01:49:11 +0100vn36(~vn36@123.63.203.210) (Quit: leaving)
2022-11-07 01:50:28 +0100 <cheater> i moved Test.Foo to the main library, and suddenly the test executable can find it.
2022-11-07 01:50:35 +0100 <cheater> obviously, now it's build-depends: foo
2022-11-07 01:51:14 +0100perrierjouet(~perrier-j@modemcable048.127-56-74.mc.videotron.ca) (Ping timeout: 260 seconds)
2022-11-07 01:53:19 +0100 <geekosaur> are they all jumbled together into the same directory? I think Cabal assumes they're not, because ghc fouls up (and may have stuck Test.Foo in the wrong library as a result) otherwise
2022-11-07 01:53:54 +0100 <geekosaur> quite a lot of both stack and cabal is trying to make ghc not be idiotic…
2022-11-07 01:54:44 +0100 <cheater> no. look at the cabal file. the normal lib is under src/ and the test lib is under src-test/.
2022-11-07 01:55:08 +0100 <cheater> i'm on cabal-install 3.8.1.0, that seems to be the latest...
2022-11-07 01:56:55 +0100 <cheater> i think what happens is that somewhere in cabal someone mixes up the libraries that are needed.
2022-11-07 01:57:07 +0100 <cheater> just the wrong var being used somewhere
2022-11-07 01:58:15 +0100 <yin> try cabal 3.6.2.0 and see if the error persists
2022-11-07 01:58:45 +0100merijn(~merijn@86-86-29-250.fixed.kpn.net)
2022-11-07 01:58:46 +0100 <cheater> hmm... what's the cabal-install command to install a specific version? cabal-install cabal-install=3.6.2.0?
2022-11-07 01:59:00 +0100 <cheater> cabal install cabal-install=3.6.2.0?
2022-11-07 01:59:24 +0100 <yin> i personally use ghcup
2022-11-07 01:59:38 +0100 <geekosaur> - instead of =
2022-11-07 02:00:03 +0100 <geekosaur> but yes, use ghcup so you can install both and switch between them
2022-11-07 02:00:14 +0100 <geekosaur> (ghcup tui is nice, if you're not on windows)
2022-11-07 02:00:24 +0100 <geekosaur> (or does that work on windows now?_
2022-11-07 02:00:26 +0100 <geekosaur> )
2022-11-07 02:00:30 +0100 <cheater> yeah i know i just don't have it on this vm and i cba
2022-11-07 02:00:58 +0100 <yin> ghcup actually still recommends 3.6.2.0
2022-11-07 02:01:04 +0100Guest75(~Guest75@178.141.177.81)
2022-11-07 02:01:05 +0100 <cheater> funny
2022-11-07 02:01:21 +0100 <cheater> well, it's building
2022-11-07 02:01:26 +0100 <yin> not sure what the criteria is
2022-11-07 02:01:27 +0100 <cheater> it'll probably still be building in an hour
2022-11-07 02:01:30 +0100[itchyjunk](~itchyjunk@user/itchyjunk/x-7353470) (Ping timeout: 260 seconds)
2022-11-07 02:01:40 +0100 <cheater> probably "did the maintainer remember to update it"
2022-11-07 02:01:52 +0100 <yin> s/is/are
2022-11-07 02:02:03 +0100califax(~califax@user/califx) (Remote host closed the connection)
2022-11-07 02:02:48 +0100 <geekosaur> "whenever maerwald decides to update the recommended-versions yaml"
2022-11-07 02:03:07 +0100 <cheater> yea, pretty much probably?
2022-11-07 02:03:12 +0100 <cheater> wow, this is taking ages to build
2022-11-07 02:03:50 +0100califax(~califax@user/califx)
2022-11-07 02:03:52 +0100 <cheater> why does ghc use so much cpu? go is so much faster to compile
2022-11-07 02:03:55 +0100auri(~auri@fsf/member/auri) (Quit: No Ping reply in 180 seconds.)
2022-11-07 02:04:02 +0100 <cheater> just kidding...
2022-11-07 02:04:10 +0100yinis typing...
2022-11-07 02:04:19 +0100mvk(~mvk@2607:fea8:5ce3:8500::4b68)
2022-11-07 02:05:01 +0100 <cheater> lmao build failed
2022-11-07 02:05:03 +0100auri(~auri@fsf/member/auri)
2022-11-07 02:05:39 +0100 <cheater> mismatched type something something
2022-11-07 02:05:50 +0100mixfix41(~sdeny9ee@user/mixfix41) (Quit: have a good night everybody')
2022-11-07 02:06:16 +0100nate4(~nate@98.45.169.16)
2022-11-07 02:06:29 +0100[itchyjunk](~itchyjunk@user/itchyjunk/x-7353470)
2022-11-07 02:09:38 +0100xff0x(~xff0x@2405:6580:b080:900:fd8d:71ab:7640:b47a) (Ping timeout: 252 seconds)
2022-11-07 02:11:04 +0100nate4(~nate@98.45.169.16) (Ping timeout: 260 seconds)
2022-11-07 02:11:39 +0100vglfr(~vglfr@145.224.100.100) (Ping timeout: 248 seconds)
2022-11-07 02:12:08 +0100bitdex(~bitdex@gateway/tor-sasl/bitdex) (Quit: = "")
2022-11-07 02:13:52 +0100emmanuelux(~emmanuelu@user/emmanuelux) (Quit: au revoir)
2022-11-07 02:14:19 +0100TonyStone(~TonyStone@cpe-74-76-51-197.nycap.res.rr.com) (Ping timeout: 248 seconds)
2022-11-07 02:16:05 +0100califax(~califax@user/califx) (Ping timeout: 255 seconds)
2022-11-07 02:19:07 +0100califax(~califax@user/califx)
2022-11-07 02:21:33 +0100nilradical(~nilradica@user/naso)
2022-11-07 02:24:20 +0100nilradical(~nilradica@user/naso) (Client Quit)
2022-11-07 02:26:51 +0100TonyStone(~TonyStone@cpe-74-76-51-197.nycap.res.rr.com)
2022-11-07 02:29:35 +0100notzmv(~zmv@user/notzmv)
2022-11-07 02:30:02 +0100azimut(~azimut@gateway/tor-sasl/azimut) (Ping timeout: 255 seconds)
2022-11-07 02:30:53 +0100jmdaemon(~jmdaemon@user/jmdaemon)
2022-11-07 02:30:56 +0100azimut(~azimut@gateway/tor-sasl/azimut)
2022-11-07 02:32:39 +0100TonyStone(~TonyStone@cpe-74-76-51-197.nycap.res.rr.com) (Ping timeout: 260 seconds)
2022-11-07 02:38:14 +0100merijn(~merijn@86-86-29-250.fixed.kpn.net) (Ping timeout: 246 seconds)
2022-11-07 02:39:01 +0100freeside(~mengwong@bb115-66-48-84.singnet.com.sg) (Ping timeout: 252 seconds)
2022-11-07 02:40:04 +0100nate4(~nate@98.45.169.16)
2022-11-07 02:42:12 +0100azimut(~azimut@gateway/tor-sasl/azimut) (Quit: ZNC - https://znc.in)
2022-11-07 02:42:19 +0100ubert(~Thunderbi@178.165.168.167.wireless.dyn.drei.com) (Ping timeout: 252 seconds)
2022-11-07 02:42:32 +0100ubert(~Thunderbi@178.165.160.236.wireless.dyn.drei.com)
2022-11-07 02:42:35 +0100azimut(~azimut@gateway/tor-sasl/azimut)
2022-11-07 02:45:04 +0100nate4(~nate@98.45.169.16) (Ping timeout: 252 seconds)
2022-11-07 02:45:27 +0100TonyStone(~TonyStone@cpe-74-76-51-197.nycap.res.rr.com)
2022-11-07 02:45:42 +0100zmt00(~zmt00@user/zmt00) (Quit: Leaving)
2022-11-07 02:48:24 +0100zmt00(~zmt00@user/zmt00)
2022-11-07 02:54:08 +0100freeside(~mengwong@bb115-66-48-84.singnet.com.sg)
2022-11-07 02:58:24 +0100xff0x(~xff0x@125x103x176x34.ap125.ftth.ucom.ne.jp)
2022-11-07 02:58:40 +0100freeside(~mengwong@bb115-66-48-84.singnet.com.sg) (Ping timeout: 260 seconds)
2022-11-07 03:06:44 +0100werneta(~werneta@70-142-214-115.lightspeed.irvnca.sbcglobal.net) (Ping timeout: 248 seconds)
2022-11-07 03:08:32 +0100werneta(~werneta@70-142-214-115.lightspeed.irvnca.sbcglobal.net)
2022-11-07 03:13:43 +0100dfee(~dfee@162-227-164-101.lightspeed.sntcca.sbcglobal.net)
2022-11-07 03:15:00 +0100TonyStone(~TonyStone@cpe-74-76-51-197.nycap.res.rr.com) (Ping timeout: 260 seconds)
2022-11-07 03:16:42 +0100Lord_of_Life_(~Lord@user/lord-of-life/x-2819915)
2022-11-07 03:17:37 +0100Lord_of_Life(~Lord@user/lord-of-life/x-2819915) (Ping timeout: 272 seconds)
2022-11-07 03:17:59 +0100Lord_of_Life_Lord_of_Life
2022-11-07 03:18:11 +0100freeside(~mengwong@bb115-66-48-84.singnet.com.sg)
2022-11-07 03:23:30 +0100ell(~ellie@user/ellie)
2022-11-07 03:24:04 +0100Guest|28(~Guest|28@134.173.92.8)
2022-11-07 03:24:04 +0100Guest|28(~Guest|28@134.173.92.8) (Client Quit)
2022-11-07 03:27:00 +0100TonyStone(~TonyStone@cpe-74-76-51-197.nycap.res.rr.com)
2022-11-07 03:29:04 +0100beteigeuze(~Thunderbi@bl14-81-220.dsl.telepac.pt) (Ping timeout: 252 seconds)
2022-11-07 03:31:49 +0100waleee(~waleee@2001:9b0:213:7200:cc36:a556:b1e8:b340) (Ping timeout: 252 seconds)
2022-11-07 03:32:20 +0100ystael(~ystael@user/ystael) (Ping timeout: 248 seconds)
2022-11-07 03:33:49 +0100hueso(~root@user/hueso) (Quit: No Ping reply in 180 seconds.)
2022-11-07 03:35:00 +0100hueso(~root@user/hueso)
2022-11-07 03:38:50 +0100bilegeek(~bilegeek@2600:1008:b011:e74:deb:55dd:b7ff:98a7)
2022-11-07 03:52:13 +0100Guest75(~Guest75@178.141.177.81) (Ping timeout: 260 seconds)
2022-11-07 03:55:20 +0100hughjfchen(~hughjfche@vmi556545.contaboserver.net) (Quit: WeeChat 2.8)
2022-11-07 03:55:37 +0100razetime(~quassel@117.193.7.60)
2022-11-07 04:02:32 +0100merijn(~merijn@86-86-29-250.fixed.kpn.net)
2022-11-07 04:11:07 +0100bitdex(~bitdex@gateway/tor-sasl/bitdex)
2022-11-07 04:12:21 +0100[itchyjunk](~itchyjunk@user/itchyjunk/x-7353470) (Read error: Connection reset by peer)
2022-11-07 04:12:59 +0100TonyStone(~TonyStone@cpe-74-76-51-197.nycap.res.rr.com) (Ping timeout: 260 seconds)
2022-11-07 04:13:29 +0100johnw(~johnw@76-234-69-149.lightspeed.frokca.sbcglobal.net) (Quit: ZNC - http://znc.in)
2022-11-07 04:20:52 +0100td_(~td@83.135.9.27) (Ping timeout: 248 seconds)
2022-11-07 04:22:25 +0100freeside(~mengwong@bb115-66-48-84.singnet.com.sg) (Ping timeout: 252 seconds)
2022-11-07 04:22:42 +0100td_(~td@83.135.9.26)
2022-11-07 04:26:23 +0100TonyStone(~TonyStone@cpe-74-76-51-197.nycap.res.rr.com)
2022-11-07 04:29:05 +0100 <dsal> cheater: compile time was the top priority of go. Haskell's priority is more around being a good and interesting programming language.
2022-11-07 04:37:16 +0100merijn(~merijn@86-86-29-250.fixed.kpn.net) (Ping timeout: 252 seconds)
2022-11-07 04:44:50 +0100freeside(~mengwong@bb115-66-48-84.singnet.com.sg)
2022-11-07 04:49:18 +0100nilradical(~nilradica@user/naso)
2022-11-07 04:49:30 +0100 <nilradical> what is a good option for generating real time plots/charts from haskell
2022-11-07 04:50:09 +0100 <nilradical> simplicity is more important than features
2022-11-07 04:52:15 +0100FinnElija(~finn_elij@user/finn-elija/x-0085643) (Killed (NickServ (Forcing logout FinnElija -> finn_elija)))
2022-11-07 04:52:15 +0100finn_elija(~finn_elij@user/finn-elija/x-0085643)
2022-11-07 04:52:15 +0100finn_elijaFinnElija
2022-11-07 04:52:39 +0100 <dsal> I've always done that with a web server thing that generates data and a web client thing that moves bits around in something like d3.
2022-11-07 04:55:53 +0100 <nilradical> is there a haskell pacckage that would do all that for me?
2022-11-07 04:56:36 +0100 <nilradical> i had used a package with F# before that hooked up to Plotly and automatically started the webserver etc
2022-11-07 04:56:59 +0100nate4(~nate@98.45.169.16)
2022-11-07 04:57:05 +0100 <dsal> It depends on what you need, I guess. I've always started projects like this from scratch and never could find anything that would do the things I wanted out of the box.
2022-11-07 04:57:58 +0100 <nilradical> right now i just want to plot a scatterplot of (x,y) datapoints that are being generated in real time from my haskell program
2022-11-07 04:59:08 +0100 <nilradical> something that did an ascii plot in the terminal would be good too. it doesn't have to be high definition
2022-11-07 05:01:59 +0100nate4(~nate@98.45.169.16) (Ping timeout: 260 seconds)
2022-11-07 05:01:59 +0100xff0x(~xff0x@125x103x176x34.ap125.ftth.ucom.ne.jp) (Ping timeout: 260 seconds)
2022-11-07 05:02:01 +0100jao(~jao@cpc103048-sgyl39-2-0-cust502.18-2.cable.virginm.net) (Ping timeout: 252 seconds)
2022-11-07 05:02:08 +0100 <dsal> Yeah, I've done that manually in terminals as well. Not sure what kind of thing does that all automatically.
2022-11-07 05:02:21 +0100xff0x(~xff0x@125x103x176x34.ap125.ftth.ucom.ne.jp)
2022-11-07 05:02:41 +0100 <nilradical> this looks really cool but it seems to be designed to bee used as a standalone app https://github.com/weeezes/plot
2022-11-07 05:04:24 +0100dcoutts_(~duncan@host86-151-44-212.range86-151.btcentralplus.com)
2022-11-07 05:06:59 +0100dcoutts__(~duncan@host86-153-135-2.range86-153.btcentralplus.com) (Ping timeout: 255 seconds)
2022-11-07 05:10:51 +0100razetime(~quassel@117.193.7.60) (Ping timeout: 248 seconds)
2022-11-07 05:17:08 +0100Chai-T-Rex(~ChaiTRex@user/chaitrex) (Quit: Chai-T-Rex)
2022-11-07 05:18:35 +0100ChaiTRex(~ChaiTRex@user/chaitrex)
2022-11-07 05:20:53 +0100mbuf(~Shakthi@49.204.130.107)
2022-11-07 05:23:36 +0100 <nilradical> how can i make my program run from the command line more easily--currently i type 'cabal run [project-name]' but [project-name] is long. is there a shortcut?
2022-11-07 05:24:18 +0100 <Axman6> does `cabal run` by itself work?
2022-11-07 05:25:47 +0100 <nilradical> nope, it returns this:
2022-11-07 05:25:50 +0100 <nilradical> The run command is for running a single executable at once. The target
2022-11-07 05:25:50 +0100 <nilradical> '' refers to the package [project-name]-0.1.0.0 which includes the
2022-11-07 05:25:51 +0100 <nilradical> executable '[project-name]' and the test suite '[project-name]-test'.
2022-11-07 05:26:46 +0100troydm(~troydm@host-176-37-124-197.b025.la.net.ua) (Ping timeout: 252 seconds)
2022-11-07 05:28:15 +0100nilradical(~nilradica@user/naso) (Remote host closed the connection)
2022-11-07 05:30:07 +0100nilradical(~nilradica@user/naso)
2022-11-07 05:30:20 +0100libertyprime(~libertypr@118-92-78-165.dsl.dyn.ihug.co.nz) (Ping timeout: 260 seconds)
2022-11-07 05:30:20 +0100 <nilradical> ( i was disconnected in case you replied to me i didnt see it)
2022-11-07 05:31:07 +0100 <Axman6> nope, you didn't miss anything. you can specify a directory for executables to be copied into, so you can then just run ./dest/foo-exe --bar --baz=8
2022-11-07 05:31:43 +0100mvk(~mvk@2607:fea8:5ce3:8500::4b68) (Ping timeout: 252 seconds)
2022-11-07 05:31:49 +0100 <nilradical> is there not a config option somewhere so 'cabal run' will work? i used to do 'stack run' and that worked but now im not using stack
2022-11-07 05:32:41 +0100 <nilradical> the message that i got above seemed to suggest the run 'target' is not specified properly
2022-11-07 05:34:52 +0100 <nilradical> the thing is what you type is longer than what i alreday have to type
2022-11-07 05:37:12 +0100 <nilradical> https://www.devscope.io/code/haskell/cabal/issues/8547
2022-11-07 05:39:19 +0100hueso(~root@user/hueso) (Ping timeout: 260 seconds)
2022-11-07 05:39:39 +0100hueso(~root@user/hueso)
2022-11-07 05:47:07 +0100libertyprime(~libertypr@118-92-78-165.dsl.dyn.ihug.co.nz)
2022-11-07 05:49:15 +0100freeside(~mengwong@bb115-66-48-84.singnet.com.sg) (Ping timeout: 248 seconds)
2022-11-07 05:50:27 +0100 <Las[m]> Does anyone know how you can host the users' guide locally? I ran an HTTP server hosting from the root of it, but when trying to search, it says "Stemmer is not defined" in the console.
2022-11-07 05:50:50 +0100 <jackdk> `alias r=cabal run projectname`?
2022-11-07 05:56:09 +0100 <nilradical> jackdk: thanks that works well
2022-11-07 05:59:10 +0100razetime(~quassel@117.193.7.60)
2022-11-07 06:01:30 +0100freeside(~mengwong@bb115-66-48-84.singnet.com.sg)
2022-11-07 06:02:36 +0100merijn(~merijn@86-86-29-250.fixed.kpn.net)
2022-11-07 06:08:42 +0100nate4(~nate@98.45.169.16)
2022-11-07 06:13:31 +0100nate4(~nate@98.45.169.16) (Ping timeout: 252 seconds)
2022-11-07 06:17:25 +0100ChaiTRex(~ChaiTRex@user/chaitrex) (Remote host closed the connection)
2022-11-07 06:18:03 +0100ChaiTRex(~ChaiTRex@user/chaitrex)
2022-11-07 06:25:59 +0100td_(~td@83.135.9.26) (Ping timeout: 260 seconds)
2022-11-07 06:26:12 +0100td_(~td@83.135.9.26)
2022-11-07 06:35:51 +0100nilradical(~nilradica@user/naso) (Remote host closed the connection)
2022-11-07 06:37:06 +0100Guest75(~Guest75@dhcp-077-251-089-118.chello.nl)
2022-11-07 06:37:10 +0100merijn(~merijn@86-86-29-250.fixed.kpn.net) (Ping timeout: 252 seconds)
2022-11-07 06:37:48 +0100Guest75(~Guest75@dhcp-077-251-089-118.chello.nl) (Client Quit)
2022-11-07 06:39:57 +0100coot(~coot@2a02:a310:e241:1b00:ec1a:e9df:79ac:66ba)
2022-11-07 06:43:51 +0100mshv22(~mjs22@76.115.19.239)
2022-11-07 06:56:27 +0100azimut(~azimut@gateway/tor-sasl/azimut) (Remote host closed the connection)
2022-11-07 06:57:39 +0100azimut(~azimut@gateway/tor-sasl/azimut)
2022-11-07 06:59:01 +0100potash(~foghorn@user/foghorn) (Read error: Connection reset by peer)
2022-11-07 06:59:31 +0100potash_(~foghorn@94-225-47-8.access.telenet.be)
2022-11-07 07:04:08 +0100bitdex(~bitdex@gateway/tor-sasl/bitdex) (Remote host closed the connection)
2022-11-07 07:05:42 +0100bitdex(~bitdex@gateway/tor-sasl/bitdex)
2022-11-07 07:07:10 +0100freeside(~mengwong@bb115-66-48-84.singnet.com.sg) (Ping timeout: 260 seconds)
2022-11-07 07:11:02 +0100mshv22(~mjs22@76.115.19.239) (Quit: Leaving)
2022-11-07 07:11:50 +0100Sauvin(~sauvin@user/Sauvin) (Ping timeout: 260 seconds)
2022-11-07 07:12:05 +0100Sauvin(~sauvin@user/Sauvin)
2022-11-07 07:14:27 +0100bgs(~bgs@212-85-160-171.dynamic.telemach.net)
2022-11-07 07:14:28 +0100Bocaneri(~sauvin@user/Sauvin)
2022-11-07 07:14:52 +0100BocaneriGuest5611
2022-11-07 07:17:40 +0100Sauvin(~sauvin@user/Sauvin) (Ping timeout: 260 seconds)
2022-11-07 07:21:38 +0100chomwitt(~chomwitt@2a02:587:7a0a:c00:1ac0:4dff:fedb:a3f1)
2022-11-07 07:35:15 +0100takuan(~takuan@178-116-218-225.access.telenet.be)
2022-11-07 07:36:08 +0100freeside(~mengwong@bb115-66-48-84.singnet.com.sg)
2022-11-07 07:38:06 +0100jinsun__(~jinsun@user/jinsun)
2022-11-07 07:38:06 +0100jinsun(~jinsun@user/jinsun) (Killed (tantalum.libera.chat (Nickname regained by services)))
2022-11-07 07:38:06 +0100jinsun__jinsun
2022-11-07 07:43:29 +0100hueso(~root@user/hueso) (Read error: Connection reset by peer)
2022-11-07 07:44:20 +0100hueso(~root@user/hueso)
2022-11-07 07:46:03 +0100jonathanx_(~jonathan@h-178-174-176-109.A357.priv.bahnhof.se) (Ping timeout: 248 seconds)
2022-11-07 07:47:13 +0100tromp(~textual@92-110-219-57.cable.dynamic.v4.ziggo.nl)
2022-11-07 07:49:05 +0100califax(~califax@user/califx) (Ping timeout: 255 seconds)
2022-11-07 07:50:02 +0100califax(~califax@user/califx)
2022-11-07 07:50:26 +0100bitdex(~bitdex@gateway/tor-sasl/bitdex) (Ping timeout: 255 seconds)
2022-11-07 07:50:26 +0100FinnElija(~finn_elij@user/finn-elija/x-0085643) (Ping timeout: 255 seconds)
2022-11-07 07:51:09 +0100libertyprime(~libertypr@118-92-78-165.dsl.dyn.ihug.co.nz) (Ping timeout: 260 seconds)
2022-11-07 07:51:25 +0100libertyprime(~libertypr@118-92-78-165.dsl.dyn.ihug.co.nz)
2022-11-07 07:54:32 +0100bitdex(~bitdex@gateway/tor-sasl/bitdex)
2022-11-07 07:55:38 +0100FinnElija(~finn_elij@user/finn-elija/x-0085643)
2022-11-07 07:59:12 +0100tromp(~textual@92-110-219-57.cable.dynamic.v4.ziggo.nl) (Quit: My iMac has gone to sleep. ZZZzzz…)
2022-11-07 08:01:09 +0100merijn(~merijn@86-86-29-250.fixed.kpn.net)
2022-11-07 08:03:24 +0100razetime(~quassel@117.193.7.60) (Ping timeout: 260 seconds)
2022-11-07 08:04:03 +0100talismanick(~talismani@76.133.152.122)
2022-11-07 08:11:44 +0100razetime(~quassel@117.193.1.205)
2022-11-07 08:14:33 +0100razetime(~quassel@117.193.1.205) (Remote host closed the connection)
2022-11-07 08:25:59 +0100ChaiTRex(~ChaiTRex@user/chaitrex) (Ping timeout: 255 seconds)
2022-11-07 08:26:46 +0100ChaiTRex(~ChaiTRex@user/chaitrex)
2022-11-07 08:28:04 +0100tromp(~textual@92-110-219-57.cable.dynamic.v4.ziggo.nl)
2022-11-07 08:29:08 +0100gurkenglas(~gurkengla@p548ac72e.dip0.t-ipconnect.de)
2022-11-07 08:33:51 +0100troydm(~troydm@host-176-37-124-197.b025.la.net.ua)
2022-11-07 08:34:05 +0100FinnElija(~finn_elij@user/finn-elija/x-0085643) (Ping timeout: 255 seconds)
2022-11-07 08:35:09 +0100Heyting(~Heyting@193.198.16.217)
2022-11-07 08:35:25 +0100merijn(~merijn@86-86-29-250.fixed.kpn.net) (Ping timeout: 252 seconds)
2022-11-07 08:37:01 +0100shriekingnoise(~shrieking@186.137.167.202) (Quit: Quit)
2022-11-07 08:37:04 +0100michalz(~michalz@185.246.207.217)
2022-11-07 08:37:36 +0100califax(~califax@user/califx) (Remote host closed the connection)
2022-11-07 08:37:50 +0100FinnElija(~finn_elij@user/finn-elija/x-0085643)
2022-11-07 08:38:24 +0100bgs(~bgs@212-85-160-171.dynamic.telemach.net) (Remote host closed the connection)
2022-11-07 08:39:59 +0100califax(~califax@user/califx)
2022-11-07 08:40:29 +0100gurkenglas(~gurkengla@p548ac72e.dip0.t-ipconnect.de) (Ping timeout: 246 seconds)
2022-11-07 08:41:39 +0100Heyting(~Heyting@193.198.16.217) (Remote host closed the connection)
2022-11-07 08:42:44 +0100Sgeo_(~Sgeo@user/sgeo) (Read error: Connection reset by peer)
2022-11-07 08:47:47 +0100mmhat(~mmh@p200300f1c700b8c5ee086bfffe095315.dip0.t-ipconnect.de)
2022-11-07 08:53:25 +0100jtomas(~jtomas@191.red-88-17-199.dynamicip.rima-tde.net)
2022-11-07 09:01:09 +0100lortabac(~lortabac@2a01:e0a:541:b8f0:2daa:8b78:9a2e:bfe4)
2022-11-07 09:15:58 +0100Bocaneri(~sauvin@user/Sauvin)
2022-11-07 09:16:22 +0100BocaneriGuest1505
2022-11-07 09:18:34 +0100vglfr(~vglfr@145.224.100.100)
2022-11-07 09:18:39 +0100Guest5611(~sauvin@user/Sauvin) (Ping timeout: 260 seconds)
2022-11-07 09:18:52 +0100jonathanx(~jonathan@h-178-174-176-109.A357.priv.bahnhof.se)
2022-11-07 09:19:59 +0100FinnElija(~finn_elij@user/finn-elija/x-0085643) (Ping timeout: 255 seconds)
2022-11-07 09:21:28 +0100cfricke(~cfricke@user/cfricke)
2022-11-07 09:21:49 +0100CiaoSen(~Jura@p200300c9571247002a3a4dfffe84dbd5.dip0.t-ipconnect.de)
2022-11-07 09:22:05 +0100FinnElija(~finn_elij@user/finn-elija/x-0085643)
2022-11-07 09:22:19 +0100merijn(~merijn@86-86-29-250.fixed.kpn.net)
2022-11-07 09:30:04 +0100 <dminuoso> cheater: Use `cabal install cabal-install --constraint "cabal-install == 3.6.2.0"`
2022-11-07 09:31:08 +0100 <dminuoso> Or does `cabal install cabal-install-3.6.2.0` really work? Im a bit saddened by the fact that this syntax too is not documented in the man page.
2022-11-07 09:31:15 +0100 <cheater> dminuoso: the type error is in Cabal, version 3.6.3.0, that cabal-install 3.6.2.0 pulls in via deps
2022-11-07 09:31:50 +0100 <dminuoso> cheater: Use --constraint to fix that, then.
2022-11-07 09:32:12 +0100acidjnk(~acidjnk@p200300d6e7137a3425e17e6c3d2393a2.dip0.t-ipconnect.de)
2022-11-07 09:32:16 +0100 <dminuoso> It's possible there is an incorrecft Cabal bound in the cabal-install package, file a bug report for that seeparately
2022-11-07 09:32:21 +0100 <dminuoso> That is, do something like:
2022-11-07 09:32:44 +0100 <dminuoso> `cabal install cabal-install-3.6.2.0 -constraint "Cabal == 3.6.2.0"`
2022-11-07 09:32:51 +0100 <dminuoso> `cabal install cabal-install-3.6.2.0 --constraint "Cabal == 3.6.2.0"`
2022-11-07 09:33:03 +0100 <dminuoso> Sorry, the latter. Missed a hyphen in the first.
2022-11-07 09:33:17 +0100 <cheater> yep, i'm about to try that. just on the phone right now.
2022-11-07 09:35:52 +0100titibandit(~titibandi@xdsl-87-78-8-6.nc.de)
2022-11-07 09:37:20 +0100elkcl_(~elkcl@broadband-37-110-156-162.ip.moscow.rt.ru)
2022-11-07 09:38:30 +0100jinsunGuest3089
2022-11-07 09:38:30 +0100jinsun__(~jinsun@user/jinsun)
2022-11-07 09:38:30 +0100Guest3089(~jinsun@user/jinsun) (Killed (tungsten.libera.chat (Nickname regained by services)))
2022-11-07 09:38:30 +0100jinsun__jinsun
2022-11-07 09:38:47 +0100elkcl(~elkcl@broadband-37-110-156-162.ip.moscow.rt.ru) (Ping timeout: 255 seconds)
2022-11-07 09:38:48 +0100elkcl_elkcl
2022-11-07 09:45:00 +0100tzh(~tzh@c-24-21-73-154.hsd1.or.comcast.net) (Quit: zzz)
2022-11-07 09:50:20 +0100nschoe(~q@141.101.51.197)
2022-11-07 09:53:39 +0100mixfix41(~sdeny9ee@user/mixfix41)
2022-11-07 09:54:58 +0100kenaryn(~aurele@cre71-h03-89-88-44-27.dsl.sta.abo.bbox.fr)
2022-11-07 09:59:34 +0100jtomas(~jtomas@191.red-88-17-199.dynamicip.rima-tde.net) (Ping timeout: 252 seconds)
2022-11-07 10:01:25 +0100vglfr(~vglfr@145.224.100.100) (Remote host closed the connection)
2022-11-07 10:02:20 +0100vglfr(~vglfr@145.224.100.100)
2022-11-07 10:02:44 +0100fserucas(~fserucas@2001:818:e376:a400:fb92:70c1:dd88:c7d7)
2022-11-07 10:03:20 +0100fserucas(~fserucas@2001:818:e376:a400:fb92:70c1:dd88:c7d7) (Client Quit)
2022-11-07 10:03:35 +0100fserucas(~fserucas@2001:818:e376:a400:fb92:70c1:dd88:c7d7)
2022-11-07 10:05:47 +0100jtomas(~jtomas@191.red-88-17-199.dynamicip.rima-tde.net)
2022-11-07 10:06:22 +0100 <cheater> dminuoso: https://paste.tomsmeding.com/hSQKjjPD
2022-11-07 10:06:38 +0100chele(~chele@user/chele)
2022-11-07 10:07:33 +0100 <dminuoso> cheater: Try the command I mentioned, with an additional `Cabal-syntax ==3.6.0.0` constraint
2022-11-07 10:07:39 +0100talismanick(~talismani@76.133.152.122) (Ping timeout: 260 seconds)
2022-11-07 10:07:47 +0100 <cheater> dminuoso: ok.
2022-11-07 10:07:57 +0100 <dminuoso> And definitely file a bug report, there's some incorrect bounds on cabal-install
2022-11-07 10:08:11 +0100 <cheater> `cabal install cabal-install-3.6.2.0 --constraint "Cabal == 3.6.2.0, Cabal-syntax ==3.6.0.0"`
2022-11-07 10:08:25 +0100 <dminuoso> I think so yes, or you might have to specify --constraint twice
2022-11-07 10:08:58 +0100 <cheater> yeah it seems i do
2022-11-07 10:09:52 +0100titibandit(~titibandi@xdsl-87-78-8-6.nc.de) (Remote host closed the connection)
2022-11-07 10:10:13 +0100nate4(~nate@98.45.169.16)
2022-11-07 10:11:42 +0100 <cheater> ok, yeah, that seems to have worked.
2022-11-07 10:11:46 +0100 <cheater> thanks.
2022-11-07 10:12:34 +0100eggplantade(~Eggplanta@2600:1700:38c5:d800:5dfc:b079:6d3b:228f) (Remote host closed the connection)
2022-11-07 10:14:12 +0100Guest75(~Guest75@178.141.177.81)
2022-11-07 10:14:54 +0100 <cheater> tomsmeding: is your pastebin supposed to be downloading .tar.gz files?
2022-11-07 10:15:01 +0100 <Guest75> Hello! How do I properly add dep to Stack project? When I run "stack build", it seems to rewrite myproject.cabal file. What I'm looking for is hspec
2022-11-07 10:15:02 +0100 <cheater> when i try to download raw
2022-11-07 10:15:14 +0100nate4(~nate@98.45.169.16) (Ping timeout: 260 seconds)
2022-11-07 10:15:17 +0100 <tomsmeding> cheater: I guess?
2022-11-07 10:15:19 +0100 <tomsmeding> what did you expect
2022-11-07 10:15:30 +0100 <cheater> download the raw file. as is. not compressed in .tar.gz
2022-11-07 10:15:33 +0100 <tomsmeding> oh perhaps you expected a paste with a single file to become a non-compressed download
2022-11-07 10:15:39 +0100 <tomsmeding> I guess that makes sense
2022-11-07 10:15:46 +0100 <cheater> i had no idea you could have multiple files
2022-11-07 10:16:04 +0100 <tomsmeding> @where paste
2022-11-07 10:16:04 +0100 <lambdabot> Help us help you: please paste full code, input and/or output at e.g. https://paste.tomsmeding.com
2022-11-07 10:16:05 +0100Major_Biscuit(~MajorBisc@145.94.173.65)
2022-11-07 10:16:08 +0100 <tomsmeding> there's a button to add more files :p
2022-11-07 10:16:18 +0100 <cheater> it's fine, it just looked like a thing where someone tries to set up deflate encoding and instead ends up sending tarballs
2022-11-07 10:16:31 +0100 <cheater> i've had this happen to me in the past
2022-11-07 10:16:35 +0100 <cheater> ... like 20 years ago
2022-11-07 10:16:53 +0100 <cheater> ... when deflate was new
2022-11-07 10:16:57 +0100 <tomsmeding> cheater: https://github.com/tomsmeding/pastebin-haskell/issues/24
2022-11-07 10:17:16 +0100 <dminuoso> tomsmeding: Okay, if I upload a bazillionbyte large file, will your pastebin download that too?
2022-11-07 10:17:54 +0100 <cheater> tomsmeding: but then it's inconsistent
2022-11-07 10:18:51 +0100 <tomsmeding> dminuoso: well it won't let you even upload a bazillionbyte large file :p
2022-11-07 10:19:25 +0100ski's had downloads of what appeared to be a given file, actually nsecretly download a `.tar.gz' (without the suffix) (as well as have it download a `.html' (again without suffix) that displays some kind of download page, which didn't happen when doing it in $BROWSER)
2022-11-07 10:21:01 +0100 <Guest75> UPD: yes that's just package.yaml :-)
2022-11-07 10:21:53 +0100 <cheater> dminuoso: yeah 3.6.2.0 did not fix the issue, it just spits out a different error
2022-11-07 10:22:10 +0100 <dminuoso> What is the issue you have?
2022-11-07 10:26:54 +0100libertyprime(~libertypr@118-92-78-165.dsl.dyn.ihug.co.nz) (Quit: leaving)
2022-11-07 10:30:20 +0100 <cheater> i'm reporting it.
2022-11-07 10:30:49 +0100 <cheater> tomsmeding: i've also noticed that if i drag across the (non-raw) paste display, and drag the selection out of it, and then paste into a github issue, i get html markup.
2022-11-07 10:31:41 +0100 <cheater> ugh, how do you put multi-line code in github issues again? ```?
2022-11-07 10:32:28 +0100 <cheater> tomsmeding: also, i've noticed that you have an issue with encoding... " build-depends: base ^&gt;=4.15.1.0,"
2022-11-07 10:32:35 +0100 <cheater> https://paste.tomsmeding.com/EGIqYs74#file-1
2022-11-07 10:37:31 +0100tromp(~textual@92-110-219-57.cable.dynamic.v4.ziggo.nl) (Quit: My iMac has gone to sleep. ZZZzzz…)
2022-11-07 10:37:53 +0100 <cheater> oh
2022-11-07 10:38:08 +0100 <cheater> i got it to build, it's just that the error message is unhelpful
2022-11-07 10:38:31 +0100 <cheater> when you build-depend on a private package, you have to do mypackage:mylib. not just mylib
2022-11-07 10:39:36 +0100machinedgod(~machinedg@clnet-p10-126.ikbnet.co.at)
2022-11-07 10:40:09 +0100Sciencentistguy(~sciencent@hacksoc/ordinary-member) (Quit: Ping timeout (120 seconds))
2022-11-07 10:40:29 +0100Sciencentistguy(~sciencent@hacksoc/ordinary-member)
2022-11-07 10:41:24 +0100teo(~teo@user/teo)
2022-11-07 10:53:03 +0100 <tomsmeding> cheater: I think you submitted that file with the &gt; in it, is that possible?
2022-11-07 10:53:16 +0100 <tomsmeding> I'm quite sure I don't do html replacement on submission, and there's &gt; in the database
2022-11-07 10:54:07 +0100 <cheater> hmm... i may have copied it from another pastebin over to yours.
2022-11-07 10:54:09 +0100 <tomsmeding> also I don't get your markup? What exactly do you do to get html markup?
2022-11-07 10:54:22 +0100 <tomsmeding> cheater: also, yes ```
2022-11-07 10:55:26 +0100 <cheater> hmm nope, the original pastebin contains >
2022-11-07 10:55:27 +0100 <cheater> https://dpaste.com//ELNVNWS24
2022-11-07 10:56:47 +0100 <tomsmeding> cheater: if I copy a snippet over into the input box of my pastebin and then submit, it seems to work fine https://paste.tomsmeding.com/6a6OFOFX
2022-11-07 10:56:54 +0100 <cheater> yeah, i just tried that as well
2022-11-07 10:56:55 +0100 <cheater> so what gives?
2022-11-07 10:56:58 +0100 <tomsmeding> ¯\_(ツ)_/¯
2022-11-07 10:57:07 +0100 <cheater> maybe it's the same thing that makes your pastebin output html?
2022-11-07 10:57:12 +0100 <cheater> into the copy paste buffer
2022-11-07 10:57:30 +0100 <tomsmeding> cheater: ah, the "copy to clipboard" button on dpaste is broken
2022-11-07 10:57:52 +0100 <tomsmeding> cheater: I cannot reproduce your output-html-into-clipboard thing, and it sounds really scary
2022-11-07 10:58:08 +0100 <cheater> i don't think i used that button
2022-11-07 10:58:17 +0100 <cheater> but i may have
2022-11-07 10:58:25 +0100 <cheater> are you saying the button causes this &gt; ?
2022-11-07 10:58:28 +0100 <tomsmeding> yes
2022-11-07 10:58:34 +0100 <tomsmeding> clicking the button copies text with &gt;
2022-11-07 10:58:35 +0100 <cheater> ah. that's it then.
2022-11-07 10:58:42 +0100 <cheater> we've solved it
2022-11-07 10:58:50 +0100 <tomsmeding> well, not your output html into clipboard thing
2022-11-07 10:58:56 +0100 <cheater> to reproduce the html thing, go to github, start a new bug report
2022-11-07 10:59:02 +0100 <cheater> also
2022-11-07 10:59:06 +0100 <cheater> i think you have to be on windows
2022-11-07 10:59:18 +0100 <tomsmeding> ah, I'm not, I'm on linux :p
2022-11-07 10:59:28 +0100 <cheater> start dragging in the pastebin's code display, and drag out of it, so eg the title of the file is selected, or something
2022-11-07 10:59:35 +0100 <Guest75> +1 for linux :-)
2022-11-07 10:59:36 +0100 <cheater> and then paste into github.
2022-11-07 10:59:47 +0100 <cheater> you can get a VM easily enough
2022-11-07 10:59:49 +0100 <tomsmeding> OH that does the thing
2022-11-07 11:00:00 +0100 <tomsmeding> I suspect this is github trying to do something fancy
2022-11-07 11:00:08 +0100 <cheater> wellllll
2022-11-07 11:00:27 +0100 <cheater> rich clipboard only happens if it's /populated/ with something that "can be rich"
2022-11-07 11:00:32 +0100 <cheater> i don't know the details
2022-11-07 11:00:39 +0100 <Guest75> Seems that "hidden package" isn't something easy:
2022-11-07 11:00:40 +0100 <Guest75>     Could not load module ‘Test.QuickCheck’
2022-11-07 11:00:40 +0100 <cheater> but i bet there's a way to tell html to "don't rich"
2022-11-07 11:00:40 +0100 <Guest75>     It is a member of the hidden package ‘QuickCheck-2.14.2’.
2022-11-07 11:00:43 +0100Lycurgus(~juan@user/Lycurgus)
2022-11-07 11:00:45 +0100 <tomsmeding> cheater: if I create a fresh html file with just <textarea></textarea> and drag into that, there's no html
2022-11-07 11:01:06 +0100 <tomsmeding> Guest75: add QuickCheck to your build-depends
2022-11-07 11:01:10 +0100 <cheater> Guest75: idk what your original problem is but maybe you have to add it to build-depends.
2022-11-07 11:01:12 +0100 <cheater> yeah
2022-11-07 11:01:27 +0100 <cheater> tomsmeding: into? not out of?
2022-11-07 11:02:15 +0100 <tomsmeding> cheater: I mean, select some stuff on paste page, then drag into that textarea
2022-11-07 11:02:22 +0100 <tomsmeding> just like you drag into a github issues text field
2022-11-07 11:02:31 +0100 <cheater> i didn't drag, i ctrl-c ctrl-v'd
2022-11-07 11:02:37 +0100 <cheater> but maybe linux only does it when dragging
2022-11-07 11:02:44 +0100 <Guest75> cheater: tomsmeding: do I always have to specify version manually?
2022-11-07 11:02:49 +0100 <tomsmeding> cheater: okay sure, same behaviour though
2022-11-07 11:02:59 +0100 <tomsmeding> cheater: I get html in github issues, not in a plain <textarea>
2022-11-07 11:03:13 +0100 <tomsmeding> Guest75: no, you can just put 'QuickCheck,' in your build-depends list
2022-11-07 11:03:13 +0100 <cheater> but yes, the receiving end /also/ has to be willing to accept rich copy paste buffers
2022-11-07 11:03:19 +0100 <tomsmeding> though it's good practice to add a version range
2022-11-07 11:03:20 +0100 <cheater> Guest75: fwiw, don't add the version at all
2022-11-07 11:03:27 +0100 <cheater> Guest75: cabal will figure out versions
2022-11-07 11:03:48 +0100 <Guest75>     quickcheck needed, but the stack configuration has no specified version (no package with that name found, perhaps there is a typo in a package's build-depends or an omission from the stack.yaml
2022-11-07 11:03:49 +0100 <cheater> if you have to start adding versions, you'll figure it out
2022-11-07 11:03:55 +0100dtbouo^(~dtbouo@76.145.185.103) (Ping timeout: 252 seconds)
2022-11-07 11:03:58 +0100 <Guest75> that's what I've got with and without version
2022-11-07 11:04:03 +0100 <cheater> oh, idk about stack
2022-11-07 11:04:07 +0100 <cheater> oh
2022-11-07 11:04:12 +0100 <cheater> you have to do QuickCheck not quickcheck
2022-11-07 11:04:16 +0100 <Guest75> ah
2022-11-07 11:04:17 +0100 <cheater> capitalization is important
2022-11-07 11:04:38 +0100 <Guest75> oh yes. now it works, thanks!
2022-11-07 11:04:53 +0100 <cheater> tomsmeding: i'm just saying, github expects the rich clipboard to be something sensible. no one's stopping you from putting an .avi of rick roll in the rich clipboard instead :p
2022-11-07 11:04:59 +0100 <tomsmeding> cheater: copying stuff from dpaste into github issues give the same html mess, copying stuff from google about page doesn't
2022-11-07 11:05:05 +0100 <tomsmeding> so I'm not the only one doing this "wrong"
2022-11-07 11:05:12 +0100 <cheater> tomsmeding: what's in the rich clipboard is in your hands :p
2022-11-07 11:05:15 +0100 <tomsmeding> I have no clue what html attributes to add where to let this not happen
2022-11-07 11:05:16 +0100 <cheater> hmm yeah
2022-11-07 11:05:22 +0100 <cheater> but are we aspiring to dpaste...
2022-11-07 11:05:22 +0100 <cheater> ;)
2022-11-07 11:05:23 +0100 <cheater> etc
2022-11-07 11:05:41 +0100 <tomsmeding> sure :p
2022-11-07 11:05:50 +0100 <cheater> let me file bug reports for "paste.tomsmeding.com does not turn > into &gt;"
2022-11-07 11:05:53 +0100thyriaen(~thyriaen@2a01:aea0:dd4:470d:6245:cbff:fe9f:48b1)
2022-11-07 11:05:53 +0100ccapndave(~ccapndave@xcpe-62-167-164-99.cgn.res.adslplus.ch)
2022-11-07 11:05:57 +0100ft(~ft@p508dbd59.dip0.t-ipconnect.de) (Quit: leaving)
2022-11-07 11:06:30 +0100 <tomsmeding> cheater: I _could_ add a download link for each file, but I'm not sure what the added value is over the existing [raw] link
2022-11-07 11:06:37 +0100 <tomsmeding> like, clicking that link and then hitting ctrl+S gives the same
2022-11-07 11:06:59 +0100 <cheater> yeah you're right
2022-11-07 11:07:07 +0100 <tomsmeding> keep as-is?
2022-11-07 11:07:33 +0100 <cheater> sure
2022-11-07 11:07:51 +0100 <cheater> so this guy is asking the same question as you are. you will not believe the answer! https://stackoverflow.com/questions/30223015/how-can-i-prevent-dom-text-content-from-being-copied-…
2022-11-07 11:08:52 +0100 <cheater> ah, yes. this seems to be the solution https://stackoverflow.com/questions/24831286/removing-rich-text-formatting-for-copy-paste-cross-br…
2022-11-07 11:08:59 +0100 <tomsmeding> cheater: that's 1. not a solution, and 2. not what google is doing :p
2022-11-07 11:09:00 +0100 <cheater> -webkit-user-select:none;
2022-11-07 11:09:03 +0100 <cheater> -webkit-user-select:text;
2022-11-07 11:09:31 +0100 <cheater> google?
2022-11-07 11:09:32 +0100 <tomsmeding> oh user-select:text may be it
2022-11-07 11:09:39 +0100 <cheater> google would have 5 pastebins by now
2022-11-07 11:09:50 +0100 <cheater> and 10 already decomissioned ones
2022-11-07 11:09:54 +0100 <tomsmeding> cheater: copying from google's about page doesn't get html stuff
2022-11-07 11:10:01 +0100 <tomsmeding> was just a test case :
2022-11-07 11:10:02 +0100 <tomsmeding> :p
2022-11-07 11:10:30 +0100 <cheater> also add user-select:none for the other stuff that isn't code
2022-11-07 11:10:36 +0100 <cheater> so it doesn't get selected
2022-11-07 11:10:48 +0100 <cheater> because no one likes selecting stuff that isn't stuff they would want to select
2022-11-07 11:11:58 +0100ubert1(~Thunderbi@91.141.75.105.wireless.dyn.drei.com)
2022-11-07 11:12:10 +0100ubert(~Thunderbi@178.165.160.236.wireless.dyn.drei.com) (Ping timeout: 252 seconds)
2022-11-07 11:12:10 +0100ubert1ubert
2022-11-07 11:12:55 +0100 <cheater> tomsmeding: can u also add ur thing to the pastebinit command :)
2022-11-07 11:13:03 +0100 <cheater> it's very useful
2022-11-07 11:13:04 +0100 <cheater> :)
2022-11-07 11:13:24 +0100__monty__(~toonn@user/toonn)
2022-11-07 11:14:19 +0100 <tomsmeding> which of the >=2 implementations of it
2022-11-07 11:15:25 +0100 <cheater> idk. the one on ubuntu mate is the one i like
2022-11-07 11:15:32 +0100 <cheater> because that's the one i get
2022-11-07 11:16:09 +0100 <cheater> Original-Maintainer: Simon Quigley <tsimonq2@debian.org>
2022-11-07 11:16:29 +0100 <cheater> Homepage: https://phab.lubuntu.me/source/pastebinit/
2022-11-07 11:17:29 +0100abhiroop_(~abhiroop@ext-1-450.eduroam.chalmers.se)
2022-11-07 11:19:20 +0100finn_elija(~finn_elij@user/finn-elija/x-0085643)
2022-11-07 11:19:20 +0100FinnElija(~finn_elij@user/finn-elija/x-0085643) (Killed (NickServ (Forcing logout FinnElija -> finn_elija)))
2022-11-07 11:19:20 +0100finn_elijaFinnElija
2022-11-07 11:19:38 +0100perrierjouet(~perrier-j@modemcable048.127-56-74.mc.videotron.ca)
2022-11-07 11:21:28 +0100 <tomsmeding> cheater: looks like you can do this privately on your system; see here for url format https://github.com/tomsmeding/pastebin-haskell#pasting-from-your-terminal
2022-11-07 11:21:29 +0100xff0x(~xff0x@125x103x176x34.ap125.ftth.ucom.ne.jp) (Ping timeout: 246 seconds)
2022-11-07 11:21:32 +0100 <cheater> tomsmeding: you can probably close that ticket too :p
2022-11-07 11:21:50 +0100 <tomsmeding> Will do currently on the go :p
2022-11-07 11:21:51 +0100 <cheater> tomsmeding: right but i don't want to remember stuff :D
2022-11-07 11:22:12 +0100 <cheater> i just want to do pastebinit --help and have that show me pastebinit -l and have that show me your pastebin is supported
2022-11-07 11:22:14 +0100bilegeek(~bilegeek@2600:1008:b011:e74:deb:55dd:b7ff:98a7) (Quit: Leaving)
2022-11-07 11:24:26 +0100 <tomsmeding> cheater: that readme looks like you can add a file in ~/.pastebinit.d or something
2022-11-07 11:24:29 +0100Guest1505Sauvin
2022-11-07 11:24:56 +0100 <cheater> i know. but i also don't want to remember that :p pastebinit would do well to support your pastebin
2022-11-07 11:26:17 +0100 <tomsmeding> I'm not sure I want instructions to use this pastebin to live on any random person's pc by default
2022-11-07 11:26:43 +0100 <tomsmeding> I don't have a terribly large disk for the server, and it's a #haskell-focused thing anyway
2022-11-07 11:28:23 +0100Guest75(~Guest75@178.141.177.81) (Ping timeout: 260 seconds)
2022-11-07 11:30:01 +0100CiaoSen(~Jura@p200300c9571247002a3a4dfffe84dbd5.dip0.t-ipconnect.de) (Ping timeout: 252 seconds)
2022-11-07 11:30:52 +0100gurkenglas(~gurkengla@p548ac72e.dip0.t-ipconnect.de)
2022-11-07 11:36:33 +0100Guest75(~Guest75@178.141.177.81)
2022-11-07 11:36:46 +0100jonrh(sid5185@id-5185.ilkley.irccloud.com) (Read error: Connection reset by peer)
2022-11-07 11:36:48 +0100sa1(sid7690@id-7690.ilkley.irccloud.com) (Read error: Connection reset by peer)
2022-11-07 11:36:53 +0100unlucy(sid572875@id-572875.tinside.irccloud.com) (Ping timeout: 246 seconds)
2022-11-07 11:36:54 +0100Major_Biscuit(~MajorBisc@145.94.173.65) (Ping timeout: 260 seconds)
2022-11-07 11:36:56 +0100jonrh(sid5185@id-5185.ilkley.irccloud.com)
2022-11-07 11:37:00 +0100saolsen(sid26430@id-26430.lymington.irccloud.com) (Read error: Connection reset by peer)
2022-11-07 11:37:02 +0100bbhoss(sid18216@id-18216.tinside.irccloud.com) (Read error: Connection reset by peer)
2022-11-07 11:37:02 +0100lally(sid388228@id-388228.uxbridge.irccloud.com) (Read error: Connection reset by peer)
2022-11-07 11:37:02 +0100davetapley_(sid666@id-666.uxbridge.irccloud.com) (Read error: Connection reset by peer)
2022-11-07 11:37:06 +0100iphy(sid67735@id-67735.lymington.irccloud.com) (Read error: Connection reset by peer)
2022-11-07 11:37:09 +0100lexi-lambda(sid92601@id-92601.hampstead.irccloud.com) (Read error: Connection reset by peer)
2022-11-07 11:37:09 +0100tritlo(sid58727@user/tritlo) (Read error: Connection reset by peer)
2022-11-07 11:37:10 +0100saolsen(sid26430@id-26430.lymington.irccloud.com)
2022-11-07 11:37:11 +0100AndreasK(sid320732@id-320732.uxbridge.irccloud.com) (Read error: Connection reset by peer)
2022-11-07 11:37:12 +0100lally(sid388228@id-388228.uxbridge.irccloud.com)
2022-11-07 11:37:13 +0100Firedancer(sid336191@id-336191.hampstead.irccloud.com) (Ping timeout: 255 seconds)
2022-11-07 11:37:13 +0100Adeon(sid418992@id-418992.lymington.irccloud.com) (Ping timeout: 255 seconds)
2022-11-07 11:37:13 +0100S11001001(sid42510@id-42510.ilkley.irccloud.com) (Read error: Connection reset by peer)
2022-11-07 11:37:13 +0100SethTisue(sid14912@id-14912.ilkley.irccloud.com) (Read error: Connection reset by peer)
2022-11-07 11:37:13 +0100sooch_(sid533113@id-533113.hampstead.irccloud.com) (Read error: Connection reset by peer)
2022-11-07 11:37:14 +0100ephemient(uid407513@id-407513.lymington.irccloud.com) (Read error: Connection reset by peer)
2022-11-07 11:37:15 +0100hendi(sid489601@id-489601.lymington.irccloud.com) (Ping timeout: 260 seconds)
2022-11-07 11:37:18 +0100AndreasK(sid320732@id-320732.uxbridge.irccloud.com)
2022-11-07 11:37:19 +0100caasih(sid13241@id-13241.ilkley.irccloud.com) (Read error: Connection reset by peer)
2022-11-07 11:37:21 +0100mrianbloom(uid350277@id-350277.ilkley.irccloud.com) (Read error: Connection reset by peer)
2022-11-07 11:37:21 +0100supersven(sid501114@id-501114.ilkley.irccloud.com) (Read error: Connection reset by peer)
2022-11-07 11:37:21 +0100hamishmack(sid389057@id-389057.hampstead.irccloud.com) (Read error: Connection reset by peer)
2022-11-07 11:37:22 +0100sooch_(sid533113@id-533113.hampstead.irccloud.com)
2022-11-07 11:37:23 +0100ephemient(uid407513@id-407513.lymington.irccloud.com)
2022-11-07 11:37:24 +0100tnks(sid412124@id-412124.helmsley.irccloud.com) (Read error: Connection reset by peer)
2022-11-07 11:37:24 +0100cbarrett(sid192934@id-192934.helmsley.irccloud.com) (Read error: Connection reset by peer)
2022-11-07 11:37:28 +0100acertain(sid470584@id-470584.hampstead.irccloud.com) (Read error: Connection reset by peer)
2022-11-07 11:37:28 +0100ProofTechnique(sid79547@id-79547.ilkley.irccloud.com) (Ping timeout: 246 seconds)
2022-11-07 11:37:29 +0100bookshelfdave(sid28102@id-28102.ilkley.irccloud.com) (Read error: Connection reset by peer)
2022-11-07 11:37:31 +0100bradparker(sid262931@id-262931.uxbridge.irccloud.com) (Read error: Connection reset by peer)
2022-11-07 11:37:33 +0100gonz_______(sid304396@id-304396.lymington.irccloud.com) (Read error: Connection reset by peer)
2022-11-07 11:37:33 +0100chessai(sid225296@id-225296.lymington.irccloud.com) (Read error: Connection reset by peer)
2022-11-07 11:37:33 +0100tnks(sid412124@id-412124.helmsley.irccloud.com)
2022-11-07 11:37:33 +0100b20n(sid115913@id-115913.uxbridge.irccloud.com) (Read error: Connection reset by peer)
2022-11-07 11:37:33 +0100ysh____(sid6017@id-6017.ilkley.irccloud.com) (Read error: Connection reset by peer)
2022-11-07 11:37:34 +0100edmundnoble(sid229620@id-229620.helmsley.irccloud.com) (Read error: Connection reset by peer)
2022-11-07 11:37:35 +0100NemesisD(sid24071@id-24071.lymington.irccloud.com) (Ping timeout: 246 seconds)
2022-11-07 11:37:36 +0100conjunctive(sid433686@id-433686.helmsley.irccloud.com) (Read error: Connection reset by peer)
2022-11-07 11:37:38 +0100systemfault(sid267009@id-267009.uxbridge.irccloud.com) (Read error: Connection reset by peer)
2022-11-07 11:37:38 +0100money(sid532813@user/polo) (Read error: Connection reset by peer)
2022-11-07 11:37:39 +0100spaced(uid572193@user/spaced) (Read error: Connection reset by peer)
2022-11-07 11:37:40 +0100Kamuela(sid111576@id-111576.tinside.irccloud.com) (Ping timeout: 255 seconds)
2022-11-07 11:37:40 +0100NiKaN(sid385034@id-385034.helmsley.irccloud.com) (Ping timeout: 255 seconds)
2022-11-07 11:37:40 +0100carter(sid14827@id-14827.helmsley.irccloud.com) (Read error: Connection reset by peer)
2022-11-07 11:37:40 +0100megeve(sid523379@id-523379.hampstead.irccloud.com) (Read error: Connection reset by peer)
2022-11-07 11:37:42 +0100b20n(sid115913@id-115913.uxbridge.irccloud.com)
2022-11-07 11:37:42 +0100sa1(sid7690@id-7690.ilkley.irccloud.com)
2022-11-07 11:37:42 +0100cln(sid336875@id-336875.ilkley.irccloud.com) (Read error: Connection reset by peer)
2022-11-07 11:37:42 +0100agander_m(sid407952@id-407952.tinside.irccloud.com) (Read error: Connection reset by peer)
2022-11-07 11:37:43 +0100degraafk(sid71464@id-71464.lymington.irccloud.com) (Read error: Connection reset by peer)
2022-11-07 11:37:43 +0100integral(sid296274@user/integral) (Read error: Connection reset by peer)
2022-11-07 11:37:43 +0100Boarders___(sid425905@id-425905.lymington.irccloud.com) (Read error: Connection reset by peer)
2022-11-07 11:37:45 +0100ysh____(sid6017@id-6017.ilkley.irccloud.com)
2022-11-07 11:37:46 +0100hook54321(sid149355@user/hook54321) (Read error: Connection reset by peer)
2022-11-07 11:37:46 +0100joel135(sid136450@id-136450.hampstead.irccloud.com) (Read error: Connection reset by peer)
2022-11-07 11:37:46 +0100hnOsmium0001(uid453710@user/hnOsmium0001) (Read error: Connection reset by peer)
2022-11-07 11:37:46 +0100dy(sid3438@user/dy) (Read error: Connection reset by peer)
2022-11-07 11:37:46 +0100bjs(sid190364@user/bjs) (Write error: Connection reset by peer)
2022-11-07 11:37:47 +0100nrr____(sid20938@id-20938.lymington.irccloud.com) (Read error: Connection reset by peer)
2022-11-07 11:37:47 +0100SrPx(sid108780@id-108780.uxbridge.irccloud.com) (Read error: No route to host)
2022-11-07 11:37:47 +0100vito(sid1962@user/vito) (Read error: Connection reset by peer)
2022-11-07 11:37:58 +0100iphy(sid67735@id-67735.lymington.irccloud.com)
2022-11-07 11:38:00 +0100chessai(sid225296@id-225296.lymington.irccloud.com)
2022-11-07 11:38:06 +0100Firedancer(sid336191@id-336191.hampstead.irccloud.com)
2022-11-07 11:38:13 +0100lexi-lambda(sid92601@2a03:5180:f:4::1:69b9)
2022-11-07 11:38:16 +0100agander_m(sid407952@2a03:5180:f::6:3990)
2022-11-07 11:38:17 +0100hamishmack(sid389057@2a03:5180:f:4::5:efc1)
2022-11-07 11:38:23 +0100mrianbloom(uid350277@id-350277.ilkley.irccloud.com)
2022-11-07 11:38:25 +0100cbarrett(sid192934@2a03:5180:f:1::2:f1a6)
2022-11-07 11:38:27 +0100bookshelfdave(sid28102@2a03:5180:f:3::6dc6)
2022-11-07 11:38:28 +0100unlucy(sid572875@2a03:5180:f::8:bdcb)
2022-11-07 11:38:29 +0100cln(sid336875@2a03:5180:f:3::5:23eb)
2022-11-07 11:38:32 +0100bradparker(sid262931@id-262931.uxbridge.irccloud.com)
2022-11-07 11:38:36 +0100Adeon(sid418992@id-418992.lymington.irccloud.com)
2022-11-07 11:38:36 +0100edmundnoble(sid229620@id-229620.helmsley.irccloud.com)
2022-11-07 11:38:37 +0100gonz_______(sid304396@2a03:5180:f:2::4:a50c)
2022-11-07 11:38:38 +0100acertain(sid470584@id-470584.hampstead.irccloud.com)
2022-11-07 11:38:42 +0100SethTisue(sid14912@ilkley.irccloud.com)
2022-11-07 11:38:42 +0100systemfault(sid267009@id-267009.uxbridge.irccloud.com)
2022-11-07 11:38:44 +0100NemesisD(sid24071@id-24071.lymington.irccloud.com)
2022-11-07 11:38:46 +0100ProofTechnique(sid79547@id-79547.ilkley.irccloud.com)
2022-11-07 11:38:47 +0100Kamuela(sid111576@2a03:5180:f::1:b3d8)
2022-11-07 11:38:48 +0100conjunctive(sid433686@2a03:5180:f:1::6:9e16)
2022-11-07 11:38:48 +0100bbhoss(sid18216@5.254.36.57)
2022-11-07 11:38:48 +0100money(sid532813@user/polo)
2022-11-07 11:38:49 +0100supersven(sid501114@id-501114.ilkley.irccloud.com)
2022-11-07 11:38:49 +0100davetapley_(sid666@uxbridge.irccloud.com)
2022-11-07 11:38:50 +0100degraafk(sid71464@id-71464.lymington.irccloud.com)
2022-11-07 11:38:51 +0100megeve(sid523379@2a03:5180:f:4::7:fc73)
2022-11-07 11:38:57 +0100Boarders___(sid425905@2a03:5180:f:2::6:7fb1)
2022-11-07 11:39:01 +0100dy(sid3438@user/dy)
2022-11-07 11:39:03 +0100bjs(sid190364@user/bjs)
2022-11-07 11:39:04 +0100integral(sid296274@user/integral)
2022-11-07 11:39:04 +0100S11001001(sid42510@id-42510.ilkley.irccloud.com)
2022-11-07 11:39:08 +0100christiaanb(sid84827@id-84827.lymington.irccloud.com)
2022-11-07 11:39:10 +0100nrr____(sid20938@id-20938.lymington.irccloud.com)
2022-11-07 11:39:10 +0100spaced(uid572193@id-572193.ilkley.irccloud.com)
2022-11-07 11:39:11 +0100caasih(sid13241@id-13241.ilkley.irccloud.com)
2022-11-07 11:39:13 +0100hongminhee(sid295@tinside.irccloud.com)
2022-11-07 11:39:16 +0100carter(sid14827@id-14827.helmsley.irccloud.com)
2022-11-07 11:39:16 +0100vito(sid1962@user/vito)
2022-11-07 11:39:16 +0100tritlo(sid58727@user/tritlo)
2022-11-07 11:39:22 +0100joel135(sid136450@id-136450.hampstead.irccloud.com)
2022-11-07 11:39:26 +0100SrPx(sid108780@2a03:5180:f:5::1:a8ec)
2022-11-07 11:39:28 +0100hnOsmium0001(uid453710@user/hnOsmium0001)
2022-11-07 11:39:28 +0100spaced(uid572193@id-572193.ilkley.irccloud.com) (Changing host)
2022-11-07 11:39:28 +0100spaced(uid572193@user/spaced)
2022-11-07 11:39:42 +0100NiKaN(sid385034@id-385034.helmsley.irccloud.com)
2022-11-07 11:39:43 +0100hendi(sid489601@lymington.irccloud.com)
2022-11-07 11:40:21 +0100econo(uid147250@user/econo) (Quit: Connection closed for inactivity)
2022-11-07 11:40:23 +0100hook54321(sid149355@user/hook54321)
2022-11-07 11:41:04 +0100dtbouo^(~dtbouo@76.145.185.103)
2022-11-07 11:45:52 +0100cods(~fred@82-65-232-44.subs.proxad.net) (Ping timeout: 246 seconds)
2022-11-07 11:46:05 +0100cods(~fred@82-65-232-44.subs.proxad.net)
2022-11-07 11:47:28 +0100libertyprime(~libertypr@118-92-78-165.dsl.dyn.ihug.co.nz)
2022-11-07 11:48:01 +0100tromp(~textual@92-110-219-57.cable.dynamic.v4.ziggo.nl)
2022-11-07 11:49:30 +0100beteigeuze(~Thunderbi@bl14-81-220.dsl.telepac.pt)
2022-11-07 11:56:57 +0100raehik(~raehik@cpc95906-rdng25-2-0-cust156.15-3.cable.virginm.net)
2022-11-07 11:59:25 +0100Major_Biscuit(~MajorBisc@145.94.173.65)
2022-11-07 11:59:49 +0100razetime(~quassel@117.193.1.205)
2022-11-07 12:04:40 +0100jinsun(~jinsun@user/jinsun) (Read error: Connection reset by peer)
2022-11-07 12:05:08 +0100bitdex(~bitdex@gateway/tor-sasl/bitdex) (Ping timeout: 255 seconds)
2022-11-07 12:09:14 +0100bitdex(~bitdex@gateway/tor-sasl/bitdex)
2022-11-07 12:09:55 +0100werneta(~werneta@70-142-214-115.lightspeed.irvnca.sbcglobal.net) (Ping timeout: 252 seconds)
2022-11-07 12:10:05 +0100Lycurgus(~juan@user/Lycurgus) (Quit: Exeunt https://tinyurl.com/4m8d4kd5)
2022-11-07 12:10:20 +0100jinsun(~jinsun@user/jinsun)
2022-11-07 12:12:02 +0100ccapndave(~ccapndave@xcpe-62-167-164-99.cgn.res.adslplus.ch) (Quit: Textual IRC Client: www.textualapp.com)
2022-11-07 12:14:39 +0100eggplantade(~Eggplanta@2600:1700:38c5:d800:c444:d37e:95a5:c717)
2022-11-07 12:16:29 +0100thonkpod_(~thonkpod@user/thonkpod) (Ping timeout: 246 seconds)
2022-11-07 12:16:40 +0100bitdex(~bitdex@gateway/tor-sasl/bitdex) (Remote host closed the connection)
2022-11-07 12:17:43 +0100bitdex(~bitdex@gateway/tor-sasl/bitdex)
2022-11-07 12:18:20 +0100xff0x(~xff0x@2405:6580:b080:900:a421:ba8e:4c73:4420)
2022-11-07 12:19:15 +0100eggplantade(~Eggplanta@2600:1700:38c5:d800:c444:d37e:95a5:c717) (Ping timeout: 260 seconds)
2022-11-07 12:23:05 +0100raehik(~raehik@cpc95906-rdng25-2-0-cust156.15-3.cable.virginm.net) (Ping timeout: 246 seconds)
2022-11-07 12:26:55 +0100werneta(~werneta@70-142-214-115.lightspeed.irvnca.sbcglobal.net)
2022-11-07 12:28:32 +0100ec_(~ec@gateway/tor-sasl/ec) (Ping timeout: 255 seconds)
2022-11-07 12:30:40 +0100ec_(~ec@gateway/tor-sasl/ec)
2022-11-07 12:36:41 +0100comerijn(~merijn@86-86-29-250.fixed.kpn.net)
2022-11-07 12:37:34 +0100jonathanx_(~jonathan@h-178-174-176-109.A357.priv.bahnhof.se)
2022-11-07 12:39:54 +0100merijn(~merijn@86-86-29-250.fixed.kpn.net) (Ping timeout: 260 seconds)
2022-11-07 12:40:29 +0100nschoe(~q@141.101.51.197) (Ping timeout: 260 seconds)
2022-11-07 12:40:29 +0100jonathanx(~jonathan@h-178-174-176-109.A357.priv.bahnhof.se) (Ping timeout: 260 seconds)
2022-11-07 12:40:31 +0100nschoe_(~q@141.101.51.197)
2022-11-07 12:40:50 +0100xff0x(~xff0x@2405:6580:b080:900:a421:ba8e:4c73:4420) (Ping timeout: 260 seconds)
2022-11-07 12:41:15 +0100Major_Biscuit(~MajorBisc@145.94.173.65) (Quit: WeeChat 3.6)
2022-11-07 12:42:37 +0100Sciencentistguy6(~sciencent@hacksoc/ordinary-member)
2022-11-07 12:42:52 +0100machinedgod(~machinedg@clnet-p10-126.ikbnet.co.at) (Ping timeout: 252 seconds)
2022-11-07 12:44:07 +0100Sciencentistguy(~sciencent@hacksoc/ordinary-member) (Read error: Connection reset by peer)
2022-11-07 12:44:07 +0100Sciencentistguy6Sciencentistguy
2022-11-07 12:44:17 +0100azimut(~azimut@gateway/tor-sasl/azimut) (Ping timeout: 255 seconds)
2022-11-07 12:45:09 +0100libertyprime(~libertypr@118-92-78-165.dsl.dyn.ihug.co.nz) (Ping timeout: 260 seconds)
2022-11-07 12:45:15 +0100MajorBiscuit(~MajorBisc@145.94.173.65)
2022-11-07 12:53:26 +0100xff0x(~xff0x@2405:6580:b080:900:a421:ba8e:4c73:4420)
2022-11-07 12:57:13 +0100libertyprime(~libertypr@118-92-78-165.dsl.dyn.ihug.co.nz)
2022-11-07 13:05:31 +0100comerijn(~merijn@86-86-29-250.fixed.kpn.net) (Ping timeout: 248 seconds)
2022-11-07 13:06:53 +0100 <bjourne> any tips on how to make ghc compile faster?
2022-11-07 13:09:39 +0100libertyprime(~libertypr@118-92-78-165.dsl.dyn.ihug.co.nz) (Ping timeout: 260 seconds)
2022-11-07 13:10:13 +0100phma(phma@2001:5b0:210b:fde8:9e53:4765:c808:5b87) (Read error: Connection reset by peer)
2022-11-07 13:11:00 +0100phma(~phma@host-67-44-208-178.hnremote.net)
2022-11-07 13:17:14 +0100__monty__(~toonn@user/toonn) (Ping timeout: 260 seconds)
2022-11-07 13:17:29 +0100__monty__(~toonn@user/toonn)
2022-11-07 13:18:49 +0100machinedgod(~machinedg@clnet-p10-126.ikbnet.co.at)
2022-11-07 13:19:59 +0100coot(~coot@2a02:a310:e241:1b00:ec1a:e9df:79ac:66ba) (Quit: coot)
2022-11-07 13:20:29 +0100 <Hecate> bjourne: there's a page or two about that: https://downloads.haskell.org/ghc/latest/docs/users_guide/hints.html#
2022-11-07 13:20:46 +0100 <Hecate> and https://rybczak.net/2016/03/26/how-to-reduce-compilation-times-of-haskell-projects/
2022-11-07 13:29:31 +0100danza(~francesco@22.red-79-153-42.dynamicip.rima-tde.net) (Ping timeout: 248 seconds)
2022-11-07 13:33:40 +0100 <cheater> tomsmeding: ahh, gotcha
2022-11-07 13:34:14 +0100nschoe_(~q@141.101.51.197) (Quit: Switching off)
2022-11-07 13:34:19 +0100jmdaemon(~jmdaemon@user/jmdaemon) (Ping timeout: 248 seconds)
2022-11-07 13:34:44 +0100gurkenglas(~gurkengla@p548ac72e.dip0.t-ipconnect.de) (Ping timeout: 260 seconds)
2022-11-07 13:36:07 +0100gurkenglas(~gurkengla@p548ac72e.dip0.t-ipconnect.de)
2022-11-07 13:38:05 +0100merijn(~merijn@86-86-29-250.fixed.kpn.net)
2022-11-07 13:39:34 +0100jtomas(~jtomas@191.red-88-17-199.dynamicip.rima-tde.net) (Ping timeout: 252 seconds)
2022-11-07 13:40:04 +0100michalz(~michalz@185.246.207.217) (Ping timeout: 252 seconds)
2022-11-07 13:40:06 +0100 <dminuoso> bjourne: Mmm, you should ideally start understanding where time is lost in GHC in the first place (profiling!)
2022-11-07 13:40:25 +0100 <dminuoso> Consider something like `-ddump-timings`
2022-11-07 13:40:30 +0100 <dminuoso> Identify particular modules
2022-11-07 13:40:34 +0100davetapley_(sid666@uxbridge.irccloud.com) (Ping timeout: 260 seconds)
2022-11-07 13:40:34 +0100SethTisue(sid14912@ilkley.irccloud.com) (Ping timeout: 260 seconds)
2022-11-07 13:40:42 +0100SethTisue(sid14912@id-14912.ilkley.irccloud.com)
2022-11-07 13:40:56 +0100 <dminuoso> It's probably more effective than guessing or applying unneeded premature optimizations
2022-11-07 13:42:56 +0100 <dminuoso> As a random example, libraries like megaparsec can - in length of list arguments - expontentially blow up compilation times to the order of 10 minutes on a module. The problem here is that megaparsec ruthlessly INLINE's virtually every binding. This is fixable, but it needs targeted help.
2022-11-07 13:43:25 +0100 <dminuoso> bjourne: Furthermore, ask yourself why you need GHC to compile faster.
2022-11-07 13:43:25 +0100danza(~francesco@45.red-79-153-2.dynamicip.rima-tde.net)
2022-11-07 13:43:33 +0100 <merijn> dminuoso: Because it's not instant >.>
2022-11-07 13:43:55 +0100 <dminuoso> If its part of a quick "compile to check whether modifications succeed or do the right thing" flow, HLS or ghcide (or just -00 with codegen disabled) are perfectly fine solutions.
2022-11-07 13:44:16 +0100 <dminuoso> merijn: whats not instant?
2022-11-07 13:44:31 +0100 <merijn> GHC compilation, which is why I want it faster :p
2022-11-07 13:44:39 +0100dtbouo^(~dtbouo@76.145.185.103) (Ping timeout: 260 seconds)
2022-11-07 13:44:42 +0100shapr(~user@68.54.166.125)
2022-11-07 13:45:05 +0100 <dminuoso> Mmm, I think most my beef with compilation speed is just not using ghcide/HLS enough.
2022-11-07 13:45:21 +0100dtbouo^(~dtbouo@76.145.185.103)
2022-11-07 13:45:35 +0100 <dminuoso> Once you have -O0 with codegen disabled, ghc is fairly quick outside of pathological typesystem overuse.
2022-11-07 13:45:39 +0100 <merijn> That doesn't run code/tests, though. And I want that to be faster too
2022-11-07 13:46:01 +0100 <merijn> dminuoso: There have definitely been cases where GHC is a bottleneck. Not a massive one, but still
2022-11-07 13:46:09 +0100 <merijn> And GHC *could* be much faster than it currently is
2022-11-07 13:46:32 +0100 <merijn> Fortunately 9.x had some performance improvements too
2022-11-07 13:46:52 +0100dminuosois just waiting for "if someone was going to me pay me, I would make GHC much much faster"
2022-11-07 13:47:30 +0100 <merijn> Naah, I wouldn't, because that's not the changes I'm interested in :p
2022-11-07 13:47:44 +0100 <merijn> But there are some longer running projects for speeding up GHC and that's Good (TM)
2022-11-07 13:47:57 +0100 <dminuoso> Heh
2022-11-07 13:48:07 +0100 <merijn> GHC is far from problematically slow, but it's much slower than it has to be
2022-11-07 13:48:10 +0100CiaoSen(~Jura@p200300c9571247002a3a4dfffe84dbd5.dip0.t-ipconnect.de)
2022-11-07 13:51:32 +0100raym(~ray@user/raym)
2022-11-07 13:54:09 +0100vglfr(~vglfr@145.224.100.100) (Remote host closed the connection)
2022-11-07 13:54:43 +0100vglfr(~vglfr@145.224.100.100)
2022-11-07 13:55:37 +0100davetapley_(sid666@id-666.uxbridge.irccloud.com)
2022-11-07 14:03:36 +0100libertyprime(~libertypr@118-92-78-165.dsl.dyn.ihug.co.nz)
2022-11-07 14:08:59 +0100troydm(~troydm@host-176-37-124-197.b025.la.net.ua) (Ping timeout: 248 seconds)
2022-11-07 14:11:43 +0100nate4(~nate@98.45.169.16)
2022-11-07 14:12:01 +0100shriekingnoise(~shrieking@186.137.167.202)
2022-11-07 14:14:57 +0100[itchyjunk](~itchyjunk@user/itchyjunk/x-7353470)
2022-11-07 14:16:29 +0100nate4(~nate@98.45.169.16) (Ping timeout: 246 seconds)
2022-11-07 14:19:25 +0100infinity0(~infinity0@pwned.gg) (Ping timeout: 252 seconds)
2022-11-07 14:23:23 +0100abrar(~abrar@static-108-2-152-54.phlapa.fios.verizon.net) (Ping timeout: 248 seconds)
2022-11-07 14:24:40 +0100libertyprime(~libertypr@118-92-78-165.dsl.dyn.ihug.co.nz) (Ping timeout: 260 seconds)
2022-11-07 14:30:44 +0100werneta(~werneta@70-142-214-115.lightspeed.irvnca.sbcglobal.net) (Ping timeout: 260 seconds)
2022-11-07 14:30:59 +0100werneta(~werneta@70-142-214-115.lightspeed.irvnca.sbcglobal.net)
2022-11-07 14:32:41 +0100bitdex(~bitdex@gateway/tor-sasl/bitdex) (Quit: = "")
2022-11-07 14:36:13 +0100Xeroine(~Xeroine@user/xeroine) (Ping timeout: 252 seconds)
2022-11-07 14:37:43 +0100Xeroine(~Xeroine@user/xeroine)
2022-11-07 14:39:24 +0100waleee(~waleee@2001:9b0:213:7200:cc36:a556:b1e8:b340)
2022-11-07 14:42:55 +0100 <merijn> Early heads up for anyone near the Netherlands that the annual Dutch FP day has survived COVID and is back to it's usual timing in January: https://set.win.tue.nl/nl-fp-day-2023/
2022-11-07 14:43:16 +0100coot(~coot@2a02:a310:e241:1b00:ec1a:e9df:79ac:66ba)
2022-11-07 14:44:24 +0100dtbouo^(~dtbouo@76.145.185.103) (Remote host closed the connection)
2022-11-07 14:44:44 +0100Sciencentistguy8(~sciencent@hacksoc/ordinary-member)
2022-11-07 14:46:11 +0100Sciencentistguy(~sciencent@hacksoc/ordinary-member) (Read error: Connection reset by peer)
2022-11-07 14:46:11 +0100Sciencentistguy8Sciencentistguy
2022-11-07 14:48:49 +0100MajorBiscuit(~MajorBisc@145.94.173.65) (Ping timeout: 260 seconds)
2022-11-07 14:50:28 +0100MajorBiscuit(~MajorBisc@145.94.173.65)
2022-11-07 14:58:50 +0100FinnElija(~finn_elij@user/finn-elija/x-0085643) (Ping timeout: 255 seconds)
2022-11-07 14:59:51 +0100FinnElija(~finn_elij@user/finn-elija/x-0085643)
2022-11-07 15:01:28 +0100razetime(~quassel@117.193.1.205) (Ping timeout: 252 seconds)
2022-11-07 15:01:50 +0100gurkenglas(~gurkengla@p548ac72e.dip0.t-ipconnect.de) (Ping timeout: 252 seconds)
2022-11-07 15:02:00 +0100razetime(~quassel@117.193.1.205)
2022-11-07 15:08:55 +0100michalz(~michalz@185.246.207.215)
2022-11-07 15:11:13 +0100Guest75(~Guest75@178.141.177.81) (Ping timeout: 260 seconds)
2022-11-07 15:11:26 +0100phma_(phma@2001:5b0:215d:9f08:82a6:5ea7:d17:d96d)
2022-11-07 15:14:29 +0100phma(~phma@host-67-44-208-178.hnremote.net) (Ping timeout: 260 seconds)
2022-11-07 15:16:06 +0100kuribas(~user@ip-188-118-57-242.reverse.destiny.be)
2022-11-07 15:16:08 +0100irrgit(~irrgit@146.70.27.218)
2022-11-07 15:19:08 +0100abhiroop_(~abhiroop@ext-1-450.eduroam.chalmers.se) (Ping timeout: 246 seconds)
2022-11-07 15:20:53 +0100Flow(~none@salem.informatik.uni-erlangen.de) (Quit: WeeChat 3.5)
2022-11-07 15:21:01 +0100mmhat(~mmh@p200300f1c700b8c5ee086bfffe095315.dip0.t-ipconnect.de) (Quit: WeeChat 3.7.1)
2022-11-07 15:21:07 +0100 <dminuoso> Is there a rotate with carry primop?
2022-11-07 15:21:07 +0100Flow(~none@gentoo/developer/flow)
2022-11-07 15:22:20 +0100 <dminuoso> Or mmm. I think Ill rather ask in #ghc
2022-11-07 15:24:23 +0100 <remexre> is there a way to add custom constraints to a deriving clause? I'm using an associated type, so I really only want a (Eq (AssocType a) => Eq (MyType a)) instance, but I think the derive is giving me an (Eq a => Eq (MyType a)) instance
2022-11-07 15:24:56 +0100 <dminuoso> remexre: StandaloneDeriving
2022-11-07 15:25:14 +0100 <remexre> oh cool, thanks!
2022-11-07 15:26:23 +0100 <kuribas> funny how Python has embraced lazy IO fully.
2022-11-07 15:26:40 +0100 <dminuoso> kuribas: what lazy io do they have?
2022-11-07 15:26:43 +0100 <kuribas> While haskell lazyness is usually considered a complication
2022-11-07 15:27:03 +0100 <kuribas> dminuoso: mostly attributes which run a side-effect.
2022-11-07 15:27:22 +0100 <dminuoso> That's not really lazy IO, though
2022-11-07 15:27:39 +0100 <kuribas> dminuoso: it is when it's used with caching.
2022-11-07 15:27:45 +0100 <dminuoso> I dont think the expression `lazy IO` has any meaning in a language that does not differentiate between execution and evaluation
2022-11-07 15:28:01 +0100ystael(~ystael@user/ystael)
2022-11-07 15:28:32 +0100 <kuribas> when I see an attribute in Python, I consider it as a "value", not some function that runs underneath.
2022-11-07 15:29:11 +0100 <dminuoso> kuribas: Given that __getattr__ is a thing, that assumption is already flawed.
2022-11-07 15:30:08 +0100 <kuribas> https://dev.to/thibaultduponchelle/python-lazy-loading-of-an-attribute-aij
2022-11-07 15:30:13 +0100 <kuribas> they call it lazy loading.
2022-11-07 15:30:16 +0100wootehfoot(~wootehfoo@user/wootehfoot)
2022-11-07 15:30:33 +0100 <dminuoso> kuribas: price is a proper method.
2022-11-07 15:30:48 +0100 <kuribas> price?
2022-11-07 15:31:12 +0100 <dminuoso> In that blog article.
2022-11-07 15:31:37 +0100 <kuribas> dminuoso: it's an attribute
2022-11-07 15:31:50 +0100 <kuribas> you call it as my_gift.price
2022-11-07 15:32:06 +0100 <kuribas> the fact that it is actually a "method" is hidden from the syntax.
2022-11-07 15:32:23 +0100nschoe(~q@141.101.51.197)
2022-11-07 15:33:04 +0100jonathanx__(~jonathan@c-5eea70b8-74736162.cust.telenor.se)
2022-11-07 15:33:06 +0100 <kuribas> dminuoso: if you want to be technically correct, you could as well say that any haskell "value" can execute arbitrary IO (unsafePerformIO).
2022-11-07 15:33:32 +0100 <kuribas> I find lazy attribute loading very much in spirit of Lazy IO, with all the problems that it gives.
2022-11-07 15:33:48 +0100 <dminuoso> I guess so yeah
2022-11-07 15:35:14 +0100CiaoSen(~Jura@p200300c9571247002a3a4dfffe84dbd5.dip0.t-ipconnect.de) (Ping timeout: 246 seconds)
2022-11-07 15:35:35 +0100 <lortabac> kuribas: I agree that it's morally similar, but in Python once you know that 'price' is actually a procedure that doesn't require parentheses, then you can easily understand when the IO actions run
2022-11-07 15:35:50 +0100jonathanx_(~jonathan@h-178-174-176-109.A357.priv.bahnhof.se) (Ping timeout: 260 seconds)
2022-11-07 15:36:06 +0100 <lortabac> whereas Haskell evaluation is less predictable
2022-11-07 15:36:17 +0100abhiroop_(~abhiroop@ext-1-450.eduroam.chalmers.se)
2022-11-07 15:38:44 +0100raehik(~raehik@cpc95906-rdng25-2-0-cust156.15-3.cable.virginm.net)
2022-11-07 15:38:56 +0100Sgeo(~Sgeo@user/sgeo)
2022-11-07 15:41:48 +0100eddiejessup(uid575763@id-575763.tinside.irccloud.com)
2022-11-07 15:44:13 +0100 <dminuoso> lortabac: its not just the lack of parenthesis, but the fact that evaluation order is unspecified.
2022-11-07 15:44:33 +0100 <dminuoso> So once you unsafeInterleaveIO - it becomes near impossible to predict when things are actually triggered
2022-11-07 15:46:28 +0100 <lortabac> dminuoso: AFAIK in Python the surprise is only in the lack of parentheses
2022-11-07 15:46:40 +0100 <dminuoso> Oh okay yeah
2022-11-07 15:46:54 +0100 <lortabac> replace 'price' with 'price()' and it's fully predictable when IO runs
2022-11-07 15:47:44 +0100danza(~francesco@45.red-79-153-2.dynamicip.rima-tde.net) (Ping timeout: 260 seconds)
2022-11-07 15:47:48 +0100 <lortabac> I wonder why these hidden methods exist, I can't see any sane purpose
2022-11-07 15:48:15 +0100 <lortabac> JavaScript has them as well IIRC
2022-11-07 15:48:20 +0100 <geekosaur> to replace a stored value with a computed one without having to change code
2022-11-07 15:48:58 +0100 <kuribas> lortabac: you "know" it how?
2022-11-07 15:49:46 +0100 <yin> can anyone help me understand Data.Set.alterF ?
2022-11-07 15:50:20 +0100 <merijn> yin: Maybe? :p
2022-11-07 15:50:22 +0100 <merijn> Depends what confuses you
2022-11-07 15:50:45 +0100 <dminuoso> yin: All alterF variants come with a big example, that should illustrate it well.
2022-11-07 15:50:59 +0100Guest75(~Guest75@178.141.177.81)
2022-11-07 15:51:08 +0100 <yin> ok so i have `alterF pure 6 $ fromList [0..7]`
2022-11-07 15:51:39 +0100phma_phma
2022-11-07 15:52:01 +0100 <dminuoso> `alterF pure` is roughly equivalent to just `const id`, it neither modifies/deleted/adds nor does it run any effect.
2022-11-07 15:52:43 +0100 <lortabac> kuribas: the same way you would know that a Haskell function performs lazy IO, either it's documented or you have read the source code
2022-11-07 15:52:45 +0100 <yin> i guess i don't understand how i should be using the Functor
2022-11-07 15:53:12 +0100 <dminuoso> yin: If we pretend the functor didnt exist, that is:
2022-11-07 15:53:33 +0100 <lortabac> kuribas: the difference is that in Haskell *even if you know* you can get surprising behavior
2022-11-07 15:53:35 +0100 <dminuoso> alter :: (Maybe a -> Maybe a) -> k -> Map k a -> Map k a
2022-11-07 15:53:42 +0100 <merijn> yin: The Applicative lets you "escape" information from the alter
2022-11-07 15:53:44 +0100 <dminuoso> yin: ^- would this make sense what it does and how you should use it?
2022-11-07 15:53:54 +0100 <merijn> yin: Like, suppose you wanted to know "did I remove a key or not?"
2022-11-07 15:54:28 +0100 <dminuoso> yin: alterF adds just the ability to collect an "effect
2022-11-07 15:54:35 +0100 <dminuoso> while you inspect the point you want to alter
2022-11-07 15:55:01 +0100 <dminuoso> effect in the sense of "running IO", throwing exceptions, collecting validation errors, exfiltrating a previous value
2022-11-07 15:55:15 +0100 <dminuoso> and because its "just functor", you can use something as mundane like (String,)
2022-11-07 15:55:15 +0100 <merijn> yin: ok, so here's something I would use alterF for: I have a 2 sets, I want to remove all values in set 2 from set 1 and I want to log which values were removed
2022-11-07 15:55:35 +0100Unicorn_Princess(~Unicorn_P@user/Unicorn-Princess/x-3540542)
2022-11-07 15:55:35 +0100Guest62(~Guest62@122.162.149.190)
2022-11-07 15:55:44 +0100 <Guest62> hey
2022-11-07 15:55:47 +0100 <dminuoso> Hi Guest62
2022-11-07 15:55:47 +0100 <merijn> yin: Computing which values are in 1 and 2 (and then removing them) requires you to compute the same stuff a bunch of times
2022-11-07 15:56:00 +0100 <merijn> yin: with alterF you can just accumulate this data "directly" as you remove stuff
2022-11-07 15:56:29 +0100Guest62(~Guest62@122.162.149.190) (Client Quit)
2022-11-07 15:56:36 +0100 <dminuoso> yin: One thing I regularly do, is write: alterF go k m where go Nothing = pure (Just xyz); go (Just x) = throwIO (KeyAlreadyExists x)
2022-11-07 15:56:48 +0100 <dminuoso> Which allows me to populate a map but throw an exception when there's a key conflict
2022-11-07 15:56:51 +0100 <merijn> oh, yeah, duplicate inserts are a nice example too
2022-11-07 15:57:10 +0100 <merijn> dminuoso: I prefer aggregating all duplicates with Validation or something and *then* throwing ;)
2022-11-07 15:57:27 +0100 <dminuoso> Sure, you can just use ([k],) as a functor too
2022-11-07 15:57:43 +0100 <yin> ok just a minute let me parse that
2022-11-07 15:59:28 +0100danza(~francesco@45.red-79-153-2.dynamicip.rima-tde.net)
2022-11-07 16:00:20 +0100causal(~user@50.35.83.177) (Quit: WeeChat 3.7.1)
2022-11-07 16:04:48 +0100 <carbolymer> over the last 2 weeks I got a few GHC runtime errors: https://bpa.st/2XDQ - any ideas what I'm looking at? there's nothing more in the output besides link to GHC bugtracker
2022-11-07 16:04:56 +0100 <carbolymer> I don't have a repro for that yet :|
2022-11-07 16:05:02 +0100catern(~sbaugh@2604:2000:8fc0:b:a9c7:866a:bf36:3407) (Ping timeout: 276 seconds)
2022-11-07 16:05:18 +0100 <yin> ok so following the types: alterF :: ... => (Bool -> f Bool) -> a -> Set a -> f (Set a)
2022-11-07 16:05:52 +0100 <merijn> carbolymer: :O
2022-11-07 16:05:57 +0100 <merijn> carbolymer: Which GHC version and which arch?
2022-11-07 16:06:09 +0100 <carbolymer> merijn: GHC 9.2.3, arch tbd
2022-11-07 16:06:22 +0100 <merijn> carbolymer: Also, might wanna ask in #ghc
2022-11-07 16:07:01 +0100 <yin> alterF (pure :: a -> f a) (6 :: Int) (fromList [0..7] :: Set Int) -- Shouldn't the result be :: f (Set Int) ?
2022-11-07 16:07:48 +0100 <carbolymer> merijn: forgot that this channel existed, thanks
2022-11-07 16:07:50 +0100 <yin> but `:t alterF pure 6 (fromList [0..7]) ==> Set Int`
2022-11-07 16:07:54 +0100 <merijn> yin: Yes
2022-11-07 16:08:17 +0100 <merijn> yin: In IO 'f' is probably defaulted to IO and stripped off
2022-11-07 16:08:23 +0100 <merijn> err
2022-11-07 16:08:25 +0100 <merijn> in ghci
2022-11-07 16:08:25 +0100 <yin> oh
2022-11-07 16:08:59 +0100 <yin> i realized that as soon as i wrote it
2022-11-07 16:09:11 +0100catern(~sbaugh@2604:2000:8fc0:b:a9c7:866a:bf36:3407)
2022-11-07 16:09:36 +0100 <merijn> λ :t alterF pure 6 (fromList [0..7])
2022-11-07 16:09:36 +0100 <merijn> alterF pure 6 (fromList [0..7]) :: (Ord a, Applicative f, Num a, Enum a) => f (Set a)
2022-11-07 16:09:39 +0100 <[Leary]> carbolymer: 9.2.1--3 are known to be broken; we had a lot of segfaults in xmonad.
2022-11-07 16:09:46 +0100 <[Leary]> Fixed in 9.2.4.
2022-11-07 16:09:59 +0100 <geekosaur> also 9.2.5 came out this morning
2022-11-07 16:10:05 +0100 <carbolymer> geekosaur: :O
2022-11-07 16:10:22 +0100 <carbolymer> [Leary]: thanks, that's our intuition, but I'd like to know the root cause
2022-11-07 16:11:19 +0100 <geekosaur> root cause of the xmonad one was that cmm was eliding a join point and a touch# went along with it, causing heap objects to be gcd prematurely
2022-11-07 16:11:26 +0100 <yin> merijn: all my doubts are gone. thanks!
2022-11-07 16:11:50 +0100jtomas(~jtomas@191.red-88-17-199.dynamicip.rima-tde.net)
2022-11-07 16:12:48 +0100 <merijn> Usually the "use" of alterF becomes clear as soon as you hit a case where you wanna do some operation on a container that's not supported by the existing API
2022-11-07 16:13:20 +0100 <merijn> i.e. stuff where the API makes you do 2, 3, whatever passes of the same data structure to get the result you want. Generally alterF can help you turn those kinda things into single pass operations
2022-11-07 16:14:38 +0100 <yin> if i have `f x` in multiple guards am i computing it everytime a guard fails or is this memoized?
2022-11-07 16:14:38 +0100jonathanx__(~jonathan@c-5eea70b8-74736162.cust.telenor.se) (Read error: Connection reset by peer)
2022-11-07 16:14:50 +0100 <yin> (memoized might not be the word)
2022-11-07 16:15:03 +0100 <kuribas> lortabac: well, I expect that haskell value don't use unsafePerformIO, or lazyIO, or if they do, it should not be observable.
2022-11-07 16:15:08 +0100 <carbolymer> geekosaur: what's cmm?
2022-11-07 16:15:24 +0100 <kuribas> lortabac: that's also how I would structure Python code.
2022-11-07 16:16:02 +0100jonathanx__(~jonathan@h-178-174-176-109.A357.priv.bahnhof.se)
2022-11-07 16:16:29 +0100 <geekosaur> the intermediate language below STG. it's kinda halfway between asm and C in complexity
2022-11-07 16:16:45 +0100 <geekosaur> https://gitlab.haskell.org/ghc/ghc/-/issues/21708 is the ticket for this
2022-11-07 16:17:06 +0100eggplantade(~Eggplanta@2600:1700:38c5:d800:c444:d37e:95a5:c717)
2022-11-07 16:17:36 +0100 <merijn> yin: Unspecified
2022-11-07 16:17:47 +0100 <merijn> yin: If you wanna be sure, move it into a where binding
2022-11-07 16:17:52 +0100gensyst(gensyst@user/gensyst)
2022-11-07 16:17:59 +0100 <merijn> yin: That gives you 98% certainty it'll be computed once
2022-11-07 16:18:09 +0100 <yin> ha
2022-11-07 16:18:47 +0100 <gensyst> Is "mkStdGen :: Int -> StdGen" guaranteed to give same generator (producing same random sequence) across runs, OSes, random library versions, etc.?
2022-11-07 16:18:51 +0100 <merijn> yin: GHC might still duplicate stuff it deems "cheap", but in general if a computation is significant naming it pretty much guarantees single evaluation
2022-11-07 16:18:53 +0100 <carbolymer> geekosaur: oh looks similar, thanks!
2022-11-07 16:18:59 +0100 <gensyst> (For the same input seed Int.)
2022-11-07 16:19:02 +0100 <merijn> gensyst: afaik no
2022-11-07 16:19:10 +0100 <merijn> gensyst: At least not in older versions of random
2022-11-07 16:19:16 +0100 <merijn> I think newer versions might?
2022-11-07 16:19:46 +0100 <dminuoso> yin: you can improve that 98% by adding {-# NOINLINE foo #-}
2022-11-07 16:20:07 +0100 <dminuoso> So we do have these heavy tools to obtain sharing guarantees
2022-11-07 16:20:19 +0100 <dminuoso> This is particularly needed for top-level IORefs (global mutable state)
2022-11-07 16:20:36 +0100 <dminuoso> i.e. {-# NOINLINE counter #-} counter = unsafePerformIO (newIORef 0)
2022-11-07 16:21:14 +0100 <dminuoso> But most of the time its really not needed, unless a) your `f a` is actually not shared and a relevant hot spot.
2022-11-07 16:21:26 +0100irrgit(~irrgit@146.70.27.218) (Remote host closed the connection)
2022-11-07 16:21:31 +0100eggplantade(~Eggplanta@2600:1700:38c5:d800:c444:d37e:95a5:c717) (Ping timeout: 252 seconds)
2022-11-07 16:21:54 +0100eggplantade(~Eggplanta@104-55-37-220.lightspeed.sntcca.sbcglobal.net)
2022-11-07 16:22:20 +0100irrgit(~irrgit@146.70.27.218)
2022-11-07 16:22:40 +0100 <merijn> gensyst: https://hackage.haskell.org/package/random-1.2.1.1/docs/System-Random.html#g:8
2022-11-07 16:23:24 +0100 <merijn> There are bindings for PCG random on hackage, so for any case where you want deterministic randomness you might wanna look into that
2022-11-07 16:24:27 +0100 <gensyst> merijn, thanks!
2022-11-07 16:25:08 +0100 <merijn> Since afaik PCG is one of the fastest and highest quality PRNG implementations
2022-11-07 16:26:10 +0100eggplantade(~Eggplanta@104-55-37-220.lightspeed.sntcca.sbcglobal.net) (Ping timeout: 252 seconds)
2022-11-07 16:26:15 +0100 <merijn> (Obviously not suitable for CS-PRNG, but if you want determinism that's probably not what you are looking for)
2022-11-07 16:26:47 +0100 <gensyst> merijn, so why use random library then?
2022-11-07 16:26:52 +0100 <gensyst> only if you've got problems with using c lib?
2022-11-07 16:27:05 +0100 <gensyst> s/why/when
2022-11-07 16:27:12 +0100 <merijn> gensyst: the random library does 2 things
2022-11-07 16:27:30 +0100 <merijn> 1) it specifies a generic interface for PRNG implementations
2022-11-07 16:27:39 +0100 <merijn> 2) it provides a number of basic PRNG implementations
2022-11-07 16:28:03 +0100 <merijn> There are more specific/niche implementations of PRNGs that are built on top of random's interface
2022-11-07 16:28:37 +0100 <merijn> The basic PRNG implementations are there for people who don't have particular demands of their PRNG
2022-11-07 16:29:29 +0100 <merijn> For example, the pcg-random package uses the same interface/API as random, but with it's PCG being the underlying PRNG
2022-11-07 16:29:54 +0100 <merijn> Same for things like mwc-random
2022-11-07 16:30:16 +0100danso(danso@2600:3c03::f03c:91ff:fe05:6954) (Quit: ZNC - https://znc.in)
2022-11-07 16:31:12 +0100 <gensyst> nice
2022-11-07 16:31:47 +0100 <merijn> So you can easily write something using random's builtin generators (or even generator agnostic) and hook it up to something more specific later
2022-11-07 16:32:42 +0100danso(~danso@danso.ca)
2022-11-07 16:37:39 +0100mmhat(~mmh@p200300f1c700b8c5ee086bfffe095315.dip0.t-ipconnect.de)
2022-11-07 16:40:14 +0100Xeroine(~Xeroine@user/xeroine) (Ping timeout: 260 seconds)
2022-11-07 16:41:20 +0100 <yin> why is IntSet not Foldable?
2022-11-07 16:41:23 +0100Xeroine(~Xeroine@user/xeroine)
2022-11-07 16:42:06 +0100 <merijn> Wrong kind
2022-11-07 16:42:27 +0100 <merijn> Foldable :: (* -> *) -> Constraint
2022-11-07 16:42:33 +0100 <merijn> But IntSet :: *'
2022-11-07 16:42:46 +0100 <merijn> (As opposed to 'Set :: * -> *')
2022-11-07 16:45:04 +0100 <yin> oh
2022-11-07 16:45:28 +0100 <yin> ok we use `member` instead of `elem`
2022-11-07 16:45:47 +0100waleee(~waleee@2001:9b0:213:7200:cc36:a556:b1e8:b340) (Ping timeout: 248 seconds)
2022-11-07 16:46:46 +0100mmhat(~mmh@p200300f1c700b8c5ee086bfffe095315.dip0.t-ipconnect.de) (Quit: WeeChat 3.7.1)
2022-11-07 16:46:54 +0100Sciencentistguy2(~sciencent@hacksoc/ordinary-member)
2022-11-07 16:47:17 +0100 <gensyst> merijn, are you sure pcg are reproducible (same seeds) across runs, OSes, random library versions, etc?
2022-11-07 16:48:59 +0100Sciencentistguy(~sciencent@hacksoc/ordinary-member) (Ping timeout: 260 seconds)
2022-11-07 16:48:59 +0100Sciencentistguy2Sciencentistguy
2022-11-07 16:50:02 +0100kimjetwav(~user@2607:fea8:235e:b600:fa57:ff7b:bed3:61bf) (Quit: reboot time)
2022-11-07 16:50:35 +0100 <merijn> gensyst: Yes, because everything about it is fixed (i.e. it always produces 32bit random values from 64 bit state) and all the high level stuff is on top of that. So with the same initialisation state and generation order you always get the same
2022-11-07 16:51:29 +0100 <gensyst> very nice
2022-11-07 16:52:46 +0100mokee(~mokee@37.228.215.235) (Remote host closed the connection)
2022-11-07 16:54:14 +0100MajorBiscuit(~MajorBisc@145.94.173.65) (Ping timeout: 260 seconds)
2022-11-07 16:55:41 +0100MajorBiscuit(~MajorBisc@145.94.173.65)
2022-11-07 17:00:01 +0100 <tomsmeding> merijn: why does the background image on the fp day website look distinctly like imperative OOP code
2022-11-07 17:00:24 +0100 <tomsmeding> I see `; i++)` and `.removeClass()`
2022-11-07 17:00:27 +0100infinity0(~infinity0@pwned.gg)
2022-11-07 17:00:34 +0100 <tomsmeding> actually it looks very much like JS
2022-11-07 17:00:53 +0100 <tomsmeding> with jquery, at that
2022-11-07 17:04:13 +0100lortabac(~lortabac@2a01:e0a:541:b8f0:2daa:8b78:9a2e:bfe4) (Quit: WeeChat 2.8)
2022-11-07 17:04:50 +0100FinnElija(~finn_elij@user/finn-elija/x-0085643) (Ping timeout: 255 seconds)
2022-11-07 17:05:33 +0100 <merijn> tomsmeding: Because that appears to be the default theme of the faculty hosting this year's NL-FP day?
2022-11-07 17:05:52 +0100 <merijn> Which was probably picked by some designer searching for a "code" stock image :p
2022-11-07 17:07:23 +0100FinnElija(~finn_elij@user/finn-elija/x-0085643)
2022-11-07 17:07:31 +0100 <tomsmeding> "shows code, lgtm"
2022-11-07 17:08:14 +0100 <merijn> I mean, in all likelihood the faculty overall probably does more imperative stuff than FP
2022-11-07 17:08:51 +0100 <geekosaur> who said the faculty even had input into it? I could see the designer picking "shows code" regardless
2022-11-07 17:09:51 +0100 <merijn> that too
2022-11-07 17:11:22 +0100tromp(~textual@92-110-219-57.cable.dynamic.v4.ziggo.nl) (Quit: My iMac has gone to sleep. ZZZzzz…)
2022-11-07 17:11:32 +0100arahael(~arahael@124.168.94.52) (Ping timeout: 248 seconds)
2022-11-07 17:14:37 +0100FinnElija(~finn_elij@user/finn-elija/x-0085643) (Remote host closed the connection)
2022-11-07 17:15:07 +0100FinnElija(~finn_elij@user/finn-elija/x-0085643)
2022-11-07 17:15:22 +0100JimL(~quassel@89-162-2-132.fiber.signal.no)
2022-11-07 17:18:50 +0100mvk(~mvk@2607:fea8:5ce3:8500::4b68)
2022-11-07 17:22:27 +0100 <yin> i have recently seen an ad for a Java course that featured a very beautiful girl sitting in a gaming chair, lokking over her shoulder at the camera while playing a racing game, mid race, with the mouse
2022-11-07 17:22:32 +0100 <yin> so...
2022-11-07 17:24:37 +0100eggplantade(~Eggplanta@2600:1700:38c5:d800:3d74:5eb7:3590:2ac6)
2022-11-07 17:24:57 +0100arahael(~arahael@193-119-109-208.tpgi.com.au)
2022-11-07 17:26:24 +0100 <pavonia> Maybe she was testing the game she has programmed in Java
2022-11-07 17:30:07 +0100 <yin> nah, she was smiling
2022-11-07 17:30:20 +0100 <kuribas> lol :)
2022-11-07 17:30:25 +0100nate4(~nate@98.45.169.16)
2022-11-07 17:30:44 +0100 <kuribas> java and smiling is very suspicious.
2022-11-07 17:31:19 +0100ss4(~wootehfoo@user/wootehfoot)
2022-11-07 17:31:46 +0100gera(~gera@user/gera)
2022-11-07 17:33:01 +0100troydm(~troydm@host-176-37-124-197.b025.la.net.ua)
2022-11-07 17:34:29 +0100wootehfoot(~wootehfoo@user/wootehfoot) (Ping timeout: 260 seconds)
2022-11-07 17:36:01 +0100arjun(~arjun@user/arjun)
2022-11-07 17:36:48 +0100econo(uid147250@user/econo)
2022-11-07 17:39:39 +0100abhiroop(~abhiroop@ext-1-450.eduroam.chalmers.se)
2022-11-07 17:39:44 +0100abhiroop_(~abhiroop@ext-1-450.eduroam.chalmers.se) (Ping timeout: 260 seconds)
2022-11-07 17:40:21 +0100beka(~beka@104.193.170.240)
2022-11-07 17:40:40 +0100machinedgod(~machinedg@clnet-p10-126.ikbnet.co.at) (Ping timeout: 260 seconds)
2022-11-07 17:55:29 +0100MajorBiscuit(~MajorBisc@145.94.173.65) (Ping timeout: 260 seconds)
2022-11-07 17:57:48 +0100tromp(~textual@92-110-219-57.cable.dynamic.v4.ziggo.nl)
2022-11-07 17:58:12 +0100pyrex_(~pyrex@user/pyrex) (Quit: Leaving)
2022-11-07 17:59:55 +0100abhiroop(~abhiroop@ext-1-450.eduroam.chalmers.se) (Ping timeout: 248 seconds)
2022-11-07 18:00:16 +0100 <gensyst> merijn, https://hackage.haskell.org/package/pcg-random-0.1.3.7/docs/System-Random-PCG.html
2022-11-07 18:01:23 +0100 <gensyst> merijn, would it be ok to just use initFrozen n 1 with n starting at some starting point and increasing it by 1 every time i want a new random number?
2022-11-07 18:01:45 +0100pyrex(~quassel@user/pyrex)
2022-11-07 18:01:59 +0100 <gensyst> Since those random number functions, e.g. "uniform", don't return a new generator for me alongside the random number
2022-11-07 18:02:08 +0100 <gensyst> so it seems like i have to create a new generator from scratch every time
2022-11-07 18:02:25 +0100 <gensyst> (In initFrozen n 1, the idea is to not worry about the second number)
2022-11-07 18:03:12 +0100 <gensyst> Hmm oh. We have "withFrozen"
2022-11-07 18:11:33 +0100kuribas(~user@ip-188-118-57-242.reverse.destiny.be) (Quit: ERC (IRC client for Emacs 27.1))
2022-11-07 18:12:26 +0100eggplantade(~Eggplanta@2600:1700:38c5:d800:3d74:5eb7:3590:2ac6) (Remote host closed the connection)
2022-11-07 18:14:55 +0100abhiroop(~abhiroop@ext-1-450.eduroam.chalmers.se)
2022-11-07 18:16:07 +0100jao(~jao@92.233.85.247)
2022-11-07 18:16:09 +0100moneyGuest6765
2022-11-07 18:17:03 +0100thyriaen(~thyriaen@2a01:aea0:dd4:470d:6245:cbff:fe9f:48b1) (Remote host closed the connection)
2022-11-07 18:22:43 +0100razetime(~quassel@117.193.1.205) (Quit: https://quassel-irc.org - Chat comfortably. Anywhere.)
2022-11-07 18:24:18 +0100tzh(~tzh@c-24-21-73-154.hsd1.wa.comcast.net)
2022-11-07 18:25:34 +0100thyriaen(~thyriaen@2a01:aea0:dd4:470d:6245:cbff:fe9f:48b1)
2022-11-07 18:26:56 +0100thyriaen_(~thyriaen@2a01:aea0:dd4:470d:6245:cbff:fe9f:48b1)
2022-11-07 18:29:39 +0100gensyst(gensyst@user/gensyst) (Quit: Leaving)
2022-11-07 18:33:30 +0100zeenk(~zeenk@2a02:2f04:a105:5d00:c862:f190:2ea:d494)
2022-11-07 18:33:54 +0100kenaryn(~aurele@cre71-h03-89-88-44-27.dsl.sta.abo.bbox.fr) (Quit: leaving)
2022-11-07 18:33:59 +0100nate4(~nate@98.45.169.16) (Ping timeout: 260 seconds)
2022-11-07 18:35:41 +0100danso_o(danso@2600:3c03::f03c:91ff:fe05:6954)
2022-11-07 18:36:19 +0100danso(~danso@danso.ca) (Ping timeout: 260 seconds)
2022-11-07 18:36:19 +0100danso_odanso
2022-11-07 18:36:36 +0100meinside(uid24933@id-24933.helmsley.irccloud.com) (Quit: Connection closed for inactivity)
2022-11-07 18:36:54 +0100gera(~gera@user/gera) (Ping timeout: 260 seconds)
2022-11-07 18:39:22 +0100pavonia(~user@user/siracusa) (Quit: Bye!)
2022-11-07 18:40:27 +0100Guest75(~Guest75@178.141.177.81) (Quit: Client closed)
2022-11-07 18:40:49 +0100Guest75(~Guest75@178.141.177.81)
2022-11-07 18:44:02 +0100teo(~teo@user/teo) (Ping timeout: 252 seconds)
2022-11-07 18:47:03 +0100mbuf(~Shakthi@49.204.130.107) (Quit: Leaving)
2022-11-07 18:51:14 +0100cfricke(~cfricke@user/cfricke) (Quit: WeeChat 3.7.1)
2022-11-07 18:53:17 +0100tromp(~textual@92-110-219-57.cable.dynamic.v4.ziggo.nl) (Quit: My iMac has gone to sleep. ZZZzzz…)
2022-11-07 18:56:21 +0100akegalj(~akegalj@93-138-41-233.adsl.net.t-com.hr)
2022-11-07 19:00:28 +0100eggplantade(~Eggplanta@2600:1700:38c5:d800:3d74:5eb7:3590:2ac6)
2022-11-07 19:02:35 +0100johnw(~johnw@76-234-69-149.lightspeed.frokca.sbcglobal.net)
2022-11-07 19:04:26 +0100Tuplanolla(~Tuplanoll@91-159-69-11.elisa-laajakaista.fi)
2022-11-07 19:13:07 +0100michalz(~michalz@185.246.207.215) (Ping timeout: 252 seconds)
2022-11-07 19:18:00 +0100tromp(~textual@92-110-219-57.cable.dynamic.v4.ziggo.nl)
2022-11-07 19:19:03 +0100Guest6765money
2022-11-07 19:19:29 +0100JimL(~quassel@89-162-2-132.fiber.signal.no) (Ping timeout: 260 seconds)
2022-11-07 19:19:58 +0100JimL(~quassel@89-162-2-132.fiber.signal.no)
2022-11-07 19:20:44 +0100michalz(~michalz@185.246.207.217)
2022-11-07 19:26:12 +0100AlexNoo_(~AlexNoo@178.34.163.65)
2022-11-07 19:29:31 +0100Alex_test(~al_test@178.34.150.205) (Ping timeout: 248 seconds)
2022-11-07 19:29:31 +0100AlexNoo(~AlexNoo@178.34.150.205) (Ping timeout: 248 seconds)
2022-11-07 19:29:31 +0100AlexZenon(~alzenon@178.34.150.205) (Ping timeout: 248 seconds)
2022-11-07 19:35:05 +0100AlexZenon(~alzenon@178.34.163.65)
2022-11-07 19:35:43 +0100tromp(~textual@92-110-219-57.cable.dynamic.v4.ziggo.nl) (Quit: My iMac has gone to sleep. ZZZzzz…)
2022-11-07 19:36:24 +0100troydm(~troydm@host-176-37-124-197.b025.la.net.ua) (Ping timeout: 260 seconds)
2022-11-07 19:36:47 +0100troydm(~troydm@host-176-37-124-197.b025.la.net.ua)
2022-11-07 19:37:17 +0100azimut(~azimut@gateway/tor-sasl/azimut)
2022-11-07 19:41:42 +0100Alex_test(~al_test@178.34.163.65)
2022-11-07 19:42:33 +0100Alex_test_(~al_test@178.34.163.65)
2022-11-07 19:42:34 +0100AlexZenon(~alzenon@178.34.163.65) (Ping timeout: 252 seconds)
2022-11-07 19:43:44 +0100raehik(~raehik@cpc95906-rdng25-2-0-cust156.15-3.cable.virginm.net) (Ping timeout: 246 seconds)
2022-11-07 19:43:55 +0100beteigeuze(~Thunderbi@bl14-81-220.dsl.telepac.pt) (Ping timeout: 252 seconds)
2022-11-07 19:44:45 +0100beteigeuze(~Thunderbi@bl14-81-220.dsl.telepac.pt)
2022-11-07 19:45:31 +0100chele(~chele@user/chele) (Remote host closed the connection)
2022-11-07 19:47:44 +0100ChaiTRex(~ChaiTRex@user/chaitrex) (Ping timeout: 255 seconds)
2022-11-07 19:48:05 +0100 <yin> what's the current idiomatic way of updating a record? i'm still doing `r { x = f (x r) }`
2022-11-07 19:48:34 +0100ChaiTRex(~ChaiTRex@user/chaitrex)
2022-11-07 19:48:44 +0100 <[exa]> probably lenses but I'd be very interested in anything less lightweight
2022-11-07 19:48:48 +0100 <[exa]> *more lightweight
2022-11-07 19:48:59 +0100 <yin> yes i want to avoid lenses
2022-11-07 19:49:46 +0100 <EvanR> I do record update syntax
2022-11-07 19:49:57 +0100 <money> Beep
2022-11-07 19:50:08 +0100AlexZenon(~alzenon@178.34.163.65)
2022-11-07 19:50:17 +0100 <EvanR> if I will update a field in many places, define a "functional reference" style lens
2022-11-07 19:50:31 +0100 <EvanR> it doesn't require installing any lens library
2022-11-07 19:50:36 +0100 <monochrom> I still use record update syntax.
2022-11-07 19:51:26 +0100Alex_test_(~al_test@178.34.163.65) (Ping timeout: 246 seconds)
2022-11-07 19:51:44 +0100 <EvanR> onX :: (X -> X) -> T -> T
2022-11-07 19:51:56 +0100AlexZenon_2(~alzenon@178.34.163.65)
2022-11-07 19:52:21 +0100 <monochrom> And yeah defining your own minimal lens clone works too if you have repetitively many similar update sites.
2022-11-07 19:52:55 +0100 <[exa]> +1 for `onX`, concise&powerful
2022-11-07 19:53:54 +0100beteigeuze(~Thunderbi@bl14-81-220.dsl.telepac.pt) (Ping timeout: 260 seconds)
2022-11-07 19:54:29 +0100ksu(~ksu@user/prtr) (Ping timeout: 268 seconds)
2022-11-07 19:56:16 +0100tromp(~textual@92-110-219-57.cable.dynamic.v4.ziggo.nl)
2022-11-07 19:56:49 +0100 <monochrom> I just feel that usually the update is not as simple as x = f (x r).
2022-11-07 19:57:21 +0100 <monochrom> Equivalently not as simple as (X->X) -> T->T
2022-11-07 19:57:51 +0100arjun(~arjun@user/arjun) (Remote host closed the connection)
2022-11-07 19:58:24 +0100 <monochrom> I mean it sometimes need to be (T->X) -> T->T. The new X depends on other fields of the record, not just the old X field.
2022-11-07 19:59:52 +0100thyriaen_(~thyriaen@2a01:aea0:dd4:470d:6245:cbff:fe9f:48b1) (Quit: Leaving)
2022-11-07 20:00:05 +0100AlexZenon_2(~alzenon@178.34.163.65) (Ping timeout: 260 seconds)
2022-11-07 20:00:05 +0100AlexZenon(~alzenon@178.34.163.65) (Ping timeout: 260 seconds)
2022-11-07 20:00:10 +0100abhiroop(~abhiroop@ext-1-450.eduroam.chalmers.se) (Ping timeout: 252 seconds)
2022-11-07 20:00:17 +0100 <yin> monochrom: that's exactly the situation i find myself in all the time
2022-11-07 20:00:48 +0100 <yin> even depending on fields of parent records
2022-11-07 20:01:59 +0100jlgw(~jw@83-233-104-81.cust.bredband2.com) (Remote host closed the connection)
2022-11-07 20:02:04 +0100Alex_test(~al_test@178.34.163.65) (Ping timeout: 260 seconds)
2022-11-07 20:02:16 +0100 <monochrom> I just start with low-tech elementary record update syntax, then look for opportunities for normal refactoring.
2022-11-07 20:04:13 +0100Alex_test(~al_test@178.34.163.65)
2022-11-07 20:05:17 +0100coot(~coot@2a02:a310:e241:1b00:ec1a:e9df:79ac:66ba) (Quit: coot)
2022-11-07 20:06:53 +0100tromp(~textual@92-110-219-57.cable.dynamic.v4.ziggo.nl) (Quit: My iMac has gone to sleep. ZZZzzz…)
2022-11-07 20:11:04 +0100Alex_test_(~al_test@178.34.163.65)
2022-11-07 20:12:00 +0100 <EvanR> monochrom, there should be an entire field of study turned snake oil industry dedicated to updating the fields in the presence of all the other fields of yourself xD
2022-11-07 20:12:45 +0100 <EvanR> yin, you just said "parent records", so you basically just admitted you need lenses now
2022-11-07 20:13:00 +0100 <EvanR> or not heavily nesting the records webstyle
2022-11-07 20:14:36 +0100Alex_test(~al_test@178.34.163.65) (Ping timeout: 252 seconds)
2022-11-07 20:14:45 +0100 <EvanR> on needing to update a record using more than one field there is some nice syntax for that, f (r {x=x, y=y, z=z}) = r {y = g x y z}
2022-11-07 20:15:51 +0100 <EvanR> made less atrocious using NamedFieldPuns, perhaps
2022-11-07 20:16:47 +0100AlexZenon(~alzenon@178.34.163.65)
2022-11-07 20:16:51 +0100 <yin> EvanR: 2 levels is usually my maximum
2022-11-07 20:17:29 +0100 <yin> or so i like to pretend
2022-11-07 20:17:39 +0100 <EvanR> you'd think only 2 means it's not as painful... but...
2022-11-07 20:17:41 +0100tromp(~textual@92-110-219-57.cable.dynamic.v4.ziggo.nl)
2022-11-07 20:17:48 +0100 <ski> `(T -> X) -> (T -> T)' looks sortof `MonoComonad'ish
2022-11-07 20:17:55 +0100 <dolio> Yeah, that's a comonad.
2022-11-07 20:18:10 +0100 <ski> well, it's not plymorphic, but ad hoc
2022-11-07 20:18:21 +0100 <dolio> Right.
2022-11-07 20:18:55 +0100 <dolio> It's probably a particular coalgebra, rather than the cofree coalgebra.
2022-11-07 20:20:34 +0100eggplantade(~Eggplanta@2600:1700:38c5:d800:3d74:5eb7:3590:2ac6) (Remote host closed the connection)
2022-11-07 20:22:53 +0100 <ski> now i'm wondering if there's something `loeb'ish here
2022-11-07 20:22:53 +0100 <ski> hm, best i can think of would be `(X -> T -> X) -> (T -> T)' .. dunno if that actually works
2022-11-07 20:22:53 +0100AlexZenon_2(~alzenon@178.34.163.65)
2022-11-07 20:22:54 +0100 <ski> well, or `(X -> T -> X) -> (Y -> T -> Y) -> (T -> T)' &c.
2022-11-07 20:22:54 +0100defanor_(~defanor@tart.uberspace.net)
2022-11-07 20:22:54 +0100litharge(litharge@libera/bot/litharge) (Remote host closed the connection)
2022-11-07 20:23:04 +0100loonycyborg_(loonycybor@chat.chantal.wesnoth.org)
2022-11-07 20:23:09 +0100Alex_test(~al_test@178.34.163.65)
2022-11-07 20:23:55 +0100farn_(~farn@2a03:4000:7:3cd:d4ab:85ff:feeb:f505)
2022-11-07 20:24:07 +0100dispater(~dispater@user/brprice) (Ping timeout: 246 seconds)
2022-11-07 20:24:07 +0100Taneb(~Taneb@2001:41c8:51:10d:aaaa:0:aaaa:0) (Ping timeout: 246 seconds)
2022-11-07 20:24:07 +0100nonzen(~nonzen@user/nonzen) (Ping timeout: 246 seconds)
2022-11-07 20:24:07 +0100loonycyborg(loonycybor@wesnoth/developer/loonycyborg) (Ping timeout: 246 seconds)
2022-11-07 20:24:07 +0100acidsys(~crameleon@openSUSE/member/crameleon) (Ping timeout: 246 seconds)
2022-11-07 20:24:07 +0100defanor(~defanor@tart.uberspace.net) (Ping timeout: 246 seconds)
2022-11-07 20:24:07 +0100fvr(ef3e56ca8b@2604:bf00:561:2000::3c4) (Ping timeout: 246 seconds)
2022-11-07 20:24:07 +0100hays(rootvegeta@fsf/member/hays) (Remote host closed the connection)
2022-11-07 20:24:07 +0100fgaz(~fgaz@2001:470:69fc:105::842) (Ping timeout: 246 seconds)
2022-11-07 20:24:07 +0100aidy(~aidy@2001:470:69fc:105::c7b4) (Ping timeout: 246 seconds)
2022-11-07 20:24:07 +0100ozkutuk[m](~ozkutuk@2001:470:69fc:105::2:9af8) (Ping timeout: 246 seconds)
2022-11-07 20:24:07 +0100silky[m](~noonvande@2001:470:69fc:105::2:943c) (Ping timeout: 246 seconds)
2022-11-07 20:24:07 +0100july541[m](~july541ma@2001:470:69fc:105::1:e416) (Ping timeout: 246 seconds)
2022-11-07 20:24:07 +0100Deide(~deide@user/deide) (Ping timeout: 246 seconds)
2022-11-07 20:24:07 +0100farn(~farn@2a03:4000:7:3cd:d4ab:85ff:feeb:f505) (Ping timeout: 246 seconds)
2022-11-07 20:24:07 +0100b0o(0e4a0bf4c9@2604:bf00:561:2000::1bf) (Ping timeout: 246 seconds)
2022-11-07 20:24:07 +0100VarikValefor[m](~varikvale@2001:470:69fc:105::a5d) (Ping timeout: 246 seconds)
2022-11-07 20:24:07 +0100Morrow[m](~morrowmma@2001:470:69fc:105::1d0) (Ping timeout: 246 seconds)
2022-11-07 20:24:07 +0100tiziodcaio(~tiziodcai@2001:470:69fc:105::1:2bf8) (Ping timeout: 246 seconds)
2022-11-07 20:24:07 +0100MangoIV[m](~mangoivma@2001:470:69fc:105::2:8417) (Ping timeout: 246 seconds)
2022-11-07 20:24:07 +0100JensPetersen[m](~juhp@2001:470:69fc:105::6e9) (Ping timeout: 246 seconds)
2022-11-07 20:24:07 +0100unclechu(~unclechu@2001:470:69fc:105::354) (Ping timeout: 246 seconds)
2022-11-07 20:24:07 +0100jmcantrell(~jmcantrel@user/jmcantrell) (Ping timeout: 246 seconds)
2022-11-07 20:24:07 +0100fendor[m](~fendormat@2001:470:69fc:105::fcbd) (Ping timeout: 246 seconds)
2022-11-07 20:24:07 +0100nshepperd2(nshepperd@2600:3c03::f03c:92ff:fe28:92c9) (Ping timeout: 246 seconds)
2022-11-07 20:24:08 +0100JonathanWatson[m(~jjwmatrix@2001:470:69fc:105::2:a544) (Ping timeout: 246 seconds)
2022-11-07 20:24:08 +0100VanceIsM7[m](~vanceism7@2001:470:69fc:105::3ad) (Ping timeout: 246 seconds)
2022-11-07 20:24:08 +0100jakalx(~jakalx@base.jakalx.net) (Error from remote client)
2022-11-07 20:24:08 +0100 <EvanR> submitted for the approval of the midnight society, a paradigm where tree of records are generated for read only purposes, while domain data intended to be persistent and updated arbitrarily is kept in something like a relational database
2022-11-07 20:24:08 +0100AlexZenon(~alzenon@178.34.163.65) (Ping timeout: 252 seconds)
2022-11-07 20:24:08 +0100Alex_test_(~al_test@178.34.163.65) (Ping timeout: 246 seconds)
2022-11-07 20:24:09 +0100litharge(litharge@libera/bot/litharge)
2022-11-07 20:24:12 +0100jao(~jao@92.233.85.247) (Ping timeout: 260 seconds)
2022-11-07 20:24:18 +0100dispater-(~dispater@user/brprice)
2022-11-07 20:24:22 +0100Taneb0(~Taneb@2001:41c8:51:10d:aaaa:0:aaaa:0)
2022-11-07 20:24:25 +0100nonzen_(~nonzen@user/nonzen)
2022-11-07 20:24:42 +0100fgaz(~fgaz@2001:470:69fc:105::842)
2022-11-07 20:24:46 +0100ft(~ft@p508dbd59.dip0.t-ipconnect.de)
2022-11-07 20:24:46 +0100 <ski> fmapLoebXY upX upY t0 = t1
2022-11-07 20:24:48 +0100 <ski> where
2022-11-07 20:24:52 +0100ozkutuk[m](~ozkutuk@2001:470:69fc:105::2:9af8)
2022-11-07 20:24:54 +0100 <ski> t1 = t0 {x = upX (x t0) t1,y = upY (y t0) t1}
2022-11-07 20:24:56 +0100 <ski> basically
2022-11-07 20:25:17 +0100 <ski> dolio : elaborate ?
2022-11-07 20:25:21 +0100b0o(0e4a0bf4c9@2604:bf00:561:2000::1bf)
2022-11-07 20:25:32 +0100silky[m](~noonvande@2001:470:69fc:105::2:943c)
2022-11-07 20:26:01 +0100freeside(~mengwong@bb115-66-48-84.singnet.com.sg) (Ping timeout: 252 seconds)
2022-11-07 20:26:59 +0100 <dolio> Actually, it looks more like an algebra.
2022-11-07 20:27:36 +0100 <dolio> There's a correspondence between lenses and coalgebras of store.
2022-11-07 20:27:39 +0100Alex_test(~al_test@178.34.163.65) (Ping timeout: 248 seconds)
2022-11-07 20:28:05 +0100Morrow[m](~morrowmma@2001:470:69fc:105::1d0)
2022-11-07 20:28:06 +0100 <ski> of course, `fmapLoebXY' doesn't (easily) allow you to depend on the old field values of other fields .. but now that's what `loeb' does
2022-11-07 20:28:06 +0100MangoIV[m](~mangoivma@2001:470:69fc:105::2:8417)
2022-11-07 20:28:49 +0100 <ski> s/does/is known for/
2022-11-07 20:29:19 +0100Alex_test(~al_test@178.34.163.65)
2022-11-07 20:29:37 +0100july541[m](~july541ma@2001:470:69fc:105::1:e416)
2022-11-07 20:29:39 +0100aidy(~aidy@2001:470:69fc:105::c7b4)
2022-11-07 20:29:42 +0100Deide(~deide@user/deide)
2022-11-07 20:30:04 +0100fvr(ef3e56ca8b@2604:bf00:561:2000::3c4)
2022-11-07 20:30:56 +0100 <EvanR> :t loeb
2022-11-07 20:30:57 +0100 <lambdabot> error: Variable not in scope: loeb
2022-11-07 20:30:58 +0100 <ski> `T -> (X,X -> T)' being `T -> Coalg T' where `Coalg a = (X,X -> a)' ?
2022-11-07 20:31:02 +0100JonathanWatson[m(~jjwmatrix@2001:470:69fc:105::2:a544)
2022-11-07 20:31:23 +0100AlexZenon_2(~alzenon@178.34.163.65) (Ping timeout: 248 seconds)
2022-11-07 20:31:26 +0100shaprhops cheerfully
2022-11-07 20:31:34 +0100 <ski> @let loeb :: Functor f => f (f a -> a) -> f a; loeb ff = fa where fa = fmap ($ fa) ff
2022-11-07 20:31:35 +0100 <lambdabot> Defined.
2022-11-07 20:31:41 +0100 <ski> @arr
2022-11-07 20:31:41 +0100 <lambdabot> Avast!
2022-11-07 20:32:01 +0100 <geekosaur> http://blog.sigfpe.com/2006/11/from-l-theorem-to-spreadsheet.html ?
2022-11-07 20:32:11 +0100VarikValefor[m](~varikvale@2001:470:69fc:105::a5d)
2022-11-07 20:32:14 +0100unclechu(~unclechu@2001:470:69fc:105::354)
2022-11-07 20:32:15 +0100 <shapr> I have work to do, but that link looks so interesting
2022-11-07 20:32:17 +0100jmcantrell(~jmcantrel@user/jmcantrell)
2022-11-07 20:32:18 +0100tiziodcaio(~tiziodcai@2001:470:69fc:105::1:2bf8)
2022-11-07 20:32:20 +0100fendor[m](~fendormat@2001:470:69fc:105::fcbd)
2022-11-07 20:32:21 +0100JensPetersen[m](~juhp@2001:470:69fc:105::6e9)
2022-11-07 20:32:28 +0100 <geekosaur> sorry 🙂
2022-11-07 20:32:28 +0100 <shapr> I shall resist
2022-11-07 20:32:29 +0100VanceIsM7[m](~vanceism7@2001:470:69fc:105::3ad)
2022-11-07 20:32:32 +0100 <ski> > loeb [sum . tail,const 2,length]
2022-11-07 20:32:34 +0100 <lambdabot> [5,2,3]
2022-11-07 20:32:53 +0100 <shapr> I wish my firefox bookmark tags would realize that data flow and dataflow are the same thing
2022-11-07 20:33:00 +0100shaprsighs and goes back to Android dev
2022-11-07 20:33:18 +0100 <shapr> Oh speaking of which, any suggestions for Android dev with Haskell? What's the best thing at the moment?
2022-11-07 20:34:14 +0100jakalx(~jakalx@base.jakalx.net)
2022-11-07 20:34:24 +0100acidsys(~crameleon@openSUSE/member/crameleon)
2022-11-07 20:34:49 +0100tromp(~textual@92-110-219-57.cable.dynamic.v4.ziggo.nl) (Quit: My iMac has gone to sleep. ZZZzzz…)
2022-11-07 20:35:17 +0100Alex_test_(~al_test@178.34.163.65)
2022-11-07 20:35:21 +0100 <shapr> I thought I heard reflex-frp was the way to go for Haskell on Andorid, but I'm not up to date on that.
2022-11-07 20:35:27 +0100libertyprime(~libertypr@118-92-78-165.dsl.dyn.ihug.co.nz)
2022-11-07 20:35:30 +0100AlexZenon(~alzenon@178.34.163.65)
2022-11-07 20:35:55 +0100vglfr(~vglfr@145.224.100.100) (Remote host closed the connection)
2022-11-07 20:35:57 +0100 <geekosaur> Cale's employer has been using it; dunno about others
2022-11-07 20:36:06 +0100bgs(~bgs@212-85-160-171.dynamic.telemach.net)
2022-11-07 20:36:29 +0100 <shapr> I think Obsidian is the creator and maintainer of reflex-frp?
2022-11-07 20:36:31 +0100 <davean> shapr: Obsidian does a lot of maintaining support for that stuff, and they PRODUCE reflex. You don't need to use reflex to use their nix stuff
2022-11-07 20:36:49 +0100vglfr(~vglfr@145.224.100.100)
2022-11-07 20:37:06 +0100 <shapr> davean: I'm asking about Haskell on Android
2022-11-07 20:38:25 +0100eggplantade(~Eggplanta@2600:1700:38c5:d800:3d74:5eb7:3590:2ac6)
2022-11-07 20:38:47 +0100 <davean> Yes, exactly
2022-11-07 20:38:47 +0100tromp(~textual@92-110-219-57.cable.dynamic.v4.ziggo.nl)
2022-11-07 20:38:50 +0100 <shapr> Oh, I see!
2022-11-07 20:39:02 +0100 <shapr> davean: thank you
2022-11-07 20:39:08 +0100 <davean> reflex-platform I think is the name
2022-11-07 20:39:08 +0100talismanick(~talismani@76.133.152.122)
2022-11-07 20:39:26 +0100 <davean> I think 9.6 will be a lot better for this
2022-11-07 20:39:49 +0100 <shapr> Why so?
2022-11-07 20:39:58 +0100 <Cale> Yeah, reflex-platform is basically our nix build solution for all that stuff.
2022-11-07 20:40:19 +0100 <Cale> Obelisk is a web/mobile application framework built atop that
2022-11-07 20:40:23 +0100 <davean> shapr: Because core stuff gets mainlined
2022-11-07 20:40:32 +0100 <shapr> core stuff?
2022-11-07 20:40:33 +0100AlexZenon_2(~alzenon@178.34.163.65)
2022-11-07 20:40:48 +0100 <shapr> Any links to specifics?
2022-11-07 20:41:26 +0100 <davean> GHCJS and WASM get mainlined into GHC
2022-11-07 20:41:34 +0100 <shapr> Oh, exciting!
2022-11-07 20:41:38 +0100 <davean> GHC will FINALLY support backends
2022-11-07 20:41:42 +0100 <davean> instead of insisting they die
2022-11-07 20:42:16 +0100AlexNoo_AlexNoo
2022-11-07 20:42:36 +0100freeside(~mengwong@bb115-66-48-84.singnet.com.sg)
2022-11-07 20:43:13 +0100 <ozkutuk[m]> Is it possible "instantiate" multiple pattern synonyms for a polymorphic type with different concrete types? Something like instance declarations with `FlexibleInstances` but for pattern synonyms
2022-11-07 20:43:37 +0100AlexZenon(~alzenon@178.34.163.65) (Ping timeout: 252 seconds)
2022-11-07 20:43:37 +0100Alex_test(~al_test@178.34.163.65) (Ping timeout: 252 seconds)
2022-11-07 20:44:06 +0100abhiroop(~abhiroop@217-209-157-8-no2000.tbcn.telia.com)
2022-11-07 20:45:16 +0100AlexZenon_2(~alzenon@178.34.163.65) (Ping timeout: 252 seconds)
2022-11-07 20:46:03 +0100 <ozkutuk[m]> I can't write a general polymorphic pattern synonym because this type variable is also used as input to a type family within the type, so the types differ across different concrete types
2022-11-07 20:47:20 +0100freeside(~mengwong@bb115-66-48-84.singnet.com.sg) (Ping timeout: 260 seconds)
2022-11-07 20:47:37 +0100Alex_test_(~al_test@178.34.163.65) (Remote host closed the connection)
2022-11-07 20:47:42 +0100 <EvanR> the link about Löb's and spreadsheets makes me think the previous decade which was partly defined as "FRP it's just a spreadsheet, what's the problem" was really about Löb's xD
2022-11-07 20:48:01 +0100 <EvanR> and not FRP really
2022-11-07 20:48:18 +0100 <EvanR> ok the subject and verb of that sentence was messed up, sorry
2022-11-07 20:48:58 +0100gmg(~user@user/gehmehgeh)
2022-11-07 20:49:51 +0100AlexZenon(~alzenon@178.34.163.65)
2022-11-07 20:49:54 +0100libertyprime(~libertypr@118-92-78-165.dsl.dyn.ihug.co.nz) (Ping timeout: 260 seconds)
2022-11-07 20:53:48 +0100AlexZenon(~alzenon@178.34.163.65) (Client Quit)
2022-11-07 20:55:24 +0100 <yin> why are some ghc versions hls-powered and some aren't?
2022-11-07 20:55:59 +0100AlexZenon(~alzenon@178.34.163.65)
2022-11-07 20:56:35 +0100 <davean> yin: "hls-powered"?
2022-11-07 20:56:39 +0100 <davean> what does that even mean?
2022-11-07 20:56:41 +0100 <tomsmeding> yin: ghcup saying that a ghc-version is "hls-powered" simply means that the default bundle of HLS executables packaged by ghcup contains a version for that ghc version
2022-11-07 20:57:01 +0100 <tomsmeding> i.e. ghcup has chosen a bunch of versions to precompile HLS for, and those are the ones
2022-11-07 20:57:20 +0100 <tomsmeding> you can compile your own HLS for a different ghc version should you be so inclined
2022-11-07 20:59:09 +0100Alex_test(~al_test@178.34.163.65)
2022-11-07 20:59:21 +0100 <yin> got it thanks
2022-11-07 20:59:49 +0100akegalj(~akegalj@93-138-41-233.adsl.net.t-com.hr) (Ping timeout: 260 seconds)
2022-11-07 20:59:50 +0100nshepperd2(nshepperd@2600:3c03::f03c:92ff:fe28:92c9)
2022-11-07 21:00:12 +0100 <tomsmeding> yin: (see e.g. 'ghcup compile hls --help')
2022-11-07 21:00:16 +0100 <yin> that being said, there's something wrong with code actions in 1.8.0.0
2022-11-07 21:00:46 +0100 <ski> ah, there is a <https://hackage.haskell.org/package/mono-traversable-1.0.15.3/docs/Data-MonoTraversable.html#t:Mon…> .. but the `X' is determined by the `T', so you can't also have an `Y' part
2022-11-07 21:01:10 +0100 <tomsmeding> yin: there's #haskell-language-server
2022-11-07 21:01:27 +0100akegalj(~akegalj@93-138-41-233.adsl.net.t-com.hr)
2022-11-07 21:01:28 +0100freeside(~mengwong@bb115-66-48-84.singnet.com.sg)
2022-11-07 21:01:32 +0100 <yin> tomsmeding: thanks. didn't know that
2022-11-07 21:01:35 +0100 <yin> i found this https://github.com/haskell/haskell-language-server/issues/3241
2022-11-07 21:02:24 +0100 <yin> compiling hls from source seems to fix it
2022-11-07 21:02:30 +0100abhiroop(~abhiroop@217-209-157-8-no2000.tbcn.telia.com) (Ping timeout: 260 seconds)
2022-11-07 21:03:39 +0100 <EvanR> ski, in your fmapLoeb you have X and Y. Is there anything special about 2 fields or it just an example
2022-11-07 21:03:56 +0100 <ski> just an example
2022-11-07 21:04:20 +0100 <ski> imagine `data T = MkT {x :: X,y :: Y}'
2022-11-07 21:04:43 +0100 <EvanR> oh ok, basically you designed it to update all the fields
2022-11-07 21:04:53 +0100 <ski> like `loeb', yea
2022-11-07 21:06:00 +0100freeside(~mengwong@bb115-66-48-84.singnet.com.sg) (Ping timeout: 260 seconds)
2022-11-07 21:07:31 +0100 <ski> @type (loeb .) . fmap
2022-11-07 21:07:32 +0100 <lambdabot> Functor f => (a1 -> f a2 -> a2) -> f a1 -> f a2
2022-11-07 21:08:09 +0100 <ski> (guess i should've said s/fmapLoeb/loebFMap/)
2022-11-07 21:10:19 +0100 <ski> (i guess one could possibly have "cache fields" that wouldn't be (explicitly) updated)
2022-11-07 21:15:29 +0100gmg(~user@user/gehmehgeh) (Remote host closed the connection)
2022-11-07 21:16:01 +0100lechner(lechner@debian/lechner) (Quit: WeeChat 3.5)
2022-11-07 21:16:25 +0100gmg(~user@user/gehmehgeh)
2022-11-07 21:18:38 +0100FinnElija(~finn_elij@user/finn-elija/x-0085643) (Ping timeout: 255 seconds)
2022-11-07 21:18:38 +0100ec_(~ec@gateway/tor-sasl/ec) (Ping timeout: 255 seconds)
2022-11-07 21:20:20 +0100beteigeuze(~Thunderbi@89.187.168.55)
2022-11-07 21:21:04 +0100ec_(~ec@gateway/tor-sasl/ec)
2022-11-07 21:21:26 +0100FinnElija(~finn_elij@user/finn-elija/x-0085643)
2022-11-07 21:22:48 +0100beteigeuze(~Thunderbi@89.187.168.55) (K-Lined)
2022-11-07 21:22:56 +0100freeside(~mengwong@bb115-66-48-84.singnet.com.sg)
2022-11-07 21:27:01 +0100AlexNoo_(~AlexNoo@178.34.163.65)
2022-11-07 21:30:23 +0100akegalj(~akegalj@93-138-41-233.adsl.net.t-com.hr) (Quit: leaving)
2022-11-07 21:30:44 +0100AlexNoo(~AlexNoo@178.34.163.65) (Ping timeout: 260 seconds)
2022-11-07 21:31:09 +0100coot(~coot@2a02:a310:e241:1b00:ec1a:e9df:79ac:66ba)
2022-11-07 21:32:07 +0100libertyprime(~libertypr@118-92-78-165.dsl.dyn.ihug.co.nz)
2022-11-07 21:34:50 +0100FinnElija(~finn_elij@user/finn-elija/x-0085643) (Ping timeout: 255 seconds)
2022-11-07 21:35:07 +0100Feuermagier(~Feuermagi@user/feuermagier)
2022-11-07 21:35:35 +0100takuan(~takuan@178-116-218-225.access.telenet.be) (Remote host closed the connection)
2022-11-07 21:36:00 +0100FinnElija(~finn_elij@user/finn-elija/x-0085643)
2022-11-07 21:40:39 +0100troydm(~troydm@host-176-37-124-197.b025.la.net.ua) (Ping timeout: 260 seconds)
2022-11-07 21:40:49 +0100vn36(~vn36@123.63.203.210)
2022-11-07 21:40:55 +0100eggplantade(~Eggplanta@2600:1700:38c5:d800:3d74:5eb7:3590:2ac6) (Remote host closed the connection)
2022-11-07 21:42:19 +0100 <monochrom> Ugh just when I have adopted GHC 9.2.4... 9.2.5 enters the bar!
2022-11-07 21:42:51 +0100eggplantade(~Eggplanta@2600:1700:38c5:d800:3d74:5eb7:3590:2ac6)
2022-11-07 21:43:02 +0100 <Xeroine> Hello, https://en.wikibooks.org/wiki/Haskell/Type_basics_II I don't understand a lot in the paragraph starting with "However, that design fits poorly with the way computers perform arithmetic.". First of all, I don't understand why this is true: "While computers can handle integers as a sequence of binary digits in memory, that approach does not work for real numbers". Aren't integers real
2022-11-07 21:43:04 +0100 <Xeroine> numbers? https://en.wikipedia.org/wiki/List_of_types_of_numbers this says integers are rational numbers which are real numbers.
2022-11-07 21:43:23 +0100 <Xeroine> I guess I'm misunderstanding something
2022-11-07 21:43:53 +0100 <EvanR> general real numbers have infinite non trivial bits
2022-11-07 21:44:01 +0100 <EvanR> they don't fit in the computer (all at once)
2022-11-07 21:44:11 +0100 <darkling> Integers are a subset of rationals, which are a subset of reals.
2022-11-07 21:44:54 +0100 <darkling> Specifically, the integers are a subset of reals that can be precisely represented as a sequence in a specific way.
2022-11-07 21:45:15 +0100titibandit(~titibandi@xdsl-87-78-8-6.nc.de)
2022-11-07 21:46:04 +0100 <Xeroine> EvanR: what do you mean by "non trivial bits"?
2022-11-07 21:46:11 +0100fserucas(~fserucas@2001:818:e376:a400:fb92:70c1:dd88:c7d7) (Quit: Leaving)
2022-11-07 21:46:17 +0100 <EvanR> look at the binary expansion of sqrt 2
2022-11-07 21:46:22 +0100AlexNoo_AlexNoo
2022-11-07 21:46:35 +0100 <monochrom> "Integers are real numbers" is true but useless for the purpose of "how to support all real numbers on a computer".
2022-11-07 21:47:09 +0100 <EvanR> it's irrational so the bit pattern ... isn't much of a pattern
2022-11-07 21:47:19 +0100 <EvanR> more damningly, it goes on forever
2022-11-07 21:47:36 +0100 <monochrom> Although, the argument on the wikibook is irrelevant, too.
2022-11-07 21:47:46 +0100 <Xeroine> monochrom: okay then I guess what I want to ask is what problems do other real numbers have that integers don't have when it comes to computers?
2022-11-07 21:47:47 +0100 <monochrom> Scheme is a counterexample.
2022-11-07 21:47:57 +0100pavonia(~user@user/siracusa)
2022-11-07 21:48:00 +0100nschoe(~q@141.101.51.197) (Ping timeout: 260 seconds)
2022-11-07 21:48:55 +0100 <EvanR> integers have the feature that you only need a small number of bits to do the arithmetic
2022-11-07 21:49:11 +0100 <darkling> None of the irrational reals (which is almost all of them) are representable as a finite sequence of bits.
2022-11-07 21:49:20 +0100emmanuelux(~emmanuelu@user/emmanuelux)
2022-11-07 21:49:37 +0100 <monochrom> Scheme shows that one can take the stance of having one number type that contains several cases: integer, rational, floating point.
2022-11-07 21:49:45 +0100 <EvanR> gross
2022-11-07 21:49:56 +0100mixfix41(~sdeny9ee@user/mixfix41) (Ping timeout: 252 seconds)
2022-11-07 21:50:11 +0100 <monochrom> If you try to do <integer> + <rational>, the result is a promotion, you get <rational>.
2022-11-07 21:50:21 +0100 <EvanR> computer int isn't a subset of computer float or vice versa
2022-11-07 21:50:31 +0100nucranium(~nucranium@2a02:8010:6173:0:8102:5ccd:28d9:3575)
2022-11-07 21:50:34 +0100vglfr(~vglfr@145.224.100.100) (Remote host closed the connection)
2022-11-07 21:50:53 +0100 <monochrom> In pseudo-Haskell terms, Scheme is doing "data Number = Integer ??? | Rational ??? | FloatingPoint ???"
2022-11-07 21:50:55 +0100 <davean> EvanR: Well sometimes int is a subset of float
2022-11-07 21:51:03 +0100 <darkling> You could represent specific subsets of the reals (for example, square roots and surds) with an appropriate representation based on integers, but it's limited in the operations you can make.
2022-11-07 21:51:06 +0100 <EvanR> don't make me bonkcat you
2022-11-07 21:51:11 +0100 <davean> On like a I16 system it is
2022-11-07 21:51:18 +0100 <davean> Hell, I think an I32?
2022-11-07 21:51:28 +0100vglfr(~vglfr@145.224.100.100)
2022-11-07 21:51:29 +0100 <davean> I can't recall of the top of my head where the cutoff is
2022-11-07 21:52:17 +0100 <darkling> IEEE FP, it's 53 bits of mantissa.
2022-11-07 21:52:26 +0100 <davean> darkling: thats what I thought
2022-11-07 21:52:31 +0100 <darkling> Which is, oddly enough, the limit of the integer type in JavaScript. :)
2022-11-07 21:52:33 +0100 <davean> so yah, many systems Int is a subset of float
2022-11-07 21:52:40 +0100 <EvanR> Float
2022-11-07 21:52:51 +0100 <davean> I32LP64 is a pretty normal setup
2022-11-07 21:52:55 +0100 <EvanR> if you interpret this to mean 32 bit float, it's right, but it doesn't matter
2022-11-07 21:52:58 +0100 <monochrom> The correct explanation for the Haskell design decision is: The committee prefers not to do it the Scheme way. The committee prefers to do the more traditional: There is an Int->Int->Int addition, there is a Double->Double->Double addition, etc., and keeping those number types separate, not unified.
2022-11-07 21:53:10 +0100 <davean> EvanR: No, no Float has a meaning in IEEE754
2022-11-07 21:53:28 +0100troydm(~troydm@host-176-37-124-197.b025.la.net.ua)
2022-11-07 21:53:35 +0100 <c_wraith> yeah, the name "double" actually means "twice as much of something as something else"
2022-11-07 21:54:17 +0100 <EvanR> the point is that the subset relationship is not true, you could instead drill down and get into when it's not true if you want but it's not contradicting anything
2022-11-07 21:54:28 +0100 <monochrom> (One could argue for that separation by the desire to match hardware-level distinctions and the hope that the matching helps efficiency.)
2022-11-07 21:54:31 +0100 <Xeroine> I still don't understand. There is some issue being described in that paragraph which exists for real numbers other than integers but what is it? Integers and other numbers from different sets of the real number set can be infinite but this isn't an issue for integers?
2022-11-07 21:54:43 +0100vglfr(~vglfr@145.224.100.100) (Remote host closed the connection)
2022-11-07 21:54:45 +0100 <monochrom> (Although, with laziness, the point is moot IMO.)
2022-11-07 21:54:47 +0100 <c_wraith> Integer can't be infintie
2022-11-07 21:54:49 +0100 <EvanR> infinite set? or infinite representations
2022-11-07 21:54:53 +0100 <c_wraith> err, can't be infinite
2022-11-07 21:54:53 +0100 <davean> EvanR: The point is it is unconditionally true on some systems
2022-11-07 21:55:08 +0100 <c_wraith> Integer can't be bigger than the amount of memory you've got
2022-11-07 21:55:13 +0100 <EvanR> davean, no, it's not the point. Sorry xD
2022-11-07 21:55:16 +0100 <cpli> (^^^), (^^^^), (^^^^^), (^^^^^^),
2022-11-07 21:55:16 +0100 <cpli> (^^^^^^^), (^^^^^^^^), (^^^^^^^^^),
2022-11-07 21:55:16 +0100vglfr(~vglfr@145.224.100.100)
2022-11-07 21:55:16 +0100 <cpli> (^^^^^^^^^^), (^^^^^^^^^^^), (^^^^^^^^^^^^),
2022-11-07 21:55:16 +0100 <cpli> (^^^^^^^^^^^^^), (^^^^^^^^^^^^^^), (^^^^^^^^^^^^^^^),
2022-11-07 21:55:16 +0100 <cpli> (^^^^^^^^^^^^^^^^), (^^^^^^^^^^^^^^^^^), (^^^^^^^^^^^^^^^^^^)
2022-11-07 21:55:17 +0100 <cpli> :: MonadUnliftIO m ⇒ m a → String → m a
2022-11-07 21:55:17 +0100 <cpli> (^^^) = flip $ (>>) . liftIO . Prelude.putStrLn
2022-11-07 21:55:18 +0100 <cpli> (^^^^) = (^^^)
2022-11-07 21:55:18 +0100 <cpli> (^^^^^) = (^^^^)
2022-11-07 21:55:19 +0100 <cpli> (^^^^^^) = (^^^^^)
2022-11-07 21:55:19 +0100 <cpli> (^^^^^^^) = (^^^^^^)
2022-11-07 21:55:20 +0100 <cpli> (^^^^^^^^) = (^^^^^^^)
2022-11-07 21:55:22 +0100 <cpli> (^^^^^^^^^) = (^^^^^^^^)
2022-11-07 21:55:22 +0100ChanServ+o monochrom
2022-11-07 21:55:24 +0100 <cpli> (^^^^^^^^^^) = (^^^^^^^^^)
2022-11-07 21:55:25 +0100 <EvanR> scheme is a programming language not a hardware
2022-11-07 21:55:26 +0100 <cpli> (^^^^^^^^^^^) = (^^^^^^^^^^)
2022-11-07 21:55:28 +0100 <cpli> (^^^^^^^^^^^^) = (^^^^^^^^^^^)
2022-11-07 21:55:29 +0100 <davean> Xeroine: "Can be infinite" and "must be infinite"
2022-11-07 21:55:30 +0100 <cpli> (^^^^^^^^^^^^^) = (^^^^^^^^^^^^)
2022-11-07 21:55:30 +0100monochrom+b *!*@2604:bf00:561:2000::252
2022-11-07 21:55:41 +0100buffet(~buffet@buffet.sh)
2022-11-07 21:55:57 +0100 <EvanR> it's defining some abstraction for all computers
2022-11-07 21:56:00 +0100 <Xeroine> c_wraith: but that's true for any number from any number set not just integers
2022-11-07 21:56:05 +0100 <monochrom> err, there is a "quiet" mode, let me change that.
2022-11-07 21:56:10 +0100 <c_wraith> Xeroine: IEEE754 numbers have an explicit representation for "infinity"
2022-11-07 21:56:16 +0100monochrom-b *!*@2604:bf00:561:2000::252
2022-11-07 21:56:33 +0100cpli(77fc530071@2604:bf00:561:2000::252) ()
2022-11-07 21:56:37 +0100cpli(77fc530071@2604:bf00:561:2000::252)
2022-11-07 21:56:38 +0100 <davean> Xeroine: note "must", this gets into non-trivial, many numbers have a single extension of implicite zero bits
2022-11-07 21:56:41 +0100 <monochrom> ha I don't know how to use the quiet mode
2022-11-07 21:56:47 +0100 <davean> Xeroine: not all numbers CAN be implicitely extended to get a subset
2022-11-07 21:56:54 +0100 <ski> cpli : please don't do that
2022-11-07 21:57:19 +0100eggplantade(~Eggplanta@2600:1700:38c5:d800:3d74:5eb7:3590:2ac6) (Remote host closed the connection)
2022-11-07 21:57:41 +0100 <monochrom> There are uncountably many real numbers, but only countable many possibilities for any data structure or program. There is not going to be an injective mapping from real numbers to computer data.
2022-11-07 21:57:52 +0100 <ski> @where paste
2022-11-07 21:57:52 +0100 <lambdabot> Help us help you: please paste full code, input and/or output at e.g. https://paste.tomsmeding.com
2022-11-07 21:57:58 +0100 <ski> cpli ^
2022-11-07 21:58:30 +0100 <EvanR> there are also countable rational numbers, but you still can't do the arithmetic on a bunch of bits. It won't fit
2022-11-07 21:58:43 +0100 <EvanR> like 1/3 = 0.33333...
2022-11-07 21:58:47 +0100 <monochrom> At best you can indulge in the notion of "computable reals", but it's very expensive.
2022-11-07 21:59:03 +0100 <monochrom> Sometimes even just Rationals is already considered too slow.
2022-11-07 21:59:11 +0100 <cpli> https://paste.tomsmeding.com/ZYkkSVns ski
2022-11-07 21:59:13 +0100 <monochrom> Or too memory-hogging.
2022-11-07 21:59:19 +0100 <cpli> ski ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
2022-11-07 22:00:19 +0100 <ski> i don't really see the point of those operators
2022-11-07 22:00:23 +0100 <davean> Xeroine: Also you can represent some numbers by how to compute them. This doesn't always let you find out anything about the number though. Consider if we have something where the far off bits influnce a lot and we ask "is it even or odd?" That might not be comput able.
2022-11-07 22:00:58 +0100 <EvanR> it might let you "find out about the number", e.g. by interpreting the computations
2022-11-07 22:00:59 +0100 <cpli> ski, they're important. they draw your eyes to the code that is being debugged. literate haskell is something similar if you know that.
2022-11-07 22:01:00 +0100 <ski> (also seems `MonadIO m' would be enough, rather than `MonadUnliftIO m', no ?)
2022-11-07 22:01:08 +0100 <pyrex> those are some nice operators!
2022-11-07 22:01:12 +0100monochrom-o monochrom
2022-11-07 22:01:18 +0100 <davean> EvanR: The point is some of those computations are non-computable.
2022-11-07 22:01:29 +0100 <ski> why not just one operator ?
2022-11-07 22:01:30 +0100 <EvanR> then it's badly named isn't it
2022-11-07 22:01:51 +0100bgs(~bgs@212-85-160-171.dynamic.telemach.net) (Remote host closed the connection)
2022-11-07 22:01:56 +0100 <EvanR> rather than computations you might be expressing some kind of logical definition
2022-11-07 22:01:58 +0100 <cpli> ski, sadly DiscordHandler is not of the family `MonadIO`, instead it is `MonadUnliftIO`
2022-11-07 22:02:14 +0100 <davean> EvanR: Oh this shows up just in numbers and basic math operations
2022-11-07 22:02:34 +0100 <cpli> ski i had one operator about 2 hours ago. it was far less expressive.
2022-11-07 22:02:34 +0100 <ski> but `(^^^)' doesn't appear to require that, cpli
2022-11-07 22:02:47 +0100 <ski> all the operators do the same thing
2022-11-07 22:02:47 +0100 <monochrom> You could have just one (^^^) and then at use sites add spaces, e.g. ^^^ "get stuff"
2022-11-07 22:03:45 +0100 <cpli> true, ski thank you for making the type declaration shorter, it lets me add more operators.
2022-11-07 22:03:47 +0100 <EvanR> the classic psuedo scheme sqrt function, (the y (= (squared y) x)), not really a computation
2022-11-07 22:03:53 +0100 <monochrom> Anyway Scheme refutes "it seems that we can't even have (+) mix integers and floating-point numbers" so the wikibook is wrong on this point.
2022-11-07 22:04:27 +0100 <davean> monochrom: I mean scheme shows you can't. It gets incorrect answers?
2022-11-07 22:04:38 +0100 <monochrom> The correct reason is as I stated, someone decided to match hardware-level distinctions.
2022-11-07 22:04:44 +0100 <cpli> monochrom, i might misread it as `>>=`
2022-11-07 22:05:03 +0100 <monochrom> I don't know how to misread ^^^ and spaces as >>=
2022-11-07 22:05:20 +0100 <cpli> i did before, that's why i added `^^^^`
2022-11-07 22:05:28 +0100 <EvanR> there are an equal number of line segment strokes in each
2022-11-07 22:06:05 +0100 <monochrom> Or rather, someone decided to follow the tradition of matching hardware-level distinctions, because Fortran Algol Pascal C have been doing that.
2022-11-07 22:06:43 +0100 <davean> monochrom: except I really think you're wrong - scheme makes '+' stop being addition
2022-11-07 22:06:55 +0100 <monochrom> How does Scheme get incorrect answers?
2022-11-07 22:07:13 +0100freeside(~mengwong@bb115-66-48-84.singnet.com.sg) (Ping timeout: 252 seconds)
2022-11-07 22:07:13 +0100 <davean> monochrom: because of its promotion and the float issues.
2022-11-07 22:07:27 +0100 <davean> it losses the properties that makes + be addition
2022-11-07 22:07:33 +0100 <EvanR> no true addition fallacy? xD
2022-11-07 22:07:41 +0100 <davean> No, but there is a definition of addition
2022-11-07 22:07:43 +0100 <EvanR> it's already broken for floats
2022-11-07 22:07:48 +0100 <ski> (inexacts ?)
2022-11-07 22:07:50 +0100 <EvanR> and arguably for ints
2022-11-07 22:07:53 +0100 <davean> Yes, it is always broken for floats.
2022-11-07 22:08:43 +0100 <EvanR> otoh to use your logic from before, + sometimes gives the right answer, therefore + is actually addition after all
2022-11-07 22:09:01 +0100 <monochrom> In Scheme if you + two integers it still stays within integers, it is not converted to float, this is Scheme not javascript or Applesoft BASIC.
2022-11-07 22:09:04 +0100 <davean> EvanR: No my logic from before was it *always* gives you the correct answer
2022-11-07 22:09:23 +0100 <EvanR> the logic from before was that int is a subset of float because it sometimes is
2022-11-07 22:09:24 +0100 <davean> monochrom: 1*f/f = ?
2022-11-07 22:09:46 +0100 <davean> EvanR: No, in the cases that it is a subset of Float it always is and thus it works for those designs
2022-11-07 22:10:01 +0100 <monochrom> Shrug IMO this is getting unnecessarily pedantic.
2022-11-07 22:10:16 +0100 <EvanR> that + sometimes works is actually more useful to be true
2022-11-07 22:10:27 +0100 <EvanR> because you can control that usually
2022-11-07 22:10:40 +0100 <davean> EvanR: you can control the Int thing too - its a very classic approach
2022-11-07 22:10:43 +0100 <davean> Esp in like GPU coding
2022-11-07 22:10:44 +0100 <EvanR> like using dyadic rationals in your algorithm
2022-11-07 22:11:33 +0100 <EvanR> or assuming something about the input
2022-11-07 22:14:24 +0100jao(~jao@cpc103048-sgyl39-2-0-cust502.18-2.cable.virginm.net)
2022-11-07 22:15:58 +0100tromp(~textual@92-110-219-57.cable.dynamic.v4.ziggo.nl) (Quit: My iMac has gone to sleep. ZZZzzz…)
2022-11-07 22:16:24 +0100waleee(~waleee@2001:9b0:213:7200:cc36:a556:b1e8:b340)
2022-11-07 22:18:12 +0100Batzy(~quassel@user/batzy) (Ping timeout: 248 seconds)
2022-11-07 22:19:48 +0100titibandit(~titibandi@xdsl-87-78-8-6.nc.de) (Remote host closed the connection)
2022-11-07 22:22:04 +0100jao(~jao@cpc103048-sgyl39-2-0-cust502.18-2.cable.virginm.net) (Ping timeout: 260 seconds)
2022-11-07 22:22:34 +0100jao(~jao@cpc103048-sgyl39-2-0-cust502.18-2.cable.virginm.net)
2022-11-07 22:24:12 +0100caryhartline(~caryhartl@2600:1700:2d0:8d30:6cc5:fd4d:6712:aa2c) (Quit: caryhartline)
2022-11-07 22:28:47 +0100freeside(~mengwong@bb115-66-48-84.singnet.com.sg)
2022-11-07 22:29:04 +0100ft(~ft@p508dbd59.dip0.t-ipconnect.de) (Ping timeout: 260 seconds)
2022-11-07 22:29:31 +0100nucranium(~nucranium@2a02:8010:6173:0:8102:5ccd:28d9:3575) (Quit: WeeChat 3.5)
2022-11-07 22:30:28 +0100ft(~ft@p508dbd59.dip0.t-ipconnect.de)
2022-11-07 22:31:10 +0100nate4(~nate@98.45.169.16)
2022-11-07 22:35:49 +0100nate4(~nate@98.45.169.16) (Ping timeout: 252 seconds)
2022-11-07 22:37:14 +0100jmdaemon(~jmdaemon@user/jmdaemon)
2022-11-07 22:38:59 +0100libertyprime(~libertypr@118-92-78-165.dsl.dyn.ihug.co.nz) (Ping timeout: 260 seconds)
2022-11-07 22:39:14 +0100libertyprime(~libertypr@118-92-78-165.dsl.dyn.ihug.co.nz)
2022-11-07 22:39:15 +0100jlgw(~jw@83-233-104-81.cust.bredband2.com)
2022-11-07 22:39:48 +0100Guest75(~Guest75@178.141.177.81) (Ping timeout: 260 seconds)
2022-11-07 22:41:40 +0100danza(~francesco@45.red-79-153-2.dynamicip.rima-tde.net) (Ping timeout: 260 seconds)
2022-11-07 22:45:34 +0100barak(~barak@2a0d:6fc2:68c0:8900:b543:1b85:720f:c15)
2022-11-07 22:47:16 +0100acidjnk_new(~acidjnk@p200300d6e7137a80d16563246cd9a30d.dip0.t-ipconnect.de)
2022-11-07 22:48:28 +0100acidjnk(~acidjnk@p200300d6e7137a3425e17e6c3d2393a2.dip0.t-ipconnect.de) (Ping timeout: 252 seconds)
2022-11-07 22:53:24 +0100tromp(~textual@92-110-219-57.cable.dynamic.v4.ziggo.nl)
2022-11-07 22:53:55 +0100jtomas(~jtomas@191.red-88-17-199.dynamicip.rima-tde.net) (Ping timeout: 260 seconds)
2022-11-07 22:57:49 +0100eggplantade(~Eggplanta@2600:1700:38c5:d800:3d74:5eb7:3590:2ac6)
2022-11-07 23:00:42 +0100merijn(~merijn@86-86-29-250.fixed.kpn.net) (Ping timeout: 252 seconds)
2022-11-07 23:02:40 +0100eggplantade(~Eggplanta@2600:1700:38c5:d800:3d74:5eb7:3590:2ac6) (Ping timeout: 260 seconds)
2022-11-07 23:03:13 +0100coot(~coot@2a02:a310:e241:1b00:ec1a:e9df:79ac:66ba) (Quit: coot)
2022-11-07 23:05:17 +0100califax(~califax@user/califx) (Ping timeout: 255 seconds)
2022-11-07 23:05:23 +0100califax_(~califax@user/califx)
2022-11-07 23:05:29 +0100ph88(~ph88@2a02:8109:9e00:71d0:3734:2921:799c:a285)
2022-11-07 23:06:39 +0100califax_califax
2022-11-07 23:07:29 +0100beteigeuze(~Thunderbi@a79-169-109-107.cpe.netcabo.pt)
2022-11-07 23:09:22 +0100caryhartline(~caryhartl@2603-8080-6a0e-8d88-e0ea-627d-a5d6-46f6.res6.spectrum.com)
2022-11-07 23:09:43 +0100caryhartline(~caryhartl@2603-8080-6a0e-8d88-e0ea-627d-a5d6-46f6.res6.spectrum.com) (Client Quit)
2022-11-07 23:11:36 +0100irrgit(~irrgit@146.70.27.218) (Quit: Leaving)
2022-11-07 23:16:03 +0100tromp(~textual@92-110-219-57.cable.dynamic.v4.ziggo.nl) (Quit: My iMac has gone to sleep. ZZZzzz…)
2022-11-07 23:21:41 +0100coot(~coot@213.134.171.3)
2022-11-07 23:21:57 +0100michalz(~michalz@185.246.207.217) (Remote host closed the connection)
2022-11-07 23:26:14 +0100beteigeuze(~Thunderbi@a79-169-109-107.cpe.netcabo.pt) (Ping timeout: 260 seconds)
2022-11-07 23:26:33 +0100beteigeuze(~Thunderbi@a79-169-109-107.cpe.netcabo.pt)
2022-11-07 23:27:20 +0100merijn(~merijn@86-86-29-250.fixed.kpn.net)
2022-11-07 23:29:00 +0100malte(~malte@mal.tc) (Remote host closed the connection)
2022-11-07 23:30:03 +0100malte(~malte@mal.tc)
2022-11-07 23:37:19 +0100freeside(~mengwong@bb115-66-48-84.singnet.com.sg) (Ping timeout: 260 seconds)
2022-11-07 23:42:28 +0100coot(~coot@213.134.171.3) (Quit: coot)
2022-11-07 23:47:51 +0100hays(rootvegeta@fsf/member/hays)
2022-11-07 23:48:17 +0100gmg(~user@user/gehmehgeh) (Remote host closed the connection)
2022-11-07 23:49:08 +0100tromp(~textual@92-110-219-57.cable.dynamic.v4.ziggo.nl)
2022-11-07 23:52:03 +0100albet70(~xxx@2400:8902::f03c:92ff:fe60:98d8) (Remote host closed the connection)
2022-11-07 23:54:14 +0100chomwitt(~chomwitt@2a02:587:7a0a:c00:1ac0:4dff:fedb:a3f1) (Ping timeout: 252 seconds)
2022-11-07 23:57:09 +0100troydm(~troydm@host-176-37-124-197.b025.la.net.ua) (Ping timeout: 260 seconds)
2022-11-07 23:58:10 +0100albet70(~xxx@2400:8902::f03c:92ff:fe60:98d8)