2022/12/18

2022-12-18 00:02:10 +0100ddellacosta(~ddellacos@143.244.47.75) (Ping timeout: 272 seconds)
2022-12-18 00:05:08 +0100lisbeths(uid135845@id-135845.lymington.irccloud.com) (Quit: Connection closed for inactivity)
2022-12-18 00:05:11 +0100jero98772(~jero98772@2800:484:1d80:d8ce:3490:26c5:1782:da8c)
2022-12-18 00:06:13 +0100ksqsf(~user@134.209.106.31)
2022-12-18 00:07:50 +0100gdd(~gdd@2001:470:1f13:187:f1d9:2c39:d075:f0d3) (Ping timeout: 252 seconds)
2022-12-18 00:08:29 +0100gdd(~gdd@2001:470:1f13:187:f1d9:2c39:d075:f0d3)
2022-12-18 00:08:34 +0100fizbin(~fizbin@user/fizbin) (Ping timeout: 252 seconds)
2022-12-18 00:10:11 +0100takuan(~takuan@178-116-218-225.access.telenet.be) (Remote host closed the connection)
2022-12-18 00:10:49 +0100ksqsf(~user@134.209.106.31) (Ping timeout: 252 seconds)
2022-12-18 00:11:44 +0100kenaryn(~aurele@89-88-44-27.abo.bbox.fr)
2022-12-18 00:11:49 +0100bontaq(~user@ool-45779fe5.dyn.optonline.net) (Ping timeout: 260 seconds)
2022-12-18 00:11:55 +0100TonyStone(~TonyStone@cpe-74-76-57-186.nycap.res.rr.com)
2022-12-18 00:13:27 +0100 <EvanR> wow the waargonaut haddocks have a respectable of actual documentation
2022-12-18 00:13:42 +0100beefbambi(~beefbambi@183.82.31.128) (Read error: Connection reset by peer)
2022-12-18 00:14:34 +0100merijn(~merijn@86-86-29-250.fixed.kpn.net) (Ping timeout: 268 seconds)
2022-12-18 00:16:36 +0100 <sm> đź‘€
2022-12-18 00:17:54 +0100gmg(~user@user/gehmehgeh) (Quit: Leaving)
2022-12-18 00:25:49 +0100beefbambi(~beefbambi@183.82.31.128)
2022-12-18 00:31:18 +0100beefbambi(~beefbambi@183.82.31.128) (Ping timeout: 272 seconds)
2022-12-18 00:32:13 +0100beefbambi(~beefbambi@2401:4900:230d:f57c:538c:d7cc:50c0:e377)
2022-12-18 00:32:49 +0100unit73e(~emanuel@2001:818:e8dd:7c00:656:e5ff:fe72:9d36) (Ping timeout: 252 seconds)
2022-12-18 00:34:27 +0100__monty__(~toonn@user/toonn) (Quit: leaving)
2022-12-18 00:38:54 +0100 <maralorn> ddellacosta: I switched nix-output-monitor from aeson to hermes-json because it was significantly faster for that usecase.
2022-12-18 00:44:27 +0100Me-me(~Me-me@146.102.215.218.dyn.iprimus.net.au) (Changing host)
2022-12-18 00:44:27 +0100Me-me(~Me-me@user/me-me)
2022-12-18 00:44:35 +0100 <alexfmpe[m]> is there a way to detect whether a module's being compiled in ghci?
2022-12-18 00:44:47 +0100 <alexfmpe[m]> via cpp or something
2022-12-18 00:47:35 +0100 <monochrom> I don't understand the question. Does :show modules help?
2022-12-18 00:48:44 +0100 <alexfmpe[m]> er, I didn't word that well - is there a way to distinguish between ghc and ghci? for instance, if I wanted to show a "debug version" when using ghci
2022-12-18 00:51:56 +0100 <alexfmpe[m]> ah, maybe I could check for -fno-code?
2022-12-18 00:53:47 +0100Tuplanolla(~Tuplanoll@91-159-68-152.elisa-laajakaista.fi) (Quit: Leaving.)
2022-12-18 00:53:54 +0100 <alexfmpe[m]> huh is that possible?
2022-12-18 00:54:07 +0100 <alexfmpe[m]> or only -D<symbol> is visible to cpp
2022-12-18 00:59:36 +0100eggplantade(~Eggplanta@2600:1700:38c5:d800:b575:bbf6:df74:2100) (Remote host closed the connection)
2022-12-18 01:00:14 +0100ksqsf(~user@134.209.106.31)
2022-12-18 01:02:32 +0100gnalzo(~gnalzo@2a01:e0a:498:fd50:fcc6:bb5d:489a:ce8c) (Quit: WeeChat 3.7.1)
2022-12-18 01:06:13 +0100fizbin(~fizbin@user/fizbin)
2022-12-18 01:06:15 +0100Topsi(~Topsi@dyndsl-095-033-228-128.ewe-ip-backbone.de) (Ping timeout: 255 seconds)
2022-12-18 01:07:53 +0100 <geekosaur> you may be thinking of -fbytecode vs. -fobject-code, but someone could run ghci with -fobject-code
2022-12-18 01:08:06 +0100pavonia(~user@user/siracusa)
2022-12-18 01:08:18 +0100 <geekosaur> and no, there is no CPP specific to ghci
2022-12-18 01:09:10 +0100 <glguy> alexfmpe[m]: In the past when I had features that didn't work in GHCi, I added a flag to my package that would set a define and then would cpp ifdef that code that shouldn't appear in the ghci case
2022-12-18 01:09:13 +0100 <geekosaur> sorry, -fbyte-code
2022-12-18 01:09:58 +0100 <glguy> In my particular case it was to hide some foreign exports
2022-12-18 01:10:03 +0100beefbambi(~beefbambi@2401:4900:230d:f57c:538c:d7cc:50c0:e377) (Read error: Connection reset by peer)
2022-12-18 01:10:21 +0100beefbambi(~beefbambi@183.82.27.160)
2022-12-18 01:10:33 +0100merijn(~merijn@86-86-29-250.fixed.kpn.net)
2022-12-18 01:14:14 +0100paulpaul1076(~textual@95-29-5-111.broadband.corbina.ru)
2022-12-18 01:16:51 +0100beteigeuze(~Thunderbi@bl14-81-220.dsl.telepac.pt) (Ping timeout: 268 seconds)
2022-12-18 01:21:53 +0100biberu(~biberu@user/biberu) (Read error: Connection reset by peer)
2022-12-18 01:23:55 +0100beteigeuze(~Thunderbi@bl14-81-220.dsl.telepac.pt)
2022-12-18 01:27:44 +0100biberu(~biberu@user/biberu)
2022-12-18 01:31:02 +0100ksqsf(~user@134.209.106.31) (Remote host closed the connection)
2022-12-18 01:37:50 +0100eggplantade(~Eggplanta@2600:1700:38c5:d800:b575:bbf6:df74:2100)
2022-12-18 01:43:50 +0100 <alexfmpe[m]> I see thanks. Turns out for my use-case this might not actually be necessary (though it would be sufficient). The flag idea would probably work for the "debug version" scenario
2022-12-18 01:45:13 +0100merijn(~merijn@86-86-29-250.fixed.kpn.net) (Ping timeout: 268 seconds)
2022-12-18 01:51:12 +0100 <DigitalKiwi> glguy: were you exporting cryptography
2022-12-18 01:51:24 +0100beefbambi(~beefbambi@183.82.27.160) (Read error: Connection reset by peer)
2022-12-18 01:51:42 +0100 <DigitalKiwi> naughty naughty
2022-12-18 01:52:01 +0100beefbambi(~beefbambi@183.82.27.160)
2022-12-18 01:56:13 +0100wroathe(~wroathe@207-153-38-140.fttp.usinternet.com)
2022-12-18 01:56:13 +0100wroathe(~wroathe@207-153-38-140.fttp.usinternet.com) (Changing host)
2022-12-18 01:56:13 +0100wroathe(~wroathe@user/wroathe)
2022-12-18 01:57:06 +0100kenaryn(~aurele@89-88-44-27.abo.bbox.fr) (Quit: leaving)
2022-12-18 02:00:34 +0100 <sm> omg finally things are getting easy ? https://gilmi.me/blog/post/2022/12/17/sqlite-easy
2022-12-18 02:10:39 +0100albet70(~xxx@2400:8902::f03c:92ff:fe60:98d8) (Remote host closed the connection)
2022-12-18 02:13:54 +0100j4cc3b(~jeffreybe@pool-74-105-2-138.nwrknj.fios.verizon.net) (Ping timeout: 272 seconds)
2022-12-18 02:14:42 +0100fizbin(~fizbin@user/fizbin) (Ping timeout: 252 seconds)
2022-12-18 02:16:47 +0100albet70(~xxx@2400:8902::f03c:92ff:fe60:98d8)
2022-12-18 02:16:53 +0100fizbin(~fizbin@user/fizbin)
2022-12-18 02:24:17 +0100ksqsf(~user@134.209.106.31)
2022-12-18 02:30:50 +0100fizbin(~fizbin@user/fizbin) (Ping timeout: 252 seconds)
2022-12-18 02:32:02 +0100ksqsf(~user@134.209.106.31) (Remote host closed the connection)
2022-12-18 02:37:09 +0100 <glguy> Is easy easier than simple? Is it as light as lite?
2022-12-18 02:41:06 +0100merijn(~merijn@86-86-29-250.fixed.kpn.net)
2022-12-18 02:42:48 +0100 <EvanR> diet sqlite easy simple no problem edition
2022-12-18 02:47:54 +0100 <dsal> Who names their database "somethingdb.bin"?
2022-12-18 02:51:49 +0100ksqsf(~user@134.209.106.31)
2022-12-18 02:55:14 +0100 <monochrom> I named my databases "something.db2" :)
2022-12-18 03:10:44 +0100TheCoffeMaker(~TheCoffeM@user/thecoffemaker)
2022-12-18 03:10:53 +0100ddellacosta(~ddellacos@143.244.47.75)
2022-12-18 03:11:02 +0100 <ddellacosta> maralorn: thanks, will check it out!
2022-12-18 03:11:45 +0100Inst(~Inst@2601:6c4:4081:54f0:8d82:4e66:2137:ab94) (Read error: Connection reset by peer)
2022-12-18 03:12:00 +0100jero98772(~jero98772@2800:484:1d80:d8ce:3490:26c5:1782:da8c) (Ping timeout: 265 seconds)
2022-12-18 03:15:13 +0100[Leary](~Leary]@user/Leary/x-0910699) (Remote host closed the connection)
2022-12-18 03:15:52 +0100merijn(~merijn@86-86-29-250.fixed.kpn.net) (Ping timeout: 268 seconds)
2022-12-18 03:19:46 +0100[Leary](~Leary]@user/Leary/x-0910699)
2022-12-18 03:23:37 +0100jero98772(~jero98772@2800:484:1d80:d8ce:efcc:cbb3:7f2a:6dff)
2022-12-18 03:26:21 +0100ksqsf(~user@134.209.106.31) (Ping timeout: 268 seconds)
2022-12-18 03:28:59 +0100beteigeuze(~Thunderbi@bl14-81-220.dsl.telepac.pt) (Ping timeout: 260 seconds)
2022-12-18 03:32:27 +0100xacktm(~xacktm@user/xacktm) (Quit: fBNC - https://bnc4free.com)
2022-12-18 03:32:40 +0100andreas303(andreas303@ip227.orange.bnc4free.com) (Quit: fBNC - https://bnc4free.com)
2022-12-18 03:34:47 +0100TheCoffeMaker(~TheCoffeM@user/thecoffemaker) (Quit: So long and thanks for all the fish)
2022-12-18 03:35:30 +0100TheCoffeMaker(~TheCoffeM@user/thecoffemaker)
2022-12-18 03:45:43 +0100eggplantade(~Eggplanta@2600:1700:38c5:d800:b575:bbf6:df74:2100) (Remote host closed the connection)
2022-12-18 03:51:18 +0100ksqsf(~user@134.209.106.31)
2022-12-18 03:52:43 +0100ksqsf(~user@134.209.106.31) (Remote host closed the connection)
2022-12-18 03:59:00 +0100xacktm(~xacktm@user/xacktm)
2022-12-18 04:01:04 +0100andreas303(andreas303@ip227.orange.bnc4free.com)
2022-12-18 04:03:37 +0100wroathe(~wroathe@user/wroathe) (Quit: Lost terminal)
2022-12-18 04:10:59 +0100jao(~jao@cpc103048-sgyl39-2-0-cust502.18-2.cable.virginm.net) (Ping timeout: 260 seconds)
2022-12-18 04:11:28 +0100wroathe(~wroathe@207-153-38-140.fttp.usinternet.com)
2022-12-18 04:11:28 +0100wroathe(~wroathe@207-153-38-140.fttp.usinternet.com) (Changing host)
2022-12-18 04:11:28 +0100wroathe(~wroathe@user/wroathe)
2022-12-18 04:11:37 +0100merijn(~merijn@86-86-29-250.fixed.kpn.net)
2022-12-18 04:16:26 +0100merijn(~merijn@86-86-29-250.fixed.kpn.net) (Ping timeout: 252 seconds)
2022-12-18 04:24:27 +0100FinnElija(~finn_elij@user/finn-elija/x-0085643) (Killed (NickServ (Forcing logout FinnElija -> finn_elija)))
2022-12-18 04:24:27 +0100finn_elija(~finn_elij@user/finn-elija/x-0085643)
2022-12-18 04:24:27 +0100finn_elijaFinnElija
2022-12-18 04:24:43 +0100eggplantade(~Eggplanta@2600:1700:38c5:d800:b575:bbf6:df74:2100)
2022-12-18 04:32:57 +0100td_(~td@83.135.9.26) (Ping timeout: 268 seconds)
2022-12-18 04:34:43 +0100td_(~td@83.135.9.47)
2022-12-18 04:36:08 +0100wroathe(~wroathe@user/wroathe) (Quit: Lost terminal)
2022-12-18 04:37:13 +0100fizbin(~fizbin@user/fizbin)
2022-12-18 04:45:16 +0100ksqsf(~user@134.209.106.31)
2022-12-18 04:48:38 +0100FinnElija(~finn_elij@user/finn-elija/x-0085643) (Ping timeout: 255 seconds)
2022-12-18 04:48:40 +0100son0p(~ff@2604:3d08:5b7f:5540::417e) (Ping timeout: 260 seconds)
2022-12-18 04:49:41 +0100son0p(~ff@2604:3d08:5b7f:5540::417e)
2022-12-18 04:50:13 +0100ksqsf(~user@134.209.106.31) (Ping timeout: 268 seconds)
2022-12-18 04:50:59 +0100FinnElija(~finn_elij@user/finn-elija/x-0085643)
2022-12-18 04:51:16 +0100jargon(~jargon@174-22-192-24.phnx.qwest.net)
2022-12-18 04:52:44 +0100jero98772(~jero98772@2800:484:1d80:d8ce:efcc:cbb3:7f2a:6dff) (Remote host closed the connection)
2022-12-18 04:53:36 +0100xacktm(~xacktm@user/xacktm) (Quit: fBNC - https://bnc4free.com)
2022-12-18 04:53:38 +0100andreas303(andreas303@ip227.orange.bnc4free.com) (Quit: fBNC - https://bnc4free.com)
2022-12-18 05:01:41 +0100tvandinther(~tvandinth@101.98.118.246)
2022-12-18 05:02:58 +0100 <tvandinther> Does anyone have tips for setting up auto-styling/formatting for source code files on save in VSCode?
2022-12-18 05:03:22 +0100ksqsf(~user@134.209.106.31)
2022-12-18 05:04:53 +0100brettgilio(~brettgili@x-irc.gq)
2022-12-18 05:10:15 +0100iqubic(~avi@2601:601:1100:edd0:8902:307c:9a5f:dd30) (Ping timeout: 260 seconds)
2022-12-18 05:16:18 +0100Inst(~Inst@2601:6c4:4081:54f0:f11e:46df:c907:e40e)
2022-12-18 05:16:35 +0100 <Inst> erm, when it comes to testing a nested definition, there's no way to do so, right?
2022-12-18 05:17:00 +0100 <Inst> I was wondering if there was some template Haskell metaprogramming way to access a definition within a definition
2022-12-18 05:17:44 +0100 <glguy> It wouldn't make sense to access it in general as it might mention variables from the parent scope
2022-12-18 05:21:26 +0100 <Inst> there's a pragmatic need, though
2022-12-18 05:21:33 +0100 <Inst> if you're using where clausing to hide api
2022-12-18 05:21:42 +0100 <Inst> i suppose you could do the same with modules, but that creates annoyances
2022-12-18 05:23:22 +0100 <EvanR> you can define a piece of API that accesses the internal state, basically OOP
2022-12-18 05:23:27 +0100xacktm(~xacktm@user/xacktm)
2022-12-18 05:24:14 +0100 <EvanR> but it's not something you could just do against uncooperative code
2022-12-18 05:25:20 +0100iqubic(~avi@2601:601:1100:edd0:4992:623a:6d6:39c5)
2022-12-18 05:27:19 +0100Unicorn_Princess(~Unicorn_P@user/Unicorn-Princess/x-3540542) (Remote host closed the connection)
2022-12-18 05:27:56 +0100andreas303(andreas303@ip227.orange.bnc4free.com)
2022-12-18 05:28:15 +0100tvandinther(~tvandinth@101.98.118.246) (Quit: Client closed)
2022-12-18 05:29:09 +0100ddellacosta(~ddellacos@143.244.47.75) (Ping timeout: 260 seconds)
2022-12-18 05:30:05 +0100iqubic(~avi@2601:601:1100:edd0:4992:623a:6d6:39c5) (Ping timeout: 260 seconds)
2022-12-18 05:36:31 +0100 <glguy> Is there a way to get haskell-language-server to show haddocks for stuff in my local cabal.project workspace?
2022-12-18 05:36:52 +0100 <glguy> I only seem to get type signatures
2022-12-18 05:37:10 +0100pflanze(~pflanze@159.100.249.232) (Read error: Connection reset by peer)
2022-12-18 05:38:28 +0100pflanze(~pflanze@159.100.249.232)
2022-12-18 05:39:18 +0100ksqsf`(~user@134.209.106.31)
2022-12-18 05:40:41 +0100ksqsf`(~user@134.209.106.31) (Remote host closed the connection)
2022-12-18 05:40:57 +0100merijn(~merijn@86-86-29-250.fixed.kpn.net)
2022-12-18 05:43:20 +0100ksqsf(~user@134.209.106.31) (Ping timeout: 252 seconds)
2022-12-18 05:45:47 +0100wroathe(~wroathe@207-153-38-140.fttp.usinternet.com)
2022-12-18 05:45:47 +0100wroathe(~wroathe@207-153-38-140.fttp.usinternet.com) (Changing host)
2022-12-18 05:45:47 +0100wroathe(~wroathe@user/wroathe)
2022-12-18 06:03:32 +0100fr33domlover(~fr33domlo@towards.vision) (Quit: The Lounge - https://thelounge.chat)
2022-12-18 06:06:15 +0100fr33domlover(~fr33domlo@towards.vision)
2022-12-18 06:15:19 +0100merijn(~merijn@86-86-29-250.fixed.kpn.net) (Ping timeout: 268 seconds)
2022-12-18 06:15:35 +0100[itchyjunk](~itchyjunk@user/itchyjunk/x-7353470) (Remote host closed the connection)
2022-12-18 06:19:46 +0100iqubic(~avi@2601:601:1100:edd0:23b0:d602:1b3e:8cff)
2022-12-18 06:22:10 +0100wroathe(~wroathe@user/wroathe) (Quit: Lost terminal)
2022-12-18 06:22:16 +0100ksqsf`(~user@134.209.106.31)
2022-12-18 06:25:17 +0100rnat(uid73555@id-73555.lymington.irccloud.com)
2022-12-18 06:31:41 +0100wroathe(~wroathe@207-153-38-140.fttp.usinternet.com)
2022-12-18 06:31:41 +0100wroathe(~wroathe@207-153-38-140.fttp.usinternet.com) (Changing host)
2022-12-18 06:31:41 +0100wroathe(~wroathe@user/wroathe)
2022-12-18 06:42:45 +0100money_(~money@2607:fb91:bd3c:6437:70a6:5c6e:bbfe:7955)
2022-12-18 06:44:00 +0100money_(~money@2607:fb91:bd3c:6437:70a6:5c6e:bbfe:7955) (Client Quit)
2022-12-18 06:53:22 +0100bontaq(~user@ool-45779fe5.dyn.optonline.net)
2022-12-18 07:00:58 +0100ksqsf``(~user@134.209.106.31)
2022-12-18 07:05:14 +0100ksqsf`(~user@134.209.106.31) (Ping timeout: 272 seconds)
2022-12-18 07:11:49 +0100merijn(~merijn@86-86-29-250.fixed.kpn.net)
2022-12-18 07:20:20 +0100razetime(~quassel@49.207.230.181)
2022-12-18 07:21:11 +0100ksqsf``ksqsf
2022-12-18 07:22:45 +0100EvanR(~EvanR@user/evanr) (Remote host closed the connection)
2022-12-18 07:23:05 +0100EvanR(~EvanR@user/evanr)
2022-12-18 07:28:30 +0100son0p(~ff@2604:3d08:5b7f:5540::417e) (Ping timeout: 260 seconds)
2022-12-18 07:31:07 +0100Wolfram-Sigma(~Wolfram-S@216-131-109-245.prg.as62651.net)
2022-12-18 07:46:24 +0100merijn(~merijn@86-86-29-250.fixed.kpn.net) (Ping timeout: 272 seconds)
2022-12-18 07:54:56 +0100wroathe(~wroathe@user/wroathe) (Quit: Lost terminal)
2022-12-18 08:03:34 +0100coot(~coot@2a02:a310:e241:1b00:ec1a:e9df:79ac:66ba)
2022-12-18 08:09:51 +0100dsrt^(~dsrt@76.145.185.103) (Remote host closed the connection)
2022-12-18 08:10:30 +0100tcard(~tcard@2400:4051:5801:7500:cf17:befc:ff82:5303) (Ping timeout: 260 seconds)
2022-12-18 08:10:38 +0100ksqsf(~user@134.209.106.31) (Ping timeout: 268 seconds)
2022-12-18 08:12:44 +0100ksqsf(~user@134.209.106.31)
2022-12-18 08:13:59 +0100ksqsf(~user@134.209.106.31) (Remote host closed the connection)
2022-12-18 08:21:09 +0100tcard(~tcard@2400:4051:5801:7500:cf17:befc:ff82:5303)
2022-12-18 08:26:38 +0100ksqsf(~user@134.209.106.31)
2022-12-18 08:28:15 +0100ksqsf(~user@134.209.106.31) (Remote host closed the connection)
2022-12-18 08:28:40 +0100ksqsf(~user@134.209.106.31)
2022-12-18 08:30:34 +0100werneta(~werneta@70-142-214-115.lightspeed.irvnca.sbcglobal.net) (Ping timeout: 260 seconds)
2022-12-18 08:34:35 +0100eggplantade(~Eggplanta@2600:1700:38c5:d800:b575:bbf6:df74:2100) (Remote host closed the connection)
2022-12-18 08:36:26 +0100beefbambi(~beefbambi@183.82.27.160) (Ping timeout: 272 seconds)
2022-12-18 08:37:23 +0100beefbambi(~beefbambi@2401:4900:230d:f57c:538c:d7cc:50c0:e377)
2022-12-18 08:39:41 +0100freeside(~mengwong@213.86.11.74)
2022-12-18 08:42:42 +0100merijn(~merijn@86.86.29.250)
2022-12-18 08:47:05 +0100werneta(~werneta@70-142-214-115.lightspeed.irvnca.sbcglobal.net)
2022-12-18 08:47:37 +0100beefbambi(~beefbambi@2401:4900:230d:f57c:538c:d7cc:50c0:e377) (Read error: Connection reset by peer)
2022-12-18 08:47:54 +0100beefbambi(~beefbambi@183.82.204.70)
2022-12-18 08:49:58 +0100beefbambi(~beefbambi@183.82.204.70) (Read error: Connection reset by peer)
2022-12-18 08:50:32 +0100beefbambi(~beefbambi@183.82.204.70)
2022-12-18 08:50:53 +0100tromp(~textual@92-110-219-57.cable.dynamic.v4.ziggo.nl)
2022-12-18 08:51:23 +0100tromp(~textual@92-110-219-57.cable.dynamic.v4.ziggo.nl) (Client Quit)
2022-12-18 08:58:56 +0100tromp(~textual@92-110-219-57.cable.dynamic.v4.ziggo.nl)
2022-12-18 09:03:56 +0100geekosaur(~geekosaur@xmonad/geekosaur) (Ping timeout: 256 seconds)
2022-12-18 09:04:19 +0100geekosaur(~geekosaur@xmonad/geekosaur)
2022-12-18 09:04:37 +0100takuan(~takuan@178-116-218-225.access.telenet.be)
2022-12-18 09:08:36 +0100freeside(~mengwong@213.86.11.74) (Ping timeout: 268 seconds)
2022-12-18 09:14:46 +0100rnat(uid73555@id-73555.lymington.irccloud.com) (Quit: Connection closed for inactivity)
2022-12-18 09:17:14 +0100merijn(~merijn@86.86.29.250) (Ping timeout: 268 seconds)
2022-12-18 09:17:49 +0100Tuplanolla(~Tuplanoll@91-159-68-152.elisa-laajakaista.fi)
2022-12-18 09:26:25 +0100califax(~califax@user/califx) (Remote host closed the connection)
2022-12-18 09:27:59 +0100califax(~califax@user/califx)
2022-12-18 09:35:05 +0100eggplantade(~Eggplanta@2600:1700:38c5:d800:6111:8f0f:4f2:4e8d)
2022-12-18 09:35:33 +0100trev(~trev@user/trev)
2022-12-18 09:36:25 +0100johnw(~johnw@2600:1700:cf00:db0:6524:1c2a:8eda:bee4)
2022-12-18 09:39:46 +0100son0p(~ff@2604:3d08:5b7f:5540::417e)
2022-12-18 09:40:35 +0100jakalx(~jakalx@base.jakalx.net) ()
2022-12-18 09:40:55 +0100eggplantade(~Eggplanta@2600:1700:38c5:d800:6111:8f0f:4f2:4e8d) (Ping timeout: 260 seconds)
2022-12-18 09:49:55 +0100beefbambi(~beefbambi@183.82.204.70) (Read error: Connection reset by peer)
2022-12-18 09:50:42 +0100beefbambi(~beefbambi@183.82.204.70)
2022-12-18 09:54:15 +0100merijn(~merijn@86-86-29-250.fixed.kpn.net)
2022-12-18 10:00:05 +0100ted[m](~tedmatrix@2001:470:69fc:105::2:bf60) (Quit: You have been kicked for being idle)
2022-12-18 10:01:02 +0100beefbambi(~beefbambi@183.82.204.70) (Read error: Connection reset by peer)
2022-12-18 10:06:13 +0100beefbambi(~beefbambi@183.82.204.70)
2022-12-18 10:09:02 +0100machinedgod(~machinedg@d198-53-218-113.abhsia.telus.net) (Ping timeout: 268 seconds)
2022-12-18 10:24:19 +0100gmg(~user@user/gehmehgeh)
2022-12-18 10:25:29 +0100ksqsf(~user@134.209.106.31) (Ping timeout: 260 seconds)
2022-12-18 10:28:24 +0100beefbambi(~beefbambi@183.82.204.70) (Ping timeout: 260 seconds)
2022-12-18 10:28:49 +0100beefbambi(~beefbambi@2401:4900:230d:f57c:538c:d7cc:50c0:e377)
2022-12-18 10:36:37 +0100jakalx(~jakalx@base.jakalx.net)
2022-12-18 10:41:00 +0100danza(~francesco@4.red-79-153-154.dynamicip.rima-tde.net)
2022-12-18 10:44:06 +0100xacktm(~xacktm@user/xacktm) (Quit: fBNC - https://bnc4free.com)
2022-12-18 10:47:05 +0100Sgeo(~Sgeo@user/sgeo) (Read error: Connection reset by peer)
2022-12-18 10:47:18 +0100andreas303(andreas303@ip227.orange.bnc4free.com) (Ping timeout: 252 seconds)
2022-12-18 10:51:31 +0100ksqsf(~user@134.209.106.31)
2022-12-18 10:53:29 +0100geekosaur(~geekosaur@xmonad/geekosaur) (Ping timeout: 255 seconds)
2022-12-18 10:54:42 +0100beefbambi(~beefbambi@2401:4900:230d:f57c:538c:d7cc:50c0:e377) (Read error: Connection reset by peer)
2022-12-18 10:54:59 +0100beefbambi(~beefbambi@183.82.204.70)
2022-12-18 10:58:22 +0100merijn(~merijn@86-86-29-250.fixed.kpn.net) (Ping timeout: 268 seconds)
2022-12-18 11:03:04 +0100beefbambi(~beefbambi@183.82.204.70) (Ping timeout: 252 seconds)
2022-12-18 11:03:39 +0100beefbambi(~beefbambi@183.82.204.70)
2022-12-18 11:22:42 +0100Lord_of_Life_(~Lord@user/lord-of-life/x-2819915)
2022-12-18 11:23:06 +0100kenaryn(~aurele@cre71-h03-89-88-44-27.dsl.sta.abo.bbox.fr)
2022-12-18 11:24:17 +0100Lord_of_Life(~Lord@user/lord-of-life/x-2819915) (Ping timeout: 268 seconds)
2022-12-18 11:24:31 +0100danza(~francesco@4.red-79-153-154.dynamicip.rima-tde.net) (Ping timeout: 265 seconds)
2022-12-18 11:25:05 +0100Wolfram-Sigma(~Wolfram-S@216-131-109-245.prg.as62651.net) (Quit: Client closed)
2022-12-18 11:25:26 +0100Lord_of_Life_Lord_of_Life
2022-12-18 11:35:36 +0100geekosaur(~geekosaur@xmonad/geekosaur)
2022-12-18 11:48:05 +0100allbery_b(~geekosaur@xmonad/geekosaur)
2022-12-18 11:48:05 +0100geekosaur(~geekosaur@xmonad/geekosaur) (Killed (NickServ (GHOST command used by allbery_b)))
2022-12-18 11:48:08 +0100allbery_bgeekosaur
2022-12-18 11:50:39 +0100econo(uid147250@user/econo) (Quit: Connection closed for inactivity)
2022-12-18 11:50:42 +0100WarzoneCommandNoinia
2022-12-18 11:53:51 +0100gawen_(~gawen@user/gawen) (Quit: cya)
2022-12-18 11:54:31 +0100merijn(~merijn@86-86-29-250.fixed.kpn.net)
2022-12-18 11:55:06 +0100Kaiepi(~Kaiepi@108.175.84.104) (Ping timeout: 268 seconds)
2022-12-18 11:56:33 +0100xacktm(~xacktm@user/xacktm)
2022-12-18 11:58:25 +0100andreas303(andreas303@ip227.orange.bnc4free.com)
2022-12-18 11:59:00 +0100gawen(~gawen@user/gawen)
2022-12-18 11:59:06 +0100tzh(~tzh@c-24-21-73-154.hsd1.wa.comcast.net) (Quit: zzz)
2022-12-18 12:02:56 +0100tromp(~textual@92-110-219-57.cable.dynamic.v4.ziggo.nl) (Quit: My iMac has gone to sleep. ZZZzzz…)
2022-12-18 12:04:05 +0100tromp(~textual@92-110-219-57.cable.dynamic.v4.ziggo.nl)
2022-12-18 12:04:37 +0100kenaryn(~aurele@cre71-h03-89-88-44-27.dsl.sta.abo.bbox.fr) (Quit: leaving)
2022-12-18 12:06:59 +0100Me-me(~Me-me@user/me-me) (Quit: Going offline, see ya! (www.adiirc.com))
2022-12-18 12:10:15 +0100kritzefitz(~kritzefit@debian/kritzefitz) (Remote host closed the connection)
2022-12-18 12:13:40 +0100beefbambi(~beefbambi@183.82.204.70) (Read error: Connection reset by peer)
2022-12-18 12:13:53 +0100beefbambi(~beefbambi@2401:4900:230d:f57c:538c:d7cc:50c0:e377)
2022-12-18 12:14:30 +0100beefbambi(~beefbambi@2401:4900:230d:f57c:538c:d7cc:50c0:e377) (Read error: Connection reset by peer)
2022-12-18 12:14:41 +0100beefbambi(~beefbambi@2401:4900:230d:f57c:538c:d7cc:50c0:e377)
2022-12-18 12:14:45 +0100crazazy(~user@130.89.171.62)
2022-12-18 12:15:16 +0100Kaiepi(~Kaiepi@108.175.84.104)
2022-12-18 12:15:27 +0100beefbambi(~beefbambi@2401:4900:230d:f57c:538c:d7cc:50c0:e377) (Read error: Connection reset by peer)
2022-12-18 12:15:45 +0100beefbambi(~beefbambi@183.82.204.70)
2022-12-18 12:17:56 +0100beefbambi(~beefbambi@183.82.204.70) (Read error: Connection reset by peer)
2022-12-18 12:18:21 +0100beefbambi(~beefbambi@183.82.204.70)
2022-12-18 12:21:14 +0100jakalx(~jakalx@base.jakalx.net) ()
2022-12-18 12:21:40 +0100jakalx(~jakalx@base.jakalx.net)
2022-12-18 12:22:29 +0100beefbambi(~beefbambi@183.82.204.70) (Read error: Connection reset by peer)
2022-12-18 12:23:19 +0100ezzieyguywuf(~Unknown@user/ezzieyguywuf) (Ping timeout: 260 seconds)
2022-12-18 12:24:07 +0100ezzieyguywuf(~Unknown@user/ezzieyguywuf)
2022-12-18 12:28:52 +0100merijn(~merijn@86-86-29-250.fixed.kpn.net) (Ping timeout: 272 seconds)
2022-12-18 12:30:51 +0100haskl(~haskl@user/haskl) (Read error: Connection reset by peer)
2022-12-18 12:30:57 +0100kenaryn(~aurele@89-88-44-27.abo.bbox.fr)
2022-12-18 12:33:03 +0100haskl(~haskl@user/haskl)
2022-12-18 12:38:23 +0100eggplantade(~Eggplanta@2600:1700:38c5:d800:6111:8f0f:4f2:4e8d)
2022-12-18 12:39:37 +0100jao(~jao@cpc103048-sgyl39-2-0-cust502.18-2.cable.virginm.net)
2022-12-18 12:39:55 +0100oopzzozzo(~Thunderbi@user/oopzzozzo)
2022-12-18 12:42:47 +0100eggplantade(~Eggplanta@2600:1700:38c5:d800:6111:8f0f:4f2:4e8d) (Ping timeout: 260 seconds)
2022-12-18 12:44:12 +0100beefbambi(~beefbambi@183.82.204.70)
2022-12-18 12:47:08 +0100kritzefitz(~kritzefit@debian/kritzefitz)
2022-12-18 12:47:58 +0100beteigeuze(~Thunderbi@bl14-81-220.dsl.telepac.pt)
2022-12-18 12:52:37 +0100kritzefitz(~kritzefit@debian/kritzefitz) (Remote host closed the connection)
2022-12-18 12:59:32 +0100kritzefitz(~kritzefit@debian/kritzefitz)
2022-12-18 13:10:19 +0100waleee(~waleee@2001:9b0:213:7200:cc36:a556:b1e8:b340)
2022-12-18 13:13:58 +0100[Leary](~Leary]@user/Leary/x-0910699) (Remote host closed the connection)
2022-12-18 13:19:11 +0100oopzzozzo(~Thunderbi@user/oopzzozzo) (Ping timeout: 260 seconds)
2022-12-18 13:25:04 +0100merijn(~merijn@86-86-29-250.fixed.kpn.net)
2022-12-18 13:26:30 +0100beefbambi(~beefbambi@183.82.204.70) (Read error: Connection reset by peer)
2022-12-18 13:26:40 +0100beefbambi(~beefbambi@183.82.204.70)
2022-12-18 13:29:05 +0100[Leary](~Leary]@user/Leary/x-0910699)
2022-12-18 13:30:04 +0100jao(~jao@cpc103048-sgyl39-2-0-cust502.18-2.cable.virginm.net) (Ping timeout: 268 seconds)
2022-12-18 13:30:48 +0100gurkenglas(~gurkengla@p548ac72e.dip0.t-ipconnect.de)
2022-12-18 13:30:53 +0100 <Jade[m]> @pl f s = g s >> h
2022-12-18 13:30:53 +0100 <lambdabot> f = (>> h) . g
2022-12-18 13:38:10 +0100ksqsf(~user@134.209.106.31) (Ping timeout: 252 seconds)
2022-12-18 13:38:32 +0100brandonh(brandonh@gateway/vpn/protonvpn/brandonh)
2022-12-18 13:46:03 +0100 <sayola> whats ^>= in cabal deps?
2022-12-18 13:46:48 +0100brandonh(brandonh@gateway/vpn/protonvpn/brandonh) (Quit: brandonh)
2022-12-18 13:47:31 +0100hrberg(~quassel@171.79-160-161.customer.lyse.net) (Quit: https://quassel-irc.org - Chat comfortably. Anywhere.)
2022-12-18 13:47:50 +0100hrberg(~quassel@171.79-160-161.customer.lyse.net)
2022-12-18 13:47:52 +0100jinsun(~jinsun@user/jinsun) (Quit: No Ping reply in 180 seconds.)
2022-12-18 13:48:19 +0100 <Jade[m]> not bigger than or equal to?
2022-12-18 13:48:20 +0100 <Jade[m]> not sure
2022-12-18 13:53:14 +0100 <geekosaur> >= but obeying PVP bounds
2022-12-18 13:54:05 +0100jinsun(~jinsun@user/jinsun)
2022-12-18 13:54:46 +0100 <geekosaur> so there's an implicit <= based on the appropriate PVP bound for the specified version
2022-12-18 13:54:48 +0100 <sayola> so, thats the last two numbers of pvp then?
2022-12-18 13:54:56 +0100 <geekosaur> usually
2022-12-18 13:55:02 +0100 <sayola> which can change
2022-12-18 13:55:05 +0100 <sayola> ok
2022-12-18 13:55:38 +0100xff0x(~xff0x@ai071162.d.east.v6connect.net) (Ping timeout: 272 seconds)
2022-12-18 13:59:40 +0100merijn(~merijn@86-86-29-250.fixed.kpn.net) (Ping timeout: 265 seconds)
2022-12-18 13:59:41 +0100beefbambi(~beefbambi@183.82.204.70) (Read error: Connection reset by peer)
2022-12-18 14:00:32 +0100beefbambi(~beefbambi@183.82.204.70)
2022-12-18 14:01:00 +0100instantaphex(~jb@c-73-171-252-84.hsd1.fl.comcast.net)
2022-12-18 14:01:52 +0100Sciencentistguy(~sciencent@hacksoc/ordinary-member) (Ping timeout: 252 seconds)
2022-12-18 14:02:56 +0100acidjnk(~acidjnk@p200300d6e7137a3900a43338f23333fb.dip0.t-ipconnect.de)
2022-12-18 14:03:36 +0100Topsi(~Topsi@dialin-80-228-141-093.ewe-ip-backbone.de)
2022-12-18 14:05:46 +0100instantaphex(~jb@c-73-171-252-84.hsd1.fl.comcast.net) (Ping timeout: 272 seconds)
2022-12-18 14:07:19 +0100v0id_ptr(~adrift@user/ptr-frac7al/x-0038398)
2022-12-18 14:09:04 +0100Sciencentistguy(~sciencent@hacksoc/ordinary-member)
2022-12-18 14:09:27 +0100jakalx(~jakalx@base.jakalx.net) (Error from remote client)
2022-12-18 14:14:57 +0100kritzefitz(~kritzefit@debian/kritzefitz) (Remote host closed the connection)
2022-12-18 14:16:56 +0100v0id_ptr(~adrift@user/ptr-frac7al/x-0038398) (Ping timeout: 268 seconds)
2022-12-18 14:17:21 +0100jakalx(~jakalx@base.jakalx.net)
2022-12-18 14:18:28 +0100xff0x(~xff0x@ai071162.d.east.v6connect.net)
2022-12-18 14:18:51 +0100kritzefitz(~kritzefit@debian/kritzefitz)
2022-12-18 14:22:23 +0100[itchyjunk](~itchyjunk@user/itchyjunk/x-7353470)
2022-12-18 14:22:48 +0100tromp(~textual@92-110-219-57.cable.dynamic.v4.ziggo.nl) (Quit: My iMac has gone to sleep. ZZZzzz…)
2022-12-18 14:23:30 +0100troydm(~troydm@host-176-37-124-197.b025.la.net.ua) (Ping timeout: 272 seconds)
2022-12-18 14:30:25 +0100Unicorn_Princess(~Unicorn_P@user/Unicorn-Princess/x-3540542)
2022-12-18 14:32:48 +0100Sciencentistguy(~sciencent@hacksoc/ordinary-member) (Ping timeout: 252 seconds)
2022-12-18 14:34:20 +0100 <Inst> curious
2022-12-18 14:34:25 +0100kenaryn(~aurele@89-88-44-27.abo.bbox.fr) (Quit: leaving)
2022-12-18 14:34:37 +0100 <Inst> would it be a good or a bad thing if OverloadedTypeclasses were a thing?
2022-12-18 14:35:26 +0100beefbambi(~beefbambi@183.82.204.70) (Ping timeout: 268 seconds)
2022-12-18 14:35:34 +0100 <geekosaur> meaning what?
2022-12-18 14:36:13 +0100Sciencentistguy(~sciencent@hacksoc/ordinary-member)
2022-12-18 14:36:15 +0100 <Inst> say, I don't like Num, I want to inject a new num in without dropping the default prelude, etc
2022-12-18 14:36:41 +0100beefbambi(~beefbambi@2401:4900:230d:f57c:538c:d7cc:50c0:e377)
2022-12-18 14:36:55 +0100 <trev> isn't that called "specialization"?
2022-12-18 14:37:55 +0100 <Inst> just playing around with Julia a very little bit, and I'm thinking about limitations of Num, etc
2022-12-18 14:37:56 +0100 <geekosaur> no, specialization is pregenerating code for a particular type, and applies to polymorphic code not to typeclasses
2022-12-18 14:38:32 +0100 <Inst> is there something fundamentally preventing the overloading of typeclasses?
2022-12-18 14:38:48 +0100 <Inst> (+) :: Num a => a -> a -> a
2022-12-18 14:38:54 +0100 <geekosaur> as to your proposed overloading semantics, remember that values in Haskell are not objects and don't have vtables. so how does code in another module or library know about your overload?
2022-12-18 14:39:25 +0100 <Inst> does code in another module or library need to know about my overload?
2022-12-18 14:39:47 +0100 <geekosaur> right now they know because instances are global symbols and it can simply refer to $fNumType
2022-12-18 14:39:59 +0100 <geekosaur> if you want that code to actually use it, yes
2022-12-18 14:40:20 +0100 <Inst> How about, no?
2022-12-18 14:40:37 +0100 <Inst> The idea is that I can get safe transition toward new Num typeclasses etc
2022-12-18 14:40:53 +0100 <geekosaur> then whaqt's the point of the overload? and what happens when code using it encounters code that doesn't?
2022-12-18 14:41:29 +0100 <Inst> the code that doesn't shouldn't interact with the code that does overload
2022-12-18 14:41:38 +0100 <Inst> or if it does, it can't see the overloaded typeclasses
2022-12-18 14:41:43 +0100 <Inst> unless the pragma is on in the module
2022-12-18 14:41:55 +0100 <geekosaur> also I suspect you'd be fairly upset if something like `sum` doesn't use your overloaded (+)
2022-12-18 14:42:22 +0100razetime(~quassel@49.207.230.181) (Quit: https://quassel-irc.org - Chat comfortably. Anywhere.)
2022-12-18 14:42:38 +0100 <Inst> that's fine, what I'm more thinking of is figuring out how to syntactically enable typesafe (and possibly dependently typed) matrix multiplication with *
2022-12-18 14:43:12 +0100 <Inst> since, well, by default, a matrix multiplication is not going to follow a -> a -> a, no?
2022-12-18 14:43:34 +0100 <Inst> a -> b -> c
2022-12-18 14:43:48 +0100 <geekosaur> that's going to require rather more than just overloading Num
2022-12-18 14:44:06 +0100 <Inst> yeah, tbh, it's a complex matter
2022-12-18 14:44:39 +0100phma(phma@2001:5b0:211f:d528:ab67:ad29:6dde:4757) (Read error: Connection reset by peer)
2022-12-18 14:44:44 +0100 <geekosaur> and yes, aiui it would have to be dependently typed, or at minimum size information at type level
2022-12-18 14:44:55 +0100 <hpc> if you don't use Num, there's some other fun alternatives you might consider
2022-12-18 14:44:59 +0100 <geekosaur> which in Haskell is a PITA
2022-12-18 14:45:07 +0100 <hpc> for example, matrix multiplication is function composition of linear functions
2022-12-18 14:45:22 +0100tok(~user@mobile-access-d98cd1-96.dhcp.inet.fi)
2022-12-18 14:45:30 +0100phma(~phma@host-67-44-208-107.hnremote.net)
2022-12-18 14:45:30 +0100 <hpc> and if you use data M w h, you can even get a type that looks like (.)
2022-12-18 14:45:40 +0100 <Inst> and overloading a typeclass is still a bit of a headache either way; I don't think I've fully thought of the implications of such
2022-12-18 14:45:53 +0100 <hpc> M a b -> M b c -> M a c
2022-12-18 14:46:31 +0100 <Inst> I just want the ability to share the basic numeric operator symbols with a replacement, eventually a replacement that gets backed by GHC committees and phased in
2022-12-18 14:48:28 +0100 <geekosaur> this would require more than just overloading Num; it requires splitting Num up
2022-12-18 14:48:53 +0100 <Inst> well, yeah, that's what most plans for replacing Num look like, no?
2022-12-18 14:49:00 +0100 <geekosaur> I mean Num itself
2022-12-18 14:49:00 +0100 <Inst> get it to properly map a ring or something
2022-12-18 14:49:10 +0100 <sayola> at the very least reimplementing Num that is then based on a more generic class for these ops
2022-12-18 14:49:20 +0100 <geekosaur> (+) and (*) can no longer be part of the same typeclass
2022-12-18 14:49:28 +0100werneta(~werneta@70-142-214-115.lightspeed.irvnca.sbcglobal.net) (Ping timeout: 272 seconds)
2022-12-18 14:49:43 +0100 <Inst> which means dumping various Num methods elsewhere
2022-12-18 14:50:11 +0100 <Inst> come to think of it, why wasn't this considered during FAM transition?
2022-12-18 14:50:56 +0100 <sayola> i think its not that important, since you can still make more operators that are just one or two symbols longer, that do what you want.
2022-12-18 14:51:00 +0100razetime(~quassel@49.207.230.181)
2022-12-18 14:51:06 +0100 <Inst> operators are a mess, though
2022-12-18 14:51:16 +0100 <Inst> newbies get pissed off at all the $, <$>, >>=, etc
2022-12-18 14:51:31 +0100 <hpc> sayola: like (++) and (**), brilliant! :D
2022-12-18 14:51:47 +0100oopzzozzo(~Thunderbi@user/oopzzozzo)
2022-12-18 14:51:55 +0100 <Inst> which is the real argument for overloaded typeclasses, no? save the precious operator namespace
2022-12-18 14:53:13 +0100 <geekosaur[m]> I think newbies have bigger problems than you're suggesting with the various operators
2022-12-18 14:53:27 +0100 <sayola> tbh talking about new user experience, its probably better if Num and the ops stay as limited. its fairly complicated as is. generalizing makes it only worse.
2022-12-18 14:53:32 +0100 <geekosaur[m]> Specifically that it's not what they already know. They have to learn new stuff
2022-12-18 14:54:01 +0100 <Inst> I'm still not sure whether user-defined operators were a mistake
2022-12-18 14:54:41 +0100 <hpc> Inst: having the option to make my own is worth it imo
2022-12-18 14:54:41 +0100 <sayola> code would be a lot more verbose without them. i think that would be worse for understanding code.
2022-12-18 14:54:51 +0100 <Inst> shouldn't overloaded typeclasses have been discussed before?
2022-12-18 14:55:04 +0100 <Inst> tbh I sort of see operators as part of Haskell style
2022-12-18 14:55:06 +0100 <hpc> plenty of other languages have made much pettier features that are dependent on discipline for readability
2022-12-18 14:55:13 +0100acidjnk(~acidjnk@p200300d6e7137a3900a43338f23333fb.dip0.t-ipconnect.de) (Ping timeout: 260 seconds)
2022-12-18 14:55:22 +0100merijn(~merijn@86-86-29-250.fixed.kpn.net)
2022-12-18 14:55:23 +0100 <Inst> the language would be more lisp-like, not necessarily a good thing
2022-12-18 14:55:32 +0100 <Inst> without all the operators hanging around
2022-12-18 14:55:54 +0100 <hpc> i had a lisp class in college that broke the 9 key on my keyboard, never doing that again
2022-12-18 14:58:48 +0100unit73e(~emanuel@2001:818:e8dd:7c00:656:e5ff:fe72:9d36)
2022-12-18 14:59:25 +0100son0p(~ff@2604:3d08:5b7f:5540::417e) (Ping timeout: 260 seconds)
2022-12-18 14:59:26 +0100kenaryn(~aurele@89-88-44-27.abo.bbox.fr)
2022-12-18 15:02:04 +0100 <Inst> ahhh, is this the problem? I'm reading on Quora
2022-12-18 15:02:10 +0100 <Inst> or rather stack exchange
2022-12-18 15:02:24 +0100 <albet70> I have a cabal project, but I'd like to run two different files as Main.hs, how I set 'main-is' in my.cabal?
2022-12-18 15:02:26 +0100bitdex_(~bitdex@gateway/tor-sasl/bitdex) (Ping timeout: 255 seconds)
2022-12-18 15:02:45 +0100 <Inst> C++-style overloading results in exponential time or undecidable type inference :(
2022-12-18 15:03:14 +0100__monty__(~toonn@user/toonn)
2022-12-18 15:03:21 +0100 <hpc> albet70: you can define multiple executables
2022-12-18 15:03:24 +0100 <geekosaur> albet70, that usually means you want two executable sections, each with its own main-is:
2022-12-18 15:04:08 +0100xacktm(~xacktm@user/xacktm) (Ping timeout: 255 seconds)
2022-12-18 15:05:23 +0100bitdex_(~bitdex@gateway/tor-sasl/bitdex)
2022-12-18 15:05:48 +0100andreas303(andreas303@ip227.orange.bnc4free.com) (Ping timeout: 252 seconds)
2022-12-18 15:06:13 +0100 <albet70> hpc, geekosaur, but I run it with 'cabal v2-run my-project' which there is my-project/my-project.cabal, two sections in one cabal file, how I call it?
2022-12-18 15:07:27 +0100 <geekosaur> generally you just name the exe. if it's not enough, myproject:exe:sectionname
2022-12-18 15:09:53 +0100brandonh(brandonh@gateway/vpn/protonvpn/brandonh)
2022-12-18 15:10:25 +0100 <unit73e> cabal is often better understood by example imo
2022-12-18 15:10:44 +0100 <unit73e> I don't have a multi module multi exe lying around though
2022-12-18 15:12:41 +0100 <unit73e> wait, I actually do: https://gitlab.com/unit73e/sdl2-examples
2022-12-18 15:12:47 +0100 <unit73e> forgot I was working on this
2022-12-18 15:12:49 +0100 <unit73e> a long time ago
2022-12-18 15:13:09 +0100 <unit73e> albet70, in that example you would run 'cabal run <executable>'
2022-12-18 15:13:37 +0100 <albet70> unit73e , you're right, I just tested it
2022-12-18 15:14:44 +0100brandonh(brandonh@gateway/vpn/protonvpn/brandonh) (Client Quit)
2022-12-18 15:17:47 +0100brandonh(brandonh@gateway/vpn/protonvpn/brandonh)
2022-12-18 15:19:21 +0100brandonh(brandonh@gateway/vpn/protonvpn/brandonh) (Client Quit)
2022-12-18 15:22:51 +0100unit73e(~emanuel@2001:818:e8dd:7c00:656:e5ff:fe72:9d36) (Ping timeout: 260 seconds)
2022-12-18 15:27:45 +0100jinsun(~jinsun@user/jinsun) (Quit: No Ping reply in 180 seconds.)
2022-12-18 15:28:47 +0100freeside(~mengwong@213.86.11.74)
2022-12-18 15:29:42 +0100merijn(~merijn@86-86-29-250.fixed.kpn.net) (Ping timeout: 268 seconds)
2022-12-18 15:33:21 +0100tromp(~textual@92-110-219-57.cable.dynamic.v4.ziggo.nl)
2022-12-18 15:33:29 +0100andreas303(andreas303@ip227.orange.bnc4free.com)
2022-12-18 15:34:02 +0100jinsun(~jinsun@user/jinsun)
2022-12-18 15:36:04 +0100 <Inst> nice
2022-12-18 15:36:05 +0100 <Inst> https://www.reddit.com/r/haskell/comments/znzat4/type_class_subsets/
2022-12-18 15:41:23 +0100pagnol(~user@213-205-209-87.ftth.glasoperator.nl)
2022-12-18 15:42:49 +0100xacktm(~xacktm@user/xacktm)
2022-12-18 15:42:52 +0100burakcank(burakcank@has.arrived.and.is.ready-to.party) (Ping timeout: 256 seconds)
2022-12-18 15:47:08 +0100waleee(~waleee@2001:9b0:213:7200:cc36:a556:b1e8:b340) (Ping timeout: 260 seconds)
2022-12-18 15:57:14 +0100tok(~user@mobile-access-d98cd1-96.dhcp.inet.fi) (Ping timeout: 272 seconds)
2022-12-18 15:57:57 +0100tok(~user@mobile-access-d98cd1-96.dhcp.inet.fi)
2022-12-18 15:57:58 +0100acidjnk(~acidjnk@p200300d6e7137a39551177756a27c5e3.dip0.t-ipconnect.de)
2022-12-18 15:58:46 +0100 <pagnol> why do I get a syntax error if when I try to import Debug.Trace?
2022-12-18 15:59:43 +0100 <geekosaur[m]> Where did you put the import?
2022-12-18 16:01:29 +0100oopzzozzo(~Thunderbi@user/oopzzozzo) (Ping timeout: 260 seconds)
2022-12-18 16:02:04 +0100 <pagnol> among the other imports
2022-12-18 16:02:25 +0100 <pagnol> above the others and below the others with the same outcome
2022-12-18 16:02:50 +0100 <pagnol> weird, now it compiles
2022-12-18 16:04:13 +0100crazazy(~user@130.89.171.62) (Remote host closed the connection)
2022-12-18 16:04:26 +0100crazazy(~user@130.89.171.62)
2022-12-18 16:08:14 +0100__xor(~xor@74.215.182.83) (Read error: Connection reset by peer)
2022-12-18 16:09:02 +0100waleee(~waleee@2001:9b0:213:7200:cc36:a556:b1e8:b340)
2022-12-18 16:09:32 +0100burakcank(burakcank@has.arrived.and.is.ready-to.party)
2022-12-18 16:17:00 +0100beefbambi(~beefbambi@2401:4900:230d:f57c:538c:d7cc:50c0:e377) (Ping timeout: 260 seconds)
2022-12-18 16:17:38 +0100beefbambi(~beefbambi@2401:4900:230d:f57c:538c:d7cc:50c0:e377)
2022-12-18 16:20:30 +0100andreas303(andreas303@ip227.orange.bnc4free.com) (Quit: fBNC - https://bnc4free.com)
2022-12-18 16:21:36 +0100jero98772(~jero98772@2800:484:1d80:d8ce:efcc:cbb3:7f2a:6dff)
2022-12-18 16:21:49 +0100xacktm(~xacktm@user/xacktm) (Quit: fBNC - https://bnc4free.com)
2022-12-18 16:23:04 +0100gnalzo(~gnalzo@2a01:e0a:498:fd50:fcc6:bb5d:489a:ce8c)
2022-12-18 16:25:35 +0100Inst(~Inst@2601:6c4:4081:54f0:f11e:46df:c907:e40e) (Ping timeout: 255 seconds)
2022-12-18 16:25:53 +0100merijn(~merijn@86-86-29-250.fixed.kpn.net)
2022-12-18 16:31:22 +0100merijn(~merijn@86-86-29-250.fixed.kpn.net) (Ping timeout: 268 seconds)
2022-12-18 16:35:16 +0100__xor(~xor@74.215.182.83)
2022-12-18 16:41:55 +0100eggplantade(~Eggplanta@2600:1700:38c5:d800:6111:8f0f:4f2:4e8d)
2022-12-18 16:44:04 +0100bontaq(~user@ool-45779fe5.dyn.optonline.net) (Ping timeout: 260 seconds)
2022-12-18 16:44:19 +0100Kaiepi(~Kaiepi@108.175.84.104) (Ping timeout: 268 seconds)
2022-12-18 16:46:10 +0100eggplantade(~Eggplanta@2600:1700:38c5:d800:6111:8f0f:4f2:4e8d) (Ping timeout: 260 seconds)
2022-12-18 16:46:39 +0100malte(~malte@mal.tc) (Remote host closed the connection)
2022-12-18 16:47:41 +0100malte(~malte@mal.tc)
2022-12-18 16:57:19 +0100jinsun(~jinsun@user/jinsun) (Ping timeout: 252 seconds)
2022-12-18 16:57:36 +0100jinsun(~jinsun@user/jinsun)
2022-12-18 16:57:56 +0100Kaiepi(~Kaiepi@108.175.84.104)
2022-12-18 16:59:50 +0100Red_Swan(~jared@174-23-134-43.slkc.qwest.net) (Ping timeout: 252 seconds)
2022-12-18 17:00:55 +0100rnat(uid73555@id-73555.lymington.irccloud.com)
2022-12-18 17:01:36 +0100malte(~malte@mal.tc) (Remote host closed the connection)
2022-12-18 17:02:31 +0100troydm(~troydm@host-176-37-124-197.b025.la.net.ua)
2022-12-18 17:02:40 +0100malte(~malte@mal.tc)
2022-12-18 17:07:32 +0100waleee(~waleee@2001:9b0:213:7200:cc36:a556:b1e8:b340) (Ping timeout: 252 seconds)
2022-12-18 17:07:35 +0100son0p(~ff@2604:3d08:5b7f:5540:98a9:2169:15a1:4c7f)
2022-12-18 17:16:32 +0100sayola1(~sayola@dslb-088-064-186-217.088.064.pools.vodafone-ip.de)
2022-12-18 17:18:56 +0100sayola(~sayola@dslb-088-064-186-217.088.064.pools.vodafone-ip.de) (Ping timeout: 272 seconds)
2022-12-18 17:24:08 +0100ddellacosta(~ddellacos@143.244.47.88)
2022-12-18 17:27:49 +0100wroathe(~wroathe@207-153-38-140.fttp.usinternet.com)
2022-12-18 17:27:49 +0100wroathe(~wroathe@207-153-38-140.fttp.usinternet.com) (Changing host)
2022-12-18 17:27:49 +0100wroathe(~wroathe@user/wroathe)
2022-12-18 17:28:38 +0100merijn(~merijn@86-86-29-250.fixed.kpn.net)
2022-12-18 17:34:16 +0100andreas303(andreas303@ip227.orange.bnc4free.com)
2022-12-18 17:37:05 +0100xacktm(~xacktm@user/xacktm)
2022-12-18 17:37:16 +0100eggplantade(~Eggplanta@2600:1700:38c5:d800:6111:8f0f:4f2:4e8d)
2022-12-18 17:42:56 +0100fserucas(~fserucas@2001:818:e376:a400:fb92:70c1:dd88:c7d7)
2022-12-18 17:45:22 +0100machinedgod(~machinedg@d198-53-218-113.abhsia.telus.net)
2022-12-18 17:45:40 +0100son0p(~ff@2604:3d08:5b7f:5540:98a9:2169:15a1:4c7f) (Ping timeout: 252 seconds)
2022-12-18 17:47:35 +0100acidjnk(~acidjnk@p200300d6e7137a39551177756a27c5e3.dip0.t-ipconnect.de) (Ping timeout: 252 seconds)
2022-12-18 17:48:04 +0100takuan(~takuan@178-116-218-225.access.telenet.be) (Ping timeout: 272 seconds)
2022-12-18 17:49:47 +0100aeroplane(~user@user/aeroplane)
2022-12-18 17:58:54 +0100chexum(~quassel@gateway/tor-sasl/chexum) (Quit: No Ping reply in 180 seconds.)
2022-12-18 18:00:30 +0100chexum(~quassel@gateway/tor-sasl/chexum)
2022-12-18 18:01:22 +0100merijn(~merijn@86-86-29-250.fixed.kpn.net) (Ping timeout: 272 seconds)
2022-12-18 18:02:20 +0100Kaiepi(~Kaiepi@108.175.84.104) (Ping timeout: 255 seconds)
2022-12-18 18:03:13 +0100takuan(~takuan@178-116-218-225.access.telenet.be)
2022-12-18 18:05:52 +0100razetime(~quassel@49.207.230.181) (Remote host closed the connection)
2022-12-18 18:09:46 +0100jao(~jao@cpc103048-sgyl39-2-0-cust502.18-2.cable.virginm.net)
2022-12-18 18:19:33 +0100wroathe(~wroathe@user/wroathe) (Quit: Lost terminal)
2022-12-18 18:33:17 +0100morb(~morb@pool-72-80-94-112.nycmny.fios.verizon.net)
2022-12-18 18:34:15 +0100nek0(~nek0@2a01:4f8:222:2b41::12)
2022-12-18 18:34:26 +0100eggplantade(~Eggplanta@2600:1700:38c5:d800:6111:8f0f:4f2:4e8d) (Remote host closed the connection)
2022-12-18 18:36:40 +0100harveypwca(~harveypwc@2601:246:c180:a570:3828:d8:e523:3f67)
2022-12-18 18:37:27 +0100ddellacosta(~ddellacos@143.244.47.88) (Ping timeout: 260 seconds)
2022-12-18 18:37:47 +0100freeside(~mengwong@213.86.11.74) (Ping timeout: 256 seconds)
2022-12-18 18:40:45 +0100yuribarros(~yuribarro@2804:14c:65e4:865c::1000)
2022-12-18 18:45:43 +0100morb(~morb@pool-72-80-94-112.nycmny.fios.verizon.net) (Ping timeout: 256 seconds)
2022-12-18 18:47:20 +0100pie__(~pie_bnc@user/pie/x-2818909) ()
2022-12-18 18:47:47 +0100pie_(~pie_bnc@user/pie/x-2818909)
2022-12-18 18:48:34 +0100pie_(~pie_bnc@user/pie/x-2818909) (Client Quit)
2022-12-18 18:51:55 +0100econo(uid147250@user/econo)
2022-12-18 18:55:06 +0100pie_(~pie_bnc@user/pie/x-2818909)
2022-12-18 18:56:08 +0100Kaiepi(~Kaiepi@108.175.84.104)
2022-12-18 18:56:52 +0100tromp(~textual@92-110-219-57.cable.dynamic.v4.ziggo.nl) (Quit: My iMac has gone to sleep. ZZZzzz…)
2022-12-18 18:57:29 +0100merijn(~merijn@86-86-29-250.fixed.kpn.net)
2022-12-18 18:57:52 +0100ddellacosta(~ddellacos@86.106.143.155)
2022-12-18 19:01:08 +0100tok(~user@mobile-access-d98cd1-96.dhcp.inet.fi) (ERC 5.4 (IRC client for GNU Emacs 28.2))
2022-12-18 19:01:53 +0100tromp(~textual@92-110-219-57.cable.dynamic.v4.ziggo.nl)
2022-12-18 19:02:19 +0100merijn(~merijn@86-86-29-250.fixed.kpn.net) (Ping timeout: 260 seconds)
2022-12-18 19:02:58 +0100Everything(~Everythin@37.115.210.35)
2022-12-18 19:13:58 +0100tromp(~textual@92-110-219-57.cable.dynamic.v4.ziggo.nl) (Quit: My iMac has gone to sleep. ZZZzzz…)
2022-12-18 19:15:02 +0100tzh(~tzh@c-24-21-73-154.hsd1.or.comcast.net)
2022-12-18 19:15:41 +0100califax(~califax@user/califx) (Remote host closed the connection)
2022-12-18 19:16:47 +0100califax(~califax@user/califx)
2022-12-18 19:23:18 +0100andreas303(andreas303@ip227.orange.bnc4free.com) (Quit: fBNC - https://bnc4free.com)
2022-12-18 19:23:18 +0100xacktm(~xacktm@user/xacktm) (Quit: fBNC - https://bnc4free.com)
2022-12-18 19:26:07 +0100dfip^(~dfip@76.145.185.103)
2022-12-18 19:32:07 +0100tromp(~textual@92-110-219-57.cable.dynamic.v4.ziggo.nl)
2022-12-18 19:34:57 +0100eggplantade(~Eggplanta@2600:1700:38c5:d800:6111:8f0f:4f2:4e8d)
2022-12-18 19:37:42 +0100AkechiShiro(~licht@user/akechishiro) (Quit: WeeChat 3.7.1)
2022-12-18 19:39:34 +0100eggplantade(~Eggplanta@2600:1700:38c5:d800:6111:8f0f:4f2:4e8d) (Ping timeout: 252 seconds)
2022-12-18 19:39:43 +0100harveypwca(~harveypwc@2601:246:c180:a570:3828:d8:e523:3f67) (Quit: Leaving)
2022-12-18 19:44:58 +0100wootehfoot(~wootehfoo@user/wootehfoot)
2022-12-18 19:47:22 +0100phma(~phma@host-67-44-208-107.hnremote.net) (Read error: Connection reset by peer)
2022-12-18 19:48:17 +0100phma(phma@2001:5b0:212a:e338:ae0d:e356:1f10:5820)
2022-12-18 19:55:48 +0100son0p(~ff@2604:3d08:5b7f:5540::417e)
2022-12-18 19:58:00 +0100merijn(~merijn@86-86-29-250.fixed.kpn.net)
2022-12-18 20:03:23 +0100ddellacosta(~ddellacos@86.106.143.155) (Ping timeout: 255 seconds)
2022-12-18 20:05:12 +0100ddellacosta(~ddellacos@143.244.47.88)
2022-12-18 20:06:10 +0100crazazy`(~user@130.89.173.127)
2022-12-18 20:07:37 +0100Luj3(~Luj@2a01:e0a:5f9:9681:5880:c9ff:fe9f:3dfb) (Ping timeout: 252 seconds)
2022-12-18 20:08:26 +0100crazazy(~user@130.89.171.62) (Ping timeout: 268 seconds)
2022-12-18 20:09:48 +0100tromp(~textual@92-110-219-57.cable.dynamic.v4.ziggo.nl) (Quit: My iMac has gone to sleep. ZZZzzz…)
2022-12-18 20:10:19 +0100son0p(~ff@2604:3d08:5b7f:5540::417e) (Ping timeout: 260 seconds)
2022-12-18 20:10:49 +0100perrierjouet(~perrier-j@modemcable048.127-56-74.mc.videotron.ca) (Quit: WeeChat 3.7.1)
2022-12-18 20:10:58 +0100werneta(~werneta@70-142-214-115.lightspeed.irvnca.sbcglobal.net)
2022-12-18 20:11:31 +0100Raito_Bezarius(~Raito@wireguard/tunneler/raito-bezarius) (Ping timeout: 268 seconds)
2022-12-18 20:15:02 +0100jakalx(~jakalx@base.jakalx.net) ()
2022-12-18 20:16:54 +0100jakalx(~jakalx@base.jakalx.net)
2022-12-18 20:20:50 +0100crazazy``(~user@130.89.171.62)
2022-12-18 20:22:44 +0100crazazy`(~user@130.89.173.127) (Ping timeout: 255 seconds)
2022-12-18 20:25:19 +0100tromp(~textual@92-110-219-57.cable.dynamic.v4.ziggo.nl)
2022-12-18 20:29:28 +0100aeroplane(~user@user/aeroplane) (Ping timeout: 260 seconds)
2022-12-18 20:30:06 +0100iqubic(~avi@2601:601:1100:edd0:23b0:d602:1b3e:8cff) (Remote host closed the connection)
2022-12-18 20:32:02 +0100eggplantade(~Eggplanta@2600:1700:38c5:d800:6111:8f0f:4f2:4e8d)
2022-12-18 20:32:29 +0100merijn(~merijn@86-86-29-250.fixed.kpn.net) (Ping timeout: 268 seconds)
2022-12-18 20:39:36 +0100tromp(~textual@92-110-219-57.cable.dynamic.v4.ziggo.nl) (Quit: My iMac has gone to sleep. ZZZzzz…)
2022-12-18 20:40:32 +0100Me-me(~Me-me@146.102.215.218.dyn.iprimus.net.au)
2022-12-18 20:48:12 +0100Sgeo(~Sgeo@user/sgeo)
2022-12-18 20:49:45 +0100pagnol(~user@213-205-209-87.ftth.glasoperator.nl) (Ping timeout: 255 seconds)
2022-12-18 20:55:29 +0100buzzzzie(~buzzzzie@ip-217-103-153-253.ip.prioritytelecom.net)
2022-12-18 20:58:21 +0100tromp(~textual@92-110-219-57.cable.dynamic.v4.ziggo.nl)
2022-12-18 21:00:34 +0100morb(~morb@pool-72-80-94-112.nycmny.fios.verizon.net)
2022-12-18 21:01:47 +0100wroathe(~wroathe@50.205.197.50)
2022-12-18 21:01:47 +0100wroathe(~wroathe@50.205.197.50) (Changing host)
2022-12-18 21:01:47 +0100wroathe(~wroathe@user/wroathe)
2022-12-18 21:04:18 +0100eggplantade(~Eggplanta@2600:1700:38c5:d800:6111:8f0f:4f2:4e8d) (Remote host closed the connection)
2022-12-18 21:04:33 +0100buzzzzie(~buzzzzie@ip-217-103-153-253.ip.prioritytelecom.net) (Quit: Client closed)
2022-12-18 21:07:42 +0100fizbin(~fizbin@user/fizbin) (Ping timeout: 252 seconds)
2022-12-18 21:10:56 +0100tromp(~textual@92-110-219-57.cable.dynamic.v4.ziggo.nl) (Quit: My iMac has gone to sleep. ZZZzzz…)
2022-12-18 21:16:08 +0100beefbambi(~beefbambi@2401:4900:230d:f57c:538c:d7cc:50c0:e377) (Read error: Connection reset by peer)
2022-12-18 21:16:25 +0100beefbambi(~beefbambi@183.82.30.144)
2022-12-18 21:19:29 +0100rnat(uid73555@id-73555.lymington.irccloud.com) (Quit: Connection closed for inactivity)
2022-12-18 21:22:15 +0100tromp(~textual@92-110-219-57.cable.dynamic.v4.ziggo.nl)
2022-12-18 21:24:16 +0100perrierjouet(~perrier-j@modemcable048.127-56-74.mc.videotron.ca)
2022-12-18 21:26:33 +0100 <sayola1> what type do you guys use for a Writer monad, typically?
2022-12-18 21:28:33 +0100merijn(~merijn@86-86-29-250.fixed.kpn.net)
2022-12-18 21:32:20 +0100eggplantade(~Eggplanta@2600:1700:38c5:d800:6111:8f0f:4f2:4e8d)
2022-12-18 21:33:48 +0100 <EvanR> other than Writer?
2022-12-18 21:35:32 +0100 <monochrom> Perhaps you mean in "Writer Foo" what we use for Foo.
2022-12-18 21:35:54 +0100 <sayola1> yep. i mean what type that is a monoid for w in WriterT w m a
2022-12-18 21:36:03 +0100 <monochrom> When I'm lazy and it's unimportant I use a list. When it gets more serious I use Endo.
2022-12-18 21:36:35 +0100 <monochrom> Or any data type that has efficient append-one-element.
2022-12-18 21:37:17 +0100 <monochrom> Data.Sequence may be OK.
2022-12-18 21:37:22 +0100 <sayola1> yeah was wondering what would fit and is simple.
2022-12-18 21:37:28 +0100 <EvanR> it depends what you're trying to do, monochrom is answering what to use for logging it sounds like
2022-12-18 21:37:37 +0100 <EvanR> which Writer sucks at
2022-12-18 21:37:46 +0100 <sayola1> it sucks?
2022-12-18 21:37:51 +0100andreas303(andreas303@ip227.orange.bnc4free.com)
2022-12-18 21:38:05 +0100 <c_wraith> sort of, yeah. a good logger gets things onto disk as fast as possible
2022-12-18 21:38:26 +0100 <c_wraith> Writer accumulates things and completes (or fails) the whole computation before logging anything
2022-12-18 21:38:27 +0100 <sayola1> i just thought about using RWST for a thing and thought i should probably log anything too, without knowing yet whether and how much i need to
2022-12-18 21:38:42 +0100 <EvanR> I discovered the XY problem! xD
2022-12-18 21:38:48 +0100 <int-e> Endo [a] is convenient enough for me. (You can use dlist if you don't like the `tell (Endo (x:))` syntax.)
2022-12-18 21:39:04 +0100xacktm(~xacktm@user/xacktm)
2022-12-18 21:39:16 +0100 <c_wraith> RST would be a lot more useful than RWST is
2022-12-18 21:39:36 +0100tromp(~textual@92-110-219-57.cable.dynamic.v4.ziggo.nl) (Quit: My iMac has gone to sleep. ZZZzzz…)
2022-12-18 21:39:59 +0100 <int-e> Ah. Picking between Writer / RWST... well, it depends on whether I think I'll need the reader or state components.
2022-12-18 21:40:32 +0100 <int-e> I do prefer RWST over stacking more than one of Reader, Writer, or State.
2022-12-18 21:41:00 +0100 <int-e> (err, ReaderT, WriterT, or StateT)
2022-12-18 21:42:24 +0100wroathe(~wroathe@user/wroathe) (Ping timeout: 272 seconds)
2022-12-18 21:42:28 +0100 <sayola1> i only learned yesterday about Endo as a type, ironically.
2022-12-18 21:43:52 +0100trev(~trev@user/trev) (Remote host closed the connection)
2022-12-18 21:43:54 +0100gabiruh_gabiruh
2022-12-18 21:45:18 +0100wroathe(~wroathe@50.205.197.50)
2022-12-18 21:45:18 +0100wroathe(~wroathe@50.205.197.50) (Changing host)
2022-12-18 21:45:18 +0100wroathe(~wroathe@user/wroathe)
2022-12-18 21:47:24 +0100 <int-e> c_wraith: FWIW, I've used the W component quite a bit in a couple of assembly-like DSLs; in that design, the reader is usually unused, the state tracks labels, and the writer collects generated code. And there's an mfix somewhere to tie the labels into a know so that they can be used before the label's declaration.
2022-12-18 21:47:45 +0100 <int-e> know -> knot
2022-12-18 21:49:02 +0100 <int-e> and EDSL, more specifically
2022-12-18 21:50:48 +0100wroathe(~wroathe@user/wroathe) (Ping timeout: 268 seconds)
2022-12-18 21:52:20 +0100tromp(~textual@92-110-219-57.cable.dynamic.v4.ziggo.nl)
2022-12-18 21:52:59 +0100coot(~coot@2a02:a310:e241:1b00:ec1a:e9df:79ac:66ba) (Quit: coot)
2022-12-18 21:53:42 +0100 <EvanR> yeah [(Int,String)] merging monoid
2022-12-18 21:54:47 +0100acarrico(~acarrico@dhcp-68-142-49-34.greenmountainaccess.net)
2022-12-18 21:54:50 +0100morb(~morb@pool-72-80-94-112.nycmny.fios.verizon.net) (Remote host closed the connection)
2022-12-18 21:55:19 +0100dfip^(~dfip@76.145.185.103) (Remote host closed the connection)
2022-12-18 21:55:35 +0100Raito_Bezarius(~Raito@wireguard/tunneler/raito-bezarius)
2022-12-18 21:56:17 +0100morb(~morb@pool-72-80-94-112.nycmny.fios.verizon.net)
2022-12-18 21:57:38 +0100beefbambi(~beefbambi@183.82.30.144) (Read error: Connection reset by peer)
2022-12-18 21:58:12 +0100beefbambi(~beefbambi@2401:4900:230d:f57c:538c:d7cc:50c0:e377)
2022-12-18 22:00:09 +0100beefbambi(~beefbambi@2401:4900:230d:f57c:538c:d7cc:50c0:e377) (Read error: Connection reset by peer)
2022-12-18 22:00:26 +0100beefbambi(~beefbambi@183.82.30.144)
2022-12-18 22:01:59 +0100lottaquestions(~nick@2607:fa49:503e:7100:83b1:b98a:c83f:3b94) (Remote host closed the connection)
2022-12-18 22:02:26 +0100lottaquestions(~nick@2607:fa49:503e:7100:3634:992e:e32f:8e6c)
2022-12-18 22:03:09 +0100merijn(~merijn@86-86-29-250.fixed.kpn.net) (Ping timeout: 260 seconds)
2022-12-18 22:03:26 +0100morb(~morb@pool-72-80-94-112.nycmny.fios.verizon.net) (Remote host closed the connection)
2022-12-18 22:03:53 +0100beefbambi(~beefbambi@183.82.30.144) (Read error: Connection reset by peer)
2022-12-18 22:04:37 +0100beefbambi(~beefbambi@183.82.30.144)
2022-12-18 22:06:32 +0100dsrt^(~dsrt@76.145.185.103)
2022-12-18 22:06:33 +0100beefbambi(~beefbambi@183.82.30.144) (Read error: Connection reset by peer)
2022-12-18 22:06:53 +0100beefbambi(~beefbambi@2401:4900:230d:f57c:538c:d7cc:50c0:e377)
2022-12-18 22:09:41 +0100tromp(~textual@92-110-219-57.cable.dynamic.v4.ziggo.nl) (Quit: My iMac has gone to sleep. ZZZzzz…)
2022-12-18 22:11:31 +0100Inst(~Inst@2601:6c4:4081:54f0:38bc:71f6:776d:9675)
2022-12-18 22:16:49 +0100beefbambi(~beefbambi@2401:4900:230d:f57c:538c:d7cc:50c0:e377) (Read error: Connection reset by peer)
2022-12-18 22:17:13 +0100beefbambi(~beefbambi@183.82.30.144)
2022-12-18 22:18:03 +0100acidjnk(~acidjnk@p200300d6e7137a394052686d931fefc2.dip0.t-ipconnect.de)
2022-12-18 22:18:50 +0100tromp(~textual@92-110-219-57.cable.dynamic.v4.ziggo.nl)
2022-12-18 22:19:58 +0100son0p(~ff@2604:3d08:5b7f:5540::417e)
2022-12-18 22:23:14 +0100Everything(~Everythin@37.115.210.35) (Quit: leaving)
2022-12-18 22:23:22 +0100 <sayola1> hmh i compared list vs endo in a simple test in performance and endo was not faster.
2022-12-18 22:26:08 +0100azimut(~azimut@gateway/tor-sasl/azimut) (Ping timeout: 255 seconds)
2022-12-18 22:26:12 +0100morb(~morb@pool-72-80-94-112.nycmny.fios.verizon.net)
2022-12-18 22:30:13 +0100Luj3(~Luj@2a01:e0a:5f9:9681:3ebd:6349:a3e:563d)
2022-12-18 22:31:50 +0100ardell(~ardell@user/ardell)
2022-12-18 22:32:09 +0100tromp(~textual@92-110-219-57.cable.dynamic.v4.ziggo.nl) (Quit: My iMac has gone to sleep. ZZZzzz…)
2022-12-18 22:38:26 +0100ardell(~ardell@user/ardell) (Quit: Konversation terminated!)
2022-12-18 22:39:46 +0100 <EvanR> for repeatedly appending to the end of a list and finally processing from the beginning, I haven't been able to get an argument for why Endo (or diff list) would be much better (at all better?)
2022-12-18 22:40:19 +0100 <EvanR> diff list seems to win if you are combining strings in random ways like document formatting
2022-12-18 22:41:25 +0100Patternmaster(~georg@user/Patternmaster) (Ping timeout: 260 seconds)
2022-12-18 22:43:52 +0100bjobjo(~bjobjo@user/bjobjo) (Quit: leaving)
2022-12-18 22:43:53 +0100 <EvanR> cons cons cons finally reverse, vs ([x] ++) . ([x] ++) . ([x] ++) and finally apply []. Both build up N somethings until you're ready to consume the stream
2022-12-18 22:44:23 +0100 <sayola1> i fail to reason how ghc optimizes things. imo Endo would be faster, but ghc does things and then a list is just good enough.
2022-12-18 22:44:40 +0100 <EvanR> why would Endo be faster?
2022-12-18 22:46:09 +0100 <sayola1> endo isnt appending like ++ to an end, but maintains an incomplete list ending to which to append in O(1) afaik.
2022-12-18 22:46:19 +0100 <EvanR> oh definitely don't do xs ++ [x]
2022-12-18 22:46:53 +0100fizbin(~fizbin@user/fizbin)
2022-12-18 22:47:21 +0100 <EvanR> yeah f . ([x] ++) is O(1). But converting the chain of . into a normal list is not
2022-12-18 22:49:32 +0100 <geekosaur> but if it can avoid repeatedly re-traversing then it's O(n) instead of O(n*m) where m is the number of segments
2022-12-18 22:49:47 +0100 <geekosaur> sadly I'n to tired to figure if it actually does that
2022-12-18 22:49:53 +0100 <geekosaur> *I'm
2022-12-18 22:49:55 +0100 <EvanR> yes xs ++ [x] is extra bad
2022-12-18 22:50:08 +0100johnw(~johnw@2600:1700:cf00:db0:6524:1c2a:8eda:bee4) (Quit: ZNC - http://znc.in)
2022-12-18 22:50:12 +0100 <EvanR> but O(n) results in a tie with "just reverse a backward list in the end"
2022-12-18 22:50:28 +0100 <sayola1> solving the chain is optimized by ghc it seems
2022-12-18 22:51:16 +0100wootehfoot(~wootehfoo@user/wootehfoot) (Read error: Connection reset by peer)
2022-12-18 22:51:16 +0100 <EvanR> stories we tell ourselves xD
2022-12-18 22:53:19 +0100morb(~morb@pool-72-80-94-112.nycmny.fios.verizon.net) (Remote host closed the connection)
2022-12-18 22:54:13 +0100tromp(~textual@92-110-219-57.cable.dynamic.v4.ziggo.nl)
2022-12-18 22:54:26 +0100 <sayola1> i suck at testing, but thats what worked for me yesterday. i compared `f . (x:)` append vs front add and reverse.
2022-12-18 22:55:21 +0100 <EvanR> sayola1, I support your first observation. I've compared just cons to a backward list and reverse at the end, vs endo list builder (for this specific purpose only, not stuff like blaze), and the dumb backward list was faster
2022-12-18 22:57:06 +0100gmg(~user@user/gehmehgeh) (Quit: Leaving)
2022-12-18 22:57:40 +0100takuan(~takuan@178-116-218-225.access.telenet.be) (Quit: Lost terminal)
2022-12-18 22:57:53 +0100morb(~morb@pool-72-80-94-112.nycmny.fios.verizon.net)
2022-12-18 22:59:03 +0100merijn(~merijn@86-86-29-250.fixed.kpn.net)
2022-12-18 23:00:40 +0100 <sayola1> welp
2022-12-18 23:01:59 +0100j4cc3b(~j4cc3b@pool-74-105-2-138.nwrknj.fios.verizon.net)
2022-12-18 23:03:15 +0100morb(~morb@pool-72-80-94-112.nycmny.fios.verizon.net) (Remote host closed the connection)
2022-12-18 23:06:15 +0100morb(~morb@pool-72-80-94-112.nycmny.fios.verizon.net)
2022-12-18 23:06:43 +0100 <j4cc3b> I have been using advent of code to learn haskell. I am hard stuck on Day 7. I have parsed the input into a list of different options, but do not know of a haskell way to proceed.
2022-12-18 23:07:17 +0100 <j4cc3b> In another language, i would make a loop and keep the complete path string in a local variable to the loop that i could adjust when the dir is changed, or files are listed
2022-12-18 23:07:42 +0100 <j4cc3b> any pointers or concepts I should look into?
2022-12-18 23:08:07 +0100 <j4cc3b> my (limited) intuition tells me I should make some sort of function that I can fold over my list of parsed inputs
2022-12-18 23:08:33 +0100 <j4cc3b> but i dont know how to do that with stateful things, like the current path name and size of the directories
2022-12-18 23:09:11 +0100 <EvanR> I just made a Map of path to contents
2022-12-18 23:09:25 +0100goober(~goober@90-231-13-185-no3430.tbcn.telia.com) (Remote host closed the connection)
2022-12-18 23:09:48 +0100 <EvanR> you could also iteratively build a filesystem tree procedurally using a zipper, if you wanna get fancy
2022-12-18 23:09:52 +0100 <j4cc3b> I haven't used map yet in haskell. How did you build a map out of the parsed inputs? just a self made recursive function?
2022-12-18 23:10:08 +0100 <sayola1> i used a recursive function with the current path state as a function argument
2022-12-18 23:10:25 +0100 <j4cc3b> i should be clearer. I haven't used Data.Map yet, not to be confused with regular map
2022-12-18 23:10:45 +0100 <j4cc3b> okay. I'll try reading into Data.Map more. Thanks!
2022-12-18 23:10:54 +0100 <dsal> I made a foldable structure `data Tree a = Tree { files :: a, subs :: Map String (Tree a) }` and then parsed it into a `Tree (Sum Int)`
2022-12-18 23:10:57 +0100morb(~morb@pool-72-80-94-112.nycmny.fios.verizon.net) (Remote host closed the connection)
2022-12-18 23:11:05 +0100 <EvanR> I foldl' over the commands
2022-12-18 23:11:24 +0100 <EvanR> the path base and the Map are in the accumulator
2022-12-18 23:12:42 +0100 <j4cc3b> wait, how did you place both the path and the whole Map into the accumulator?
2022-12-18 23:12:54 +0100 <sayola1> two accumulators
2022-12-18 23:12:57 +0100 <EvanR> a tuple with 2 components
2022-12-18 23:13:02 +0100 <j4cc3b> OH SHIT
2022-12-18 23:13:18 +0100 <j4cc3b> I never considered tuples as an accumulator
2022-12-18 23:13:21 +0100 <j4cc3b> this is life changing
2022-12-18 23:13:24 +0100 <EvanR> ikr
2022-12-18 23:14:02 +0100blades(~blades@204.48.29.163) (Quit: bye)
2022-12-18 23:14:08 +0100 <j4cc3b> similar thinking: I can use a tuple anywhere a type signature has a generic like `a` or `b`?
2022-12-18 23:14:35 +0100 <EvanR> implicitly, a or b is "any type"
2022-12-18 23:14:42 +0100 <EvanR> and if c, d are types, (c,d) is a type
2022-12-18 23:14:56 +0100 <j4cc3b> but a could be (c,d), right?
2022-12-18 23:14:59 +0100 <dsal> :t id
2022-12-18 23:15:00 +0100 <lambdabot> a -> a
2022-12-18 23:15:01 +0100 <EvanR> yeah
2022-12-18 23:15:04 +0100 <dsal> > id (1,2)
2022-12-18 23:15:06 +0100 <lambdabot> (1,2)
2022-12-18 23:15:08 +0100 <j4cc3b> i've never made this connection before. Wow, thanks a lot
2022-12-18 23:18:59 +0100dixie(~dixie@real.wilbury.sk) (Ping timeout: 260 seconds)
2022-12-18 23:19:34 +0100TonyStone(~TonyStone@cpe-74-76-57-186.nycap.res.rr.com) (Ping timeout: 252 seconds)
2022-12-18 23:22:19 +0100TonyStone(~TonyStone@cpe-74-76-57-186.nycap.res.rr.com)
2022-12-18 23:22:32 +0100 <dsal> j4cc3b: in the example above, `a -> a` means there's no type the function can refuse. But also, there's not much it can do.
2022-12-18 23:22:42 +0100bjobjo(~bjobjo@user/bjobjo)
2022-12-18 23:23:18 +0100j4cc3b(~j4cc3b@pool-74-105-2-138.nwrknj.fios.verizon.net) (Ping timeout: 260 seconds)
2022-12-18 23:32:13 +0100perrierjouet(~perrier-j@modemcable048.127-56-74.mc.videotron.ca) (Quit: WeeChat 3.7.1)
2022-12-18 23:33:19 +0100merijn(~merijn@86-86-29-250.fixed.kpn.net) (Ping timeout: 260 seconds)
2022-12-18 23:34:50 +0100yuribarros(~yuribarro@2804:14c:65e4:865c::1000) (Ping timeout: 265 seconds)
2022-12-18 23:35:16 +0100perrierjouet(~perrier-j@modemcable048.127-56-74.mc.videotron.ca)
2022-12-18 23:36:24 +0100bontaq(~user@ool-45779fe5.dyn.optonline.net)
2022-12-18 23:38:06 +0100paulpaul1076(~textual@95-29-5-111.broadband.corbina.ru) (Quit: My MacBook has gone to sleep. ZZZzzz…)
2022-12-18 23:38:56 +0100yuribarros(~yuribarro@2804:14c:65e4:865c::1000)
2022-12-18 23:39:17 +0100 <EvanR> I'm here to make you a type that you can't refuse
2022-12-18 23:39:27 +0100TonyStone(~TonyStone@cpe-74-76-57-186.nycap.res.rr.com) (Quit: Leaving)
2022-12-18 23:39:51 +0100morb(~morb@pool-72-80-94-112.nycmny.fios.verizon.net)
2022-12-18 23:40:04 +0100paulpaul1076(~textual@95-29-5-111.broadband.corbina.ru)
2022-12-18 23:42:18 +0100 <geekosaur> isn't that more like `undefined :: a`?
2022-12-18 23:42:19 +0100fizbin(~fizbin@user/fizbin) (Ping timeout: 260 seconds)
2022-12-18 23:42:44 +0100adium(adium@user/adium) (Ping timeout: 272 seconds)
2022-12-18 23:44:38 +0100morb(~morb@pool-72-80-94-112.nycmny.fios.verizon.net) (Ping timeout: 272 seconds)
2022-12-18 23:44:55 +0100paulpaul1076(~textual@95-29-5-111.broadband.corbina.ru) (Ping timeout: 256 seconds)
2022-12-18 23:46:05 +0100adium(adium@user/adium)
2022-12-18 23:46:16 +0100gnalzo(~gnalzo@2a01:e0a:498:fd50:fcc6:bb5d:489a:ce8c) (Quit: WeeChat 3.7.1)
2022-12-18 23:47:02 +0100Patternmaster(~georg@user/Patternmaster)
2022-12-18 23:47:16 +0100 <Inst> can someone explain endofunctors to me in the legendary / infamous "Monads are just a monoid in the category of monads?"
2022-12-18 23:47:39 +0100 <Inst> erm, category of endofunctors, not category of monads
2022-12-18 23:47:45 +0100 <EvanR> do you know what a regular functor is, between two categories C -> D
2022-12-18 23:47:55 +0100 <Inst> what is the category being discussed?
2022-12-18 23:48:04 +0100 <EvanR> C and D are any two categories
2022-12-18 23:48:05 +0100 <Inst> I have a working understanding of monads, i.e, they're eta and mu
2022-12-18 23:48:12 +0100 <Inst> endofunctor is C -> C
2022-12-18 23:48:17 +0100 <EvanR> there you go
2022-12-18 23:48:26 +0100 <Inst> but what's C?
2022-12-18 23:48:50 +0100 <Inst> it's considered a monoid because eta / mu, or join / pure form a monad by cancelling each other out to form an identity element
2022-12-18 23:48:56 +0100 <Inst> and join is associative
2022-12-18 23:49:03 +0100 <EvanR> it could be anything, e.g. Hask
2022-12-18 23:49:13 +0100 <Inst> in a Haskell context, it's hask
2022-12-18 23:49:24 +0100 <Inst> I've had people tell me Hask is not a category due to the presence of undefined / bottom
2022-12-18 23:49:31 +0100 <EvanR> it's fine
2022-12-18 23:49:44 +0100 <Inst> and other people tell me that the Hask is not a category folks are wrong
2022-12-18 23:50:14 +0100 <EvanR> the quote you gave doesn't have much to do with haskell
2022-12-18 23:50:26 +0100 <EvanR> so you don't even have to figure that part out xD
2022-12-18 23:50:32 +0100 <Inst> also, the problem with monads is that we are unclear as to what we're referring to when we say monads, i.e, monadic patterned programming, monadic types, monad typeclass, cat theory monads
2022-12-18 23:50:39 +0100 <Inst> also leibniz and greeks
2022-12-18 23:51:05 +0100 <EvanR> also there's a cosmic entity in D&D called the monad or something
2022-12-18 23:51:31 +0100perrierjouet(~perrier-j@modemcable048.127-56-74.mc.videotron.ca) (Quit: WeeChat 3.7.1)
2022-12-18 23:51:32 +0100 <Inst> for instance, if we say, promises are a monad (iirc, do they fail left identity or right identity), we seem to be discussing monadic patterened programming, but not a monadic type
2022-12-18 23:51:33 +0100bitdex_(~bitdex@gateway/tor-sasl/bitdex) (Remote host closed the connection)
2022-12-18 23:51:44 +0100 <Inst> as well as cat theory monads, afaik
2022-12-18 23:51:49 +0100 <EvanR> "whatever is a monad" in haskell means it satisfies the Monad class and the laws
2022-12-18 23:52:04 +0100 <Inst> yeah, the most common reference is "monadic datatype"
2022-12-18 23:52:22 +0100 <EvanR> capital M Monad class helps avoid confusion
2022-12-18 23:52:59 +0100 <Inst> https://hasura.io/blog/parser-combinators-walkthrough/#fn1
2022-12-18 23:53:14 +0100 <Inst> i'm oriented toward this guy's hill
2022-12-18 23:54:27 +0100 <EvanR> sounds like you're well equipped to spot and autocorrect any lousy usage of monadic jargon
2022-12-18 23:55:22 +0100 <Inst> functor / covariant functors seems confusing, though, as in
2022-12-18 23:55:35 +0100 <Inst> a functor is supposed to lift a category in such a way that it's structure-preserving
2022-12-18 23:55:47 +0100 <Inst> but obv, Proxy is a functor, but it seems to destroy structure
2022-12-18 23:55:48 +0100 <EvanR> a functor lifts morphisms
2022-12-18 23:55:48 +0100 <geekosaur> "endo" means within. so an endofunctor is a functor within a category
2022-12-18 23:55:53 +0100 <Inst> ah
2022-12-18 23:56:12 +0100 <geekosaur> C -> C as opposed to C -> D or C -> Foo or whatever
2022-12-18 23:57:01 +0100 <EvanR> functors can e.g. map all objects to 1 thing and all morphisms to id : that -> that, not a problem
2022-12-18 23:57:09 +0100bitdex_(~bitdex@gateway/tor-sasl/bitdex)
2022-12-18 23:57:15 +0100 <EvanR> category theory people love that kind of thing
2022-12-18 23:58:15 +0100 <Inst> TBH, I had an interesting talk with a Lisper
2022-12-18 23:58:40 +0100tromp(~textual@92-110-219-57.cable.dynamic.v4.ziggo.nl) (Quit: My iMac has gone to sleep. ZZZzzz…)
2022-12-18 23:58:41 +0100 <Inst> Haskell is interesting and distinct from, say, Lisp, because it really privileges composition as a mode of programming
2022-12-18 23:58:45 +0100 <Inst> true / false?
2022-12-18 23:59:52 +0100 <Inst> probably false, since both Haskell and Lisp are based on lambda calculus, which is highly compositional
2022-12-18 23:59:53 +0100 <EvanR> it privileges coding without 10,000 parentheses per page