2020/09/25

2020-09-25 00:00:21 +0200kotrcka(4e2917d3@78.41.23.211)
2020-09-25 00:00:26 +0200Rudd0(~Rudd0@185.189.115.98)
2020-09-25 00:00:49 +0200mu(~mu@unaffiliated/mu) (Read error: Connection reset by peer)
2020-09-25 00:00:55 +0200ryansmccoy(~ryansmcco@193.37.254.27) (Ping timeout: 265 seconds)
2020-09-25 00:01:19 +0200mu(~mu@unaffiliated/mu)
2020-09-25 00:01:53 +0200ryansmccoy(~ryansmcco@156.96.151.132)
2020-09-25 00:02:51 +0200nbloomf(~nbloomf@2600:1700:83e0:1f40:d1a:c51a:7e64:3fda) (Quit: My MacBook has gone to sleep. ZZZzzz…)
2020-09-25 00:03:07 +0200Tops2(~Tobias@dyndsl-095-033-092-020.ewe-ip-backbone.de) (Read error: Connection reset by peer)
2020-09-25 00:03:19 +0200LKoen(~LKoen@lstlambert-657-1-123-43.w92-154.abo.wanadoo.fr) (Quit: “It’s only logical. First you learn to talk, then you learn to think. Too bad it’s not the other way round.”)
2020-09-25 00:03:49 +0200merijn(~merijn@83-160-49-249.ip.xs4all.nl) (Ping timeout: 264 seconds)
2020-09-25 00:04:01 +0200heatsink(~heatsink@107-136-5-69.lightspeed.sntcca.sbcglobal.net) (Ping timeout: 256 seconds)
2020-09-25 00:04:22 +0200heatsink(~heatsink@107-136-5-69.lightspeed.sntcca.sbcglobal.net)
2020-09-25 00:04:43 +0200jonatan(~nate@h77-53-70-163.cust.a3fiber.se) (Ping timeout: 246 seconds)
2020-09-25 00:05:12 +0200crobbins(~crobbins@2600:1700:48eb:8490:49dc:ec8f:58ae:3fb3) (Remote host closed the connection)
2020-09-25 00:05:44 +0200mud(~mud@unaffiliated/kadoban) (Ping timeout: 260 seconds)
2020-09-25 00:05:51 +0200crobbins(~crobbins@2600:1700:48eb:8490:49dc:ec8f:58ae:3fb3)
2020-09-25 00:06:11 +0200rprije(~rprije@27.143.220.203.dial.dynamic.acc01-myal-dub.comindico.com.au)
2020-09-25 00:07:50 +0200nbloomf(~nbloomf@2600:1700:83e0:1f40:2c70:c77:a1b8:d2f)
2020-09-25 00:08:00 +0200wroathe(~wroathe@c-68-54-25-135.hsd1.mn.comcast.net)
2020-09-25 00:10:22 +0200crobbins(~crobbins@2600:1700:48eb:8490:49dc:ec8f:58ae:3fb3) (Ping timeout: 260 seconds)
2020-09-25 00:10:50 +0200mu(~mu@unaffiliated/mu) (Read error: Connection reset by peer)
2020-09-25 00:11:20 +0200mu(~mu@unaffiliated/mu)
2020-09-25 00:12:58 +0200sheepfleece(~sheep@46.53.249.142) (Quit: Lost terminal)
2020-09-25 00:13:39 +0200wroathe(~wroathe@c-68-54-25-135.hsd1.mn.comcast.net) (Ping timeout: 258 seconds)
2020-09-25 00:15:12 +0200crobbins(~crobbins@2601:2c1:380:ec40:8125:3c73:ac6c:163c)
2020-09-25 00:16:57 +0200irc_user(uid423822@gateway/web/irccloud.com/x-yihbzzetonxuekrk) (Quit: Connection closed for inactivity)
2020-09-25 00:17:40 +0200nbloomf(~nbloomf@2600:1700:83e0:1f40:2c70:c77:a1b8:d2f) (Quit: My MacBook has gone to sleep. ZZZzzz…)
2020-09-25 00:20:17 +0200crobbins(~crobbins@2601:2c1:380:ec40:8125:3c73:ac6c:163c) (Ping timeout: 260 seconds)
2020-09-25 00:20:50 +0200mu(~mu@unaffiliated/mu) (Read error: Connection reset by peer)
2020-09-25 00:21:19 +0200mu(~mu@unaffiliated/mu)
2020-09-25 00:21:49 +0200crobbins(~crobbins@2601:2c1:380:ec40:48c0:4650:53a9:7885)
2020-09-25 00:22:07 +0200justsomeguy(~justsomeg@unaffiliated/--/x-3805311)
2020-09-25 00:26:04 +0200dhil(~dhil@11.29.39.217.dyn.plus.net) (Ping timeout: 272 seconds)
2020-09-25 00:29:46 +0200chmac(~chmac@195.140.213.38)
2020-09-25 00:31:15 +0200mu(~mu@unaffiliated/mu) (Read error: Connection reset by peer)
2020-09-25 00:31:22 +0200mu__(~mu@unaffiliated/mu)
2020-09-25 00:32:53 +0200Tuplanolla(~Tuplanoll@91-159-68-239.elisa-laajakaista.fi) (Quit: Leaving.)
2020-09-25 00:34:02 +0200merijn(~merijn@83-160-49-249.ip.xs4all.nl)
2020-09-25 00:34:32 +0200ahri(~ahri@178.209.40.84) (Quit: Ping timeout (120 seconds))
2020-09-25 00:34:51 +0200ahri(~ahri@178.209.40.84)
2020-09-25 00:35:00 +0200falafel(~falafel@2605:e000:1527:d491:f090:20fe:cddf:2a1a) (Remote host closed the connection)
2020-09-25 00:36:37 +0200falafel(~falafel@2605:e000:1527:d491:f090:20fe:cddf:2a1a)
2020-09-25 00:36:43 +0200mpereira(~mpereira@2a02:810d:f40:d96:2193:1ad1:c4fb:4a0e) (Ping timeout: 272 seconds)
2020-09-25 00:38:29 +0200falafel(~falafel@2605:e000:1527:d491:f090:20fe:cddf:2a1a) (Remote host closed the connection)
2020-09-25 00:39:13 +0200merijn(~merijn@83-160-49-249.ip.xs4all.nl) (Ping timeout: 260 seconds)
2020-09-25 00:39:31 +0200falafel(~falafel@2605:e000:1527:d491:f090:20fe:cddf:2a1a)
2020-09-25 00:41:13 +0200mu__(~mu@unaffiliated/mu) (Read error: Connection reset by peer)
2020-09-25 00:41:19 +0200mu(~mu@unaffiliated/mu)
2020-09-25 00:45:12 +0200dhouthoo(~dhouthoo@ptr-eiv6509pb4ifhdr9lsd.18120a2.ip6.access.telenet.be) (Quit: WeeChat 2.8)
2020-09-25 00:46:41 +0200jonatan(~nate@h77-53-70-163.cust.a3fiber.se)
2020-09-25 00:49:27 +0200falafel(~falafel@2605:e000:1527:d491:f090:20fe:cddf:2a1a) (Ping timeout: 260 seconds)
2020-09-25 00:50:51 +0200mu(~mu@unaffiliated/mu) (Read error: Connection reset by peer)
2020-09-25 00:51:19 +0200mu(~mu@unaffiliated/mu)
2020-09-25 00:55:17 +0200justanotheruser(~justanoth@unaffiliated/justanotheruser) (Ping timeout: 260 seconds)
2020-09-25 00:55:25 +0200barzo(~sosal@95.70.181.226) (Ping timeout: 264 seconds)
2020-09-25 00:55:33 +0200wroathe(~wroathe@c-68-54-25-135.hsd1.mn.comcast.net)
2020-09-25 00:55:43 +0200justanotheruser(~justanoth@unaffiliated/justanotheruser)
2020-09-25 00:57:55 +0200jedws(~jedws@2001:8003:337f:1b00:844e:ad32:1295:53d0)
2020-09-25 01:00:13 +0200wroathe(~wroathe@c-68-54-25-135.hsd1.mn.comcast.net) (Ping timeout: 260 seconds)
2020-09-25 01:00:36 +0200alexm_(~alexm_@161.8.233.138)
2020-09-25 01:00:54 +0200mu(~mu@unaffiliated/mu) (Read error: Connection reset by peer)
2020-09-25 01:01:19 +0200mu(~mu@unaffiliated/mu)
2020-09-25 01:03:21 +0200mpereira(~mpereira@2a02:810d:f40:d96:5151:9344:10a3:da64)
2020-09-25 01:03:56 +0200Kaiepi(~Kaiepi@nwcsnbsc03w-47-55-157-9.dhcp-dynamic.fibreop.nb.bellaliant.net) (Ping timeout: 256 seconds)
2020-09-25 01:04:38 +0200cosimone(~cosimone@93-47-228-249.ip115.fastwebnet.it) (Ping timeout: 258 seconds)
2020-09-25 01:05:20 +0200alexm_(~alexm_@161.8.233.138) (Ping timeout: 272 seconds)
2020-09-25 01:05:20 +0200Kaiepi(~Kaiepi@nwcsnbsc03w-47-55-157-9.dhcp-dynamic.fibreop.nb.bellaliant.net)
2020-09-25 01:08:23 +0200mpereira(~mpereira@2a02:810d:f40:d96:5151:9344:10a3:da64) (Ping timeout: 272 seconds)
2020-09-25 01:10:12 +0200merijn(~merijn@83-160-49-249.ip.xs4all.nl)
2020-09-25 01:11:10 +0200mu(~mu@unaffiliated/mu) (Read error: Connection reset by peer)
2020-09-25 01:11:21 +0200mu__(~mu@unaffiliated/mu)
2020-09-25 01:12:04 +0200olligobber(olligobber@gateway/vpn/privateinternetaccess/olligobber) (Remote host closed the connection)
2020-09-25 01:13:57 +0200mounty(~mounty@2001:8000:2f59:0:4326:3e7a:dda9:8da8)
2020-09-25 01:16:32 +0200st8less(~st8less@2603:a060:11fe:0:b0dd:9d1b:8825:d363) (Ping timeout: 260 seconds)
2020-09-25 01:17:00 +0200snakemasterflex(~snakemast@213.100.206.23)
2020-09-25 01:17:38 +0200cosimone(~cosimone@5.171.26.126)
2020-09-25 01:20:52 +0200Rudd0(~Rudd0@185.189.115.98) (Ping timeout: 260 seconds)
2020-09-25 01:20:52 +0200mu__(~mu@unaffiliated/mu) (Read error: Connection reset by peer)
2020-09-25 01:21:20 +0200mu(~mu@unaffiliated/mu)
2020-09-25 01:21:49 +0200snakemasterflex(~snakemast@213.100.206.23) (Ping timeout: 264 seconds)
2020-09-25 01:23:04 +0200cr3(~cr3@192-222-143-195.qc.cable.ebox.net) (Ping timeout: 272 seconds)
2020-09-25 01:23:21 +0200mnrmnaugh(~mnrmnaugh@unaffiliated/mnrmnaugh)
2020-09-25 01:27:17 +0200oisdk(~oisdk@2001:bb6:3329:d100:fd58:7633:8b1d:97)
2020-09-25 01:28:48 +0200Tops2(~Tobias@dyndsl-095-033-092-020.ewe-ip-backbone.de)
2020-09-25 01:31:15 +0200mu(~mu@unaffiliated/mu) (Read error: Connection reset by peer)
2020-09-25 01:31:21 +0200mu__(~mu@unaffiliated/mu)
2020-09-25 01:31:42 +0200nineonine(~nineonine@50.216.62.2) (Remote host closed the connection)
2020-09-25 01:32:42 +0200archaephyrryx(~archaephy@straasha.imrryr.org)
2020-09-25 01:33:46 +0200thir(~thir@p200300f27f0fc60094e773283d7bf825.dip0.t-ipconnect.de)
2020-09-25 01:34:03 +0200wroathe(~wroathe@c-68-54-25-135.hsd1.mn.comcast.net)
2020-09-25 01:36:49 +0200verement(~anonymous@cpe-76-167-229-223.san.res.rr.com) (Quit: verement)
2020-09-25 01:38:42 +0200thir(~thir@p200300f27f0fc60094e773283d7bf825.dip0.t-ipconnect.de) (Ping timeout: 260 seconds)
2020-09-25 01:41:15 +0200mu__(~mu@unaffiliated/mu) (Read error: Connection reset by peer)
2020-09-25 01:41:16 +0200jedws(~jedws@2001:8003:337f:1b00:844e:ad32:1295:53d0) (Quit: My MacBook has gone to sleep. ZZZzzz…)
2020-09-25 01:41:20 +0200mu(~mu@unaffiliated/mu)
2020-09-25 01:41:24 +0200nitework(~workaroun@2001:a61:b1f:ed01:6f89:c766:dd6f:102c)
2020-09-25 01:42:12 +0200Volt_(~Volt_@c-73-145-164-70.hsd1.mi.comcast.net)
2020-09-25 01:43:23 +0200nineonine(~nineonine@50.216.62.2)
2020-09-25 01:44:33 +0200merijn(~merijn@83-160-49-249.ip.xs4all.nl) (Ping timeout: 260 seconds)
2020-09-25 01:45:24 +0200nitework(~workaroun@2001:a61:b1f:ed01:6f89:c766:dd6f:102c) (Quit: Leaving)
2020-09-25 01:47:06 +0200xian(~xian@pool-108-40-123-246.bltmmd.fios.verizon.net)
2020-09-25 01:49:23 +0200verement(~anonymous@cpe-76-167-229-223.san.res.rr.com)
2020-09-25 01:49:29 +0200xian(~xian@pool-108-40-123-246.bltmmd.fios.verizon.net) ()
2020-09-25 01:50:54 +0200mu(~mu@unaffiliated/mu) (Read error: Connection reset by peer)
2020-09-25 01:51:19 +0200mu(~mu@unaffiliated/mu)
2020-09-25 01:52:43 +0200mnrmnaugh(~mnrmnaugh@unaffiliated/mnrmnaugh) (Ping timeout: 272 seconds)
2020-09-25 01:52:54 +0200spew(uid195861@gateway/web/irccloud.com/x-waxyqwwasdbxecct) (Quit: Connection closed for inactivity)
2020-09-25 01:53:37 +0200jespada(~jespada@90.254.241.6) (Ping timeout: 264 seconds)
2020-09-25 01:55:08 +0200kotrcka(4e2917d3@78.41.23.211) (Remote host closed the connection)
2020-09-25 01:56:25 +0200jespada(~jespada@90.254.241.6)
2020-09-25 01:56:49 +0200cr3(~cr3@192-222-143-195.qc.cable.ebox.net)
2020-09-25 01:58:21 +0200emmanuel_erc(~user@2604:2000:1382:ce03:71a7:7eea:bdbf:f3a4) (Remote host closed the connection)
2020-09-25 02:00:01 +0200chmac(~chmac@195.140.213.38) ()
2020-09-25 02:01:15 +0200mu(~mu@unaffiliated/mu) (Read error: Connection reset by peer)
2020-09-25 02:01:21 +0200mu__(~mu@unaffiliated/mu)
2020-09-25 02:02:57 +0200hackagettc 0.2.3.0 - Textual Type Classes https://hackage.haskell.org/package/ttc-0.2.3.0 (TravisCardwell)
2020-09-25 02:04:45 +0200Amras(~Amras@unaffiliated/amras0000) (Ping timeout: 272 seconds)
2020-09-25 02:04:58 +0200whiteline(~whiteline@unaffiliated/whiteline) (Ping timeout: 260 seconds)
2020-09-25 02:11:08 +0200mu__(~mu@unaffiliated/mu) (Read error: Connection reset by peer)
2020-09-25 02:11:19 +0200mu(~mu@unaffiliated/mu)
2020-09-25 02:11:33 +0200merijn(~merijn@83-160-49-249.ip.xs4all.nl)
2020-09-25 02:12:03 +0200whiteline(~whiteline@unaffiliated/whiteline)
2020-09-25 02:16:35 +0200merijn(~merijn@83-160-49-249.ip.xs4all.nl) (Ping timeout: 240 seconds)
2020-09-25 02:19:21 +0200adamwespiser(~adam_wesp@209.6.42.110)
2020-09-25 02:21:15 +0200mu(~mu@unaffiliated/mu) (Read error: Connection reset by peer)
2020-09-25 02:21:21 +0200mu__(~mu@unaffiliated/mu)
2020-09-25 02:23:20 +0200fendor_(~fendor@91.141.3.153.wireless.dyn.drei.com)
2020-09-25 02:25:08 +0200adamwespiser(~adam_wesp@209.6.42.110) (Ping timeout: 272 seconds)
2020-09-25 02:25:58 +0200fendor(~fendor@178.165.129.251.wireless.dyn.drei.com) (Ping timeout: 260 seconds)
2020-09-25 02:27:13 +0200mud(~mud@unaffiliated/kadoban)
2020-09-25 02:29:12 +0200ericsagnes(~ericsagne@2405:6580:0:5100:5ab:3807:9c89:ee30) (Ping timeout: 260 seconds)
2020-09-25 02:30:50 +0200mu__(~mu@unaffiliated/mu) (Read error: Connection reset by peer)
2020-09-25 02:31:20 +0200mpereira(~mpereira@2a02:810d:f40:d96:5151:9344:10a3:da64)
2020-09-25 02:31:23 +0200mu(~mu@unaffiliated/mu)
2020-09-25 02:32:00 +0200archaephyrryx(~archaephy@straasha.imrryr.org) ()
2020-09-25 02:32:00 +0200archaephyrryx(~archaephy@straasha.imrryr.org)
2020-09-25 02:32:53 +0200 <koz_> I need to go from Data.Fixed.Pico to Data.Fixed.Milli, rounding down (i.e., hacking off all the digits I'm not interested in). How do I spell that?
2020-09-25 02:34:11 +0200mnrmnaugh(~mnrmnaugh@unaffiliated/mnrmnaugh)
2020-09-25 02:34:45 +0200 <Axman6> coerce . (`div` 1000)
2020-09-25 02:34:46 +0200 <Axman6> >_>
2020-09-25 02:34:58 +0200 <koz_> Axman6: Wait seriously.
2020-09-25 02:35:00 +0200 <Axman6> that's almost definitely wrong
2020-09-25 02:35:07 +0200crobbins_(~crobbins@2601:2c1:380:ec40:314e:bdc5:b293:4089)
2020-09-25 02:35:07 +0200 <koz_> Yeah, I thought so.
2020-09-25 02:35:18 +0200 <koz_> Since I don't think Fixed coerces like that.
2020-09-25 02:35:18 +0200 <Axman6> I think
2020-09-25 02:35:52 +0200mpereira(~mpereira@2a02:810d:f40:d96:5151:9344:10a3:da64) (Ping timeout: 260 seconds)
2020-09-25 02:36:12 +0200 <Axman6> but, picoToMilli is probably something like picoToMilli (Fixed n) = Fixed (n `div` 1000000) -- I can't remember what the right factor is
2020-09-25 02:37:04 +0200lambda-11235(~lambda-11@108-237-120-58.lightspeed.frokca.sbcglobal.net)
2020-09-25 02:37:22 +0200 <koz_> Well, Pico is Fixed E12, while Milli is Fixed E3, so I guess nine zeroes?
2020-09-25 02:38:13 +0200 <c_wraith> I'm surprised there isn't a conversion function that uses a class to get those right.
2020-09-25 02:38:31 +0200 <koz_> c_wraith: Me neither.
2020-09-25 02:38:32 +0200crobbins(~crobbins@2601:2c1:380:ec40:48c0:4650:53a9:7885) (Ping timeout: 260 seconds)
2020-09-25 02:38:38 +0200 <koz_> s/neither/too/
2020-09-25 02:38:41 +0200 <koz_> Argh.
2020-09-25 02:38:46 +0200 <Axman6> would be nice if these days Fixed used Nat instead of unrelated data types
2020-09-25 02:39:04 +0200 <Axman6> argh indeed, the queen would be ashamed commonwealth bro
2020-09-25 02:39:05 +0200 <c_wraith> still, I think you should be able to use realToFrac ?
2020-09-25 02:41:02 +0200mu(~mu@unaffiliated/mu) (Read error: Connection reset by peer)
2020-09-25 02:41:02 +0200 <koz_> c_wraith: Like, directly?
2020-09-25 02:41:06 +0200 <koz_> :t 1e9
2020-09-25 02:41:07 +0200nbloomf(~nbloomf@2600:1700:83e0:1f40:9deb:11e:5cda:a60a)
2020-09-25 02:41:08 +0200 <lambdabot> Fractional p => p
2020-09-25 02:41:12 +0200 <koz_> > 1e9
2020-09-25 02:41:15 +0200 <lambdabot> 1.0e9
2020-09-25 02:41:19 +0200mu(~mu@unaffiliated/mu)
2020-09-25 02:41:32 +0200ericsagnes(~ericsagne@2405:6580:0:5100:bc6f:f4f1:b8da:13b1)
2020-09-25 02:41:49 +0200 <c_wraith> yeah, Fixed has all the right instances
2020-09-25 02:44:10 +0200 <koz_> Nice.
2020-09-25 02:45:39 +0200sand_dull(~theuser@62.182.99.37)
2020-09-25 02:45:48 +0200asan(~yan4138@124.78.128.72) (Ping timeout: 260 seconds)
2020-09-25 02:46:42 +0200mnrmnaugh(~mnrmnaugh@unaffiliated/mnrmnaugh) (Ping timeout: 265 seconds)
2020-09-25 02:47:09 +0200macrover(~macrover@ip70-189-231-35.lv.lv.cox.net)
2020-09-25 02:49:22 +0200Amras(~Amras@unaffiliated/amras0000)
2020-09-25 02:49:30 +0200merijn(~merijn@83-160-49-249.ip.xs4all.nl)
2020-09-25 02:50:01 +0200Noldorin(~noldorin@unaffiliated/noldorin) (Quit: My MacBook Pro has gone to sleep. ZZZzzz…)
2020-09-25 02:50:42 +0200mnrmnaugh(~mnrmnaugh@unaffiliated/mnrmnaugh)
2020-09-25 02:51:01 +0200mu(~mu@unaffiliated/mu) (Read error: Connection reset by peer)
2020-09-25 02:51:06 +0200asan(~yan4138@58.37.8.8)
2020-09-25 02:51:25 +0200sand_dull(~theuser@62.182.99.37) (Ping timeout: 240 seconds)
2020-09-25 02:51:28 +0200mu(~mu@unaffiliated/mu)
2020-09-25 02:52:00 +0200mnrmnaugh(~mnrmnaugh@unaffiliated/mnrmnaugh) (Max SendQ exceeded)
2020-09-25 02:55:42 +0200machty(~machty@89.47.234.28)
2020-09-25 02:56:23 +0200sand_dull(~theuser@62.182.99.37)
2020-09-25 02:56:39 +0200crobbins_(~crobbins@2601:2c1:380:ec40:314e:bdc5:b293:4089) (Remote host closed the connection)
2020-09-25 02:57:22 +0200crobbins(~crobbins@2601:2c1:380:ec40:314e:bdc5:b293:4089)
2020-09-25 02:58:04 +0200cr3(~cr3@192-222-143-195.qc.cable.ebox.net) (Ping timeout: 272 seconds)
2020-09-25 02:58:56 +0200crobbins(~crobbins@2601:2c1:380:ec40:314e:bdc5:b293:4089) (Remote host closed the connection)
2020-09-25 02:59:13 +0200crobbins(~crobbins@2601:2c1:380:ec40:314e:bdc5:b293:4089)
2020-09-25 02:59:23 +0200crobbins(~crobbins@2601:2c1:380:ec40:314e:bdc5:b293:4089) (Remote host closed the connection)
2020-09-25 03:00:17 +0200jedws(~jedws@2001:8003:337f:1b00:1449:7df0:4af3:7c20)
2020-09-25 03:00:49 +0200mu(~mu@unaffiliated/mu) (Read error: Connection reset by peer)
2020-09-25 03:01:19 +0200mu(~mu@unaffiliated/mu)
2020-09-25 03:01:20 +0200nbloomf(~nbloomf@2600:1700:83e0:1f40:9deb:11e:5cda:a60a) (Quit: My MacBook has gone to sleep. ZZZzzz…)
2020-09-25 03:01:49 +0200plutoniix(~q@175.176.222.7)
2020-09-25 03:03:46 +0200nbloomf(~nbloomf@2600:1700:83e0:1f40:b03d:853a:ebea:53e3)
2020-09-25 03:04:13 +0200Rudd0(~Rudd0@185.189.115.108)
2020-09-25 03:05:13 +0200snakemasterflex(~snakemast@213.100.206.23)
2020-09-25 03:07:02 +0200 <wwwww> What is your toughts about realtime programs with haskell?
2020-09-25 03:07:11 +0200 <koz_> wwwww: Define 'realtime'.
2020-09-25 03:07:34 +0200 <wwwww> koz_: multiplayer game server
2020-09-25 03:07:47 +0200poljar(~poljar@93-139-70-179.adsl.net.t-com.hr) (Read error: Connection reset by peer)
2020-09-25 03:07:54 +0200falafel(~falafel@2605:e000:1527:d491:f090:20fe:cddf:2a1a)
2020-09-25 03:08:00 +0200 <koz_> wwwww: Like, for running a multiplayer FPS game?
2020-09-25 03:08:01 +0200jonathanx(~jonathan@dyn-8-sc.cdg.chalmers.se) (Read error: Connection reset by peer)
2020-09-25 03:08:08 +0200 <koz_> (for instance)
2020-09-25 03:08:09 +0200poljar(~poljar@93-139-70-179.adsl.net.t-com.hr)
2020-09-25 03:08:22 +0200jonathanx(~jonathan@dyn-8-sc.cdg.chalmers.se)
2020-09-25 03:08:43 +0200mirrorbird(~psutcliff@2a00:801:44a:a00b:20c3:c64:eb15:73a2) (Ping timeout: 272 seconds)
2020-09-25 03:09:05 +0200shailangsa(~shailangs@host86-186-191-89.range86-186.btcentralplus.com) (Ping timeout: 240 seconds)
2020-09-25 03:09:31 +0200 <wwwww> Not the game itself but the server, koz_
2020-09-25 03:09:43 +0200shailangsa(~shailangs@host86-186-191-89.range86-186.btcentralplus.com)
2020-09-25 03:09:45 +0200shailangsa(~shailangs@host86-186-191-89.range86-186.btcentralplus.com) (Excess Flood)
2020-09-25 03:09:54 +0200snakemasterflex(~snakemast@213.100.206.23) (Ping timeout: 265 seconds)
2020-09-25 03:10:08 +0200shailangsa(~shailangs@host86-186-191-89.range86-186.btcentralplus.com)
2020-09-25 03:10:10 +0200shailangsa(~shailangs@host86-186-191-89.range86-186.btcentralplus.com) (Excess Flood)
2020-09-25 03:10:49 +0200mu(~mu@unaffiliated/mu) (Read error: Connection reset by peer)
2020-09-25 03:11:03 +0200alexm_(~alexm_@161.8.233.138)
2020-09-25 03:11:28 +0200mu(~mu@unaffiliated/mu)
2020-09-25 03:12:31 +0200Amras(~Amras@unaffiliated/amras0000) (Ping timeout: 272 seconds)
2020-09-25 03:13:07 +0200 <c_wraith> so very soft realtime
2020-09-25 03:13:48 +0200sand_dull(~theuser@62.182.99.37) (Ping timeout: 260 seconds)
2020-09-25 03:14:04 +0200 <c_wraith> you can do that fine with GHC-compiled Haskell, though it might require some additional discipline to keep GC latency lower than you'd care about in many applications.
2020-09-25 03:14:14 +0200totallynotnate(~nate@125.161.70.37)
2020-09-25 03:14:15 +0200 <Axman6> ir probably depends on how complicated the server is going to get - if it's something simple enough that there won't be much garbase, garbage collection shouldn't be such an issue. the new GC should help with latency too
2020-09-25 03:14:36 +0200 <koz_> Axman6: Is new GC already landed, or is it landing in 9?
2020-09-25 03:15:12 +0200 <Axman6> pretty sure it's in 8.10? I could be wrong
2020-09-25 03:15:39 +0200 <c_wraith> there are also things you can do technically like using compact regions to massively reduce pointer chasing on retained memory.
2020-09-25 03:15:59 +0200 <Axman6> yeah large, infrequently changing state should be in a compact region
2020-09-25 03:16:21 +0200cr3(~cr3@192-222-143-195.qc.cable.ebox.net)
2020-09-25 03:16:57 +0200 <c_wraith> those are things that often don't matter, but might be really important for a soft realtime application.
2020-09-25 03:17:13 +0200 <c_wraith> So... the tools are available, but some of them require manual work.
2020-09-25 03:17:21 +0200totallynotnate(~nate@125.161.70.37) (Client Quit)
2020-09-25 03:17:44 +0200totallynotnate(~nate@125.161.70.37)
2020-09-25 03:19:58 +0200 <Axman6> As with most software, make it work, then make it fast
2020-09-25 03:20:20 +0200xerox_(~xerox@unaffiliated/xerox) (Ping timeout: 258 seconds)
2020-09-25 03:20:25 +0200 <koz_> Or alternatively, make it work, check if fast enough, make fast if not.
2020-09-25 03:20:56 +0200 <Axman6> nah, just always make it fast
2020-09-25 03:20:56 +0200mu(~mu@unaffiliated/mu) (Read error: Connection reset by peer)
2020-09-25 03:21:07 +0200 <wwwww> That's what i'm trying to do these days, threadscope was useful tool
2020-09-25 03:21:09 +0200 <Axman6> save some penguins by using fewer cycles
2020-09-25 03:21:20 +0200mu(~mu@unaffiliated/mu)
2020-09-25 03:21:57 +0200acidjnk_new2(~acidjnk@p200300d0c7237863349b0df7f7aa9c44.dip0.t-ipconnect.de) (Ping timeout: 260 seconds)
2020-09-25 03:22:12 +0200catkiki(~kiki@m90-134-157-227.cust.tele2.hr) (Quit: Leaving)
2020-09-25 03:22:35 +0200DataComputist(~lumeng@static-50-43-26-251.bvtn.or.frontiernet.net)
2020-09-25 03:23:37 +0200merijn(~merijn@83-160-49-249.ip.xs4all.nl) (Ping timeout: 264 seconds)
2020-09-25 03:23:38 +0200oxide(~lambda@unaffiliated/mclaren) (Read error: Connection reset by peer)
2020-09-25 03:28:49 +0200totallynotnate(~nate@125.161.70.37) (Quit: WeeChat 2.9)
2020-09-25 03:29:02 +0200 <wwwww> I have 80% productivity according to profile but that 20% is GC
2020-09-25 03:29:08 +0200 <sm[m]> my first time using optparse-applicative in years (via optparse-simple).. could someone explain what I'm doing wrong here ? why won't it parse "2" to Just 2 ? https://paste.tomsmeding.com/6tXUenQu
2020-09-25 03:29:42 +0200oxide(~lambda@unaffiliated/mclaren)
2020-09-25 03:30:53 +0200mu(~mu@unaffiliated/mu) (Read error: Connection reset by peer)
2020-09-25 03:31:19 +0200mu(~mu@unaffiliated/mu)
2020-09-25 03:31:34 +0200 <sm[m]> incidentally https://github.com/tomsmeding/pastebin-haskell deserves more stars
2020-09-25 03:32:20 +0200ryansmccoy(~ryansmcco@156.96.151.132) (Ping timeout: 256 seconds)
2020-09-25 03:32:44 +0200alexm_(~alexm_@161.8.233.138) (Remote host closed the connection)
2020-09-25 03:33:14 +0200ryansmccoy(~ryansmcco@156.96.151.132)
2020-09-25 03:34:56 +0200totallynotnate(~nate@125.161.70.37)
2020-09-25 03:35:18 +0200thir(~thir@p200300f27f0fc60094e773283d7bf825.dip0.t-ipconnect.de)
2020-09-25 03:37:17 +0200mu(~mu@unaffiliated/mu) (Quit: mu)
2020-09-25 03:37:27 +0200hackagehttp-date 0.0.9 - HTTP Date parser/formatter https://hackage.haskell.org/package/http-date-0.0.9 (KazuYamamoto)
2020-09-25 03:37:28 +0200dyeplexer(~lol@unaffiliated/terpin)
2020-09-25 03:38:38 +0200 <sm[m]> hmm, also why does optparse complain if I add +RTS ... or -- +RTS ... ? That doesn't happen with cmdargs
2020-09-25 03:39:47 +0200thir(~thir@p200300f27f0fc60094e773283d7bf825.dip0.t-ipconnect.de) (Ping timeout: 260 seconds)
2020-09-25 03:47:33 +0200archaephyrryx(~archaephy@straasha.imrryr.org) ()
2020-09-25 03:47:42 +0200crobbins(~crobbins@2601:2c1:380:ec40:edc8:4f69:4049:36c6)
2020-09-25 03:52:06 +0200merijn(~merijn@83-160-49-249.ip.xs4all.nl)
2020-09-25 03:53:59 +0200 <Axman6> sm[m]: I think you're actually asking for a Maybe (Maybe Int) by using option
2020-09-25 03:54:55 +0200 <Axman6> I'm surprised you'd have problems with +RTS ... -RTS, those args should never get to your app. are you closing them with -RTS?
2020-09-25 03:56:09 +0200 <Axman6> sm[m]: basicazlly, I think what you need to do to fix the Maybe thing is not use value Nothing, just remove that and wrap the parser for that arg in optional (there's probably a better way, looking now)
2020-09-25 03:56:26 +0200urodna(~urodna@unaffiliated/urodna) (Quit: urodna)
2020-09-25 03:56:28 +0200 <sm[m]> Axman6: thanks, you are helping
2020-09-25 03:56:35 +0200 <Axman6> using value means that parser will never fail
2020-09-25 03:57:20 +0200merijn(~merijn@83-160-49-249.ip.xs4all.nl) (Ping timeout: 256 seconds)
2020-09-25 03:57:36 +0200ryansmccoy(~ryansmcco@156.96.151.132) (Ping timeout: 272 seconds)
2020-09-25 03:57:49 +0200 <Axman6> uh, that isn't true, it'll ail is it can't parse the type you want
2020-09-25 03:58:08 +0200ryansmccoy(~ryansmcco@193.37.254.27)
2020-09-25 03:58:27 +0200xff0x(~fox@2001:1a81:5294:e900:d5f1:7d15:a4ef:52f8) (Ping timeout: 260 seconds)
2020-09-25 03:59:27 +0200 <Axman6> sm[m]: https://github.com/data61/Mirza/blob/07ac1dc96d158e316cde0d7195718599095bebc9/projects/trails/src/… shows how to parse Maybe FilePAth
2020-09-25 03:59:57 +0200xff0x(~fox@2001:1a81:52cd:2700:30eb:9359:b5d6:26a0)
2020-09-25 04:00:17 +0200 <Axman6> which is a FilePath with a Boston accent
2020-09-25 04:00:27 +0200thc202(~thc202@unaffiliated/thc202) (Ping timeout: 260 seconds)
2020-09-25 04:00:53 +0200cr3(~cr3@192-222-143-195.qc.cable.ebox.net) (Ping timeout: 256 seconds)
2020-09-25 04:03:25 +0200shatriff(~vitaliish@176.52.219.10) (Remote host closed the connection)
2020-09-25 04:03:41 +0200 <sm[m]> thanks! optional was the trick, https://paste.tomsmeding.com/OEBwVvKS#file-3
2020-09-25 04:03:42 +0200shatriff(~vitaliish@176.52.219.10)
2020-09-25 04:04:12 +0200 <Axman6> there's still more going on there than needed, one sec
2020-09-25 04:04:13 +0200shatriff(~vitaliish@176.52.219.10) (Remote host closed the connection)
2020-09-25 04:04:33 +0200shatriff(~vitaliish@176.52.219.10)
2020-09-25 04:04:40 +0200 <sm[m]> years later, optparse still makes me feel stupid
2020-09-25 04:05:01 +0200shatriff(~vitaliish@176.52.219.10) (Remote host closed the connection)
2020-09-25 04:05:05 +0200 <sm[m]> could better docs help ? I'm not sure
2020-09-25 04:05:07 +0200 <Axman6> https://github.com/data61/Mirza/blob/07ac1dc96d158e316cde0d7195718599095bebc9/projects/trails/src/… parses an Int using Read, so I thinkyou want optional (option auto (...))
2020-09-25 04:05:40 +0200 <sm[m]> ah much better
2020-09-25 04:05:53 +0200 <Axman6> no need for the readMay stuff
2020-09-25 04:06:40 +0200josh_(~josh@c-67-164-104-206.hsd1.ca.comcast.net) (Remote host closed the connection)
2020-09-25 04:07:16 +0200josh_(~josh@c-67-164-104-206.hsd1.ca.comcast.net)
2020-09-25 04:08:01 +0200alexm_(~alexm_@161.8.233.138)
2020-09-25 04:08:14 +0200saiba_suika(~saiba_sui@cpe-72-231-228-139.buffalo.res.rr.com)
2020-09-25 04:09:31 +0200 <sm[m]> and I see +RTS works fine when compiled, but GHCI messes up command line parsing causing optparse to see it
2020-09-25 04:10:23 +0200alexm_(~alexm_@161.8.233.138) (Remote host closed the connection)
2020-09-25 04:10:37 +0200alexm_(~alexm_@161.8.233.138)
2020-09-25 04:10:40 +0200totallynotnate(~nate@125.161.70.37) (Quit: WeeChat 2.9)
2020-09-25 04:11:28 +0200josh_(~josh@c-67-164-104-206.hsd1.ca.comcast.net) (Ping timeout: 246 seconds)
2020-09-25 04:12:19 +0200 <Axman6> yeah you can't pass RTS args like that, since the RTS is already running, it's GHC's RTS
2020-09-25 04:12:24 +0200 <Axman6> GHCi's*
2020-09-25 04:12:54 +0200xerox_(~xerox@unaffiliated/xerox)
2020-09-25 04:12:54 +0200 <Axman6> if you need specific RTS args, then you'll need to start GHCi using them (probably)
2020-09-25 04:15:21 +0200danso(~dan@107-190-41-58.cpe.teksavvy.com)
2020-09-25 04:16:24 +0200toorevitimirp(~tooreviti@117.182.182.201)
2020-09-25 04:17:31 +0200totallynotnate(~nate@125.161.70.37)
2020-09-25 04:21:58 +0200 <sm[m]> oh, aha, is that it. Thanks again!
2020-09-25 04:26:53 +0200merijn(~merijn@83-160-49-249.ip.xs4all.nl)
2020-09-25 04:28:49 +0200lagothrixGuest96911
2020-09-25 04:28:49 +0200Guest96911(~lagothrix@unaffiliated/lagothrix) (Killed (tepper.freenode.net (Nickname regained by services)))
2020-09-25 04:28:55 +0200lagothrix(~lagothrix@unaffiliated/lagothrix)
2020-09-25 04:29:41 +0200nbloomf(~nbloomf@2600:1700:83e0:1f40:b03d:853a:ebea:53e3) (Quit: My MacBook has gone to sleep. ZZZzzz…)
2020-09-25 04:32:18 +0200mpereira(~mpereira@2a02:810d:f40:d96:5151:9344:10a3:da64)
2020-09-25 04:33:16 +0200wei2912(~wei2912@unaffiliated/wei2912)
2020-09-25 04:33:20 +0200cole-h(~cole-h@c-73-48-197-220.hsd1.ca.comcast.net) (Quit: Goodbye)
2020-09-25 04:33:57 +0200hackageaeson-schemas 1.3.0 - Easily consume JSON data on-demand with type-safety https://hackage.haskell.org/package/aeson-schemas-1.3.0 (leapyear)
2020-09-25 04:34:14 +0200cole-h(~cole-h@c-73-48-197-220.hsd1.ca.comcast.net)
2020-09-25 04:36:01 +0200nbloomf(~nbloomf@2600:1700:83e0:1f40:d92:3fe8:d989:c32a)
2020-09-25 04:37:21 +0200drbean(~drbean@TC210-63-209-146.static.apol.com.tw)
2020-09-25 04:37:47 +0200sand_dull(~theuser@62.182.99.37)
2020-09-25 04:38:11 +0200s00pcan(~chris@107.181.165.217) (Ping timeout: 240 seconds)
2020-09-25 04:38:39 +0200mpereira(~mpereira@2a02:810d:f40:d96:5151:9344:10a3:da64) (Ping timeout: 272 seconds)
2020-09-25 04:39:17 +0200justanotheruser(~justanoth@unaffiliated/justanotheruser) (Ping timeout: 260 seconds)
2020-09-25 04:40:19 +0200s00pcan(~chris@075-133-056-178.res.spectrum.com)
2020-09-25 04:42:15 +0200Tops21(~Tobias@dyndsl-095-033-089-153.ewe-ip-backbone.de)
2020-09-25 04:42:16 +0200alexm_(~alexm_@161.8.233.138) (Remote host closed the connection)
2020-09-25 04:42:17 +0200elliott__(~elliott@pool-100-36-54-163.washdc.fios.verizon.net)
2020-09-25 04:42:28 +0200Tops2(~Tobias@dyndsl-095-033-092-020.ewe-ip-backbone.de) (Ping timeout: 260 seconds)
2020-09-25 04:44:25 +0200crobbins(~crobbins@2601:2c1:380:ec40:edc8:4f69:4049:36c6) (Remote host closed the connection)
2020-09-25 04:44:46 +0200shailangsa(~shailangs@host86-186-191-89.range86-186.btcentralplus.com)
2020-09-25 04:45:04 +0200crobbins(~crobbins@2601:2c1:380:ec40:80f3:e48e:7123:1353)
2020-09-25 04:48:57 +0200andi-(~andi-@NixOS/user/andi-) (Ping timeout: 244 seconds)
2020-09-25 04:49:37 +0200adamwespiser(~adam_wesp@209.6.42.110)
2020-09-25 04:49:41 +0200crobbins(~crobbins@2601:2c1:380:ec40:80f3:e48e:7123:1353) (Remote host closed the connection)
2020-09-25 04:50:18 +0200crobbins(~crobbins@2601:2c1:380:ec40:80f3:e48e:7123:1353)
2020-09-25 04:50:54 +0200Stanley00(~stanley00@unaffiliated/stanley00)
2020-09-25 04:50:57 +0200Stanley00(~stanley00@unaffiliated/stanley00) (Remote host closed the connection)
2020-09-25 04:51:33 +0200Stanley00(~stanley00@unaffiliated/stanley00)
2020-09-25 04:52:06 +0200cr3(~cr3@192-222-143-195.qc.cable.ebox.net)
2020-09-25 04:53:18 +0200smitop(uid328768@gateway/web/irccloud.com/x-hrleshkhwzzeilqw) (Quit: Connection closed for inactivity)
2020-09-25 04:53:22 +0200ddellacosta(~dd@86.106.121.168) (Ping timeout: 256 seconds)
2020-09-25 04:53:23 +0200snakemasterflex(~snakemast@213.100.206.23)
2020-09-25 04:55:02 +0200falafel(~falafel@2605:e000:1527:d491:f090:20fe:cddf:2a1a) (Ping timeout: 260 seconds)
2020-09-25 04:55:25 +0200theDon(~td@muedsl-82-207-238-238.citykom.de) (Ping timeout: 264 seconds)
2020-09-25 04:55:44 +0200cosimone(~cosimone@5.171.26.126) (Quit: Quit.)
2020-09-25 04:55:53 +0200Lord_of_Life_(~Lord@unaffiliated/lord-of-life/x-0885362)
2020-09-25 04:56:53 +0200theDon(~td@94.134.91.145)
2020-09-25 04:57:20 +0200Lord_of_Life(~Lord@unaffiliated/lord-of-life/x-0885362) (Ping timeout: 256 seconds)
2020-09-25 04:57:21 +0200Lord_of_Life_Lord_of_Life
2020-09-25 04:58:24 +0200snakemasterflex(~snakemast@213.100.206.23) (Ping timeout: 272 seconds)
2020-09-25 04:59:05 +0200asan(~yan4138@58.37.8.8) (Ping timeout: 240 seconds)
2020-09-25 04:59:19 +0200asan(~yan4138@180.164.96.158)
2020-09-25 05:00:02 +0200machty(~machty@89.47.234.28) ()
2020-09-25 05:00:16 +0200thiross(~user@161.129.40.8)
2020-09-25 05:00:18 +0200raehik(~raehik@cpc96984-rdng25-2-0-cust109.15-3.cable.virginm.net) (Ping timeout: 272 seconds)
2020-09-25 05:00:36 +0200alexm_(~alexm_@161.8.233.138)
2020-09-25 05:01:36 +0200hnOsmium0001(uid453710@gateway/web/irccloud.com/x-cqejdnrmfbrsuxpt)
2020-09-25 05:02:04 +0200merijn(~merijn@83-160-49-249.ip.xs4all.nl) (Ping timeout: 260 seconds)
2020-09-25 05:03:11 +0200danso(~dan@107-190-41-58.cpe.teksavvy.com) (Read error: Connection reset by peer)
2020-09-25 05:03:41 +0200danso(~dan@107-190-41-58.cpe.teksavvy.com)
2020-09-25 05:03:49 +0200andi-(~andi-@NixOS/user/andi-)
2020-09-25 05:03:49 +0200evanjs(~evanjs@075-129-188-019.res.spectrum.com) (Read error: Connection reset by peer)
2020-09-25 05:04:59 +0200evanjs(~evanjs@075-129-188-019.res.spectrum.com)
2020-09-25 05:05:41 +0200cr3(~cr3@192-222-143-195.qc.cable.ebox.net) (Quit: leaving)
2020-09-25 05:05:47 +0200totallynotnate(~nate@125.161.70.37) (Quit: WeeChat 2.9)
2020-09-25 05:09:25 +0200machinedgod(~machinedg@d67-193-126-196.home3.cgocable.net) (Ping timeout: 240 seconds)
2020-09-25 05:10:10 +0200alexm_(~alexm_@161.8.233.138) (Remote host closed the connection)
2020-09-25 05:10:16 +0200shafox(~shafox@106.51.234.111)
2020-09-25 05:11:57 +0200thiross(~user@161.129.40.8) ("ERC (IRC client for Emacs 27.1)")
2020-09-25 05:12:09 +0200mirrorbird(~psutcliff@m83-187-173-228.cust.tele2.se)
2020-09-25 05:15:24 +0200justanotheruser(~justanoth@unaffiliated/justanotheruser)
2020-09-25 05:15:27 +0200aplainzetakind(~johndoe@captainludd.powered.by.lunarbnc.net) (Quit: Free ZNC ~ Powered by LunarBNC: https://LunarBNC.net)
2020-09-25 05:17:20 +0200aplainzetakind(~johndoe@captainludd.powered.by.lunarbnc.net)
2020-09-25 05:18:35 +0200z1(~z@static-198-54-129-86.cust.tzulo.com)
2020-09-25 05:22:14 +0200bpalmer1(~bpalmer@185.204.1.185)
2020-09-25 05:24:02 +0200 <z1> I'm trying to figure out why the runtime of this function is theta(km + n(m^2)). Is the (n(m^2)) term due to having to copy the (ws ++x) term each iteration?
2020-09-25 05:24:04 +0200 <z1> f xss = g [] xss
2020-09-25 05:24:06 +0200 <z1> g ws [] = ws
2020-09-25 05:24:08 +0200 <z1> g ws (x:xs) = g (ws ++ x) xs
2020-09-25 05:24:30 +0200aplainzetakind(~johndoe@captainludd.powered.by.lunarbnc.net) (Quit: Free ZNC ~ Powered by LunarBNC: https://LunarBNC.net)
2020-09-25 05:25:00 +0200 <dolio> Yes, `ws ++ x` has to rebuild `ws`.
2020-09-25 05:25:31 +0200jonathanx(~jonathan@dyn-8-sc.cdg.chalmers.se) (Remote host closed the connection)
2020-09-25 05:25:32 +0200adamwesp_(~adam_wesp@209.6.42.110)
2020-09-25 05:25:48 +0200 <z1> @dolio awesome thanks!
2020-09-25 05:25:48 +0200aplainzetakind(~johndoe@captainludd.powered.by.lunarbnc.net)
2020-09-25 05:25:48 +0200 <lambdabot> Unknown command, try @list
2020-09-25 05:25:49 +0200jonathanx(~jonathan@dyn-8-sc.cdg.chalmers.se)
2020-09-25 05:25:51 +0200Sgeo_(~Sgeo@ool-18b982ad.dyn.optonline.net)
2020-09-25 05:25:55 +0200z1(~z@static-198-54-129-86.cust.tzulo.com) (Quit: WeeChat 2.9)
2020-09-25 05:26:14 +0200aplainzetakindaplainzet
2020-09-25 05:26:15 +0200aplainzet(~johndoe@captainludd.powered.by.lunarbnc.net) (Client Quit)
2020-09-25 05:26:30 +0200 <ski> better use direct recursion version here, rather than an accumulator
2020-09-25 05:26:38 +0200Sheilong(uid293653@gateway/web/irccloud.com/x-vldvpjxmmaehkxbx) ()
2020-09-25 05:27:23 +0200elliott__(~elliott@pool-100-36-54-163.washdc.fios.verizon.net) (Ping timeout: 240 seconds)
2020-09-25 05:27:47 +0200adamwespiser(~adam_wesp@209.6.42.110) (Ping timeout: 240 seconds)
2020-09-25 05:28:03 +0200bspar_(~bspar@2604:a880:0:1010::776:e001) (Remote host closed the connection)
2020-09-25 05:28:11 +0200Hijiri_(~Hijiri@104.236.61.10) (Ping timeout: 240 seconds)
2020-09-25 05:28:18 +0200Hijiri(~Hijiri@104.236.61.10)
2020-09-25 05:28:33 +0200 <ski> in general, avoid left-nesting calls to `++', like `((([] ++ x0) ++ x1) ++ x2) ++ x3', which is what happens with the accumulator, in your definition
2020-09-25 05:28:34 +0200Sgeo(~Sgeo@ool-18b982ad.dyn.optonline.net) (Ping timeout: 256 seconds)
2020-09-25 05:28:35 +0200mantovani_(~mantovani@104.131.207.121) (Ping timeout: 240 seconds)
2020-09-25 05:28:48 +0200mirrorbird(~psutcliff@m83-187-173-228.cust.tele2.se) (Quit: Leaving)
2020-09-25 05:29:00 +0200mantovani(~mantovani@104.131.207.121)
2020-09-25 05:29:09 +0200bspar(~bspar@2604:a880:0:1010::776:e001)
2020-09-25 05:29:35 +0200 <ski> `x2' will there be traversed once, `x1' twice, `x0' thrice .. hence this ends up quadratic, rather than the expected linear
2020-09-25 05:31:01 +0200 <ski> (also, if you'd like to, read about the "Schlemiel the Painter" algorithm, by Joel Spolsky, at <https://www.joelonsoftware.com/2001/12/11/back-to-basics/>)
2020-09-25 05:31:19 +0200aplainzetakind(~johndoe@captainludd.powered.by.lunarbnc.net)
2020-09-25 05:32:01 +0200_vaibhavingale_(~Adium@203.188.228.27)
2020-09-25 05:34:56 +0200justan0theruser(~justanoth@unaffiliated/justanotheruser)
2020-09-25 05:36:42 +0200justanotheruser(~justanoth@unaffiliated/justanotheruser) (Ping timeout: 260 seconds)
2020-09-25 05:36:55 +0200merijn(~merijn@83-160-49-249.ip.xs4all.nl)
2020-09-25 05:41:47 +0200merijn(~merijn@83-160-49-249.ip.xs4all.nl) (Ping timeout: 240 seconds)
2020-09-25 05:42:10 +0200alexm_(~alexm_@161.8.233.138)
2020-09-25 05:42:47 +0200josh_(~josh@c-67-164-104-206.hsd1.ca.comcast.net)
2020-09-25 05:47:44 +0200shad0w_(~shad0w_@160.202.37.157)
2020-09-25 05:48:57 +0200alexm_(~alexm_@161.8.233.138) (Ping timeout: 272 seconds)
2020-09-25 05:51:29 +0200xff0x(~fox@2001:1a81:52cd:2700:30eb:9359:b5d6:26a0) (Ping timeout: 272 seconds)
2020-09-25 05:52:08 +0200xff0x(~fox@2001:1a81:52cd:2700:e58f:2a70:d271:af84)
2020-09-25 05:56:01 +0200Kaiepi(~Kaiepi@nwcsnbsc03w-47-55-157-9.dhcp-dynamic.fibreop.nb.bellaliant.net) (Remote host closed the connection)
2020-09-25 05:56:22 +0200Kaiepi(~Kaiepi@nwcsnbsc03w-47-55-157-9.dhcp-dynamic.fibreop.nb.bellaliant.net)
2020-09-25 06:00:27 +0200josh_(~josh@c-67-164-104-206.hsd1.ca.comcast.net) (Remote host closed the connection)
2020-09-25 06:01:23 +0200crobbins_(~crobbins@2601:2c1:380:ec40:d96c:72da:8879:7899)
2020-09-25 06:01:37 +0200polyphem(~p0lyph3m@2a02:810d:640:776c:76d7:55f6:f85b:c889) (Ping timeout: 272 seconds)
2020-09-25 06:03:31 +0200ryansmccoy(~ryansmcco@193.37.254.27) (Ping timeout: 272 seconds)
2020-09-25 06:03:50 +0200ahri(~ahri@178.209.40.84) (Quit: Ping timeout (120 seconds))
2020-09-25 06:03:55 +0200ryansmccoy(~ryansmcco@193.37.254.27)
2020-09-25 06:04:07 +0200crobbins(~crobbins@2601:2c1:380:ec40:80f3:e48e:7123:1353) (Ping timeout: 260 seconds)
2020-09-25 06:04:27 +0200ahri(~ahri@178.209.40.84)
2020-09-25 06:05:14 +0200zacts(~zacts@dragora/developer/zacts)
2020-09-25 06:06:02 +0200josh_(~josh@c-67-164-104-206.hsd1.ca.comcast.net)
2020-09-25 06:07:19 +0200wroathe(~wroathe@c-68-54-25-135.hsd1.mn.comcast.net) (Ping timeout: 272 seconds)
2020-09-25 06:07:19 +0200day_(~Unknown@unaffiliated/day)
2020-09-25 06:08:01 +0200asan(~yan4138@180.164.96.158) (Ping timeout: 264 seconds)
2020-09-25 06:08:17 +0200asan(~yan4138@124.78.5.33)
2020-09-25 06:09:59 +0200jedws(~jedws@2001:8003:337f:1b00:1449:7df0:4af3:7c20) (Quit: My MacBook has gone to sleep. ZZZzzz…)
2020-09-25 06:11:14 +0200day(~Unknown@unaffiliated/day) (Ping timeout: 272 seconds)
2020-09-25 06:11:14 +0200day_day
2020-09-25 06:13:11 +0200josh_(~josh@c-67-164-104-206.hsd1.ca.comcast.net) (Remote host closed the connection)
2020-09-25 06:13:36 +0200jedws(~jedws@2001:8003:337f:1b00:1449:7df0:4af3:7c20)
2020-09-25 06:14:56 +0200Rudd0^(~Rudd0@185.189.115.98)
2020-09-25 06:16:06 +0200merijn(~merijn@83-160-49-249.ip.xs4all.nl)
2020-09-25 06:17:29 +0200mu(~mu@unaffiliated/mu)
2020-09-25 06:18:36 +0200Rudd0(~Rudd0@185.189.115.108) (Ping timeout: 260 seconds)
2020-09-25 06:20:35 +0200alexm_(~alexm_@161.8.233.138)
2020-09-25 06:23:33 +0200vicfred(~vicfred@unaffiliated/vicfred) (Quit: Leaving)
2020-09-25 06:24:57 +0200bloodstalker(~bloodstal@46.166.187.178) (Remote host closed the connection)
2020-09-25 06:26:37 +0200alexm_(~alexm_@161.8.233.138) (Ping timeout: 265 seconds)
2020-09-25 06:26:37 +0200mu(~mu@unaffiliated/mu) (Read error: Connection reset by peer)
2020-09-25 06:26:41 +0200falafel_(~falafel@2605:e000:1527:d491:f090:20fe:cddf:2a1a)
2020-09-25 06:28:34 +0200olligobber(olligobber@gateway/vpn/privateinternetaccess/olligobber)
2020-09-25 06:29:06 +0200Kaiepi(~Kaiepi@nwcsnbsc03w-47-55-157-9.dhcp-dynamic.fibreop.nb.bellaliant.net) (Remote host closed the connection)
2020-09-25 06:29:09 +0200alexm_(~alexm_@161.8.233.138)
2020-09-25 06:29:27 +0200Kaiepi(~Kaiepi@nwcsnbsc03w-47-55-157-9.dhcp-dynamic.fibreop.nb.bellaliant.net)
2020-09-25 06:29:54 +0200wroathe(~wroathe@c-68-54-25-135.hsd1.mn.comcast.net)
2020-09-25 06:32:38 +0200snakemasterflex(~snakemast@213.100.206.23)
2020-09-25 06:34:30 +0200mpereira(~mpereira@2a02:810d:f40:d96:5151:9344:10a3:da64)
2020-09-25 06:34:35 +0200wroathe(~wroathe@c-68-54-25-135.hsd1.mn.comcast.net) (Ping timeout: 240 seconds)
2020-09-25 06:35:56 +0200shad0w_(~shad0w_@160.202.37.157) (Ping timeout: 272 seconds)
2020-09-25 06:36:57 +0200hackageantlr-haskell 0.1.0.1 - A Haskell implementation of the ANTLR top-down parser generator https://hackage.haskell.org/package/antlr-haskell-0.1.0.1 (KarlCronburg)
2020-09-25 06:37:25 +0200jneira_(~jneira@80.30.101.206) (Ping timeout: 246 seconds)
2020-09-25 06:38:15 +0200jneira_(~jneira@194.red-176-83-80.dynamicip.rima-tde.net)
2020-09-25 06:39:33 +0200buckworst(~nate@125.161.70.37)
2020-09-25 06:43:12 +0200mpereira(~mpereira@2a02:810d:f40:d96:5151:9344:10a3:da64) (Ping timeout: 260 seconds)
2020-09-25 06:48:08 +0200Kaiepi(~Kaiepi@nwcsnbsc03w-47-55-157-9.dhcp-dynamic.fibreop.nb.bellaliant.net) (Remote host closed the connection)
2020-09-25 06:48:32 +0200Kaiepi(~Kaiepi@nwcsnbsc03w-47-55-157-9.dhcp-dynamic.fibreop.nb.bellaliant.net)
2020-09-25 06:48:49 +0200macrover(~macrover@ip70-189-231-35.lv.lv.cox.net) (Ping timeout: 264 seconds)
2020-09-25 06:51:02 +0200buckworst(~nate@125.161.70.37) (Quit: WeeChat 2.9)
2020-09-25 06:51:08 +0200merijn(~merijn@83-160-49-249.ip.xs4all.nl) (Ping timeout: 272 seconds)
2020-09-25 06:51:54 +0200oisdk(~oisdk@2001:bb6:3329:d100:fd58:7633:8b1d:97) (Quit: My MacBook has gone to sleep. ZZZzzz…)
2020-09-25 06:54:18 +0200nineonin_(~nineonine@216-19-190-182.dyn.novuscom.net)
2020-09-25 06:57:48 +0200nineonine(~nineonine@50.216.62.2) (Ping timeout: 260 seconds)
2020-09-25 07:01:03 +0200interruptinuse(~interrupt@girl.mrtheplague.net) (Quit: ZNC - https://znc.in -- bye bye!)
2020-09-25 07:01:37 +0200falafel_(~falafel@2605:e000:1527:d491:f090:20fe:cddf:2a1a) (Ping timeout: 260 seconds)
2020-09-25 07:04:26 +0200mmohammadi9812(~mmohammad@188.210.98.27)
2020-09-25 07:07:57 +0200hackagegraphql-client 1.1.0 - A client for Haskell programs to query a GraphQL API https://hackage.haskell.org/package/graphql-client-1.1.0 (leapyear)
2020-09-25 07:08:51 +0200johnw_(~johnw@haskell/developer/johnw)
2020-09-25 07:08:52 +0200johnw(~johnw@haskell/developer/johnw) (Ping timeout: 260 seconds)
2020-09-25 07:09:56 +0200snakemasterflex(~snakemast@213.100.206.23) (Ping timeout: 260 seconds)
2020-09-25 07:10:05 +0200interruptinuse(~interrupt@girl.mrtheplague.net)
2020-09-25 07:10:16 +0200bahamas(~lucian@unaffiliated/bahamas)
2020-09-25 07:13:01 +0200jneira_(~jneira@194.red-176-83-80.dynamicip.rima-tde.net) (Read error: Connection reset by peer)
2020-09-25 07:13:07 +0200justsomeguy(~justsomeg@unaffiliated/--/x-3805311) ()
2020-09-25 07:13:31 +0200Kaeipi(~Kaiepi@nwcsnbsc03w-47-55-157-9.dhcp-dynamic.fibreop.nb.bellaliant.net)
2020-09-25 07:14:15 +0200wroathe(~wroathe@c-68-54-25-135.hsd1.mn.comcast.net)
2020-09-25 07:14:21 +0200Kaiepi(~Kaiepi@nwcsnbsc03w-47-55-157-9.dhcp-dynamic.fibreop.nb.bellaliant.net) (Remote host closed the connection)
2020-09-25 07:17:12 +0200jedws(~jedws@2001:8003:337f:1b00:1449:7df0:4af3:7c20) (Quit: My MacBook has gone to sleep. ZZZzzz…)
2020-09-25 07:17:27 +0200bpalmer1(~bpalmer@185.204.1.185) (Remote host closed the connection)
2020-09-25 07:17:46 +0200alexm_(~alexm_@161.8.233.138) (Remote host closed the connection)
2020-09-25 07:19:16 +0200wroathe(~wroathe@c-68-54-25-135.hsd1.mn.comcast.net) (Ping timeout: 260 seconds)
2020-09-25 07:19:31 +0200alexm_(~alexm_@161.8.233.138)
2020-09-25 07:20:20 +0200xwvvvvwx(~xwvvvvwx@185.213.155.160) (Quit: ZNC 1.8.1 - https://znc.in)
2020-09-25 07:20:29 +0200xwvvvvwx(~xwvvvvwx@185.213.155.160)
2020-09-25 07:21:58 +0200thir(~thir@p200300f27f0fc60094e773283d7bf825.dip0.t-ipconnect.de)
2020-09-25 07:22:07 +0200irc_user(uid423822@gateway/web/irccloud.com/x-jnkonfduxhfcxiya)
2020-09-25 07:22:46 +0200merijn(~merijn@83-160-49-249.ip.xs4all.nl)
2020-09-25 07:22:48 +0200sand_dull(~theuser@62.182.99.37) (Ping timeout: 272 seconds)
2020-09-25 07:23:45 +0200alexm_(~alexm_@161.8.233.138) (Ping timeout: 240 seconds)
2020-09-25 07:25:48 +0200zacts(~zacts@dragora/developer/zacts) (Ping timeout: 260 seconds)
2020-09-25 07:26:14 +0200alexm_(~alexm_@161.8.233.138)
2020-09-25 07:26:22 +0200thir(~thir@p200300f27f0fc60094e773283d7bf825.dip0.t-ipconnect.de) (Ping timeout: 260 seconds)
2020-09-25 07:26:45 +0200snakemasterflex(~snakemast@213.100.206.23)
2020-09-25 07:28:00 +0200merijn(~merijn@83-160-49-249.ip.xs4all.nl) (Ping timeout: 265 seconds)
2020-09-25 07:31:15 +0200thir(~thir@p200300f27f0fc60094e773283d7bf825.dip0.t-ipconnect.de)
2020-09-25 07:32:40 +0200danso(~dan@107-190-41-58.cpe.teksavvy.com) (Read error: Connection reset by peer)
2020-09-25 07:33:28 +0200danso(~dan@107-190-41-58.cpe.teksavvy.com)
2020-09-25 07:34:22 +0200asan(~yan4138@124.78.5.33) (Ping timeout: 256 seconds)
2020-09-25 07:34:42 +0200asan(~yan4138@58.37.8.8)
2020-09-25 07:36:05 +0200alexm_(~alexm_@161.8.233.138) (Remote host closed the connection)
2020-09-25 07:38:19 +0200darjeeling_(~darjeelin@122.245.123.72) (Ping timeout: 246 seconds)
2020-09-25 07:38:39 +0200thir(~thir@p200300f27f0fc60094e773283d7bf825.dip0.t-ipconnect.de) (Remote host closed the connection)
2020-09-25 07:38:46 +0200darjeeling_(~darjeelin@122.245.123.72)
2020-09-25 07:38:48 +0200thir(~thir@p200300f27f0fc60094e773283d7bf825.dip0.t-ipconnect.de)
2020-09-25 07:39:13 +0200alexm_(~alexm_@161.8.233.138)
2020-09-25 07:42:58 +0200takuan(~takuan@178-116-218-225.access.telenet.be)
2020-09-25 07:46:08 +0200supercoven(~Supercove@dsl-hkibng32-54fb54-166.dhcp.inet.fi)
2020-09-25 07:46:09 +0200bloodstalker(~bloodstal@46.166.187.178)
2020-09-25 07:52:45 +0200kenran(~maier@b2b-37-24-119-190.unitymedia.biz)
2020-09-25 07:52:51 +0200josh_(~josh@c-67-164-104-206.hsd1.ca.comcast.net)
2020-09-25 07:53:49 +0200merijn(~merijn@83-160-49-249.ip.xs4all.nl)
2020-09-25 07:55:32 +0200justan0theruser(~justanoth@unaffiliated/justanotheruser) (Ping timeout: 260 seconds)
2020-09-25 07:57:30 +0200crobbins_(~crobbins@2601:2c1:380:ec40:d96c:72da:8879:7899) (Remote host closed the connection)
2020-09-25 07:58:27 +0200supercoven(~Supercove@dsl-hkibng32-54fb54-166.dhcp.inet.fi) (Max SendQ exceeded)
2020-09-25 07:58:40 +0200supercoven(~Supercove@dsl-hkibng32-54fb54-166.dhcp.inet.fi)
2020-09-25 08:01:22 +0200shad0w_(~shad0w_@160.202.37.157)
2020-09-25 08:03:04 +0200 <MarcelineVQ> What would you call patterns like Just{} ?
2020-09-25 08:03:26 +0200danvet_(~Daniel@2a02:168:57f4:0:efd0:b9e5:5ae6:c2fa)
2020-09-25 08:04:01 +0200ahri(~ahri@178.209.40.84) (Quit: Ping timeout (120 seconds))
2020-09-25 08:04:10 +0200 <opqdonut> constructor-only patterns?
2020-09-25 08:04:23 +0200josh_(~josh@c-67-164-104-206.hsd1.ca.comcast.net) (Remote host closed the connection)
2020-09-25 08:04:34 +0200danvet(~danvet@2a02:168:57f4:0:5f80:650d:c6e6:3453)
2020-09-25 08:04:43 +0200ahri(~ahri@178.209.40.84)
2020-09-25 08:05:04 +0200 <MarcelineVQ> exactly, is that what you'd call them?
2020-09-25 08:06:08 +0200shatriff(~vitaliish@176.52.219.10)
2020-09-25 08:07:43 +0200danso(~dan@107-190-41-58.cpe.teksavvy.com) (Quit: WeeChat 2.9)
2020-09-25 08:08:28 +0200 <opqdonut> yeah
2020-09-25 08:15:20 +0200ahmr88(~ahmr88@cpc85006-haye22-2-0-cust131.17-4.cable.virginm.net)
2020-09-25 08:15:20 +0200ahmr88(~ahmr88@cpc85006-haye22-2-0-cust131.17-4.cable.virginm.net) (Remote host closed the connection)
2020-09-25 08:15:56 +0200mpereira(~mpereira@2a02:810d:f40:d96:5151:9344:10a3:da64)
2020-09-25 08:20:28 +0200saiba_suika2(~saiba_sui@107.173.73.44)
2020-09-25 08:20:37 +0200saiba_suika2(~saiba_sui@107.173.73.44) (Remote host closed the connection)
2020-09-25 08:23:56 +0200saiba_suika(~saiba_sui@cpe-72-231-228-139.buffalo.res.rr.com) (Ping timeout: 258 seconds)
2020-09-25 08:26:17 +0200cole-h(~cole-h@c-73-48-197-220.hsd1.ca.comcast.net) (Quit: Goodbye)
2020-09-25 08:29:23 +0200merijn(~merijn@83-160-49-249.ip.xs4all.nl) (Ping timeout: 240 seconds)
2020-09-25 08:30:07 +0200lambda-11235(~lambda-11@108-237-120-58.lightspeed.frokca.sbcglobal.net) (Quit: Bye)
2020-09-25 08:31:45 +0200asan(~yan4138@58.37.8.8) (Ping timeout: 240 seconds)
2020-09-25 08:32:03 +0200asan(~yan4138@58.37.8.8)
2020-09-25 08:35:55 +0200ggole(~ggole@2001:8003:8119:7200:4cc1:e316:a6d6:5aec)
2020-09-25 08:37:47 +0200coot(~coot@37.30.52.6.nat.umts.dynamic.t-mobile.pl)
2020-09-25 08:39:21 +0200dhouthoo(~dhouthoo@ptr-eiv6509pb4ifhdr9lsd.18120a2.ip6.access.telenet.be)
2020-09-25 08:39:24 +0200thir(~thir@p200300f27f0fc60094e773283d7bf825.dip0.t-ipconnect.de) (Remote host closed the connection)
2020-09-25 08:40:17 +0200thir(~thir@p200300f27f0fc60094e773283d7bf825.dip0.t-ipconnect.de)
2020-09-25 08:41:02 +0200mounty(~mounty@2001:8000:2f59:0:4326:3e7a:dda9:8da8) (Ping timeout: 260 seconds)
2020-09-25 08:41:10 +0200knupfer(~Thunderbi@87.123.206.34)
2020-09-25 08:45:27 +0200thir(~thir@p200300f27f0fc60094e773283d7bf825.dip0.t-ipconnect.de) (Ping timeout: 260 seconds)
2020-09-25 08:46:28 +0200hackagehablog 0.7.0 - A blog system https://hackage.haskell.org/package/hablog-0.7.0 (gilmi)
2020-09-25 08:47:38 +0200Zeb1(3ed8d095@aftr-62-216-208-149.dynamic.mnet-online.de)
2020-09-25 08:50:43 +0200nbloomf(~nbloomf@2600:1700:83e0:1f40:d92:3fe8:d989:c32a) (Quit: My MacBook has gone to sleep. ZZZzzz…)
2020-09-25 08:50:54 +0200kermit1(~kermit@178.162.209.171)
2020-09-25 08:53:21 +0200polyrain(~polyrain@203.51.166.163)
2020-09-25 08:54:20 +0200banner_(~banner@116-255-17-140.ip4.superloop.com)
2020-09-25 08:54:57 +0200 <dminuoso> MarcelineVQ: The Haskell report formally calls them labeled patterns in the general case.
2020-09-25 08:55:21 +0200banner_(~banner@116-255-17-140.ip4.superloop.com) (Client Quit)
2020-09-25 08:56:36 +0200josh_(~josh@c-67-164-104-206.hsd1.ca.comcast.net)
2020-09-25 08:57:53 +0200josh_(~josh@c-67-164-104-206.hsd1.ca.comcast.net) (Remote host closed the connection)
2020-09-25 09:01:02 +0200 <glguy> > isJust Just{}
2020-09-25 09:01:04 +0200 <lambdabot> True
2020-09-25 09:01:13 +0200cfricke(~cfricke@unaffiliated/cfricke)
2020-09-25 09:01:15 +0200 <glguy> > isJust Nothing {}
2020-09-25 09:01:17 +0200 <lambdabot> False
2020-09-25 09:01:56 +0200 <glguy> Not really pattern-specific. It's record notation
2020-09-25 09:02:02 +0200ruffianeo(~ruffianeo@p200300e5271f093e83bdb6806dd36cfc.dip0.t-ipconnect.de) (Ping timeout: 260 seconds)
2020-09-25 09:04:00 +0200ahri(~ahri@178.209.40.84) (Quit: Ping timeout (120 seconds))
2020-09-25 09:04:44 +0200ahri(~ahri@178.209.40.84)
2020-09-25 09:04:56 +0200balbirs(~balbirs__@ozlabs.org) (Quit: ZNC 1.7.5+deb1 - https://znc.in)
2020-09-25 09:05:41 +0200balbirs(~balbirs__@ozlabs.org)
2020-09-25 09:05:49 +0200 <dminuoso> Mmm, this does seem a bit inconsistent. Usually a pattern matches values constructed in the same fashion
2020-09-25 09:05:59 +0200 <dminuoso> But Just{} does *not* match values exactly constructed by Just{}
2020-09-25 09:07:36 +0200merijn(~merijn@83-160-49-249.ip.xs4all.nl)
2020-09-25 09:12:05 +0200sagax(~sagax_nb@213.138.71.146) (Read error: Connection reset by peer)
2020-09-25 09:12:14 +0200 <solonarv> this is already not true for record patterns
2020-09-25 09:12:25 +0200merijn(~merijn@83-160-49-249.ip.xs4all.nl) (Ping timeout: 240 seconds)
2020-09-25 09:12:43 +0200 <solonarv> @let data Two = Two { two1 :: Int, two2 :: Int } deriving (Show, Eq, Ord)
2020-09-25 09:12:45 +0200 <lambdabot> Defined.
2020-09-25 09:13:11 +0200 <solonarv> > case Two { two1 = 1, two2 = 2 } of Two {two1 = 1} -> "ok"
2020-09-25 09:13:13 +0200 <lambdabot> "ok"
2020-09-25 09:14:50 +0200thir(~thir@p200300f27f0fc60094e773283d7bf825.dip0.t-ipconnect.de)
2020-09-25 09:15:19 +0200alexm_(~alexm_@161.8.233.138) (Remote host closed the connection)
2020-09-25 09:15:41 +0200wroathe(~wroathe@c-68-54-25-135.hsd1.mn.comcast.net)
2020-09-25 09:17:11 +0200Turmfalke(~user@unaffiliated/siracusa) (Quit: Bye!)
2020-09-25 09:17:39 +0200oish(~charlie@228.25.169.217.in-addr.arpa)
2020-09-25 09:17:48 +0200wroathe(~wroathe@c-68-54-25-135.hsd1.mn.comcast.net) (Client Quit)
2020-09-25 09:19:13 +0200mpereira(~mpereira@2a02:810d:f40:d96:5151:9344:10a3:da64) (Ping timeout: 272 seconds)
2020-09-25 09:21:33 +0200Sanchayan(~Sanchayan@171.76.101.244)
2020-09-25 09:21:55 +0200 <Axman6> > let x = x { two1 = 1 } in case x of Two{two1 = 1} -> "ok"
2020-09-25 09:21:58 +0200 <lambdabot> "*Exception: <<loop>>
2020-09-25 09:22:12 +0200thir(~thir@p200300f27f0fc60094e773283d7bf825.dip0.t-ipconnect.de) (Ping timeout: 260 seconds)
2020-09-25 09:23:27 +0200Dablyon(~godel@173.171.157.121)
2020-09-25 09:27:27 +0200danvet(~danvet@2a02:168:57f4:0:5f80:650d:c6e6:3453) (Quit: Leaving)
2020-09-25 09:28:06 +0200mmohammadi9812(~mmohammad@188.210.98.27) (Quit: I quit (╯°□°)╯︵ ┻━┻)
2020-09-25 09:31:15 +0200mirrorbird(~psutcliff@2a00:801:44a:a00b:20c3:c64:eb15:73a2)
2020-09-25 09:31:38 +0200 <solonarv> interesting, I sort of expected x = Two 1 _|_ here
2020-09-25 09:34:03 +0200raichoo(~raichoo@213.240.178.58)
2020-09-25 09:36:52 +0200alexm_(~alexm_@161.8.233.138)
2020-09-25 09:38:25 +0200alexm__(~alexm_@161.8.233.138)
2020-09-25 09:38:28 +0200GyroW_GyroW
2020-09-25 09:38:30 +0200GyroW(~GyroW@ptr-48ujrfb8c7gfd2lu92q.18120a2.ip6.access.telenet.be) (Changing host)
2020-09-25 09:38:30 +0200GyroW(~GyroW@unaffiliated/gyrow)
2020-09-25 09:39:04 +0200chaosmasttter(~chaosmast@p200300c4a7105f013091658b0e650c79.dip0.t-ipconnect.de)
2020-09-25 09:39:35 +0200TooDifficult(~TooDiffic@139.59.59.230)
2020-09-25 09:39:43 +0200alexm_(~alexm_@161.8.233.138) (Read error: Connection reset by peer)
2020-09-25 09:39:44 +0200alexm__(~alexm_@161.8.233.138) (Read error: Connection reset by peer)
2020-09-25 09:40:14 +0200alexm_(~alexm_@161.8.233.138)
2020-09-25 09:40:53 +0200vicfred(~vicfred@unaffiliated/vicfred)
2020-09-25 09:40:54 +0200alexm_(~alexm_@161.8.233.138) (Read error: Connection reset by peer)
2020-09-25 09:40:57 +0200hackagesized 0.8.0.0 - Sized sequence data-types https://hackage.haskell.org/package/sized-0.8.0.0 (HiromiIshii)
2020-09-25 09:41:21 +0200GyroWGyroW_
2020-09-25 09:41:56 +0200GyroW_GyroW__
2020-09-25 09:42:17 +0200GyroW__GyroW
2020-09-25 09:43:27 +0200hackagemmsyn6ukr 0.8.1.0 - A musical instrument synthesizer or a tool for Ukrainian language listening https://hackage.haskell.org/package/mmsyn6ukr-0.8.1.0 (OleksandrZhabenko)
2020-09-25 09:43:34 +0200John20(~John@82.46.59.122)
2020-09-25 09:45:13 +0200Dablyon(~godel@173.171.157.121) (Ping timeout: 260 seconds)
2020-09-25 09:45:58 +0200mpereira(~mpereira@2a02:810d:f40:d96:5151:9344:10a3:da64)
2020-09-25 09:46:48 +0200merijn(~merijn@83-160-49-249.ip.xs4all.nl)
2020-09-25 09:47:23 +0200sagax(~sagax_nb@213.138.71.146)
2020-09-25 09:48:28 +0200chele(~chele@ip5b416ea2.dynamic.kabel-deutschland.de)
2020-09-25 09:50:42 +0200xerox_(~xerox@unaffiliated/xerox) (Quit: leaving)
2020-09-25 09:51:08 +0200irc_user(uid423822@gateway/web/irccloud.com/x-jnkonfduxhfcxiya) (Quit: Connection closed for inactivity)
2020-09-25 09:52:00 +0200mirrorbird(~psutcliff@2a00:801:44a:a00b:20c3:c64:eb15:73a2) (Quit: Leaving)
2020-09-25 09:55:00 +0200kritzefitz(~kritzefit@fw-front.credativ.com)
2020-09-25 09:55:13 +0200Tops2(~Tobias@dyndsl-095-033-024-124.ewe-ip-backbone.de)
2020-09-25 09:56:19 +0200polyrain(~polyrain@203.51.166.163) (Quit: My MacBook has gone to sleep. ZZZzzz…)
2020-09-25 09:57:01 +0200berberman(~berberman@2408:8207:2565:18d0:584e:a9ff:fe9b:d3fe) (Quit: ZNC 1.7.5 - https://znc.in)
2020-09-25 09:57:41 +0200berberman(~berberman@2408:8207:2565:18d0::a44)
2020-09-25 09:57:58 +0200Tops21(~Tobias@dyndsl-095-033-089-153.ewe-ip-backbone.de) (Ping timeout: 272 seconds)
2020-09-25 09:58:13 +0200crobbins(~crobbins@2601:2c1:380:ec40:d96c:72da:8879:7899)
2020-09-25 09:58:52 +0200bahamas(~lucian@unaffiliated/bahamas) (Ping timeout: 260 seconds)
2020-09-25 09:58:57 +0200hackagephonetic-languages-ukrainian 0.2.1.0 - Prepares Ukrainian text to be used as a phonetic language text https://hackage.haskell.org/package/phonetic-languages-ukrainian-0.2.1.0 (OleksandrZhabenko)
2020-09-25 10:02:55 +0200shad0w_(~shad0w_@160.202.37.157) (Ping timeout: 272 seconds)
2020-09-25 10:03:16 +0200Dolly(585fd1fd@ti0203q160-5312.bb.online.no)
2020-09-25 10:03:17 +0200crobbins(~crobbins@2601:2c1:380:ec40:d96c:72da:8879:7899) (Ping timeout: 260 seconds)
2020-09-25 10:03:52 +0200tzh(~tzh@2601:448:c500:5300::82b3) (Quit: zzz)
2020-09-25 10:08:49 +0200kritzefitz(~kritzefit@fw-front.credativ.com) (Remote host closed the connection)
2020-09-25 10:11:45 +0200oish(~charlie@228.25.169.217.in-addr.arpa) (Ping timeout: 240 seconds)
2020-09-25 10:12:46 +0200atraii(~atraii@c-98-32-64-84.hsd1.ut.comcast.net) (Quit: ZNC 1.7.5 - https://znc.in)
2020-09-25 10:12:47 +0200adamwesp_(~adam_wesp@209.6.42.110) (Remote host closed the connection)
2020-09-25 10:13:08 +0200atraii(~atraii@c-98-32-64-84.hsd1.ut.comcast.net)
2020-09-25 10:13:25 +0200heatsink(~heatsink@107-136-5-69.lightspeed.sntcca.sbcglobal.net) (Remote host closed the connection)
2020-09-25 10:13:54 +0200oish(~charlie@228.25.169.217.in-addr.arpa)
2020-09-25 10:14:09 +0200adamwespiser(~adam_wesp@209.6.42.110)
2020-09-25 10:17:03 +0200dhil(~dhil@11.29.39.217.dyn.plus.net)
2020-09-25 10:21:44 +0200merijn(~merijn@83-160-49-249.ip.xs4all.nl) (Ping timeout: 260 seconds)
2020-09-25 10:23:21 +0200heatsink(~heatsink@107-136-5-69.lightspeed.sntcca.sbcglobal.net)
2020-09-25 10:25:27 +0200hackageuniqueness-periods-vector-examples 0.6.0.0 - Examples of usage for the uniqueness-periods-vector series of packages https://hackage.haskell.org/package/uniqueness-periods-vector-examples-0.6.0.0 (OleksandrZhabenko)
2020-09-25 10:28:02 +0200LKoen(~LKoen@81.255.219.130)
2020-09-25 10:28:16 +0200heatsink(~heatsink@107-136-5-69.lightspeed.sntcca.sbcglobal.net) (Ping timeout: 260 seconds)
2020-09-25 10:31:11 +0200Axman6(~Axman6@pdpc/supporter/student/Axman6) (Remote host closed the connection)
2020-09-25 10:31:30 +0200Axman6(~Axman6@pdpc/supporter/student/Axman6)
2020-09-25 10:32:21 +0200asan(~yan4138@58.37.8.8) (Ping timeout: 258 seconds)
2020-09-25 10:33:24 +0200Volt_(~Volt_@c-73-145-164-70.hsd1.mi.comcast.net) (Quit: )
2020-09-25 10:33:49 +0200heatsink(~heatsink@107-136-5-69.lightspeed.sntcca.sbcglobal.net)
2020-09-25 10:33:59 +0200ahri(~ahri@178.209.40.84) (Quit: Ping timeout (120 seconds))
2020-09-25 10:34:17 +0200asan(~yan4138@124.78.124.81)
2020-09-25 10:34:34 +0200ahri(~ahri@178.209.40.84)
2020-09-25 10:38:42 +0200heatsink(~heatsink@107-136-5-69.lightspeed.sntcca.sbcglobal.net) (Ping timeout: 256 seconds)
2020-09-25 10:39:44 +0200esp32_prog(yoann@gateway/vpn/protonvpn/esp32prog/x-46565127)
2020-09-25 10:41:13 +0200Neuromancer(~Neuromanc@unaffiliated/neuromancer) (Ping timeout: 260 seconds)
2020-09-25 10:42:17 +0200hnOsmium0001(uid453710@gateway/web/irccloud.com/x-cqejdnrmfbrsuxpt) (Quit: Connection closed for inactivity)
2020-09-25 10:44:04 +0200heatsink(~heatsink@107-136-5-69.lightspeed.sntcca.sbcglobal.net)
2020-09-25 10:45:53 +0200sw1nn(~sw1nn@2a00:23c6:2385:3a00:6623:d71f:7a29:28d2) (Quit: WeeChat 2.9)
2020-09-25 10:48:05 +0200heatsink(~heatsink@107-136-5-69.lightspeed.sntcca.sbcglobal.net) (Ping timeout: 240 seconds)
2020-09-25 10:48:19 +0200wonko7(~wonko7@2a01:e35:2ffb:7040:8c5f:831a:4acc:45dd)
2020-09-25 10:49:16 +0200drbean(~drbean@TC210-63-209-146.static.apol.com.tw) (Ping timeout: 272 seconds)
2020-09-25 10:50:19 +0200merijn(~merijn@83-160-49-249.ip.xs4all.nl)
2020-09-25 10:54:07 +0200heatsink(~heatsink@107-136-5-69.lightspeed.sntcca.sbcglobal.net)
2020-09-25 10:54:33 +0200Saten-san(~Saten-san@ip-213-49-123-127.dsl.scarlet.be)
2020-09-25 10:55:23 +0200thc202(~thc202@unaffiliated/thc202)
2020-09-25 10:55:30 +0200cosimone(~cosimone@2001:b07:ae5:db26:b248:7aff:feea:34b6)
2020-09-25 10:55:32 +0200merijn(~merijn@83-160-49-249.ip.xs4all.nl) (Ping timeout: 256 seconds)
2020-09-25 10:57:19 +0200Sgeo_(~Sgeo@ool-18b982ad.dyn.optonline.net) (Read error: Connection reset by peer)
2020-09-25 10:58:11 +0200heatsink(~heatsink@107-136-5-69.lightspeed.sntcca.sbcglobal.net) (Ping timeout: 240 seconds)
2020-09-25 11:00:02 +0200kermit1(~kermit@178.162.209.171) ()
2020-09-25 11:03:21 +0200Guest_73(968f72e6@230.114.143.150.dyn.plus.net)
2020-09-25 11:03:47 +0200aarvar(~foewfoiew@50.35.43.33) (Ping timeout: 258 seconds)
2020-09-25 11:04:11 +0200heatsink(~heatsink@107-136-5-69.lightspeed.sntcca.sbcglobal.net)
2020-09-25 11:04:33 +0200oish(~charlie@228.25.169.217.in-addr.arpa) (Ping timeout: 260 seconds)
2020-09-25 11:04:35 +0200filwisher(~filwisher@cpc76738-dals23-2-0-cust186.20-2.cable.virginm.net)
2020-09-25 11:06:08 +0200oish(~charlie@228.25.169.217.in-addr.arpa)
2020-09-25 11:06:19 +0200mounty(~mounty@n49-198-160-249.mrk1.qld.optusnet.com.au)
2020-09-25 11:07:32 +0200Zeb1(3ed8d095@aftr-62-216-208-149.dynamic.mnet-online.de) (Remote host closed the connection)
2020-09-25 11:07:37 +0200snakemasterflex(~snakemast@213.100.206.23) (Ping timeout: 246 seconds)
2020-09-25 11:08:40 +0200heatsink(~heatsink@107-136-5-69.lightspeed.sntcca.sbcglobal.net) (Ping timeout: 246 seconds)
2020-09-25 11:11:17 +0200cpressey(~cpressey@79-72-202-6.dynamic.dsl.as9105.com)
2020-09-25 11:13:28 +0200carlomagno(~cararell@inet-hqmc02-o.oracle.com)
2020-09-25 11:13:55 +0200asan(~yan4138@124.78.124.81) (Remote host closed the connection)
2020-09-25 11:13:55 +0200mounty(~mounty@n49-198-160-249.mrk1.qld.optusnet.com.au) (Ping timeout: 246 seconds)
2020-09-25 11:14:24 +0200heatsink(~heatsink@107-136-5-69.lightspeed.sntcca.sbcglobal.net)
2020-09-25 11:14:27 +0200Saten-san(~Saten-san@ip-213-49-123-127.dsl.scarlet.be) (Quit: WeeChat 2.8)
2020-09-25 11:14:35 +0200mounty(~mounty@mail.nextgenerationvoice.com.au)
2020-09-25 11:15:14 +0200DavidEichmann(~david@43.240.198.146.dyn.plus.net)
2020-09-25 11:16:07 +0200cosimone(~cosimone@2001:b07:ae5:db26:b248:7aff:feea:34b6) (Read error: Connection reset by peer)
2020-09-25 11:16:48 +0200elliott_(~elliott_@pool-100-36-54-163.washdc.fios.verizon.net) (Ping timeout: 260 seconds)
2020-09-25 11:16:50 +0200cosimone(~cosimone@93-47-228-249.ip115.fastwebnet.it)
2020-09-25 11:17:08 +0200carlomagno1(~cararell@inet-hqmc01-o.oracle.com) (Ping timeout: 272 seconds)
2020-09-25 11:19:02 +0200heatsink(~heatsink@107-136-5-69.lightspeed.sntcca.sbcglobal.net) (Ping timeout: 265 seconds)
2020-09-25 11:19:35 +0200snakemasterflex(~snakemast@213.100.206.23)
2020-09-25 11:21:47 +0200TooDifficult(~TooDiffic@139.59.59.230) (Quit: TooDifficult)
2020-09-25 11:21:55 +0200sw1nn(~sw1nn@host86-157-211-183.range86-157.btcentralplus.com)
2020-09-25 11:22:32 +0200merijn(~merijn@83-160-49-249.ip.xs4all.nl)
2020-09-25 11:24:16 +0200asan(~yan4138@58.37.8.8)
2020-09-25 11:24:30 +0200heatsink(~heatsink@107-136-5-69.lightspeed.sntcca.sbcglobal.net)
2020-09-25 11:26:54 +0200elliott_(~elliott_@pool-100-36-54-163.washdc.fios.verizon.net)
2020-09-25 11:27:55 +0200shad0w_(~shad0w_@160.202.37.157)
2020-09-25 11:28:45 +0200heatsink(~heatsink@107-136-5-69.lightspeed.sntcca.sbcglobal.net) (Ping timeout: 240 seconds)
2020-09-25 11:29:28 +0200acidjnk_new2(~acidjnk@p200300d0c723780230ffb87e65cc7e0f.dip0.t-ipconnect.de)
2020-09-25 11:30:45 +0200asan(~yan4138@58.37.8.8) (Ping timeout: 240 seconds)
2020-09-25 11:32:43 +0200asan(~yan4138@124.78.5.33)
2020-09-25 11:33:45 +0200justsomeguy(~justsomeg@unaffiliated/--/x-3805311)
2020-09-25 11:34:08 +0200 <justsomeguy> Is there a function like (!!) that also works for negative indices?
2020-09-25 11:37:24 +0200 <Rembane> justsomeguy: When you do let xs = [1,2,3,4] in xs !! (-2), what result do you expect?
2020-09-25 11:37:34 +0200 <justsomeguy> 3
2020-09-25 11:37:41 +0200Guest_73(968f72e6@230.114.143.150.dyn.plus.net) (Remote host closed the connection)
2020-09-25 11:38:17 +0200 <solonarv> ah, indexing from the other end like python does?
2020-09-25 11:38:24 +0200breezykermo(~breezyker@p200300ed5f114200c95d7bbe0250101c.dip0.t-ipconnect.de)
2020-09-25 11:38:50 +0200 <Rembane> justsomeguy: You can do let f i xs = xs !! (length xs + i)
2020-09-25 11:38:56 +0200 <Rembane> justsomeguy: But it's incredibly expensive.
2020-09-25 11:38:58 +0200 <Jajik> then reverse it and use (!!) . abs, but the list is not the best structure for that
2020-09-25 11:39:28 +0200 <justsomeguy> Should I be using Data.Array, instead? (...and does it support negative indices?)
2020-09-25 11:39:56 +0200 <justsomeguy> solonarv: Exactly. I had pythons subscript notation in mind.
2020-09-25 11:39:56 +0200 <solonarv> if you want to index to arbitrary positions (especially near the end), you probably shouldn't be using lists, yes
2020-09-25 11:40:06 +0200 <MarcelineVQ> if you need arbitrary indexing vector or array will serve you better, on a list of 4 items I wouldn't sweat the small stuff
2020-09-25 11:40:11 +0200 <Rembane> justsomeguy: Use Data.Vector, it has a nicer API
2020-09-25 11:40:33 +0200 <solonarv> array or vector have efficient indexing (I recommend vector due to the nicer API, especially if you only care about Int indexes)
2020-09-25 11:40:52 +0200 <solonarv> it doesn't have this "wraparound" indexing but you can easily build it
2020-09-25 11:41:02 +0200ericsagnes(~ericsagne@2405:6580:0:5100:bc6f:f4f1:b8da:13b1) (Ping timeout: 260 seconds)
2020-09-25 11:41:57 +0200 <solonarv> xs !* n | n < 0 = xs ! (n + length xs) ; otherwise = xs ! n
2020-09-25 11:43:03 +0200plutoniix(~q@175.176.222.7) (Ping timeout: 260 seconds)
2020-09-25 11:44:56 +0200heatsink(~heatsink@107-136-5-69.lightspeed.sntcca.sbcglobal.net)
2020-09-25 11:49:05 +0200heatsink(~heatsink@107-136-5-69.lightspeed.sntcca.sbcglobal.net) (Ping timeout: 240 seconds)
2020-09-25 11:49:30 +0200graf_blutwurst(~user@2a02:168:49bc:0:c5c0:f87b:998c:4a07)
2020-09-25 11:50:42 +0200olligobber(olligobber@gateway/vpn/privateinternetaccess/olligobber) (Ping timeout: 272 seconds)
2020-09-25 11:50:54 +0200 <phadej> what [1,2,3,4] !! -10 would do?
2020-09-25 11:51:24 +0200thir(~thir@p200300f27f0fc60094e773283d7bf825.dip0.t-ipconnect.de)
2020-09-25 11:51:27 +0200 <phadej> generally, I consider !! a smell in Haskell.
2020-09-25 11:53:17 +0200ericsagnes(~ericsagne@2405:6580:0:5100:572:c294:99c1:7d20)
2020-09-25 11:54:17 +0200Dolly(585fd1fd@ti0203q160-5312.bb.online.no) (Remote host closed the connection)
2020-09-25 11:54:23 +0200 <MarcelineVQ> that's the entire definition, modulo modulo
2020-09-25 11:55:47 +0200juuandyy(~juuandyy@90.166.144.65)
2020-09-25 11:55:49 +0200plutoniix(~q@175.176.222.7)
2020-09-25 11:55:52 +0200thir(~thir@p200300f27f0fc60094e773283d7bf825.dip0.t-ipconnect.de) (Ping timeout: 260 seconds)
2020-09-25 11:56:40 +0200merijn(~merijn@83-160-49-249.ip.xs4all.nl) (Ping timeout: 256 seconds)
2020-09-25 11:57:16 +0200juuandyy(~juuandyy@90.166.144.65) (Client Quit)
2020-09-25 11:59:12 +0200mirrorbird(~psutcliff@2a00:801:44a:a00b:20c3:c64:eb15:73a2)
2020-09-25 12:00:02 +0200Dolly(585fd1fd@ti0203q160-5312.bb.online.no)
2020-09-25 12:00:46 +0200bahamas(~lucian@unaffiliated/bahamas)
2020-09-25 12:02:33 +0200graf_blutwurst(~user@2a02:168:49bc:0:c5c0:f87b:998c:4a07) (Remote host closed the connection)
2020-09-25 12:02:36 +0200olligobber(olligobber@gateway/vpn/privateinternetaccess/olligobber)
2020-09-25 12:03:26 +0200plutoniix(~q@175.176.222.7) (Quit: Leaving)
2020-09-25 12:03:33 +0200graf_blutwurst(~user@2a02:168:49bc:0:c5c0:f87b:998c:4a07)
2020-09-25 12:04:12 +0200xerox_(~xerox@unaffiliated/xerox)
2020-09-25 12:05:57 +0200acidjnk_new2(~acidjnk@p200300d0c723780230ffb87e65cc7e0f.dip0.t-ipconnect.de) (Read error: Connection reset by peer)
2020-09-25 12:10:18 +0200 <maerwald> there's no forkFinally equivalent in async?
2020-09-25 12:11:15 +0200dhil(~dhil@11.29.39.217.dyn.plus.net) (Ping timeout: 258 seconds)
2020-09-25 12:13:22 +0200adamwespiser(~adam_wesp@209.6.42.110) (Remote host closed the connection)
2020-09-25 12:13:29 +0200shad0w_(~shad0w_@160.202.37.157) (Remote host closed the connection)
2020-09-25 12:13:39 +0200shatriff(~vitaliish@176.52.219.10) (Remote host closed the connection)
2020-09-25 12:13:45 +0200berberman(~berberman@2408:8207:2565:18d0::a44) (Quit: ZNC 1.7.5 - https://znc.in)
2020-09-25 12:13:54 +0200adamwespiser(~adam_wesp@209.6.42.110)
2020-09-25 12:13:55 +0200shatriff(~vitaliish@176.52.219.10)
2020-09-25 12:14:24 +0200berberman(~berberman@2408:8207:2565:18d0::a44)
2020-09-25 12:15:58 +0200graf_blutwurst(~user@2a02:168:49bc:0:c5c0:f87b:998c:4a07) (Remote host closed the connection)
2020-09-25 12:16:35 +0200graf_blutwurst(~user@2a02:168:49bc:0:c5c0:f87b:998c:4a07)
2020-09-25 12:17:09 +0200graf_blutwurst(~user@2a02:168:49bc:0:c5c0:f87b:998c:4a07) (Remote host closed the connection)
2020-09-25 12:18:34 +0200adamwespiser(~adam_wesp@209.6.42.110) (Ping timeout: 272 seconds)
2020-09-25 12:20:42 +0200graf_blutwurst(~user@2a02:168:49bc:0:912e:27da:c3bb:51ac)
2020-09-25 12:20:53 +0200cpressey(~cpressey@79-72-202-6.dynamic.dsl.as9105.com) (Quit: WeeChat 1.9.1)
2020-09-25 12:21:24 +0200Kaeipi(~Kaiepi@nwcsnbsc03w-47-55-157-9.dhcp-dynamic.fibreop.nb.bellaliant.net) (Remote host closed the connection)
2020-09-25 12:21:27 +0200hackageZ-IO 0.1.1.2 - Simple and high performance IO toolkit for Haskell https://hackage.haskell.org/package/Z-IO-0.1.1.2 (winterland)
2020-09-25 12:21:28 +0200Merfont(~Kaiepi@nwcsnbsc03w-47-55-157-9.dhcp-dynamic.fibreop.nb.bellaliant.net)
2020-09-25 12:21:39 +0200toorevitimirp(~tooreviti@117.182.182.201) (Remote host closed the connection)
2020-09-25 12:25:19 +0200justmay1(~justmay@178.239.168.171)
2020-09-25 12:26:46 +0200Sanchayan(~Sanchayan@171.76.101.244) (Quit: leaving)
2020-09-25 12:29:02 +0200bahamas(~lucian@unaffiliated/bahamas) (Ping timeout: 256 seconds)
2020-09-25 12:30:03 +0200ChaiTRex(~ChaiTRex@gateway/tor-sasl/chaitrex) (Ping timeout: 240 seconds)
2020-09-25 12:30:21 +0200merijn(~merijn@83-160-49-249.ip.xs4all.nl)
2020-09-25 12:32:35 +0200ChaiTRex(~ChaiTRex@gateway/tor-sasl/chaitrex)
2020-09-25 12:34:37 +0200vritser(~user@103.6.84.82)
2020-09-25 12:35:12 +0200vritser(~user@103.6.84.82) ("ERC (IRC client for Emacs 28.0.50)")
2020-09-25 12:35:28 +0200merijn(~merijn@83-160-49-249.ip.xs4all.nl) (Ping timeout: 246 seconds)
2020-09-25 12:36:53 +0200Saten-san(~Saten-san@ip-62-235-73-121.dsl.scarlet.be)
2020-09-25 12:37:41 +0200asan(~yan4138@124.78.5.33) (Ping timeout: 256 seconds)
2020-09-25 12:38:03 +0200asan(~yan4138@124.78.124.81)
2020-09-25 12:40:14 +0200Mahdi(5bfb1927@91.251.25.39)
2020-09-25 12:41:41 +0200Mahdi(5bfb1927@91.251.25.39) (Remote host closed the connection)
2020-09-25 12:42:31 +0200ericsagnes(~ericsagne@2405:6580:0:5100:572:c294:99c1:7d20) (Ping timeout: 272 seconds)
2020-09-25 12:43:22 +0200dcoutts_dcoutts
2020-09-25 12:43:42 +0200chaosmasttter(~chaosmast@p200300c4a7105f013091658b0e650c79.dip0.t-ipconnect.de) (Ping timeout: 260 seconds)
2020-09-25 12:43:53 +0200graf_blutwurst(~user@2a02:168:49bc:0:912e:27da:c3bb:51ac) (Remote host closed the connection)
2020-09-25 12:45:41 +0200heatsink(~heatsink@107-136-5-69.lightspeed.sntcca.sbcglobal.net)
2020-09-25 12:46:00 +0200graf_blutwurst(~user@2a02:168:49bc:0:3913:91f3:2eab:769)
2020-09-25 12:47:01 +0200rprije(~rprije@27.143.220.203.dial.dynamic.acc01-myal-dub.comindico.com.au) (Ping timeout: 264 seconds)
2020-09-25 12:49:46 +0200barzo(~sosal@95.70.181.226)
2020-09-25 12:50:14 +0200heatsink(~heatsink@107-136-5-69.lightspeed.sntcca.sbcglobal.net) (Ping timeout: 272 seconds)
2020-09-25 12:54:07 +0200ericsagnes(~ericsagne@2405:6580:0:5100:4407:fff6:2258:7a65)
2020-09-25 12:55:07 +0200 <maralorn> That reminds me of the horrible time I worked with a custom language for evaluating measurements of certain measurement devices written by the vendor. In there arrays where the primary data structure for stuff like time series of an oscilloscope.
2020-09-25 12:56:03 +0200 <maralorn> I lost at least on day to debugging, before I learnad that their indexing operator gave you the last element of an array when you gave it an out-of-bounds index (silently without any error message).
2020-09-25 12:57:01 +0200 <maralorn> I don‘t want to know how many published experimental results are secretly wrong because of that crazy language design decision. /o\
2020-09-25 12:59:33 +0200bloodstalker(~bloodstal@46.166.187.178) (Ping timeout: 258 seconds)
2020-09-25 13:00:52 +0200Gurkenglas(~Gurkengla@unaffiliated/gurkenglas)
2020-09-25 13:01:14 +0200dhil(~dhil@11.29.39.217.dyn.plus.net)
2020-09-25 13:03:24 +0200ahri(~ahri@178.209.40.84) (Quit: Ping timeout (120 seconds))
2020-09-25 13:03:26 +0200merijn(~merijn@83-160-49-249.ip.xs4all.nl)
2020-09-25 13:03:55 +0200ahri(~ahri@178.209.40.84)
2020-09-25 13:05:47 +0200heatsink(~heatsink@107-136-5-69.lightspeed.sntcca.sbcglobal.net)
2020-09-25 13:06:29 +0200bloodstalker(~bloodstal@46.166.187.178)
2020-09-25 13:10:10 +0200hyiltiz-M(hyiltizkde@gateway/shell/kde/matrix/x-nddutmibnpfeonkf)
2020-09-25 13:10:33 +0200heatsink(~heatsink@107-136-5-69.lightspeed.sntcca.sbcglobal.net) (Ping timeout: 260 seconds)
2020-09-25 13:11:32 +0200wei2912(~wei2912@unaffiliated/wei2912) (Quit: Lost terminal)
2020-09-25 13:13:56 +0200howdoi(uid224@gateway/web/irccloud.com/x-pmfgngzmblrpwuzc) (Quit: Connection closed for inactivity)
2020-09-25 13:14:16 +0200Saten-san(~Saten-san@ip-62-235-73-121.dsl.scarlet.be) (Quit: WeeChat 2.8)
2020-09-25 13:16:02 +0200heatsink(~heatsink@107-136-5-69.lightspeed.sntcca.sbcglobal.net)
2020-09-25 13:16:34 +0200 <dminuoso> Mmm, I wish more code would be written MonadIO polymorphic. :(
2020-09-25 13:17:00 +0200 <dminuoso> The amount of liftIO sprinkling is getting somewhat annoying
2020-09-25 13:17:05 +0200catkiki(~kiki@m90-134-157-227.cust.tele2.hr)
2020-09-25 13:17:34 +0200catkiki(~kiki@m90-134-157-227.cust.tele2.hr) (Client Quit)
2020-09-25 13:18:32 +0200 <kenran> dminuoso: I second that...
2020-09-25 13:18:54 +0200tomku(~tomku@unaffiliated/tomku) (Ping timeout: 265 seconds)
2020-09-25 13:19:07 +0200catkiki(~catkiki@m90-134-157-227.cust.tele2.hr)
2020-09-25 13:20:45 +0200heatsink(~heatsink@107-136-5-69.lightspeed.sntcca.sbcglobal.net) (Ping timeout: 256 seconds)
2020-09-25 13:22:42 +0200Dolly(585fd1fd@ti0203q160-5312.bb.online.no) (Remote host closed the connection)
2020-09-25 13:23:05 +0200p3n(~p3n@2a00:19a0:3:7c:0:d9c6:7cf6:1) (Remote host closed the connection)
2020-09-25 13:26:08 +0200heatsink(~heatsink@107-136-5-69.lightspeed.sntcca.sbcglobal.net)
2020-09-25 13:26:33 +0200graf_blutwurst(~user@2a02:168:49bc:0:3913:91f3:2eab:769) (Remote host closed the connection)
2020-09-25 13:28:09 +0200Neuromancer(~Neuromanc@unaffiliated/neuromancer)
2020-09-25 13:30:29 +0200hekkaidekapus_(~tchouri@gateway/tor-sasl/hekkaidekapus)
2020-09-25 13:30:36 +0200heatsink(~heatsink@107-136-5-69.lightspeed.sntcca.sbcglobal.net) (Ping timeout: 258 seconds)
2020-09-25 13:33:43 +0200hekkaidekapus(~tchouri@gateway/tor-sasl/hekkaidekapus) (Ping timeout: 240 seconds)
2020-09-25 13:36:12 +0200heatsink(~heatsink@107-136-5-69.lightspeed.sntcca.sbcglobal.net)
2020-09-25 13:39:53 +0200v_m_v(~vm_v@2a02:aa12:3200:6480:f507:71a:9334:3099)
2020-09-25 13:40:54 +0200heatsink(~heatsink@107-136-5-69.lightspeed.sntcca.sbcglobal.net) (Ping timeout: 272 seconds)
2020-09-25 13:43:22 +0200asan(~yan4138@124.78.124.81) (Ping timeout: 246 seconds)
2020-09-25 13:44:17 +0200drbean(~drbean@TC210-63-209-157.static.apol.com.tw)
2020-09-25 13:46:09 +0200 <maerwald> don't use transformers
2020-09-25 13:46:11 +0200 <maerwald> :p
2020-09-25 13:46:22 +0200heatsink(~heatsink@107-136-5-69.lightspeed.sntcca.sbcglobal.net)
2020-09-25 13:46:47 +0200 <[exa]> isn't this "solved" in some of the alternative preludes? (rererebase?)
2020-09-25 13:46:54 +0200Stanley00(~stanley00@unaffiliated/stanley00) ()
2020-09-25 13:47:21 +0200fendor_fendor
2020-09-25 13:49:50 +0200alexm_(~alexm_@161.8.233.138)
2020-09-25 13:49:55 +0200dxld(~dxld@2a01:4f8:201:89ff:7479:df6a:7ab8:8305) (Remote host closed the connection)
2020-09-25 13:50:15 +0200dxld(~dxld@80-109-136-248.cable.dynamic.surfer.at)
2020-09-25 13:50:31 +0200 <maerwald> transformers look like an effects DLS, but they feel like an OOP pattern
2020-09-25 13:51:01 +0200 <dminuoso> maerwald: This has nothing to do with transformers.
2020-09-25 13:51:13 +0200heatsink(~heatsink@107-136-5-69.lightspeed.sntcca.sbcglobal.net) (Ping timeout: 264 seconds)
2020-09-25 13:51:27 +0200 <maerwald> how so?
2020-09-25 13:51:49 +0200 <dminuoso> [exa]: an alternative prelude would give you huge transitive dependency footprints if this is done widely
2020-09-25 13:51:56 +0200 <dminuoso> My beef is not just with base, but packages in general.
2020-09-25 13:52:10 +0200 <maerwald> why are you using liftIO if you don't have any transformers in your code
2020-09-25 13:52:20 +0200 <fendor> can I derive Monoid and Semigroup for a datatype where all fields are an instance of semigroup and monoid?
2020-09-25 13:52:33 +0200merijn(~merijn@83-160-49-249.ip.xs4all.nl) (Ping timeout: 260 seconds)
2020-09-25 13:53:31 +0200 <dminuoso> maerwald: You can write monads yourself too.
2020-09-25 13:53:48 +0200 <phadej> fendor: yes, look at semigroups Data.Semigroup.Generic
2020-09-25 13:54:10 +0200 <fendor> phadej, thanks!
2020-09-25 13:54:14 +0200 <dminuoso> fendor: generic-deriving has the facilities
2020-09-25 13:54:26 +0200 <[exa]> dminuoso: i said it's "solved" :]
2020-09-25 13:54:33 +0200 <maerwald> dminuoso: yes, you can write transformers yourself
2020-09-25 13:54:34 +0200 <dminuoso> heh fair
2020-09-25 13:55:16 +0200 <maerwald> but you don't seem to want to disclose what you're doing, so I'm not gonna pull it out of your nose :p
2020-09-25 13:55:27 +0200 <dminuoso> maerwald: A transformer is a higher order utility to transform monads into monads. If I just create a data type myself, Im not using any transformer, am IO?
2020-09-25 13:55:53 +0200 <dminuoso> Oh hah. That muscle memory tricked me into writing IO.
2020-09-25 13:56:32 +0200heatsink(~heatsink@107-136-5-69.lightspeed.sntcca.sbcglobal.net)
2020-09-25 13:57:57 +0200 <maerwald> dminuoso: you're writing an instance of MonadIO? Then you have a transformer
2020-09-25 13:59:17 +0200 <dminuoso> maerwald: `ReaderT e` is a transformer. Neither the type `ReaderT Env IO`, nor a type isomorphic to `ReaderT Env IO` is a transformer.
2020-09-25 13:59:23 +0200brewmarche(~brewmarch@2001:a61:2baa:3c01:21f7:ab4a:9163:f6e0)
2020-09-25 13:59:44 +0200 <maerwald> "Instances should satisfy the following laws, which state that liftIO is a transformer of monads"
2020-09-25 14:00:01 +0200justmay1(~justmay@178.239.168.171) ()
2020-09-25 14:01:10 +0200heatsink(~heatsink@107-136-5-69.lightspeed.sntcca.sbcglobal.net) (Ping timeout: 272 seconds)
2020-09-25 14:01:24 +0200 <dminuoso> Is that not rather a monad homomorphism?
2020-09-25 14:02:03 +0200 <dminuoso> The documentation seems just a bit off
2020-09-25 14:03:01 +0200zacts(~zacts@dragora/developer/zacts)
2020-09-25 14:06:41 +0200heatsink(~heatsink@107-136-5-69.lightspeed.sntcca.sbcglobal.net)
2020-09-25 14:07:25 +0200toorevitimirp(~tooreviti@117.182.182.201)
2020-09-25 14:08:26 +0200urodna(~urodna@unaffiliated/urodna)
2020-09-25 14:09:15 +0200sand_dull(~theuser@62.182.99.37)
2020-09-25 14:09:28 +0200John20(~John@82.46.59.122) (Ping timeout: 260 seconds)
2020-09-25 14:10:16 +0200olligobber(olligobber@gateway/vpn/privateinternetaccess/olligobber) (Remote host closed the connection)
2020-09-25 14:11:32 +0200heatsink(~heatsink@107-136-5-69.lightspeed.sntcca.sbcglobal.net) (Ping timeout: 256 seconds)
2020-09-25 14:12:58 +0200shad0w_(~shad0w_@160.202.37.157)
2020-09-25 14:13:04 +0200Erato(585fd1fd@ti0203q160-5312.bb.online.no)
2020-09-25 14:15:15 +0200 <AWizzArd> I am using the nix-shell to produce a development environment. But it’s only a thin layer, I still rely on my OS offering tools. So my shell is not --pure and I expect that for example Emacs is available.
2020-09-25 14:15:19 +0200 <AWizzArd> At some point though I want to use Nix (not necessarily its shell) to produce a Docker image for me.
2020-09-25 14:15:23 +0200 <AWizzArd> Now I want to use SSL and will need cacerts in the resulting docker images. In an Ubuntu-based Dockerfile I would apt install ca-certificates.
2020-09-25 14:15:27 +0200 <AWizzArd> So I will have to teach Nix that the standard certs are a dependency for my app. Doesn’t that mean that those certs will *also* be available in my nix-shell?
2020-09-25 14:16:24 +0200st8less(~st8less@2603:a060:11fe:0:b0dd:9d1b:8825:d363)
2020-09-25 14:16:54 +0200heatsink(~heatsink@107-136-5-69.lightspeed.sntcca.sbcglobal.net)
2020-09-25 14:19:41 +0200merijn(~merijn@83-160-49-249.ip.xs4all.nl)
2020-09-25 14:20:41 +0200The20YearIRCloud(~The20Year@185.163.110.116)
2020-09-25 14:21:15 +0200heatsink(~heatsink@107-136-5-69.lightspeed.sntcca.sbcglobal.net) (Ping timeout: 265 seconds)
2020-09-25 14:22:00 +0200bitmapper(uid464869@gateway/web/irccloud.com/x-fwqmglpbkrhstmiw) (Quit: Connection closed for inactivity)
2020-09-25 14:24:40 +0200merijn(~merijn@83-160-49-249.ip.xs4all.nl) (Ping timeout: 246 seconds)
2020-09-25 14:25:01 +0200Neuromancer(~Neuromanc@unaffiliated/neuromancer) (Ping timeout: 246 seconds)
2020-09-25 14:25:27 +0200The20YearIRCloud(~The20Year@185.163.110.116) (Remote host closed the connection)
2020-09-25 14:25:46 +0200solonarv(~solonarv@anancy-653-1-63-100.w109-217.abo.wanadoo.fr) (Quit: Lost terminal)
2020-09-25 14:26:39 +0200hekkaidekapus_hekkaidekapus
2020-09-25 14:26:58 +0200heatsink(~heatsink@107-136-5-69.lightspeed.sntcca.sbcglobal.net)
2020-09-25 14:27:39 +0200solonarv(~solonarv@anancy-653-1-63-100.w109-217.abo.wanadoo.fr)
2020-09-25 14:27:45 +0200kuribas(~user@ptr-25vy0i80qh4go15t39e.18120a2.ip6.access.telenet.be)
2020-09-25 14:28:33 +0200ruffianeo(~ruffianeo@p200300e5271f09cf8b4d140a1c554ebc.dip0.t-ipconnect.de)
2020-09-25 14:28:52 +0200 <kuribas> how do I add a package in a ghci session?
2020-09-25 14:29:25 +0200 <hekkaidekapus> :set -package
2020-09-25 14:30:05 +0200ryansmccoy(~ryansmcco@193.37.254.27) (Ping timeout: 240 seconds)
2020-09-25 14:30:18 +0200 <maerwald> AWizzArd: there's a nixos channel
2020-09-25 14:30:46 +0200 <AWizzArd> maerwald: and this is where I just repeated/reframed this question :)
2020-09-25 14:30:56 +0200oxide(~lambda@unaffiliated/mclaren) (Ping timeout: 272 seconds)
2020-09-25 14:31:10 +0200ryansmccoy(~ryansmcco@193.37.254.27)
2020-09-25 14:31:35 +0200heatsink(~heatsink@107-136-5-69.lightspeed.sntcca.sbcglobal.net) (Ping timeout: 256 seconds)
2020-09-25 14:31:36 +0200 <AWizzArd> maerwald: tho I also would like to hear/read inputs of other Haskellers about how they work with Nix. Is that style "correct"? Do you specify the deps you need, run a nix-shell and from IT then start your ide?
2020-09-25 14:31:37 +0200 <kuribas> hekkaidekapus: thanks, that works :)
2020-09-25 14:31:53 +0200 <hekkaidekapus> o/
2020-09-25 14:31:59 +0200Mcdukc(~oleg@90.255.27.8)
2020-09-25 14:32:40 +0200oxide(~lambda@unaffiliated/mclaren)
2020-09-25 14:33:38 +0200sand_dull(~theuser@62.182.99.37) (Ping timeout: 256 seconds)
2020-09-25 14:33:47 +0200ahri(~ahri@178.209.40.84) (Quit: Ping timeout (120 seconds))
2020-09-25 14:34:37 +0200ahri(~ahri@178.209.40.84)
2020-09-25 14:34:38 +0200AlterEgo-(~ladew@124-198-158-163.dynamic.caiway.nl)
2020-09-25 14:36:59 +0200heatsink(~heatsink@107-136-5-69.lightspeed.sntcca.sbcglobal.net)
2020-09-25 14:41:37 +0200heatsink(~heatsink@107-136-5-69.lightspeed.sntcca.sbcglobal.net) (Ping timeout: 264 seconds)
2020-09-25 14:43:28 +0200coot(~coot@37.30.52.6.nat.umts.dynamic.t-mobile.pl) (Quit: coot)
2020-09-25 14:45:25 +0200noctux(~noctux@unaffiliated/noctux) (Ping timeout: 240 seconds)
2020-09-25 14:46:22 +0200AWizzArd(~code@unaffiliated/awizzard) (Ping timeout: 246 seconds)
2020-09-25 14:47:09 +0200heatsink(~heatsink@107-136-5-69.lightspeed.sntcca.sbcglobal.net)
2020-09-25 14:47:51 +0200brewmarche(~brewmarch@2001:a61:2baa:3c01:21f7:ab4a:9163:f6e0) (Quit: Leaving)
2020-09-25 14:47:57 +0200hackagephonetic-languages-ukrainian 0.2.2.0 - Prepares Ukrainian text to be used as a phonetic language text https://hackage.haskell.org/package/phonetic-languages-ukrainian-0.2.2.0 (OleksandrZhabenko)
2020-09-25 14:51:49 +0200heatsink(~heatsink@107-136-5-69.lightspeed.sntcca.sbcglobal.net) (Ping timeout: 264 seconds)
2020-09-25 14:53:53 +0200Saten-san(~Saten-san@ip-62-235-73-121.dsl.scarlet.be)
2020-09-25 14:54:33 +0200 <Unhammer> anyone using IHP here? I don't understand how to do a nested Include/fetchRelated
2020-09-25 14:55:05 +0200jespada(~jespada@90.254.241.6) (Ping timeout: 265 seconds)
2020-09-25 14:55:38 +0200John20(~John@82.46.59.122)
2020-09-25 14:56:04 +0200 <Unhammer> say, in the First Project guide you wanted to add post categories, but show comments on the category index page – can one do something like `Include "comments" (Include "posts" Category)` ?
2020-09-25 14:56:19 +0200Aquazi(uid312403@gateway/web/irccloud.com/x-ppgacbnpjvcoyxiy)
2020-09-25 14:57:24 +0200heatsink(~heatsink@107-136-5-69.lightspeed.sntcca.sbcglobal.net)
2020-09-25 14:57:27 +0200jespada(~jespada@90.254.241.6)
2020-09-25 14:59:27 +0200merijn(~merijn@83-160-49-249.ip.xs4all.nl)
2020-09-25 15:00:01 +0200cosimone_(~cosimone@93-47-228-249.ip115.fastwebnet.it)
2020-09-25 15:00:27 +0200hackageuniqueness-periods-vector-examples 0.6.1.0 - Examples of usage for the uniqueness-periods-vector series of packages https://hackage.haskell.org/package/uniqueness-periods-vector-examples-0.6.1.0 (OleksandrZhabenko)
2020-09-25 15:01:51 +0200heatsink(~heatsink@107-136-5-69.lightspeed.sntcca.sbcglobal.net) (Ping timeout: 265 seconds)
2020-09-25 15:02:20 +0200cosimone(~cosimone@93-47-228-249.ip115.fastwebnet.it) (Ping timeout: 265 seconds)
2020-09-25 15:03:23 +0200cpressey(~cpressey@79-72-202-6.dynamic.dsl.as9105.com)
2020-09-25 15:04:04 +0200toorevitimirp(~tooreviti@117.182.182.201) (Ping timeout: 260 seconds)
2020-09-25 15:07:13 +0200bahamas(~lucian@unaffiliated/bahamas)
2020-09-25 15:07:29 +0200heatsink(~heatsink@107-136-5-69.lightspeed.sntcca.sbcglobal.net)
2020-09-25 15:10:12 +0200 <maerwald> is there an easy way to programmatically figure out if a package is on hackage? (preferably via the local index)
2020-09-25 15:10:23 +0200hyperisco(~hyperisco@d192-186-117-226.static.comm.cgocable.net)
2020-09-25 15:12:09 +0200 <Unhammer> hm, was easier to just define my own view type, e.g. a single category page is
2020-09-25 15:12:11 +0200 <Unhammer> data ShowView = ShowView { posts :: [Include "comments" Post], title :: Text }
2020-09-25 15:12:13 +0200 <Unhammer> and manually make that in ShowCategoryAction
2020-09-25 15:12:14 +0200heatsink(~heatsink@107-136-5-69.lightspeed.sntcca.sbcglobal.net) (Ping timeout: 256 seconds)
2020-09-25 15:12:29 +0200bitmagie(~Thunderbi@200116b8065d560030e19c72082b8700.dip.versatel-1u1.de)
2020-09-25 15:13:37 +0200 <fendor> maerwald, there is hackage-index https://github.com/haskell-hvr/hackage-index, I *think* that used a local index.
2020-09-25 15:14:56 +0200 <maerwald> fendor: that package isn't on hackage :(
2020-09-25 15:15:11 +0200 <int-e> fendor: yeah looks like it maintains its own local sqlite database
2020-09-25 15:15:23 +0200andreas303(~andreas@gateway/tor-sasl/andreas303) (Ping timeout: 240 seconds)
2020-09-25 15:16:26 +0200 <int-e> maerwald: At a glance, the cabal-install package index format seems to be buried in the client code (Distribution.Solver.Types.PackageIndex) so it's not readily available as a library :-/
2020-09-25 15:16:50 +0200 <int-e> (Unless somebody took it upon themselves to strip that part out and maintain it as a library.)
2020-09-25 15:17:11 +0200 <maerwald> there's a lot of stuff in cabal-install that should be exposed imo, but well
2020-09-25 15:17:34 +0200heatsink(~heatsink@107-136-5-69.lightspeed.sntcca.sbcglobal.net)
2020-09-25 15:18:43 +0200 <phadej> maerwald: yes, see cabal-install-parsers
2020-09-25 15:18:52 +0200 <fendor> indeed. I wish I could parse cabal specification without a Cabal dependency.
2020-09-25 15:19:01 +0200 <phadej> fendor: good luck :)
2020-09-25 15:19:41 +0200 <phadej> (my gut feeling is that over half of code lines in Cabal is related to parsing cabal specification)
2020-09-25 15:20:11 +0200andreas303(~andreas@gateway/tor-sasl/andreas303)
2020-09-25 15:20:35 +0200 <fendor> I know :/
2020-09-25 15:20:58 +0200 <fendor> (regarding the "good luck wish")
2020-09-25 15:21:21 +0200raehik(~raehik@cpc96984-rdng25-2-0-cust109.15-3.cable.virginm.net)
2020-09-25 15:21:29 +0200mirrorbird(~psutcliff@2a00:801:44a:a00b:20c3:c64:eb15:73a2) (Ping timeout: 272 seconds)
2020-09-25 15:21:52 +0200heatsink(~heatsink@107-136-5-69.lightspeed.sntcca.sbcglobal.net) (Ping timeout: 256 seconds)
2020-09-25 15:22:48 +0200 <maerwald> https://hackage.haskell.org/package/cabal-install-parsers-0.3.0.1/docs/Cabal-Index.html#v:cachedHa… cool
2020-09-25 15:24:38 +0200xintron(~xintron@unaffiliated/xintron) (Quit: aoeu)
2020-09-25 15:25:40 +0200Wuzzy(~Wuzzy@p5b0df9fe.dip0.t-ipconnect.de)
2020-09-25 15:26:18 +0200xintron(~xintron@unaffiliated/xintron)
2020-09-25 15:26:37 +0200Saten-san(~Saten-san@ip-62-235-73-121.dsl.scarlet.be) (Quit: WeeChat 2.8)
2020-09-25 15:27:44 +0200heatsink(~heatsink@107-136-5-69.lightspeed.sntcca.sbcglobal.net)
2020-09-25 15:28:16 +0200__monty__(~toonn@unaffiliated/toonn)
2020-09-25 15:29:00 +0200cosimone_(~cosimone@93-47-228-249.ip115.fastwebnet.it) (Quit: Quit.)
2020-09-25 15:29:23 +0200ChaiTRex(~ChaiTRex@gateway/tor-sasl/chaitrex) (Ping timeout: 240 seconds)
2020-09-25 15:29:49 +0200o1lo01ol1o(~o1lo01ol1@bl8-213-81.dsl.telepac.pt)
2020-09-25 15:30:34 +0200sooch(~sooch@209.6.196.179)
2020-09-25 15:30:45 +0200afb(~afb@84.39.117.57)
2020-09-25 15:31:21 +0200justanotheruser(~justanoth@unaffiliated/justanotheruser)
2020-09-25 15:32:10 +0200ChaiTRex(~ChaiTRex@gateway/tor-sasl/chaitrex)
2020-09-25 15:32:37 +0200heatsink(~heatsink@107-136-5-69.lightspeed.sntcca.sbcglobal.net) (Ping timeout: 264 seconds)
2020-09-25 15:34:04 +0200coot(~coot@37.30.52.6.nat.umts.dynamic.t-mobile.pl)
2020-09-25 15:34:25 +0200shad0w_(~shad0w_@160.202.37.157) (Ping timeout: 240 seconds)
2020-09-25 15:34:25 +0200merijn(~merijn@83-160-49-249.ip.xs4all.nl) (Ping timeout: 258 seconds)
2020-09-25 15:34:59 +0200 <maerwald> phadej: when is 3.4 coming out?
2020-09-25 15:36:47 +0200josh_(~josh@c-67-164-104-206.hsd1.ca.comcast.net)
2020-09-25 15:37:30 +0200 <kuribas> is there a pretty runClientM for the REPL?
2020-09-25 15:37:53 +0200heatsink(~heatsink@107-136-5-69.lightspeed.sntcca.sbcglobal.net)
2020-09-25 15:38:03 +0200 <oats> it's fun reading "low level" code in, eg, bytestring internals
2020-09-25 15:38:19 +0200 <oats> nice to remember that you can still do black magic with pointers if you really want to :P
2020-09-25 15:38:52 +0200 <kuribas> oats: indeed, what's nice in haskell is that it hides the uglyness
2020-09-25 15:39:14 +0200 <kuribas> but you can still write ugly code underneat
2020-09-25 15:40:00 +0200 <oats> indeed
2020-09-25 15:40:20 +0200 <oats> maybe I should get my hands dirty and put my C skills to use here sometime :P
2020-09-25 15:41:01 +0200nbloomf(~nbloomf@2600:1700:83e0:1f40:11f8:2976:d681:3695)
2020-09-25 15:41:05 +0200josh_(~josh@c-67-164-104-206.hsd1.ca.comcast.net) (Ping timeout: 240 seconds)
2020-09-25 15:41:11 +0200 <kuribas> it's also often used to interface with a low level C library
2020-09-25 15:41:16 +0200nbloomf(~nbloomf@2600:1700:83e0:1f40:11f8:2976:d681:3695) (Client Quit)
2020-09-25 15:42:17 +0200barzo(~sosal@95.70.181.226) (Remote host closed the connection)
2020-09-25 15:42:27 +0200heatsink(~heatsink@107-136-5-69.lightspeed.sntcca.sbcglobal.net) (Ping timeout: 265 seconds)
2020-09-25 15:43:40 +0200lucasb(uid333435@gateway/web/irccloud.com/x-lrjjlkqiwvxbxlhd)
2020-09-25 15:44:16 +0200josh_(~josh@c-67-164-104-206.hsd1.ca.comcast.net)
2020-09-25 15:44:54 +0200nbloomf(~nbloomf@2600:1700:83e0:1f40:d985:da37:6cf:2ad4)
2020-09-25 15:47:23 +0200drbean(~drbean@TC210-63-209-157.static.apol.com.tw) (Ping timeout: 240 seconds)
2020-09-25 15:47:58 +0200heatsink(~heatsink@107-136-5-69.lightspeed.sntcca.sbcglobal.net)
2020-09-25 15:48:52 +0200josh_(~josh@c-67-164-104-206.hsd1.ca.comcast.net) (Ping timeout: 260 seconds)
2020-09-25 15:49:16 +0200josh_(~josh@c-67-164-104-206.hsd1.ca.comcast.net)
2020-09-25 15:49:21 +0200 <kuribas> otherwise I rarely find a need to write low level code in haskell
2020-09-25 15:49:38 +0200bahamas(~lucian@unaffiliated/bahamas) (Ping timeout: 256 seconds)
2020-09-25 15:49:44 +0200 <sooch> How would one go about representing an Identifier that can be either a single id, or multiple id's combined to form an id
2020-09-25 15:51:05 +0200 <sooch> Ex: S = { ident = 1}; S2 = {ident = 2}; => S <> S2 = { ident (2 3)};
2020-09-25 15:52:36 +0200heatsink(~heatsink@107-136-5-69.lightspeed.sntcca.sbcglobal.net) (Ping timeout: 260 seconds)
2020-09-25 15:52:50 +0200thir(~thir@p200300f27f0fc60094e773283d7bf825.dip0.t-ipconnect.de)
2020-09-25 15:53:19 +0200 <hekkaidekapus> sooch: Something like `f {ident = x} {ident = y} = {ident = x <> y}`?
2020-09-25 15:53:35 +0200josh_(~josh@c-67-164-104-206.hsd1.ca.comcast.net) (Ping timeout: 258 seconds)
2020-09-25 15:53:44 +0200 <kuribas> sooch: data Ident = Ident (NonEmpty Int) ?
2020-09-25 15:55:04 +0200 <sooch> The identity can be anything, and is unique. I guess I want a way more like: Ident a = Single a | Multi a (Single a
2020-09-25 15:55:07 +0200machinedgod(~machinedg@d67-193-126-196.home3.cgocable.net)
2020-09-25 15:55:10 +0200 <sooch> but that seems wrong
2020-09-25 15:55:22 +0200alexm_(~alexm_@161.8.233.138) (Remote host closed the connection)
2020-09-25 15:55:46 +0200 <kuribas> data Ident a = Ident (NonEmpty a)
2020-09-25 15:55:52 +0200 <phadej> maerwald: i dont know. around ghc-9
2020-09-25 15:56:22 +0200shad0w_(~shad0w_@160.202.37.157)
2020-09-25 15:56:45 +0200vicfred(~vicfred@unaffiliated/vicfred) (Quit: Leaving)
2020-09-25 15:57:07 +0200noctux(~noctux@unaffiliated/noctux)
2020-09-25 15:57:07 +0200thir(~thir@p200300f27f0fc60094e773283d7bf825.dip0.t-ipconnect.de) (Ping timeout: 240 seconds)
2020-09-25 15:57:19 +0200 <sooch> kuribas: I misinterpreted what NonEmpty was at first, that looks promising. Thanks.
2020-09-25 15:57:39 +0200LKoen(~LKoen@81.255.219.130) (Quit: “It’s only logical. First you learn to talk, then you learn to think. Too bad it’s not the other way round.”)
2020-09-25 15:57:47 +0200snakemasterflex(~snakemast@213.100.206.23) (Ping timeout: 240 seconds)
2020-09-25 15:57:49 +0200AWizzArd(~code@gehrels.uberspace.de)
2020-09-25 16:00:37 +0200snakemasterflex(~snakemast@213.100.206.23)
2020-09-25 16:01:57 +0200Saten-san(~Saten-san@ip-62-235-73-121.dsl.scarlet.be)
2020-09-25 16:02:31 +0200utopic_int0x80(~lucid_0x8@85.132.73.6)
2020-09-25 16:04:10 +0200polyphem(~p0lyph3m@2a02:810d:640:776c:76d7:55f6:f85b:c889)
2020-09-25 16:05:05 +0200snakemasterflex(~snakemast@213.100.206.23) (Ping timeout: 256 seconds)
2020-09-25 16:06:18 +0200spew(uid195861@gateway/web/irccloud.com/x-cksfmsrynriuwhsd)
2020-09-25 16:06:34 +0200noctux(~noctux@unaffiliated/noctux) (Ping timeout: 272 seconds)
2020-09-25 16:07:11 +0200ChaiTRex(~ChaiTRex@gateway/tor-sasl/chaitrex) (Quit: ChaiTRex)
2020-09-25 16:07:22 +0200utopic_int0x80(~lucid_0x8@85.132.73.6) (Ping timeout: 256 seconds)
2020-09-25 16:08:05 +0200ChaiTRex(~ChaiTRex@gateway/tor-sasl/chaitrex)
2020-09-25 16:08:15 +0200heatsink(~heatsink@107-136-5-69.lightspeed.sntcca.sbcglobal.net)
2020-09-25 16:08:33 +0200noctux(~noctux@unaffiliated/noctux)
2020-09-25 16:08:48 +0200merijn(~merijn@83-160-49-249.ip.xs4all.nl)
2020-09-25 16:12:27 +0200cfricke(~cfricke@unaffiliated/cfricke) (Quit: WeeChat 2.9)
2020-09-25 16:12:49 +0200heatsink(~heatsink@107-136-5-69.lightspeed.sntcca.sbcglobal.net) (Ping timeout: 264 seconds)
2020-09-25 16:14:10 +0200merijn(~merijn@83-160-49-249.ip.xs4all.nl) (Ping timeout: 272 seconds)
2020-09-25 16:16:43 +0200nyd(~nyd@unaffiliated/elysian)
2020-09-25 16:18:20 +0200heatsink(~heatsink@107-136-5-69.lightspeed.sntcca.sbcglobal.net)
2020-09-25 16:19:52 +0200zacts(~zacts@dragora/developer/zacts) (Quit: leaving)
2020-09-25 16:20:27 +0200 <AWizzArd> maerwald: about Servant again: I didn’t try it out yet, but it seems to be able to automatically generate the exact documentation of my API, so the docs will always be relevant and stay up-to-date.
2020-09-25 16:21:12 +0200 <hc> it can even export an up-to-date swagger specification using servant-swagger :)
2020-09-25 16:21:46 +0200adamwespiser(~adam_wesp@209.6.42.110)
2020-09-25 16:21:48 +0200 <maerwald> AWizzArd: you mean swagger?
2020-09-25 16:22:04 +0200 <maerwald> I think about a million backends have support for that?
2020-09-25 16:22:32 +0200 <AWizzArd> maerwald: do you have a link at hand for Snap?
2020-09-25 16:22:40 +0200 <maerwald> not right now
2020-09-25 16:23:01 +0200heatsink(~heatsink@107-136-5-69.lightspeed.sntcca.sbcglobal.net) (Ping timeout: 264 seconds)
2020-09-25 16:23:21 +0200ajcerejeira(~ajcerejei@2001:8a0:ddee:700:efbc:7163:11a0:b83)
2020-09-25 16:23:26 +0200LKoen(~LKoen@81.255.219.130)
2020-09-25 16:23:36 +0200ajcerejeira(~ajcerejei@2001:8a0:ddee:700:efbc:7163:11a0:b83) (Client Quit)
2020-09-25 16:24:42 +0200Tops2(~Tobias@dyndsl-095-033-024-124.ewe-ip-backbone.de) (Ping timeout: 256 seconds)
2020-09-25 16:26:08 +0200 <AWizzArd> hc: what is good about a swagger spec? (never used that tool, but knowing its name)
2020-09-25 16:26:19 +0200geekosaur(42d52102@66.213.33.2)
2020-09-25 16:26:46 +0200 <hc> AWizzArd: anyone(TM) will know how to use your API
2020-09-25 16:26:50 +0200adamwespiser(~adam_wesp@209.6.42.110) (Ping timeout: 272 seconds)
2020-09-25 16:27:19 +0200 <hc> you could say it is a transformation of the servant API type declaration into a json representation of it that many tools can understand
2020-09-25 16:28:03 +0200 <hc> AWizzArd: have a look at https://editor.swagger.io/ ; I find that a pretty handy tool for looking at swagger specs
2020-09-25 16:28:21 +0200 <AWizzArd> hc: is this tool mostly for web apis? Or completly generic for any api that I may want to design?
2020-09-25 16:28:30 +0200 <hc> it's for REST APIs only afaik
2020-09-25 16:28:32 +0200heatsink(~heatsink@107-136-5-69.lightspeed.sntcca.sbcglobal.net)
2020-09-25 16:28:42 +0200 <hc> which arguably aren't tied to the web
2020-09-25 16:29:08 +0200 <hc> but it's not as generic as i.e. apache thrift or the likes
2020-09-25 16:30:24 +0200filwisher(~filwisher@cpc76738-dals23-2-0-cust186.20-2.cable.virginm.net) (Ping timeout: 260 seconds)
2020-09-25 16:30:52 +0200 <dolio> oats: You probably don't want to copy the pointer stuff in bytestring, though. The array stuff in primitive is generally better.
2020-09-25 16:31:12 +0200 <dolio> Bytestrings are prone to memory fragmentation.
2020-09-25 16:31:35 +0200Noldorin(~noldorin@unaffiliated/noldorin)
2020-09-25 16:32:08 +0200 <oats> hmmm, thanks for the tip
2020-09-25 16:32:59 +0200 <dolio> Also vector builds on primitive in various ways.
2020-09-25 16:33:16 +0200heatsink(~heatsink@107-136-5-69.lightspeed.sntcca.sbcglobal.net) (Ping timeout: 256 seconds)
2020-09-25 16:35:59 +0200bitmapper(uid464869@gateway/web/irccloud.com/x-kucaomxlfuldfryc)
2020-09-25 16:37:41 +0200o1lo01ol1o(~o1lo01ol1@bl8-213-81.dsl.telepac.pt) (Read error: Connection reset by peer)
2020-09-25 16:38:38 +0200mirrorbird(~psutcliff@2a00:801:44a:a00b:20c3:c64:eb15:73a2)
2020-09-25 16:38:40 +0200heatsink(~heatsink@107-136-5-69.lightspeed.sntcca.sbcglobal.net)
2020-09-25 16:39:26 +0200o1lo01ol1o(~o1lo01ol1@bl8-213-81.dsl.telepac.pt)
2020-09-25 16:42:48 +0200Merfont(~Kaiepi@nwcsnbsc03w-47-55-157-9.dhcp-dynamic.fibreop.nb.bellaliant.net) (Remote host closed the connection)
2020-09-25 16:42:49 +0200merijn(~merijn@83-160-49-249.ip.xs4all.nl)
2020-09-25 16:42:53 +0200Kaiepi(~Kaiepi@nwcsnbsc03w-47-55-157-9.dhcp-dynamic.fibreop.nb.bellaliant.net)
2020-09-25 16:42:59 +0200heatsink(~heatsink@107-136-5-69.lightspeed.sntcca.sbcglobal.net) (Ping timeout: 240 seconds)
2020-09-25 16:43:58 +0200AWizzArd(~code@gehrels.uberspace.de) (Ping timeout: 256 seconds)
2020-09-25 16:44:05 +0200AWizzArd(~code@gehrels.uberspace.de)
2020-09-25 16:46:01 +0200cosimone(~cosimone@2001:b07:ae5:db26:b248:7aff:feea:34b6)
2020-09-25 16:46:13 +0200mnrmnaugh(~mnrmnaugh@unaffiliated/mnrmnaugh)
2020-09-25 16:46:34 +0200Saten-san(~Saten-san@ip-62-235-73-121.dsl.scarlet.be) (Quit: WeeChat 2.8)
2020-09-25 16:47:51 +0200alexm_(~alexm_@161.8.233.138)
2020-09-25 16:48:22 +0200o1lo01ol1o(~o1lo01ol1@bl8-213-81.dsl.telepac.pt) (Ping timeout: 272 seconds)
2020-09-25 16:48:49 +0200heatsink(~heatsink@107-136-5-69.lightspeed.sntcca.sbcglobal.net)
2020-09-25 16:49:14 +0200catkiki(~catkiki@m90-134-157-227.cust.tele2.hr) (Read error: Connection reset by peer)
2020-09-25 16:50:34 +0200o1lo01ol1o(~o1lo01ol1@bl8-213-81.dsl.telepac.pt)
2020-09-25 16:51:01 +0200Kaeipi(~Kaiepi@47.55.157.9)
2020-09-25 16:51:28 +0200Kaiepi(~Kaiepi@nwcsnbsc03w-47-55-157-9.dhcp-dynamic.fibreop.nb.bellaliant.net) (Remote host closed the connection)
2020-09-25 16:52:13 +0200alexm_(~alexm_@161.8.233.138) (Ping timeout: 260 seconds)
2020-09-25 16:52:13 +0200nerdypepper(nerdypeppe@152.67.160.69) (Ping timeout: 260 seconds)
2020-09-25 16:52:57 +0200Saten-san(~Saten-san@ip-62-235-73-121.dsl.scarlet.be)
2020-09-25 16:53:23 +0200heatsink(~heatsink@107-136-5-69.lightspeed.sntcca.sbcglobal.net) (Ping timeout: 260 seconds)
2020-09-25 16:53:32 +0200ruffianeo(~ruffianeo@p200300e5271f09cf8b4d140a1c554ebc.dip0.t-ipconnect.de) (Remote host closed the connection)
2020-09-25 16:53:40 +0200crobbins(~crobbins@2601:2c1:380:ec40:d443:ce25:44e4:e44d)
2020-09-25 16:55:46 +0200josh_(~josh@c-67-164-104-206.hsd1.ca.comcast.net)
2020-09-25 16:55:58 +0200hackagelapack 0.3.2 - Numerical Linear Algebra using LAPACK https://hackage.haskell.org/package/lapack-0.3.2 (HenningThielemann)
2020-09-25 16:56:18 +0200fendor_(~fendor@91.141.3.153.wireless.dyn.drei.com)
2020-09-25 16:56:29 +0200fendor(~fendor@91.141.3.153.wireless.dyn.drei.com) (Remote host closed the connection)
2020-09-25 16:56:35 +0200p-core(~Thunderbi@koleje-wifi-0046.koleje.cuni.cz)
2020-09-25 16:56:43 +0200miguel_clean(~Miguel@89-72-187-203.dynamic.chello.pl)
2020-09-25 16:56:49 +0200 <miguel_clean> Hello
2020-09-25 16:57:33 +0200 <miguel_clean> I am playing with the "+RTS -p" flag and wonder if I have to wait for my programm to exit or can have it updated in some intervalls as well?
2020-09-25 16:57:39 +0200Lord_of_Life_(~Lord@unaffiliated/lord-of-life/x-0885362)
2020-09-25 16:57:56 +0200utopic_int0x80(~lucid_0x8@188.253.234.46)
2020-09-25 16:57:57 +0200 <geekosaur> you have to wait for normal program exit
2020-09-25 16:58:25 +0200Lord_of_Life(~Lord@unaffiliated/lord-of-life/x-0885362) (Ping timeout: 240 seconds)
2020-09-25 16:58:58 +0200 <shad0w_> hi fam
2020-09-25 16:59:00 +0200Lord_of_Life_Lord_of_Life
2020-09-25 16:59:03 +0200heatsink(~heatsink@107-136-5-69.lightspeed.sntcca.sbcglobal.net)
2020-09-25 16:59:17 +0200 <shad0w_> i learned about Aplicatives today
2020-09-25 16:59:22 +0200 <shad0w_> and i have a question
2020-09-25 17:00:01 +0200afb(~afb@84.39.117.57) ()
2020-09-25 17:00:05 +0200 <shad0w_> they seem similar to Functors with the addtinal container type with the f (a -> b) for the first argument
2020-09-25 17:00:24 +0200 <shad0w_> i was wondering, why do they exist ?
2020-09-25 17:00:45 +0200 <shad0w_> we can probably do all of that stuff with fmap
2020-09-25 17:01:33 +0200ixlun(~matthew@109.249.184.193)
2020-09-25 17:02:11 +0200 <dolio> Try implementing (<*>) with just fmap.
2020-09-25 17:02:17 +0200 <dolio> Or pure.
2020-09-25 17:03:39 +0200heatsink(~heatsink@107-136-5-69.lightspeed.sntcca.sbcglobal.net) (Ping timeout: 265 seconds)
2020-09-25 17:04:55 +0200Turmfalke(~user@unaffiliated/siracusa)
2020-09-25 17:06:38 +0200Sheilong(uid293653@gateway/web/irccloud.com/x-jwcpkbwpnookjrjz)
2020-09-25 17:06:38 +0200Saten-san(~Saten-san@ip-62-235-73-121.dsl.scarlet.be) (Ping timeout: 256 seconds)
2020-09-25 17:07:19 +0200 <sm[m]> live output from +RTS -p would be great
2020-09-25 17:08:15 +0200 <geekosaur> I think you can do something similar with the eventlog?
2020-09-25 17:08:25 +0200 <sm[m]> hstop myprog
2020-09-25 17:09:00 +0200 <sm[m]> I need to learn about this stuff
2020-09-25 17:09:11 +0200heatsink(~heatsink@107-136-5-69.lightspeed.sntcca.sbcglobal.net)
2020-09-25 17:09:49 +0200snakemasterflex(~snakemast@213.100.206.23)
2020-09-25 17:09:51 +0200wroathe(~wroathe@c-73-24-27-54.hsd1.mn.comcast.net)
2020-09-25 17:11:14 +0200 <geekosaur> one problem with live profiling is laziness, stuff can be waiting to be evaluated and will be lost even though in some sense it's been seen
2020-09-25 17:11:37 +0200 <shad0w_> dolio: isn't fmap g x = pure g <*> x ?
2020-09-25 17:11:56 +0200 <geekosaur> and only show up later in the run when forced, possibly at the end
2020-09-25 17:12:08 +0200 <hololeap> shad0w_: if you think of a Functor f as carrying with it some kind of "context" or "other information", then Applicative gives a way to lift a value into a "default context" (pure) and combine two of these contexts (<*>)
2020-09-25 17:12:49 +0200 <geekosaur> shad0w, yes, but that means you can recover fmap from pure and <*>, not that you can recover either pure or <*> from fmap
2020-09-25 17:13:33 +0200 <shad0w_> geekosaur: i could just use fmap without ever using pure or <*> can't i?
2020-09-25 17:13:35 +0200 <geekosaur> so Functor is not sufficient to replace Applicative. in fact it's a prerequisite for Applicative, but not enough by itself
2020-09-25 17:13:43 +0200nerdypepper(nerdypeppe@152.67.160.69)
2020-09-25 17:13:48 +0200heatsink(~heatsink@107-136-5-69.lightspeed.sntcca.sbcglobal.net) (Ping timeout: 265 seconds)
2020-09-25 17:14:26 +0200 <geekosaur> Applicative can do things fmap can't, otherwise we wouldn't have it
2020-09-25 17:14:39 +0200 <geekosaur> for example, you can parse with an Applicative but not with a Functor
2020-09-25 17:14:54 +0200 <shad0w_> that's what i am trying to understand. why does this even exists /
2020-09-25 17:14:59 +0200tomku(~tomku@unaffiliated/tomku)
2020-09-25 17:15:21 +0200 <dolio> How do you implement `(a -> b -> c) -> f a -> f b -> f c` with just fmap?
2020-09-25 17:15:37 +0200mu(~mu@unaffiliated/mu)
2020-09-25 17:16:09 +0200 <shad0w_> you probably can't since fmap :: (a -> b) -> f a -> f b
2020-09-25 17:16:15 +0200 <dolio> Right.
2020-09-25 17:16:28 +0200 <shad0w_> can b == (b -> c ) ?
2020-09-25 17:16:35 +0200 <sm[m]> in the example stats at https://downloads.haskell.org/~ghc/latest/docs/html/users_guide/runtime_control.html#rts-options-t… max_bytes_used is 1065272 and peak_megabytes_allocated is 3. How/are those related ?
2020-09-25 17:16:37 +0200 <dolio> It can.
2020-09-25 17:16:43 +0200 <shad0w_> ^ sorry if that sounds stupid
2020-09-25 17:16:45 +0200 <dolio> Then your result is `f (b -> c)`.
2020-09-25 17:16:51 +0200 <geekosaur> but that doesn't help because ... that
2020-09-25 17:17:14 +0200 <int-e> :t (<*>)
2020-09-25 17:17:16 +0200 <lambdabot> Applicative f => f (a -> b) -> f a -> f b
2020-09-25 17:17:23 +0200merijn(~merijn@83-160-49-249.ip.xs4all.nl) (Ping timeout: 240 seconds)
2020-09-25 17:17:28 +0200snakemasterflex(~snakemast@213.100.206.23) (Ping timeout: 256 seconds)
2020-09-25 17:17:32 +0200 <geekosaur> and now you need Applicative to go any further
2020-09-25 17:17:39 +0200 <int-e> that's the type you need to continue from f (b -> c)
2020-09-25 17:17:58 +0200knupfer(~Thunderbi@87.123.206.34) (Quit: knupfer)
2020-09-25 17:18:00 +0200knupfer1(~Thunderbi@200116b82c8bb80040b575c5aa538973.dip.versatel-1u1.de)
2020-09-25 17:18:23 +0200snakemasterflex(~snakemast@213.100.206.23)
2020-09-25 17:18:30 +0200 <shad0w_> so, it becomes usefull if your first argument is (a -> b -> c ) ?
2020-09-25 17:19:11 +0200 <dolio> It becomes useful if you have any number other than 1 of your `f` things that you want to do something with.
2020-09-25 17:19:15 +0200heatsink(~heatsink@107-136-5-69.lightspeed.sntcca.sbcglobal.net)
2020-09-25 17:19:37 +0200 <dolio> pure lets you build an `f` thing if you have 0.
2020-09-25 17:19:40 +0200 <shad0w_> so you could g <$> x1 <*> x2 ?
2020-09-25 17:19:54 +0200 <dolio> And (<*>) lets you combine two `f` things into one.
2020-09-25 17:20:22 +0200heatsink(~heatsink@107-136-5-69.lightspeed.sntcca.sbcglobal.net) (Remote host closed the connection)
2020-09-25 17:20:24 +0200knupfer1knupfer
2020-09-25 17:20:33 +0200kenran(~maier@b2b-37-24-119-190.unitymedia.biz) (Ping timeout: 272 seconds)
2020-09-25 17:20:40 +0200heatsink(~heatsink@107-136-5-69.lightspeed.sntcca.sbcglobal.net)
2020-09-25 17:20:57 +0200 <shad0w_> dolio: say i want to add Just 6 and Just 7
2020-09-25 17:21:06 +0200 <shad0w_> then that's an applicative job ?
2020-09-25 17:21:51 +0200 <int-e> :t liftA2 (+)
2020-09-25 17:21:51 +0200gentauro(~gentauro@unaffiliated/gentauro) (Read error: Connection reset by peer)
2020-09-25 17:21:52 +0200 <lambdabot> (Applicative f, Num c) => f c -> f c -> f c
2020-09-25 17:22:19 +0200 <hololeap> shad0w_: that's correct
2020-09-25 17:22:32 +0200gentauro(~gentauro@unaffiliated/gentauro)
2020-09-25 17:22:33 +0200 <int-e> @src liftA2
2020-09-25 17:22:33 +0200 <lambdabot> liftA2 f a b = f <$> a <*> b
2020-09-25 17:23:07 +0200 <hololeap> > (+) <$> Just 6 <*> Just 7
2020-09-25 17:23:08 +0200snakemasterflex(~snakemast@213.100.206.23) (Ping timeout: 260 seconds)
2020-09-25 17:23:10 +0200 <lambdabot> Just 13
2020-09-25 17:23:10 +0200 <kuribas> how do you experiment in ghci with new-style builds? It doesn't let me import libraries (like pretty-simple)
2020-09-25 17:23:21 +0200 <hololeap> > (+) <$> Nothing <*> Just 7
2020-09-25 17:23:24 +0200 <lambdabot> Nothing
2020-09-25 17:24:06 +0200 <kuribas> is there a way to configure an interactive test environment in the cabal file?
2020-09-25 17:24:19 +0200 <shad0w_> > (\x y z -> x + y +z) <$> Just 1 <*> Just 2 <*> Just 3
2020-09-25 17:24:21 +0200 <lambdabot> Just 6
2020-09-25 17:24:32 +0200 <shad0w_> ^Thanks bot
2020-09-25 17:24:44 +0200 <sm[m]> isn't new-style a confusing term at this point
2020-09-25 17:24:45 +0200 <shad0w_> i kindda get it now.
2020-09-25 17:24:46 +0200mu(~mu@unaffiliated/mu) (Read error: Connection reset by peer)
2020-09-25 17:24:55 +0200 <shad0w_> thanks guys : D
2020-09-25 17:24:56 +0200 <sm[m]> kuribas: cabal repl doesn't work ?
2020-09-25 17:25:14 +0200 <kuribas> sm[m]: it doesn't let me import packages outside of the project
2020-09-25 17:25:22 +0200mu(~mu@unaffiliated/mu)
2020-09-25 17:25:25 +0200 <hololeap> shad0w_: look up and read typeclassopedia for more details
2020-09-25 17:25:38 +0200 <shad0w_> i am reading that
2020-09-25 17:25:38 +0200 <hololeap> when you're ready
2020-09-25 17:25:42 +0200crobbins_(~crobbins@2601:2c1:380:ec40:1cb9:1bb9:5a95:58fb)
2020-09-25 17:25:45 +0200 <kuribas> sm[m]: well in ghci it works...
2020-09-25 17:25:51 +0200mu(~mu@unaffiliated/mu) (Client Quit)
2020-09-25 17:25:52 +0200 <sm[m]> kuribas: ah, that's normal. Perhaps you can bring in more by using a -package option
2020-09-25 17:26:30 +0200 <kuribas> sm[m]: I just want to make a temporary test.hs file for quick testing and reloading into ghci
2020-09-25 17:26:38 +0200 <sm[m]> if cabal doesn't have that option itself, then maybe cabal repl --ghc-options='-package A -package B'
2020-09-25 17:26:59 +0200 <kuribas> sm[m]: so I don't need to retype some commands every reload
2020-09-25 17:27:15 +0200lucid_0x80(~lucid_0x8@188.253.236.126)
2020-09-25 17:27:44 +0200 <sm[m]> right, I did that the other day. I think I used stack --package A exec -- ghci test.hs or something
2020-09-25 17:27:59 +0200geekosaur(42d52102@66.213.33.2) (Ping timeout: 245 seconds)
2020-09-25 17:28:11 +0200 <sm[m]> so maybe cabal exec is the way, since test.hs isn't a component of the projec
2020-09-25 17:28:12 +0200 <sm[m]> t
2020-09-25 17:28:12 +0200 <kuribas> hmm, I'll try that
2020-09-25 17:28:58 +0200nerdypepper(nerdypeppe@152.67.160.69) (Ping timeout: 260 seconds)
2020-09-25 17:29:16 +0200utopic_int0x80(~lucid_0x8@188.253.234.46) (Ping timeout: 265 seconds)
2020-09-25 17:29:17 +0200crobbins(~crobbins@2601:2c1:380:ec40:d443:ce25:44e4:e44d) (Ping timeout: 260 seconds)
2020-09-25 17:29:17 +0200 <kuribas> can I do :r with that?
2020-09-25 17:30:07 +0200irc_user(uid423822@gateway/web/irccloud.com/x-kojvjfqrylgayrvg)
2020-09-25 17:30:27 +0200crobbins_(~crobbins@2601:2c1:380:ec40:1cb9:1bb9:5a95:58fb) (Ping timeout: 260 seconds)
2020-09-25 17:31:13 +0200shad0w_(~shad0w_@160.202.37.157) (Ping timeout: 246 seconds)
2020-09-25 17:32:36 +0200mu(~mu@unaffiliated/mu)
2020-09-25 17:32:43 +0200hololeap(~hololeap@unaffiliated/hololeap) (Quit: KVIrc 5.0.1 Aria http://www.kvirc.net/)
2020-09-25 17:33:04 +0200geekosaur(42d52102@66.213.33.2)
2020-09-25 17:33:28 +0200 <sm[m]> kuribas: how do you mean ?
2020-09-25 17:33:55 +0200 <kuribas> reload
2020-09-25 17:33:58 +0200 <kuribas> in ghci
2020-09-25 17:34:14 +0200Papillon(696b16db@105.107.22.219)
2020-09-25 17:34:30 +0200kenran(~maier@b2b-37-24-119-190.unitymedia.biz)
2020-09-25 17:36:50 +0200filwisher(~filwisher@cpc76738-dals23-2-0-cust186.20-2.cable.virginm.net)
2020-09-25 17:37:47 +0200 <fendor_> kuribas, `cabal repl -b A -b B` should work.
2020-09-25 17:38:35 +0200 <kuribas> cabal new-repl -b /tmp/test.hs => couldn't parse dependency: /tmp/test.hs
2020-09-25 17:38:56 +0200kenran(~maier@b2b-37-24-119-190.unitymedia.biz) (Ping timeout: 265 seconds)
2020-09-25 17:38:59 +0200 <fendor_> kuribas, A is the dependency
2020-09-25 17:39:05 +0200mu(~mu@unaffiliated/mu) (Read error: Connection reset by peer)
2020-09-25 17:39:18 +0200 <fendor_> such as aeson or pretty-simple
2020-09-25 17:39:24 +0200 <kuribas> right...
2020-09-25 17:39:34 +0200mu(~mu@unaffiliated/mu)
2020-09-25 17:39:37 +0200 <kuribas> how do I load a /file
2020-09-25 17:40:04 +0200heatsink(~heatsink@107-136-5-69.lightspeed.sntcca.sbcglobal.net) (Remote host closed the connection)
2020-09-25 17:40:13 +0200 <fendor_> ":l /path/to/file"
2020-09-25 17:40:15 +0200tzh(~tzh@2601:448:c500:5300::82b3)
2020-09-25 17:40:22 +0200Papillon(696b16db@105.107.22.219) (Remote host closed the connection)
2020-09-25 17:40:27 +0200 <fendor_> within ghci?
2020-09-25 17:41:01 +0200dhil(~dhil@11.29.39.217.dyn.plus.net) (Ping timeout: 264 seconds)
2020-09-25 17:42:01 +0200 <kuribas> right :)
2020-09-25 17:42:37 +0200crobbins(~crobbins@2600:380:7c78:c227:587a:b262:8c82:9b59)
2020-09-25 17:42:38 +0200 <kuribas> now only convincing emacs to pass these arguments to cabal repl...
2020-09-25 17:42:58 +0200GyroW(~GyroW@unaffiliated/gyrow) (Quit: Someone ate my pie)
2020-09-25 17:43:15 +0200GyroW(~GyroW@ptr-48ujrfb8c7gfd2lu92q.18120a2.ip6.access.telenet.be)
2020-09-25 17:43:17 +0200GyroW(~GyroW@ptr-48ujrfb8c7gfd2lu92q.18120a2.ip6.access.telenet.be) (Changing host)
2020-09-25 17:43:17 +0200GyroW(~GyroW@unaffiliated/gyrow)
2020-09-25 17:44:38 +0200 <sm[m]> this nothunks lib from the cardano team sounds fantastic
2020-09-25 17:46:19 +0200hnOsmium0001(uid453710@gateway/web/irccloud.com/x-ibhrcxsjgffyrrzh)
2020-09-25 17:47:01 +0200merijn(~merijn@83-160-49-249.ip.xs4all.nl)
2020-09-25 17:47:07 +0200kuribas(~user@ptr-25vy0i80qh4go15t39e.18120a2.ip6.access.telenet.be) (Quit: ERC (IRC client for Emacs 26.3))
2020-09-25 17:48:04 +0200crobbins(~crobbins@2600:380:7c78:c227:587a:b262:8c82:9b59) (Remote host closed the connection)
2020-09-25 17:49:03 +0200mu(~mu@unaffiliated/mu) (Read error: Connection reset by peer)
2020-09-25 17:49:12 +0200crobbins(~crobbins@2600:380:7c78:c227:587a:b262:8c82:9b59)
2020-09-25 17:49:44 +0200mu(~mu@unaffiliated/mu)
2020-09-25 17:50:02 +0200vicfred(~vicfred@unaffiliated/vicfred)
2020-09-25 17:51:06 +0200oish(~charlie@228.25.169.217.in-addr.arpa) (Quit: Lost terminal)
2020-09-25 17:52:12 +0200DTZUZU_(~DTZUZU@205.ip-149-56-132.net)
2020-09-25 17:52:18 +0200merijn(~merijn@83-160-49-249.ip.xs4all.nl) (Ping timeout: 260 seconds)
2020-09-25 17:52:28 +0200filwisher(~filwisher@cpc76738-dals23-2-0-cust186.20-2.cable.virginm.net) (Ping timeout: 265 seconds)
2020-09-25 17:53:28 +0200 <sm[m]> speaking of which, another q. I have a program where +RTS -S prints out unchanging numbers. I think this means it's running with constant heap ?
2020-09-25 17:53:47 +0200crobbins(~crobbins@2600:380:7c78:c227:587a:b262:8c82:9b59) (Ping timeout: 260 seconds)
2020-09-25 17:54:19 +0200thir(~thir@p200300f27f0fc60094e773283d7bf825.dip0.t-ipconnect.de)
2020-09-25 17:54:52 +0200DTZUZU(~DTZUZU@S0106bcd165662a4d.vs.shawcable.net) (Ping timeout: 272 seconds)
2020-09-25 17:54:55 +0200AWizzArd(~code@gehrels.uberspace.de) (Changing host)
2020-09-25 17:54:55 +0200AWizzArd(~code@unaffiliated/awizzard)
2020-09-25 17:55:11 +0200 <sm[m]> and the overall statistics printed at the end look reasonable. Meanwhile, I can see it's Memory steadily increasing without limit in macos Activity Monitor. Does that mean it is leaking thunks and the stack is growing ? and the RTS stats don't show that ?
2020-09-25 17:56:04 +0200machinedgod(~machinedg@d67-193-126-196.home3.cgocable.net) (Ping timeout: 246 seconds)
2020-09-25 17:56:47 +0200 <sm[m]> and this program uses SDL, in case it's relevant
2020-09-25 17:57:09 +0200 <sm[m]> maybe I'm leaking foreign C memory, not haskell memory ?
2020-09-25 17:57:12 +0200dyeplexer(~lol@unaffiliated/terpin) (Remote host closed the connection)
2020-09-25 17:57:48 +0200dhil(~dhil@11.29.39.217.dyn.plus.net)
2020-09-25 17:58:10 +0200oxide(~lambda@unaffiliated/mclaren) (Read error: Connection reset by peer)
2020-09-25 17:58:42 +0200thir(~thir@p200300f27f0fc60094e773283d7bf825.dip0.t-ipconnect.de) (Ping timeout: 260 seconds)
2020-09-25 17:59:04 +0200mu(~mu@unaffiliated/mu) (Read error: Connection reset by peer)
2020-09-25 17:59:18 +0200p-core(~Thunderbi@koleje-wifi-0046.koleje.cuni.cz) (Remote host closed the connection)
2020-09-25 17:59:18 +0200cpressey(~cpressey@79-72-202-6.dynamic.dsl.as9105.com) (Quit: WeeChat 1.9.1)
2020-09-25 17:59:34 +0200mu(~mu@unaffiliated/mu)
2020-09-25 18:01:24 +0200ubert(~Thunderbi@91.141.0.190.wireless.dyn.drei.com)
2020-09-25 18:02:30 +0200ixlun(~matthew@109.249.184.193) (Read error: Connection reset by peer)
2020-09-25 18:05:49 +0200chele(~chele@ip5b416ea2.dynamic.kabel-deutschland.de) (Remote host closed the connection)
2020-09-25 18:09:24 +0200mu(~mu@unaffiliated/mu) (Read error: Connection reset by peer)
2020-09-25 18:09:35 +0200mu__(~mu@unaffiliated/mu)
2020-09-25 18:12:17 +0200nerdypepper(nerdypeppe@152.67.160.69)
2020-09-25 18:14:16 +0200z0(~z0@bl15-165-108.dsl.telepac.pt)
2020-09-25 18:14:17 +0200LKoen(~LKoen@81.255.219.130) (Quit: “It’s only logical. First you learn to talk, then you learn to think. Too bad it’s not the other way round.”)
2020-09-25 18:14:39 +0200z0Guest86631
2020-09-25 18:15:21 +0200jedws(~jedws@2001:8003:337f:1b00:edc3:4bd4:30b0:401b)
2020-09-25 18:15:25 +0200heatsink(~heatsink@107-136-5-69.lightspeed.sntcca.sbcglobal.net)
2020-09-25 18:16:45 +0200v_m_v(~vm_v@2a02:aa12:3200:6480:f507:71a:9334:3099) (Remote host closed the connection)
2020-09-25 18:16:59 +0200Guest69388(~z0@bl17-248-65.dsl.telepac.pt) (Ping timeout: 240 seconds)
2020-09-25 18:17:11 +0200takuan(~takuan@178-116-218-225.access.telenet.be) (Remote host closed the connection)
2020-09-25 18:18:11 +0200heatsink(~heatsink@107-136-5-69.lightspeed.sntcca.sbcglobal.net) (Remote host closed the connection)
2020-09-25 18:18:11 +0200v_m_v(~vm_v@2a02:aa12:3200:6480:4e1d:96ff:fe6a:41bd)
2020-09-25 18:18:30 +0200heatsink(~heatsink@107-136-5-69.lightspeed.sntcca.sbcglobal.net)
2020-09-25 18:18:45 +0200Saten-san(~Saten-san@ip-62-235-73-121.dsl.scarlet.be)
2020-09-25 18:18:48 +0200wroathe_(~wroathe@c-68-54-25-135.hsd1.mn.comcast.net)
2020-09-25 18:19:04 +0200mu__(~mu@unaffiliated/mu) (Read error: Connection reset by peer)
2020-09-25 18:19:32 +0200mirk0(~mirko@unaffiliated/-mirko-/x-2946915) (Ping timeout: 265 seconds)
2020-09-25 18:19:36 +0200wroathe(~wroathe@c-73-24-27-54.hsd1.mn.comcast.net) (Ping timeout: 260 seconds)
2020-09-25 18:19:43 +0200mu(~mu@unaffiliated/mu)
2020-09-25 18:20:21 +0200mu(~mu@unaffiliated/mu) (Client Quit)
2020-09-25 18:21:38 +0200v_m_v(~vm_v@2a02:aa12:3200:6480:4e1d:96ff:fe6a:41bd) (Remote host closed the connection)
2020-09-25 18:23:44 +0200Tops2(~Tobias@dyndsl-095-033-024-124.ewe-ip-backbone.de)
2020-09-25 18:23:46 +0200wroathe_(~wroathe@c-68-54-25-135.hsd1.mn.comcast.net) (Ping timeout: 256 seconds)
2020-09-25 18:23:52 +0200merijn(~merijn@83-160-49-249.ip.xs4all.nl)
2020-09-25 18:24:38 +0200breezykermo(~breezyker@p200300ed5f114200c95d7bbe0250101c.dip0.t-ipconnect.de) ()
2020-09-25 18:25:16 +0200frdg(47b88ff9@pool-71-184-143-249.bstnma.fios.verizon.net)
2020-09-25 18:26:06 +0200filwisher(~filwisher@cpc76738-dals23-2-0-cust186.20-2.cable.virginm.net)
2020-09-25 18:26:19 +0200geekosaur(42d52102@66.213.33.2) (Ping timeout: 245 seconds)
2020-09-25 18:27:07 +0200raehik(~raehik@cpc96984-rdng25-2-0-cust109.15-3.cable.virginm.net) (Quit: WeeChat 2.8)
2020-09-25 18:28:00 +0200raehik(~raehik@cpc96984-rdng25-2-0-cust109.15-3.cable.virginm.net)
2020-09-25 18:30:43 +0200ccallahan1(~ccallahan@195.140.213.38)
2020-09-25 18:31:17 +0200oisdk(~oisdk@2001:bb6:3329:d100:fd58:7633:8b1d:97)
2020-09-25 18:32:23 +0200wroathe(~wroathe@c-68-54-25-135.hsd1.mn.comcast.net)
2020-09-25 18:32:41 +0200Amras(~Amras@unaffiliated/amras0000)
2020-09-25 18:33:16 +0200cole-h(~cole-h@c-73-48-197-220.hsd1.ca.comcast.net)
2020-09-25 18:38:14 +0200ddellacosta(~dd@86.106.121.168)
2020-09-25 18:41:22 +0200nineonin_(~nineonine@216-19-190-182.dyn.novuscom.net) (Remote host closed the connection)
2020-09-25 18:41:59 +0200nineonine(~nineonine@216-19-190-182.dyn.novuscom.net)
2020-09-25 18:42:53 +0200ddellacosta(~dd@86.106.121.168) (Client Quit)
2020-09-25 18:43:44 +0200snakemasterflex(~snakemast@213.100.206.23)
2020-09-25 18:44:47 +0200mirrorbird(~psutcliff@2a00:801:44a:a00b:20c3:c64:eb15:73a2) (Ping timeout: 272 seconds)
2020-09-25 18:45:51 +0200ddellacosta(~dd@86.106.121.168)
2020-09-25 18:46:16 +0200kritzefitz(~kritzefit@212.86.56.80)
2020-09-25 18:46:36 +0200nineonine(~nineonine@216-19-190-182.dyn.novuscom.net) (Ping timeout: 265 seconds)
2020-09-25 18:46:56 +0200filwisher(~filwisher@cpc76738-dals23-2-0-cust186.20-2.cable.virginm.net) (Ping timeout: 256 seconds)
2020-09-25 18:47:25 +0200abhixec(~abhixec@c-67-169-141-95.hsd1.ca.comcast.net) (Ping timeout: 240 seconds)
2020-09-25 18:47:31 +0200jespada(~jespada@90.254.241.6) (Quit: Leaving)
2020-09-25 18:48:24 +0200frdg(47b88ff9@pool-71-184-143-249.bstnma.fios.verizon.net) (Ping timeout: 245 seconds)
2020-09-25 18:48:58 +0200W3BV1P3R_(~W3BV1P3R@c-73-5-91-226.hsd1.tn.comcast.net)
2020-09-25 18:49:45 +0200W3BV1P3R_(~W3BV1P3R@c-73-5-91-226.hsd1.tn.comcast.net) (Client Quit)
2020-09-25 18:50:16 +0200mu(~mu@unaffiliated/mu)
2020-09-25 18:50:45 +0200heatsink(~heatsink@107-136-5-69.lightspeed.sntcca.sbcglobal.net) (Remote host closed the connection)
2020-09-25 18:51:39 +0200Saten-san(~Saten-san@ip-62-235-73-121.dsl.scarlet.be) (Quit: WeeChat 2.8)
2020-09-25 18:52:09 +0200shad0w_(~shad0w_@160.202.37.157)
2020-09-25 18:55:17 +0200oisdk(~oisdk@2001:bb6:3329:d100:fd58:7633:8b1d:97) (Quit: My MacBook has gone to sleep. ZZZzzz…)
2020-09-25 18:55:43 +0200coot(~coot@37.30.52.6.nat.umts.dynamic.t-mobile.pl) (Quit: coot)
2020-09-25 18:55:54 +0200oisdk(~oisdk@2001:bb6:3329:d100:fd58:7633:8b1d:97)
2020-09-25 18:56:20 +0200 <cohn> can anyone recommend a good command line argument processing library?
2020-09-25 18:56:50 +0200nineonine(~nineonine@216.81.48.202)
2020-09-25 18:57:14 +0200frdg(47b88ff9@pool-71-184-143-249.bstnma.fios.verizon.net)
2020-09-25 18:57:25 +0200mu(~mu@unaffiliated/mu) (Read error: Connection reset by peer)
2020-09-25 18:57:37 +0200 <frdg> how can I use stack to compile binaries?
2020-09-25 18:57:56 +0200mu(~mu@unaffiliated/mu)
2020-09-25 18:58:09 +0200 <dsal> frdg: stack build
2020-09-25 18:58:16 +0200snakemasterflex(~snakemast@213.100.206.23) (Ping timeout: 256 seconds)
2020-09-25 18:58:41 +0200 <dsal> cohn: I usually just use optparse-applicative, but depending on what your needs are, there are easier or fancier things.
2020-09-25 18:59:01 +0200merijn(~merijn@83-160-49-249.ip.xs4all.nl) (Ping timeout: 264 seconds)
2020-09-25 18:59:05 +0200 <cohn> dsal: easy is always good. I'll take a look, thanks!
2020-09-25 19:00:07 +0200 <dsal> cohn: There's this thing, but I've not used it because I always end up doing something a little weird: https://hackage.haskell.org/package/optparse-generic-1.4.3/docs/Options-Generic.html
2020-09-25 19:00:37 +0200wroathe(~wroathe@c-68-54-25-135.hsd1.mn.comcast.net) (Ping timeout: 265 seconds)
2020-09-25 19:00:43 +0200heatsink(~heatsink@107-136-5-69.lightspeed.sntcca.sbcglobal.net)
2020-09-25 19:01:32 +0200 <frdg> dsal: ok that is what I thought. I have been running stack build but only get this ouput: https://dpaste.org/YDpW. Where do the binaries go?
2020-09-25 19:01:36 +0200frdg(47b88ff9@pool-71-184-143-249.bstnma.fios.verizon.net) (Client Quit)
2020-09-25 19:02:45 +0200shad0w_(~shad0w_@160.202.37.157) (Remote host closed the connection)
2020-09-25 19:02:59 +0200crobbins(~crobbins@2601:2c1:380:ec40:2d4a:f96c:b859:c0ae)
2020-09-25 19:03:21 +0200otulp(~otulp@ti0187q162-5025.bb.online.no) (Remote host closed the connection)
2020-09-25 19:03:38 +0200 <dsal> stack path --local-install-root
2020-09-25 19:03:41 +0200 <dsal> Or you can just 'stack install'
2020-09-25 19:04:11 +0200 <dsal> That warning is kind of interesting, though. It implies you've modified a generated .cabal and you've probably got some confusion there.
2020-09-25 19:04:55 +0200Sgeo(~Sgeo@ool-18b982ad.dyn.optonline.net)
2020-09-25 19:05:16 +0200sand_dull(~theuser@62.182.99.37)
2020-09-25 19:05:27 +0200heatsink(~heatsink@107-136-5-69.lightspeed.sntcca.sbcglobal.net) (Ping timeout: 265 seconds)
2020-09-25 19:05:58 +0200frdg(47b88ff9@pool-71-184-143-249.bstnma.fios.verizon.net)
2020-09-25 19:07:14 +0200fendor_fendor
2020-09-25 19:07:27 +0200wroathe(~wroathe@c-68-54-25-135.hsd1.mn.comcast.net)
2020-09-25 19:07:28 +0200mu(~mu@unaffiliated/mu) (Read error: Connection reset by peer)
2020-09-25 19:07:59 +0200mu(~mu@unaffiliated/mu)
2020-09-25 19:08:42 +0200Saten-san(~Saten-san@ip-62-235-73-121.dsl.scarlet.be)
2020-09-25 19:08:58 +0200mirrorbird(~psutcliff@m83-187-173-228.cust.tele2.se)
2020-09-25 19:10:14 +0200elliott_(~elliott_@pool-100-36-54-163.washdc.fios.verizon.net) (Ping timeout: 272 seconds)
2020-09-25 19:10:42 +0200 <frdg> dsal: stack install worked. No idea how I have managed to mess the cabal file up.
2020-09-25 19:10:42 +0200frdg(47b88ff9@pool-71-184-143-249.bstnma.fios.verizon.net) (Client Quit)
2020-09-25 19:11:18 +0200 <dsal> The instructions suggest you could just delete it. If you have package.yaml and the .cabal, that's going to be confusing.
2020-09-25 19:11:30 +0200fluturel(~fluturel@82.137.14.51)
2020-09-25 19:11:56 +0200 <fluturel> hello?
2020-09-25 19:11:56 +0200wroathe(~wroathe@c-68-54-25-135.hsd1.mn.comcast.net) (Ping timeout: 256 seconds)
2020-09-25 19:12:11 +0200 <yushyin> hello fluturel
2020-09-25 19:12:48 +0200raichoo(~raichoo@213.240.178.58) (Quit: Lost terminal)
2020-09-25 19:13:03 +0200 <fluturel> so i just learning haskell a few minutes ago. Don't have any questions yet, just wanted to see if the channel is still active
2020-09-25 19:13:56 +0200elliott_(~elliott_@pool-100-36-54-163.washdc.fios.verizon.net)
2020-09-25 19:14:43 +0200 <yushyin> actually it is one of the more active channels on freenode
2020-09-25 19:14:49 +0200geekosaur(42d52102@66.213.33.2)
2020-09-25 19:14:57 +0200hackageprolude 0.0.0.0 - ITProTV's custom prelude https://hackage.haskell.org/package/prolude-0.0.0.0 (fozworth)
2020-09-25 19:15:17 +0200coot(~coot@37.30.52.6.nat.umts.dynamic.t-mobile.pl)
2020-09-25 19:15:40 +0200 <fluturel> is my understanding correct that i can execute little haskell programs right here in the chat?
2020-09-25 19:15:52 +0200 <dsal> No, but there are a couple of bots that can evaluate expressions.
2020-09-25 19:16:17 +0200 <fluturel> how would one go about doing that?
2020-09-25 19:16:21 +0200 <dsal> You can speak to those bots privately if you want to try to use them as a repl, but ghci will be a lot better.
2020-09-25 19:16:54 +0200 <dsal> > length . words $ "this is lambdabot"
2020-09-25 19:16:58 +0200 <lambdabot> 3
2020-09-25 19:17:07 +0200 <dsal> % length . words $ "this is yahb"
2020-09-25 19:17:08 +0200 <yahb> dsal: 3
2020-09-25 19:17:28 +0200mu(~mu@unaffiliated/mu) (Read error: Connection reset by peer)
2020-09-25 19:17:34 +0200heatsink(~heatsink@107-136-5-69.lightspeed.sntcca.sbcglobal.net)
2020-09-25 19:17:40 +0200 <fluturel> ooh, that's interesting
2020-09-25 19:17:42 +0200 <dsal> They're different, but helpful for demonstrating basic ideas.
2020-09-25 19:17:43 +0200 <fluturel> thank you
2020-09-25 19:17:54 +0200mu(~mu@unaffiliated/mu)
2020-09-25 19:18:12 +0200 <dsal> Both will be terribly frustrating if you try to use them as ghci. ghci will be terribly frustrating if you try to use it as a scratch pad.
2020-09-25 19:18:44 +0200 <fluturel> i will certainly come back here, should i need help (i most certainly will). Coming from
2020-09-25 19:18:59 +0200sand_dull(~theuser@62.182.99.37) (Ping timeout: 265 seconds)
2020-09-25 19:19:06 +0200 <fluturel> Coming from C++ and the like, i heards it can be pretty brutal
2020-09-25 19:19:28 +0200Saten-san(~Saten-san@ip-62-235-73-121.dsl.scarlet.be) (Ping timeout: 265 seconds)
2020-09-25 19:19:28 +0200knupfer(~Thunderbi@200116b82c8bb80040b575c5aa538973.dip.versatel-1u1.de) (Remote host closed the connection)
2020-09-25 19:19:30 +0200 <dsal> Haskell is pretty easy. Haskell with a brain conditioned on C++ might be hard.
2020-09-25 19:19:36 +0200knupfer(~Thunderbi@200116b82c8bb80079b1331ba61465fc.dip.versatel-1u1.de)
2020-09-25 19:20:17 +0200 <fluturel> I do have some experience with Common LISP, but I dont know if that is considered functional nowadays
2020-09-25 19:21:11 +0200 <dsal> It's not even so much the "functional" bits. It's just a different language with different conventions (including calling conventions), culture, etc...
2020-09-25 19:22:11 +0200 <dsal> Things that might be important for optimizing or organizing C++ code could be hugely detrimental to your Haskell experience and lead down dark paths.
2020-09-25 19:22:13 +0200Tuplanolla(~Tuplanoll@91-159-68-239.elisa-laajakaista.fi)
2020-09-25 19:22:15 +0200 <ski> fluturel : just lurking in here can also be pretty useful, when learning
2020-09-25 19:22:18 +0200 <dsal> fluturel: How are you going about learning haskell?
2020-09-25 19:22:43 +0200 <dsal> Yeah, one neat thing about lurking is that you'll get exposed to a lot of things you hadn't considered.
2020-09-25 19:23:00 +0200 <fluturel> like using guards as ifs and such?
2020-09-25 19:23:27 +0200 <dsal> Just general structure (though I almost never use 'if' in any of my code).
2020-09-25 19:24:26 +0200 <fluturel> well, i got a book that has most of the language features. It's more like a doc than anything else. And also, some tutorials that I found. I am starting with learnyouahaskell.com
2020-09-25 19:24:31 +0200 <ski> fluturel : you will learn to use recursion for looping, pattern-matching for destructuring and branching, learn to program (mostly/usually) without mutable variables, get access to a nice, flexible, powerful, static type system
2020-09-25 19:24:59 +0200merijn(~merijn@83-160-49-249.ip.xs4all.nl)
2020-09-25 19:25:02 +0200 <ski> fluturel : oh, and higher-order programming, with lexical scope
2020-09-25 19:25:43 +0200 <ski> @where CIS194
2020-09-25 19:25:43 +0200 <lambdabot> https://www.seas.upenn.edu/~cis194/spring13/lectures.html
2020-09-25 19:26:02 +0200 <fluturel> ski : i know what most of the things you said are. No idea about pattern-matching, sounds like you are talking about regex
2020-09-25 19:26:05 +0200 <ski> fluturel : that ^ has exercises, if you want some to chew on (LYAH doesn't have any)
2020-09-25 19:26:29 +0200 <fluturel> Oh, thank you so much, just bookmarked it!
2020-09-25 19:27:04 +0200 <ski> fluturel : have you used `destructuring-bind', in CL ?
2020-09-25 19:27:16 +0200 <fluturel> Yes
2020-09-25 19:27:40 +0200 <fluturel> So it's like that
2020-09-25 19:27:40 +0200mu(~mu@unaffiliated/mu) (Read error: Connection reset by peer)
2020-09-25 19:27:41 +0200 <ski> well, pattern-matching is like that, "only more so", also incorporates branching on the possible shapes a piece of datum may assume
2020-09-25 19:27:53 +0200mu(~mu@unaffiliated/mu)
2020-09-25 19:28:11 +0200John20(~John@82.46.59.122) (Ping timeout: 240 seconds)
2020-09-25 19:28:21 +0200 <dsal> You can define different expressions for functions based on the value of their arguments, for example.
2020-09-25 19:28:32 +0200 <ski> @src length
2020-09-25 19:28:32 +0200 <lambdabot> Source not found. Where did you learn to type?
2020-09-25 19:28:41 +0200 <ski> hmpf
2020-09-25 19:28:48 +0200 <ski> length :: [a] -> Int
2020-09-25 19:28:52 +0200 <ski> length [ ] = 0
2020-09-25 19:29:00 +0200 <ski> length (x:xs) = 1 + length xs
2020-09-25 19:29:10 +0200cosimone(~cosimone@2001:b07:ae5:db26:b248:7aff:feea:34b6) (Quit: Quit.)
2020-09-25 19:29:24 +0200 <ski> is the traditional way to define the length of a (single-linked) list
2020-09-25 19:29:47 +0200 <ski> `x:xs' there is like a "dotted pair/cons", in the Lisp world. and `[]' is the empty list
2020-09-25 19:30:04 +0200merijn(~merijn@83-160-49-249.ip.xs4all.nl) (Ping timeout: 260 seconds)
2020-09-25 19:30:21 +0200 <fluturel> ah, i see, so it's recursion
2020-09-25 19:30:24 +0200 <ski> so, `length' is defined via "two definitions" (two defining equations), each handling one of the two possible cases (empty vs. non-empty list)
2020-09-25 19:30:32 +0200 <ski> yes
2020-09-25 19:30:35 +0200 <dsal> recursion isn't the interesting part of that example, though.
2020-09-25 19:30:38 +0200 <fluturel> xs is the remainder of the list and evaluates till xs is empty list
2020-09-25 19:30:52 +0200 <fluturel> yeah, no, i got that
2020-09-25 19:31:07 +0200 <monochrom> The point is we don't write like "length list = if null list then 0 else 1 + tail list"
2020-09-25 19:31:14 +0200 <ski> but you can use this style of definition as well, for your own, user-defined, data types
2020-09-25 19:31:22 +0200 <fluturel> And what you said about destructuring-bind being close to this, it does make a lot of sense
2020-09-25 19:31:24 +0200 <dsal> > let isThree 3 = True; isThree _ = False in map isThree [1..5]
2020-09-25 19:31:28 +0200 <lambdabot> [False,False,True,False,False]
2020-09-25 19:31:44 +0200 <ski> s/tail list/length (tail list)/
2020-09-25 19:31:50 +0200 <dsal> I have two different definitions of isThree that do different things depending on the value of the argument.
2020-09-25 19:31:56 +0200 <albestro[m]> fluturel: I'm studying in parallel both CIS194 2013 and LYAH...for CIS194 I found useful from time to time to compare my solution with the one from the students who attended the course. you can find few of them on github
2020-09-25 19:32:58 +0200 <fluturel> albestro[m]: thank you for the suggestion
2020-09-25 19:33:29 +0200Saten-san(~Saten-san@ip-62-235-73-121.dsl.scarlet.be)
2020-09-25 19:33:31 +0200 <fluturel> albestro[m]: how long have you been studying for?
2020-09-25 19:34:16 +0200 <albestro[m]> fluturel: I started during holidays (1 week of spare time) and in the last weeks I had few time to dedicate...but let's say 1 month on the calendar
2020-09-25 19:34:34 +0200 <cohn> albestro[m]: beware, some of LYAH is out of date. For example no coverage of Semigroups
2020-09-25 19:34:42 +0200 <cohn> other than that, great resource
2020-09-25 19:35:02 +0200 <albestro[m]> cohn: thanks! it's absolutely worth knowing.
2020-09-25 19:35:47 +0200 <albestro[m]> also about CIS194, I preferred the 2013 version because it feels like it is more dedicated to the "low-level'
2020-09-25 19:36:12 +0200 <albestro[m]> compared to the newer one that it seems like they are trying to be "more interesting" with visual things
2020-09-25 19:36:26 +0200cohnshrugs
2020-09-25 19:36:43 +0200 <cohn> I don't know enough to have an opinion either way. : )
2020-09-25 19:37:05 +0200 <sm[m]> fluturel, also good:
2020-09-25 19:37:05 +0200 <sm[m]> @where HTAC
2020-09-25 19:37:05 +0200 <lambdabot> "Haskell Tutorial and Cookbook" by Mark Watson in 2017-09-04 at <https://leanpub.com/haskell-cookbook>
2020-09-25 19:37:12 +0200skigrins
2020-09-25 19:37:23 +0200mu(~mu@unaffiliated/mu) (Read error: Connection reset by peer)
2020-09-25 19:37:42 +0200 <sm[m]> ski, you saw that coming ? :)
2020-09-25 19:37:53 +0200mu(~mu@unaffiliated/mu)
2020-09-25 19:37:55 +0200 <ski> was briefly thinking about it
2020-09-25 19:38:10 +0200 <fluturel> sm[m]: i found it during my searches, but thank you, will be in my priority list
2020-09-25 19:38:37 +0200 <ski> fluturel : at some point, you may find yourself wanting a textbook
2020-09-25 19:38:55 +0200 <fluturel> i should have taken haskell up while in lockdown..
2020-09-25 19:39:20 +0200 <sm[m]> that guy is not paying me, I promise. I just think it's among the best for many folk, and still mysteriously unknown, so I am duty bound to mention it
2020-09-25 19:40:54 +0200 <dsal> fluturel: Everything I've ever learned felt like I learned it too late.
2020-09-25 19:41:27 +0200brandstifter(~brandstif@62-46-52-151.adsl.highway.telekom.at)
2020-09-25 19:42:02 +0200 <fluturel> dsal: I know exactly what you mean. If only i learned more when i had loads of free time..
2020-09-25 19:43:28 +0200 <sm[m]> no time like the present
2020-09-25 19:44:26 +0200 <fluturel> i have another question: what can you do with haskell these days? Is it just a niche programming language?
2020-09-25 19:44:43 +0200 <dsal> fluturel: Here's a project I did recently: http://dustin.sallings.org/2020/04/29/gopro-plus.html
2020-09-25 19:44:50 +0200 <dsal> I fail to write up most of the things I do. *sigh*
2020-09-25 19:44:53 +0200 <sm[m]> ha, leading question there
2020-09-25 19:46:21 +0200bitmagie(~Thunderbi@200116b8065d560030e19c72082b8700.dip.versatel-1u1.de) (Quit: bitmagie)
2020-09-25 19:46:22 +0200DTZUZU(~DTZUZU@S0106bcd165662a4d.vs.shawcable.net)
2020-09-25 19:46:24 +0200 <fluturel> sm[m]: sorry if it is, should have phrased it a little bit differently
2020-09-25 19:46:36 +0200 <dsal> I sat down to do some "hard" work on that project a couple of nights ago -- resuming partial uploads that failed exactly at the wrong moment where all the bits have been updated but the media wasn't marked completed on GoPro's side. Turns out, it was just a couple lines of code to cover that case. :(
2020-09-25 19:46:40 +0200snakemasterflex(~snakemast@213.100.206.23)
2020-09-25 19:46:55 +0200 <monochrom> It would be easier to enumerate just the handful of things Haskell is impractical for.
2020-09-25 19:47:01 +0200DTZUZU_(~DTZUZU@205.ip-149-56-132.net) (Ping timeout: 264 seconds)
2020-09-25 19:47:14 +0200 <dsal> fluturel: Nah, Haskell has a reputation of being a weird experimental language for academics. In practice, it's the easiest language I use and the first thing I reach for when I'm doing general computering.
2020-09-25 19:47:16 +0200 <sm[m]> fluturel: anything that doesn't require zero GC pauses, or cheap developers, or running on mobile
2020-09-25 19:47:34 +0200mu(~mu@unaffiliated/mu) (Read error: Connection reset by peer)
2020-09-25 19:47:54 +0200mu(~mu@unaffiliated/mu)
2020-09-25 19:47:58 +0200 <dsal> "running on mobile" is a little unfortunate. Some of my programs are running on tiny ARM computers.
2020-09-25 19:48:13 +0200brandstifter(~brandstif@62-46-52-151.adsl.highway.telekom.at) ()
2020-09-25 19:48:23 +0200 <sm[m]> cool, I should say "running on phones" maybe
2020-09-25 19:48:26 +0200 <nshepperd> haskell is a programming language so easy, even academics can use it!
2020-09-25 19:48:29 +0200 <monochrom> And even those divide into fundamentally impractical vs for-now impractical.
2020-09-25 19:49:13 +0200DataComputist(~lumeng@static-50-43-26-251.bvtn.or.frontiernet.net) (Remote host closed the connection)
2020-09-25 19:49:48 +0200 <dsal> Yeah, it's more about outward requirements. If something has to be written using particular APIs that aren't accessible, then it's not exactly a "Haskell" problem as much as "you're not using the exact language allowed to work with this platform" problem.
2020-09-25 19:50:06 +0200 <fluturel> i thought i read something a few years ago about a company that was making games in haskell for mobile. Can't remember the name though
2020-09-25 19:50:16 +0200 <sm[m]> Keera, they stopped
2020-09-25 19:50:45 +0200 <sm[m]> as far as I know, at least
2020-09-25 19:51:24 +0200 <sm[m]> so yes it is possible to run haskell somehow on phones, but I'd say it's impractical except for the very highly motivated
2020-09-25 19:51:32 +0200crobbins(~crobbins@2601:2c1:380:ec40:2d4a:f96c:b859:c0ae) (Remote host closed the connection)
2020-09-25 19:51:34 +0200 <sm[m]> for now
2020-09-25 19:52:00 +0200 <dsal> fluturel: A better way to think about this is to think about the types of programs you're interested in writing and whether it'll help you with that.
2020-09-25 19:52:09 +0200crobbins(~crobbins@2601:2c1:380:ec40:cf6:f95e:2b94:e5c5)
2020-09-25 19:52:22 +0200 <geekosaur> and it's not so much that Haskell doesn't work well, as GHC doesn't work well — but for now at least GHC is the only real option
2020-09-25 19:52:28 +0200 <geekosaur> (I miss jhc still)
2020-09-25 19:52:35 +0200 <fluturel> i was thinking about trying to do a back-end or something in haskell
2020-09-25 19:52:57 +0200 <dsal> Most of my programs are IoT or general commandline utilities or monitoring, stats, etc... And my GoPro junk. And various data processing things. All of that stuff is easy.
2020-09-25 19:53:25 +0200 <dolio> I don't know. Nothing ever worked as well as GHC anyway for most stuff.
2020-09-25 19:53:48 +0200 <dsal> Damn you GHC. Stop making everything else look bad.
2020-09-25 19:54:19 +0200 <monochrom> @quote monochrom downloaded.GHC
2020-09-25 19:54:20 +0200 <lambdabot> monochrom says: I was trying to design a sensible language... then I downloaded ghc.
2020-09-25 19:54:25 +0200dhouthoo(~dhouthoo@ptr-eiv6509pb4ifhdr9lsd.18120a2.ip6.access.telenet.be) (Quit: WeeChat 2.8)
2020-09-25 19:54:25 +0200 <geekosaur> hugs worked pretty well back in the day. but ghc has been alone for so long that other implementations now have to catch up to it as well as implementing standard Haskell :(
2020-09-25 19:54:37 +0200 <sm[m]> but of course GHC makes a lot of other stuff look really good
2020-09-25 19:54:39 +0200 <dsal> The GHC language is kind of big.
2020-09-25 19:54:57 +0200 <dsal> Heh, yeah. I didn't mean to imply GHC is great at all the things. It's a frustrating part of some of mydays.
2020-09-25 19:54:57 +0200 <dolio> Hugs worked, but the stuff people used it for wasn't building applications that GHC is unsuitable for.
2020-09-25 19:55:04 +0200 <dolio> To my knowledge.
2020-09-25 19:55:21 +0200 <monochrom> Actually I think I started with hugs back then, and added GHC later.
2020-09-25 19:55:22 +0200oisdk(~oisdk@2001:bb6:3329:d100:fd58:7633:8b1d:97) (Quit: My MacBook has gone to sleep. ZZZzzz…)
2020-09-25 19:55:43 +0200 <geekosaur> people have at least tried to resuscitate it for use on limited memory platforms iirc
2020-09-25 19:56:32 +0200 <nshepperd> i wish for a ghc which can produce platform independent STG
2020-09-25 19:56:53 +0200 <nshepperd> so i can just write an STG interpreter in java to make things run on phones :>
2020-09-25 19:57:12 +0200 <fluturel> IoT with haskell actually sounds really interesting
2020-09-25 19:57:24 +0200mu(~mu@unaffiliated/mu) (Read error: Connection reset by peer)
2020-09-25 19:57:54 +0200mu(~mu@unaffiliated/mu)
2020-09-25 19:58:10 +0200 <davean> Theres the ghci bytecode? I don't know a ton about it. Bytecode isn't really enough - you need the RTS.
2020-09-25 19:58:31 +0200 <monochrom> "just write an STG interpreter" is also easier said than done.
2020-09-25 19:59:05 +0200 <davean> And why you'd do all that to run Haskell on a phone I don't know
2020-09-25 19:59:09 +0200 <davean> You CAN compile to target a phone
2020-09-25 19:59:19 +0200 <davean> a lot of the hard part is the PDK component
2020-09-25 19:59:41 +0200 <monochrom> which is also what davean said and I had in mind. Interpeter or compiler, you need an RTS or equivalent that does all the amazing multi-green-threading and I/O multiplexing and...
2020-09-25 19:59:59 +0200 <dolio> What happened to the GHC fork that ran on JVM?
2020-09-25 20:00:02 +0200ccallahan1(~ccallahan@195.140.213.38) ()
2020-09-25 20:00:18 +0200 <davean> dolio: which one? eta?
2020-09-25 20:00:22 +0200 <davean> There were a few
2020-09-25 20:00:41 +0200 <dolio> Were there? I was thinking of eta, I think.
2020-09-25 20:00:58 +0200hackagepolysemy-test 0.3.0.0 - Polysemy effects for testing https://hackage.haskell.org/package/polysemy-test-0.3.0.0 (tek)
2020-09-25 20:01:19 +0200 <dolio> Running STG on JVM seems non-trivial anyway, because of the 'fixing space leaks in a garbage collector' thing that the JVM's garbage collector won't be doing.
2020-09-25 20:01:32 +0200 <monochrom> But consider translating hugs from C to Java. :)
2020-09-25 20:01:48 +0200 <nshepperd> dolio: what's that
2020-09-25 20:02:13 +0200oisdk(~oisdk@2001:bb6:3329:d100:fd58:7633:8b1d:97)
2020-09-25 20:02:27 +0200merijn(~merijn@83-160-49-249.ip.xs4all.nl)
2020-09-25 20:02:28 +0200 <dolio> nshepperd: It's the title of a paper by Wadler, I think.
2020-09-25 20:02:36 +0200 <monochrom> <bad pun time> eta has an ETA of "indefinite" </bad pun time> :)
2020-09-25 20:04:05 +0200lucid_0x80(~lucid_0x8@188.253.236.126) (Ping timeout: 240 seconds)
2020-09-25 20:04:17 +0200strangeglyph(~strangegl@boreeas.net) (Quit: User terminated)
2020-09-25 20:04:48 +0200 <phadej> nshepperd: TL;DR when GC find a value which is fst (a, b); i.e. selector applied to already evaluated constructor, it evaluates it
2020-09-25 20:05:04 +0200 <phadej> thus `b` could be possibly freed
2020-09-25 20:05:58 +0200strangeglyph(~strangegl@37.120.174.35)
2020-09-25 20:06:08 +0200jlamothe(~jlamothe@dev.jlamothe.net)
2020-09-25 20:07:24 +0200mu(~mu@unaffiliated/mu) (Read error: Connection reset by peer)
2020-09-25 20:07:45 +0200obihann(~jhann@156.34.160.69) (Ping timeout: 240 seconds)
2020-09-25 20:07:54 +0200mu(~mu@unaffiliated/mu)
2020-09-25 20:08:58 +0200hackagepolysemy-test 0.3.0.1 - Polysemy effects for testing https://hackage.haskell.org/package/polysemy-test-0.3.0.1 (tek)
2020-09-25 20:10:03 +0200mirrorbird(~psutcliff@m83-187-173-228.cust.tele2.se) (Quit: Leaving)
2020-09-25 20:10:41 +0200 <phadej> I *guess* if JVM had native notion of thunks, its GCs would do that optimization
2020-09-25 20:10:44 +0200jdgr(601c428b@gateway/web/cgi-irc/kiwiirc.com/ip.96.28.66.139)
2020-09-25 20:12:26 +0200 <nshepperd> interesting
2020-09-25 20:13:52 +0200thir(~thir@p200300f27f0fc60094e773283d7bf825.dip0.t-ipconnect.de)
2020-09-25 20:14:34 +0200 <dsal> Is polysemy still a thing?
2020-09-25 20:14:34 +0200 <davean> the 'eta' idea was to use the RTTI/Debugging support to do that optimization, right?
2020-09-25 20:15:35 +0200cgfuh(~cgfuh@181.167.191.58)
2020-09-25 20:16:06 +0200mirrorbird(~psutcliff@2a00:801:44a:a00b:20c3:c64:eb15:73a2)
2020-09-25 20:16:15 +0200 <phadej> davean: I don't know
2020-09-25 20:16:40 +0200howdoi(uid224@gateway/web/irccloud.com/x-aqxmdshelfofznzr)
2020-09-25 20:17:11 +0200DataComputist(~lumeng@static-50-43-26-251.bvtn.or.frontiernet.net)
2020-09-25 20:17:32 +0200mu(~mu@unaffiliated/mu) (Read error: Connection reset by peer)
2020-09-25 20:17:53 +0200mu(~mu@unaffiliated/mu)
2020-09-25 20:18:41 +0200coot(~coot@37.30.52.6.nat.umts.dynamic.t-mobile.pl) (Quit: coot)
2020-09-25 20:18:52 +0200 <pie_> man I dont know if parser combinators are hard to debug or just parsy as a python parser combinator library...
2020-09-25 20:19:02 +0200 <pie_> i make prgress and get stuck on some self induced bug for hours
2020-09-25 20:19:31 +0200esp32_prog(yoann@gateway/vpn/protonvpn/esp32prog/x-46565127) (Ping timeout: 256 seconds)
2020-09-25 20:19:33 +0200reppertj(~textual@pool-96-246-209-59.nycmny.fios.verizon.net)
2020-09-25 20:19:44 +0200coot(~coot@37.30.52.6.nat.umts.dynamic.t-mobile.pl)
2020-09-25 20:19:49 +0200coot(~coot@37.30.52.6.nat.umts.dynamic.t-mobile.pl) (Remote host closed the connection)
2020-09-25 20:21:33 +0200m0rphism(~m0rphism@HSI-KBW-046-005-177-122.hsi8.kabel-badenwuerttemberg.de)
2020-09-25 20:21:48 +0200wroathe(~wroathe@c-68-54-25-135.hsd1.mn.comcast.net)
2020-09-25 20:22:10 +0200lucid_0x80(~lucid_0x8@188.253.236.126)
2020-09-25 20:23:28 +0200hackagewai-session-postgresql 0.2.1.3 - PostgreSQL backed Wai session store https://hackage.haskell.org/package/wai-session-postgresql-0.2.1.3 (hc)
2020-09-25 20:23:32 +0200coot(~coot@37.30.52.6.nat.umts.dynamic.t-mobile.pl)
2020-09-25 20:23:42 +0200solonarv(~solonarv@anancy-653-1-63-100.w109-217.abo.wanadoo.fr) (Ping timeout: 272 seconds)
2020-09-25 20:23:57 +0200knupfer(~Thunderbi@200116b82c8bb80079b1331ba61465fc.dip.versatel-1u1.de) (Ping timeout: 260 seconds)
2020-09-25 20:24:40 +0200kritzefitz(~kritzefit@212.86.56.80) (Ping timeout: 260 seconds)
2020-09-25 20:25:09 +0200micro(~micro@unaffiliated/micro) (Remote host closed the connection)
2020-09-25 20:26:11 +0200wroathe(~wroathe@c-68-54-25-135.hsd1.mn.comcast.net) (Ping timeout: 240 seconds)
2020-09-25 20:26:25 +0200 <nshepperd> was your problem too much backtracking or not enough backtracking
2020-09-25 20:26:46 +0200 <monochrom> I think parser combinators are harder to debug (than ordinary recursive functions). I tried to add Debug.Trace messages, and quickly realized I couldn't design useful debugging messages.
2020-09-25 20:27:24 +0200mu(~mu@unaffiliated/mu) (Read error: Connection reset by peer)
2020-09-25 20:27:37 +0200lucid_0x80(~lucid_0x8@188.253.236.126) (Read error: Connection reset by peer)
2020-09-25 20:28:00 +0200mu(~mu@unaffiliated/mu)
2020-09-25 20:31:45 +0200coot(~coot@37.30.52.6.nat.umts.dynamic.t-mobile.pl) (Quit: coot)
2020-09-25 20:35:44 +0200kritzefitz(~kritzefit@212.86.56.80)
2020-09-25 20:36:05 +0200merijn(~merijn@83-160-49-249.ip.xs4all.nl) (Ping timeout: 240 seconds)
2020-09-25 20:36:25 +0200 <sm[m]> I have a dbgparse function that I stick into megaparsec parsers. megaparsec itself provides a dbg, also. Such things are definitely needed at times
2020-09-25 20:37:23 +0200mu(~mu@unaffiliated/mu) (Read error: Connection reset by peer)
2020-09-25 20:37:53 +0200mu(~mu@unaffiliated/mu)
2020-09-25 20:37:59 +0200geekosaur(42d52102@66.213.33.2) (Ping timeout: 245 seconds)
2020-09-25 20:38:01 +0200ubert(~Thunderbi@91.141.0.190.wireless.dyn.drei.com) (Ping timeout: 258 seconds)
2020-09-25 20:40:13 +0200hiptobecubic(~john@unaffiliated/hiptobecubic)
2020-09-25 20:43:48 +0200gxt(~gxt@gateway/tor-sasl/gxt) (Quit: WeeChat 2.9)
2020-09-25 20:47:23 +0200Aquazi(uid312403@gateway/web/irccloud.com/x-ppgacbnpjvcoyxiy) (Quit: Connection closed for inactivity)
2020-09-25 20:47:24 +0200mu(~mu@unaffiliated/mu) (Read error: Connection reset by peer)
2020-09-25 20:47:53 +0200mu(~mu@unaffiliated/mu)
2020-09-25 20:48:01 +0200Saten-san(~Saten-san@ip-62-235-73-121.dsl.scarlet.be) (Quit: WeeChat 2.8)
2020-09-25 20:50:18 +0200nyd(~nyd@unaffiliated/elysian) (Ping timeout: 272 seconds)
2020-09-25 20:54:13 +0200oisdk(~oisdk@2001:bb6:3329:d100:fd58:7633:8b1d:97) (Quit: My MacBook has gone to sleep. ZZZzzz…)
2020-09-25 20:55:07 +0200micro(~micro@unaffiliated/micro)
2020-09-25 20:56:05 +0200crobbins_(~crobbins@2601:2c1:380:ec40:2d4a:f96c:b859:c0ae)
2020-09-25 20:56:36 +0200landonf1(~landonf@193.56.252.210)
2020-09-25 20:57:23 +0200mu(~mu@unaffiliated/mu) (Read error: Connection reset by peer)
2020-09-25 20:57:54 +0200mu(~mu@unaffiliated/mu)
2020-09-25 20:59:52 +0200crobbins(~crobbins@2601:2c1:380:ec40:cf6:f95e:2b94:e5c5) (Ping timeout: 260 seconds)
2020-09-25 21:00:27 +0200crobbins_(~crobbins@2601:2c1:380:ec40:2d4a:f96c:b859:c0ae) (Ping timeout: 260 seconds)
2020-09-25 21:01:03 +0200abhixec(~abhixec@c-67-169-141-95.hsd1.ca.comcast.net)
2020-09-25 21:01:25 +0200Thra11(~Thra11@5.1.169.217.in-addr.arpa)
2020-09-25 21:02:07 +0200frdg(47b88ff9@pool-71-184-143-249.bstnma.fios.verizon.net)
2020-09-25 21:03:00 +0200 <glguy> parser combinators turn you into the parser compiler. using them for more than simple parsers generates debugging challenges and makes it hard to know what the grammar you actually support is
2020-09-25 21:03:27 +0200Lycurgus(~niemand@98.4.96.130)
2020-09-25 21:06:48 +0200geekosaur(42d52102@66.213.33.2)
2020-09-25 21:07:44 +0200mu(~mu@unaffiliated/mu) (Read error: Connection reset by peer)
2020-09-25 21:07:55 +0200mu__(~mu@unaffiliated/mu)
2020-09-25 21:09:04 +0200kenran(~maier@mue-88-130-62-135.dsl.tropolys.de)
2020-09-25 21:09:56 +0200frdg(47b88ff9@pool-71-184-143-249.bstnma.fios.verizon.net) (Remote host closed the connection)
2020-09-25 21:12:45 +0200merijn(~merijn@83-160-49-249.ip.xs4all.nl)
2020-09-25 21:13:38 +0200 <pie_> the problem i run into a lot is i dont know which piece of code is causing the error
2020-09-25 21:13:41 +0200jedws(~jedws@2001:8003:337f:1b00:edc3:4bd4:30b0:401b) (Quit: My MacBook has gone to sleep. ZZZzzz…)
2020-09-25 21:13:45 +0200 <pie_> i also have no idea when backtracking triggers :P
2020-09-25 21:14:02 +0200cole-h(~cole-h@c-73-48-197-220.hsd1.ca.comcast.net) (Quit: Goodbye)
2020-09-25 21:14:21 +0200 <pie_> though my code so far afaik doesnt have any deliberate backtracking, so if backtracking happens its probably by mistake
2020-09-25 21:15:47 +0200cr3(~cr3@192-222-143-195.qc.cable.ebox.net)
2020-09-25 21:16:18 +0200fluturel(~fluturel@82.137.14.51) (Quit: leaving)
2020-09-25 21:16:44 +0200Lycurgushad to look at the log, backtracking in hs sounded funny
2020-09-25 21:16:57 +0200 <hyperisco> combinators are supposed to be syntactically relatable to grammar notation like BNF
2020-09-25 21:17:10 +0200 <hyperisco> so you are supposed to be able to understand the grammar that way
2020-09-25 21:17:26 +0200mu__(~mu@unaffiliated/mu) (Read error: Connection reset by peer)
2020-09-25 21:17:35 +0200 <ski> (some familiarity with Prolog, and perhaps in particular DCG, might help)
2020-09-25 21:17:54 +0200mu(~mu@unaffiliated/mu)
2020-09-25 21:18:04 +0200 <hyperisco> the complication is to watch out for restricted grammar classes (most combinators do not support all CFG)
2020-09-25 21:18:13 +0200merijn(~merijn@83-160-49-249.ip.xs4all.nl) (Ping timeout: 264 seconds)
2020-09-25 21:18:59 +0200 <hyperisco> I'd just use combinators that do support all CFG if confusion is the main problem
2020-09-25 21:20:45 +0200Mcdukc(~oleg@90.255.27.8) (Read error: Connection reset by peer)
2020-09-25 21:21:36 +0200v_m_v(~vm_v@2a02:aa12:3200:6480:f507:71a:9334:3099)
2020-09-25 21:22:32 +0200takuan(~takuan@178-116-218-225.access.telenet.be)
2020-09-25 21:22:48 +0200 <pie_> im parsing some text file generated by some government land office program
2020-09-25 21:22:57 +0200wroathe(~wroathe@c-68-54-25-135.hsd1.mn.comcast.net)
2020-09-25 21:22:58 +0200 <pie_> its not exactly parsing friendly but i havent seen any specs either so
2020-09-25 21:23:34 +0200Lycurgusguesses that most hs parser things are ll or lr without backtracking
2020-09-25 21:23:34 +0200 <pie_> but yeah its not like i have some grammar to code against
2020-09-25 21:27:06 +0200crobbins(~crobbins@2600:1700:48eb:8490:4a3:9554:f20a:562c)
2020-09-25 21:27:28 +0200wroathe(~wroathe@c-68-54-25-135.hsd1.mn.comcast.net) (Ping timeout: 246 seconds)
2020-09-25 21:27:28 +0200mu(~mu@unaffiliated/mu) (Read error: Connection reset by peer)
2020-09-25 21:27:54 +0200mu(~mu@unaffiliated/mu)
2020-09-25 21:29:34 +0200bloodstalker(~bloodstal@46.166.187.178) (Ping timeout: 272 seconds)
2020-09-25 21:30:48 +0200nyd(~nyd@unaffiliated/elysian)
2020-09-25 21:34:56 +0200 <sm[m]> pie_: you need one of those debug functions I mentioned
2020-09-25 21:35:18 +0200 <sm[m]> glguy that's an interesting observation
2020-09-25 21:35:27 +0200 <hyperisco> pie_, if you suspect it is realisable as a CFG then I
2020-09-25 21:35:32 +0200 <hyperisco> 'd start there on paper
2020-09-25 21:35:44 +0200 <hyperisco> and only after succeeding with that worry about the program
2020-09-25 21:36:34 +0200v_m_v(~vm_v@2a02:aa12:3200:6480:f507:71a:9334:3099) (Remote host closed the connection)
2020-09-25 21:36:52 +0200 <hyperisco> some combinators instance Monad and can parse some grammars outside CFG
2020-09-25 21:37:16 +0200 <hyperisco> I think best to know the nature of what you're dealing with first
2020-09-25 21:37:28 +0200jneira(501e65ce@gateway/web/cgi-irc/kiwiirc.com/ip.80.30.101.206) (Ping timeout: 260 seconds)
2020-09-25 21:37:29 +0200mu(~mu@unaffiliated/mu) (Read error: Connection reset by peer)
2020-09-25 21:37:54 +0200mu(~mu@unaffiliated/mu)
2020-09-25 21:38:29 +0200coot(~coot@37.30.52.6.nat.umts.dynamic.t-mobile.pl)
2020-09-25 21:39:11 +0200 <sm[m]> pie_: maybe those functions won't work for you but it's worth building one, along the lines of https://hackage.haskell.org/package/hledger-lib-1.19.1/docs/Hledger-Utils-Debug.html#v:traceParse
2020-09-25 21:39:47 +0200sooch(~sooch@209.6.196.179) (Quit: leaving)
2020-09-25 21:39:56 +0200 <sm[m]> hyperisco: very true
2020-09-25 21:40:08 +0200frdg(47b88ff9@pool-71-184-143-249.bstnma.fios.verizon.net)
2020-09-25 21:40:48 +0200 <frdg> how does stack decide which version of ghc to use? I use ghcup. I would like the default ghc to be 8.8.3.
2020-09-25 21:41:07 +0200 <frdg> ghc --version returns a different ghc than 8.8.3
2020-09-25 21:41:17 +0200 <glguy> stack and ghcup are different things
2020-09-25 21:42:09 +0200 <frdg> so different stack versions use different ghc's ?
2020-09-25 21:42:10 +0200acidjnk_new(~acidjnk@p200300d0c7237802f9328c36b4a510ff.dip0.t-ipconnect.de)
2020-09-25 21:42:12 +0200 <geekosaur> stack installs its own ghc based on the selected/current resolver, and by default ignores any ghc from a different source
2020-09-25 21:42:23 +0200 <sm[m]> By the resolver in the nearest stack.yaml
2020-09-25 21:42:57 +0200hackagebugsnag-hs 0.2.0.0 - A Bugsnag client for Haskell. https://hackage.haskell.org/package/bugsnag-hs-0.2.0.0 (JasperWoudenberg)
2020-09-25 21:43:11 +0200 <geekosaur> a differet stack release will probably default to a different resolver, but this can be configured by editing a stack.yaml somewhere (either in the current project, or a global default one)
2020-09-25 21:43:29 +0200isovector1(~isovector@172.103.216.166)
2020-09-25 21:43:43 +0200 <frdg> oh ok. Now to my next question. How can I change my stack version from 2.3.3 to 2.4?
2020-09-25 21:44:26 +0200 <sm[m]> after that is released, stack upgrade (is one way)
2020-09-25 21:45:00 +0200geekosaur(42d52102@66.213.33.2) (Remote host closed the connection)
2020-09-25 21:45:23 +0200Lycurgus(~niemand@98.4.96.130) (Quit: Exeunt)
2020-09-25 21:45:34 +0200 <phadej> weird, I just noticed that stack-2.5 prerelease was tagged
2020-09-25 21:45:39 +0200johtso(uid563@gateway/web/irccloud.com/x-dfhkalrthzrhztaj)
2020-09-25 21:45:41 +0200 <phadej> I wonder what happened to 2.4 (well, not really)
2020-09-25 21:45:50 +0200 <phadej> https://github.com/commercialhaskell/stack/releases/tag/v2.5.0.1
2020-09-25 21:45:51 +0200v_m_v(~vm_v@2a02:aa12:3200:6480:f507:71a:9334:3099)
2020-09-25 21:46:02 +0200 <frdg> really? I have two machines. On one machine stack --version returns 2.4? When I run stack upgrade both machines say it is the most recent version.
2020-09-25 21:46:59 +0200 <phadej> or hmm. does stack use odd-even numbering (and oddly, with even numbers being development ones)
2020-09-25 21:47:16 +0200 <phadej> i.e. stack-2.4 is some development version?
2020-09-25 21:47:30 +0200mu(~mu@unaffiliated/mu) (Read error: Connection reset by peer)
2020-09-25 21:47:41 +0200johtso(uid563@gateway/web/irccloud.com/x-dfhkalrthzrhztaj) (Disconnected by services)
2020-09-25 21:47:54 +0200mu(~mu@unaffiliated/mu)
2020-09-25 21:48:13 +0200v_m_v(~vm_v@2a02:aa12:3200:6480:f507:71a:9334:3099) (Remote host closed the connection)
2020-09-25 21:48:24 +0200ubert(~Thunderbi@91.141.0.190.wireless.dyn.drei.com)
2020-09-25 21:49:18 +0200wroathe(~wroathe@c-68-54-25-135.hsd1.mn.comcast.net)
2020-09-25 21:49:35 +0200 <sm[m]> phadej: strange.. they haven't used that numbering
2020-09-25 21:50:24 +0200 <sm[m]> but I'm glad of the 5125 fix, that will speed up CI builds
2020-09-25 21:50:33 +0200Dablyon(~godel@173.171.157.121)
2020-09-25 21:50:45 +0200 <sm[m]> frdg: stranger still
2020-09-25 21:50:59 +0200kenran(~maier@mue-88-130-62-135.dsl.tropolys.de) (Ping timeout: 240 seconds)
2020-09-25 21:51:02 +0200 <phadej> sm[m]: there weren't 2.2 either
2020-09-25 21:51:08 +0200merijn(~merijn@83-160-49-249.ip.xs4all.nl)
2020-09-25 21:51:51 +0200 <sm[m]> they only release unstable versions ? :)
2020-09-25 21:52:15 +0200mirrorbird(~psutcliff@2a00:801:44a:a00b:20c3:c64:eb15:73a2) (Ping timeout: 272 seconds)
2020-09-25 21:52:19 +0200 <frdg> `Version 2.4.0, Git revision 1b1bed5b84b3aed76cf27b02cadd46d09efc611f PRE-RELEASE x86_64 hpack-0.33.0` It does say pre-release I guess?
2020-09-25 21:52:44 +0200 <frdg> everything is working regardless though so I am pretty happy.
2020-09-25 21:53:10 +0200 <sm[m]> ah, well that makes more sense. They must have changed their mind
2020-09-25 21:53:40 +0200 <sm[m]> or it's a dev version numbering scheme like phade said
2020-09-25 21:53:51 +0200heatsink(~heatsink@107-136-5-69.lightspeed.sntcca.sbcglobal.net) (Remote host closed the connection)
2020-09-25 21:54:10 +0200ggole(~ggole@2001:8003:8119:7200:4cc1:e316:a6d6:5aec) (Quit: Leaving)
2020-09-25 21:54:19 +0200 <sm[m]> a wrong one
2020-09-25 21:55:18 +0200 <sm[m]> though .0 releases are usually unstable so I suppose it's fair..
2020-09-25 21:55:32 +0200Dablyon(~godel@173.171.157.121) (Ping timeout: 272 seconds)
2020-09-25 21:56:14 +0200 <int-e> If 2.0 is a stable release then what version number do you use for the development release leadung up to it? I've seen things like 1.99 and it's ugly.
2020-09-25 21:56:47 +0200 <sm[m]> Ha that's my scheme. It's find it ok
2020-09-25 21:56:52 +0200heatsink(~heatsink@107-136-5-69.lightspeed.sntcca.sbcglobal.net)
2020-09-25 21:56:53 +0200 <sm[m]> I find it
2020-09-25 21:57:19 +0200 <sm[m]> It's forced on me by cabal
2020-09-25 21:57:26 +0200mu(~mu@unaffiliated/mu) (Read error: Connection reset by peer)
2020-09-25 21:57:27 +0200 <int-e> Anyway, that's a reason for using odd numbers for stable releases.
2020-09-25 21:57:54 +0200mu(~mu@unaffiliated/mu)
2020-09-25 22:00:49 +0200v_m_v(~vm_v@2a02:aa12:3200:6480:f507:71a:9334:3099)
2020-09-25 22:01:28 +0200pie_looks at sm[m]'s link
2020-09-25 22:02:05 +0200 <int-e> You could also skip over 2.0, I guess...
2020-09-25 22:02:20 +0200 <int-e> Or paint a bikeshed.
2020-09-25 22:02:45 +0200 <pie_> i think i kind of have somethign like that
2020-09-25 22:03:16 +0200 <sm[m]> pie_: and here's the other, maybe it's better ? https://hackage.haskell.org/package/megaparsec-9.0.0/docs/Text-Megaparsec-Debug.html
2020-09-25 22:03:19 +0200_vaibhavingale_(~Adium@203.188.228.27) (Quit: Leaving.)
2020-09-25 22:03:19 +0200 <pie_> re: the problem is most of the time i dont know which piece of my code is causing the error (and then i bisect or whatever and still dont get why its breaking where its breaking xD)
2020-09-25 22:03:40 +0200ahri(~ahri@178.209.40.84) (Quit: Ping timeout (120 seconds))
2020-09-25 22:03:46 +0200 <pie_> maybe i just dont understand the library well enough
2020-09-25 22:03:48 +0200 <pie_> :I
2020-09-25 22:03:56 +0200 <sm[m]> that's why you have to sprinkle loads of these, with different labels
2020-09-25 22:04:01 +0200 <pie_> guess i should learn a different style of parser writing
2020-09-25 22:04:16 +0200ahri(~ahri@178.209.40.84)
2020-09-25 22:05:10 +0200 <sm[m]> if you look at hledger parsers you'll see lots of these, perhaps commented out.. and if debugging I'll often add more
2020-09-25 22:05:18 +0200 <pie_> *nid*
2020-09-25 22:05:21 +0200 <pie_> *nod*
2020-09-25 22:05:38 +0200 <pie_> there has got to be a better way of doing this
2020-09-25 22:06:10 +0200Dablyon(~godel@173.171.157.121)
2020-09-25 22:06:32 +0200 <sm[m]> I'm not sure what it is, other than use a parser generator
2020-09-25 22:07:03 +0200 <sm[m]> extensive fine grained tests are also helpful, and tedious
2020-09-25 22:07:31 +0200mu(~mu@unaffiliated/mu) (Read error: Connection reset by peer)
2020-09-25 22:07:40 +0200 <pie_> *nod*
2020-09-25 22:08:00 +0200mu(~mu@unaffiliated/mu)
2020-09-25 22:08:59 +0200 <sm[m]> Interactive testing in ghci, too
2020-09-25 22:10:24 +0200heatsink(~heatsink@107-136-5-69.lightspeed.sntcca.sbcglobal.net) (Remote host closed the connection)
2020-09-25 22:11:00 +0200Dablyon(~godel@173.171.157.121) (Ping timeout: 256 seconds)
2020-09-25 22:11:13 +0200Rudd0^(~Rudd0@185.189.115.98) (Ping timeout: 246 seconds)
2020-09-25 22:11:14 +0200 <sm[m]> and I suppose being disciplined and consistent, eg in how you handle whitespace, reducing the number of ways to screw up. A lexing phase should help with that but adds complexity too
2020-09-25 22:11:45 +0200archaephyrryx(~archaephy@straasha.imrryr.org)
2020-09-25 22:11:55 +0200 <pie_> do people have to do this for other parser styles?
2020-09-25 22:12:22 +0200 <sm[m]> but when it's just..not..working you must have a technique to drill in and get visibility on what's happening
2020-09-25 22:12:40 +0200sm[m]doesn't know
2020-09-25 22:12:42 +0200 <pie_> dont get me wrong i like combinators on some level, and they seem intuitive, except its not going well xD
2020-09-25 22:12:55 +0200 <archaephyrryx> what parser library is this?
2020-09-25 22:13:06 +0200 <pie_> parsy in python, its quite decent
2020-09-25 22:13:12 +0200 <pie_> one could even say good
2020-09-25 22:13:18 +0200 <pie_> but i dont have anything to compare agaisnt really
2020-09-25 22:14:10 +0200 <archaephyrryx> i joined mid-conversation, but I have a bit of experience using (and even writing to a limited extent) parser combinators in Haskell
2020-09-25 22:14:13 +0200frdg(47b88ff9@pool-71-184-143-249.bstnma.fios.verizon.net) (Remote host closed the connection)
2020-09-25 22:14:15 +0200 <archaephyrryx> what is the issue?
2020-09-25 22:14:52 +0200 <pie_> it works and then i hit a snag and get stuck for hurs
2020-09-25 22:14:55 +0200 <pie_> hours
2020-09-25 22:14:59 +0200 <archaephyrryx> what does?
2020-09-25 22:15:00 +0200 <pie_> generally hard to debug
2020-09-25 22:15:06 +0200 <sm[m]> can you see the log, archaephyrryx?
2020-09-25 22:15:23 +0200 <pie_> writing parser combinators is hard to debug (for me)
2020-09-25 22:15:52 +0200 <pie_> also tbh i shouldnt have to write print statements everywhere, it shuld be possible to point to something and figure out wtf is going on there
2020-09-25 22:16:02 +0200 <pie_> but im not sure what kind of tooling would need to be in the library for that
2020-09-25 22:16:04 +0200 <archaephyrryx> have you looked into HasCallStack
2020-09-25 22:16:42 +0200 <pie_> i havent had much luck with making sense of whats going on using the pycharm debugger, though maybe i didnt try hard enough
2020-09-25 22:16:51 +0200 <archaephyrryx> don't have much experience using it personally but it seems useful for tracing bugs in deeply nested calls
2020-09-25 22:16:57 +0200 <sm[m]> pie_: it's actually fine, I may have overstated. Often putting the trace in one likely place will give you the insight to fix it
2020-09-25 22:17:14 +0200 <sm[m]> and it's quick to do via ghci
2020-09-25 22:17:25 +0200mu(~mu@unaffiliated/mu) (Read error: Connection reset by peer)
2020-09-25 22:17:31 +0200s00pcan(~chris@075-133-056-178.res.spectrum.com) (Ping timeout: 246 seconds)
2020-09-25 22:17:54 +0200mu(~mu@unaffiliated/mu)
2020-09-25 22:17:59 +0200 <pie_> sm[m]: i can do something like .map(debug) in a parser chain where debug is def debug(x): print(x); return x
2020-09-25 22:18:17 +0200 <pie_> its helped but i have to turn it off and on (which you mentioned) and doesnt fix everything
2020-09-25 22:18:25 +0200 <sm[m]> but.. I'm slowly realizing that you're adking for help with something quite different from what I'm talking about
2020-09-25 22:18:26 +0200 <pie_> hm i guess i should add showing parser state to that somehow
2020-09-25 22:18:53 +0200takuan(~takuan@178-116-218-225.access.telenet.be) (Ping timeout: 260 seconds)
2020-09-25 22:19:04 +0200 <pie_> i mean, theres libary specifics but there should be general approaches amenable to the design of monadic combinators in general i think
2020-09-25 22:19:28 +0200s00pcan(~chris@107.181.165.217)
2020-09-25 22:19:56 +0200 <archaephyrryx> can't figure out how to view the log sm[m]
2020-09-25 22:20:06 +0200alexkubicail(~alexkubic@37.142.205.101)
2020-09-25 22:20:23 +0200 <sm[m]> Yes; that was the point of my first reply to you. You need a specialized trace helper that prints the parser state - what text it's looking at etc.
2020-09-25 22:20:36 +0200 <pie_> *nod*
2020-09-25 22:21:04 +0200 <sm[m]> ircbrowse.tomsmeding.com archaephyrryx
2020-09-25 22:21:04 +0200 <pie_> so, do you think theres a way to integrate the tracer so you dont have to manually add calls if you need them?
2020-09-25 22:21:20 +0200chaosmasttter(~chaosmast@p200300c4a7105f013091658b0e650c79.dip0.t-ipconnect.de)
2020-09-25 22:21:31 +0200 <sm[m]> certainly, in the parser engine, why not
2020-09-25 22:21:31 +0200 <pie_> well i guess that comes down to wrapping every function
2020-09-25 22:21:31 +0200totallynotnate(~nate@125.161.70.37)
2020-09-25 22:21:56 +0200 <sm[m]> The challenge is not being so verbose that you can't read it
2020-09-25 22:22:01 +0200 <pie_> i guess parser combinators dont really have an engine? isnt it just a style of signatures?
2020-09-25 22:22:06 +0200 <pie_> yeah
2020-09-25 22:22:41 +0200 <sm[m]> I have assigned priorities to trace statements so I could filter by level
2020-09-25 22:23:32 +0200 <pie_> maybe something you could to is tell it to trace between sections of the text
2020-09-25 22:23:36 +0200 <pie_> so from char x to char y
2020-09-25 22:23:43 +0200 <sm[m]> I don't know about your python lib. Haskell parser combinators run via a parser engine
2020-09-25 22:23:57 +0200 <pie_> ok
2020-09-25 22:23:57 +0200 <sm[m]> sounds good
2020-09-25 22:24:08 +0200 <sm[m]> There is a lot of room for better tooling here
2020-09-25 22:24:33 +0200 <pie_> ive googled stuff like "debuggign parser combinators" in the past but i never really saw anything relevan
2020-09-25 22:24:35 +0200 <pie_> t
2020-09-25 22:24:51 +0200 <pie_> doesnt mean it doesnt exist but i didnt find the right people or material...
2020-09-25 22:25:04 +0200 <pie_> people dont seem to design for introspectability much
2020-09-25 22:25:23 +0200 <pie_> i feel like im the idiot though, idk
2020-09-25 22:25:43 +0200 <sm[m]> I have built some complex parsers with combinators but perhaps it's a thing people don't do much
2020-09-25 22:25:56 +0200 <pie_> you seem to have managed
2020-09-25 22:26:07 +0200merijn(~merijn@83-160-49-249.ip.xs4all.nl) (Ping timeout: 258 seconds)
2020-09-25 22:26:14 +0200 <archaephyrryx> have you tried copying the source code and running it yourself with modifications to enhance debuggability
2020-09-25 22:26:36 +0200 <pie_> the parser im building doesnt seem horribly complex. ok maybe its not simple, im not sure, what i need to do is decompose it into small iterative steps so i can manage it
2020-09-25 22:26:42 +0200 <sm[m]> yes, by making debug tools.. and still with a lot of labour. Otherwise, it was impossible
2020-09-25 22:27:16 +0200 <phadej> running your parser on smaller inputs and verifying that things which you think should be accepted are actualyl accepted
2020-09-25 22:27:22 +0200 <pie_> the part i started making progress was when i finally figured out how to use bind in the library xD and decompose the large text into some major sections
2020-09-25 22:27:25 +0200mu(~mu@unaffiliated/mu) (Read error: Connection reset by peer)
2020-09-25 22:27:33 +0200 <phadej> I see often that person writes 1000 lines of code, *and* then tries to run it for the first time
2020-09-25 22:27:37 +0200 <phadej> don't be that person
2020-09-25 22:27:37 +0200 <pie_> yeah
2020-09-25 22:27:50 +0200 <pie_> i still do that sometimes despite knowing better - not to that extent though
2020-09-25 22:27:57 +0200 <pie_> it helps to have automated tests
2020-09-25 22:28:00 +0200 <sm[m]> right.. fine grained tests of smaller pieces as mentioned. All of the techniques are needed and complementary
2020-09-25 22:28:01 +0200mu(~mu@unaffiliated/mu)
2020-09-25 22:28:04 +0200 <pie_> but for a while i didnt even know what to test
2020-09-25 22:28:40 +0200 <pie_> actually, the zeroth big step to actually making progress was writing code to test my parser on the corpus i have instead of f***ing with testing on soem files manually
2020-09-25 22:28:52 +0200 <pie_> i should learn how to use some python test framework...
2020-09-25 22:29:04 +0200s00pcan(~chris@107.181.165.217) (Ping timeout: 256 seconds)
2020-09-25 22:29:20 +0200 <pie_> the reason i havent written unit tests was id have to figure out what sections of the corpus to even be copy pasting into separate test cases...
2020-09-25 22:29:29 +0200 <pie_> its kind of a back and forth thing with too many iterations
2020-09-25 22:29:32 +0200 <sm[m]> Fuzz/property tests should be quite useful too but I haven't done it
2020-09-25 22:30:00 +0200 <archaephyrryx> *slowly realizing we are talking about python and not haskell* ...I can't really contribute as much as I thought I could
2020-09-25 22:30:01 +0200s00pcan(~chris@075-133-056-178.res.spectrum.com)
2020-09-25 22:30:18 +0200 <pie_> archaephyrryx: :P as ive been saying several times i think, but thats a technicality
2020-09-25 22:30:33 +0200 <pie_> ok i should go try to write soem more code and see if i can say anything more
2020-09-25 22:31:55 +0200 <archaephyrryx> on an unrelated note, I was wondering whether anyone had any opinions about a particular stylistic choice in writing haskell
2020-09-25 22:32:04 +0200 <sm[m]> if all else fails, ship it to users and accept pull requests ?
2020-09-25 22:32:19 +0200 <sm[m]> Just kidding
2020-09-25 22:32:38 +0200 <pie_> haha
2020-09-25 22:33:08 +0200 <archaephyrryx> when writing a function whose LHS has one fewer variable binding than it is ever called with (f :: a -> b -> c; f x = ...)
2020-09-25 22:33:09 +0200 <sm[m]> archaephyrryx: nope. Opinions on style ? Never seen that
2020-09-25 22:34:13 +0200 <archaephyrryx> is it appropriate to write the RHS using `$` to obviate nested parentheses when the implicit missing argument would necessitate parentheticals
2020-09-25 22:34:40 +0200 <pie_> Wow I completely forgot I ran into this issue before... https://github.com/python-parsy/parsy/issues/34 :/
2020-09-25 22:34:48 +0200 <sm[m]> I lied. There's a dozen dueling haskell formatting tools and style guides
2020-09-25 22:35:38 +0200 <archaephyrryx> e.g.: f x {- implicit y -} = g $ h $ x
2020-09-25 22:35:52 +0200nbloomf(~nbloomf@2600:1700:83e0:1f40:d985:da37:6cf:2ad4) (Quit: My MacBook has gone to sleep. ZZZzzz…)
2020-09-25 22:35:59 +0200 <archaephyrryx> rather than
2020-09-25 22:36:16 +0200 <archaephyrryx> f x {- implicit y -} = g (h x) {- implicit y -}
2020-09-25 22:36:34 +0200 <archaephyrryx> any thoughts?
2020-09-25 22:36:51 +0200 <sm[m]> f = g . h is often seen
2020-09-25 22:36:53 +0200 <dolio> I would probably never write `g $ h $ x`.
2020-09-25 22:37:06 +0200 <archaephyrryx> i am not writing the actual code
2020-09-25 22:37:14 +0200 <archaephyrryx> this is a contrived abstraction
2020-09-25 22:37:24 +0200mu(~mu@unaffiliated/mu) (Read error: Connection reset by peer)
2020-09-25 22:37:50 +0200 <archaephyrryx> it really looks more like
2020-09-25 22:37:54 +0200mu(~mu@unaffiliated/mu)
2020-09-25 22:38:27 +0200hackagecryptocompare 0.1.2 - Haskell wrapper for the cryptocompare API https://hackage.haskell.org/package/cryptocompare-0.1.2 (aviaviavi)
2020-09-25 22:38:29 +0200 <archaephyrryx> func1 arg1 = doWork $ func2 $ func3 arg1
2020-09-25 22:39:08 +0200 <archaephyrryx> where there is an extra implicit argument that lacks a binding in the actual definition
2020-09-25 22:39:46 +0200 <dolio> That's also `doWork . func2 . func3`.
2020-09-25 22:40:17 +0200 <archaephyrryx> the first binding has a strictness annotation (!) so that isn't viable
2020-09-25 22:40:19 +0200totallynotnate(~nate@125.161.70.37) (Quit: WeeChat 2.9)
2020-09-25 22:40:37 +0200alexkubicail(~alexkubic@37.142.205.101) (Ping timeout: 256 seconds)
2020-09-25 22:40:47 +0200v_m_v(~vm_v@2a02:aa12:3200:6480:f507:71a:9334:3099) (Ping timeout: 260 seconds)
2020-09-25 22:40:56 +0200 <glguy> too late, you left that out of your simplified problem code, so you don't get to use it
2020-09-25 22:41:26 +0200 <archaephyrryx> but the invisible dragon *is* flour-permeable, I swear it always was
2020-09-25 22:42:09 +0200isovector1(~isovector@172.103.216.166) (Quit: Leaving)
2020-09-25 22:42:10 +0200 <dolio> I still don't repeat $ usually, I use .
2020-09-25 22:42:20 +0200heatsink(~heatsink@107-136-5-69.lightspeed.sntcca.sbcglobal.net)
2020-09-25 22:42:31 +0200isovector1(~isovector@172.103.216.166)
2020-09-25 22:42:53 +0200edwardk(sid47016@haskell/developer/edwardk) (Quit: Connection closed for inactivity)
2020-09-25 22:43:34 +0200 <dolio> But what I do depends on the actual code, and may be different from simplifications, because I don't follow rules by rote.
2020-09-25 22:43:56 +0200johnw_johnw
2020-09-25 22:46:22 +0200 <archaephyrryx> I typically opt for point-free style and don't use `$` very often but I am collaborating with someone with a completely opposite style and so have been subconsciously splitting the difference for this project
2020-09-25 22:46:26 +0200heatsink(~heatsink@107-136-5-69.lightspeed.sntcca.sbcglobal.net) (Remote host closed the connection)
2020-09-25 22:46:42 +0200heatsink(~heatsink@107-136-5-69.lightspeed.sntcca.sbcglobal.net)
2020-09-25 22:47:49 +0200mu(~mu@unaffiliated/mu) (Read error: Connection reset by peer)
2020-09-25 22:47:55 +0200mu__(~mu@unaffiliated/mu)
2020-09-25 22:48:33 +0200 <monochrom> dragon and flour?! If the dragon breathes fire, and the flour is aerosoled, that's a fuel-air bomb waiting to happen >_<
2020-09-25 22:49:05 +0200 <archaephyrryx> was that reference too obscure? I don't know how common it is
2020-09-25 22:49:24 +0200[exa]votes for obscure
2020-09-25 22:49:27 +0200 <monochrom> All references are too obscure. :)
2020-09-25 22:49:53 +0200ericsagnes(~ericsagne@2405:6580:0:5100:4407:fff6:2258:7a65) (Ping timeout: 272 seconds)
2020-09-25 22:50:26 +0200 <monochrom> Every cultural reference is well-known to 100% of the community consisting of the solely the speaker.
2020-09-25 22:50:50 +0200 <archaephyrryx> it was an example about irrational claims involving shifting goalposts to thwart potential experimental counter-evidence
2020-09-25 22:51:35 +0200 <monochrom> Please don't worry about me. I was just spotting a huge fire/explosion hazard. :)
2020-09-25 22:51:50 +0200 <archaephyrryx> posed by Carl Sagan
2020-09-25 22:52:05 +0200 <archaephyrryx> https://en.wikipedia.org/wiki/The_Demon-Haunted_World#Dragon_in_my_garage
2020-09-25 22:52:52 +0200 <monochrom> A very bad flour explosion accident happened some years ago in Taiwan, in a party or festive celebration or something featuring flour in the air.
2020-09-25 22:53:42 +0200 <monochrom> Yikes, the Carl Sagan dragon does breathe fire.
2020-09-25 22:54:28 +0200ystael(~ystael@209.6.50.55) (Ping timeout: 260 seconds)
2020-09-25 22:54:46 +0200 <monochrom> And now my turn to give an obscure reference.
2020-09-25 22:55:34 +0200 <monochrom> Imagine that, replying to "the fire-breathing dragon is invisible and floating", you say "so how about we spread flour in the air and see if we survive"
2020-09-25 22:56:16 +0200wroathe(~wroathe@c-68-54-25-135.hsd1.mn.comcast.net) (Ping timeout: 256 seconds)
2020-09-25 22:56:27 +0200 <monochrom> This will lead to a "no-dead-body problem".
2020-09-25 22:56:36 +0200 <[exa]> re 'The inability to invalidate the hypotesis is not at all the same thing as proving it true'....well here we've got undecidability&complexity reductions. :D
2020-09-25 22:57:26 +0200mu__(~mu@unaffiliated/mu) (Read error: Connection reset by peer)
2020-09-25 22:57:38 +0200wroathe(~wroathe@c-73-24-27-54.hsd1.mn.comcast.net)
2020-09-25 22:57:54 +0200mu(~mu@unaffiliated/mu)
2020-09-25 22:58:11 +0200 <monochrom> This is an obscure reference to a criticism of claims of cold fusion back then. If cold fusion happened, it should generate more than enough neutrons to kill everyone around. But everyone around was living just fine. This was the "no-dead-body question", or perhaps the "dead-body question".
2020-09-25 22:58:42 +0200 <monochrom> or s/question/problem/ or something
2020-09-25 23:00:01 +0200landonf1(~landonf@193.56.252.210) ()
2020-09-25 23:00:13 +0200merijn(~merijn@83-160-49-249.ip.xs4all.nl)
2020-09-25 23:00:22 +0200 <monochrom> Thanks for the link. It's a good read. <3 Sagan
2020-09-25 23:00:45 +0200monochromhops over to amazon
2020-09-25 23:00:50 +0200ubert(~Thunderbi@91.141.0.190.wireless.dyn.drei.com) (Remote host closed the connection)
2020-09-25 23:01:22 +0200 <archaephyrryx> There is another version where the suggestion to throw flour in the air to outline the shape of the dragon was countered with "the dragon is permeable to flour"
2020-09-25 23:01:39 +0200 <archaephyrryx> which is what I was referencing originally
2020-09-25 23:01:44 +0200 <monochrom> Ah yeah.
2020-09-25 23:01:49 +0200heatsink(~heatsink@107-136-5-69.lightspeed.sntcca.sbcglobal.net) (Remote host closed the connection)
2020-09-25 23:02:12 +0200 <monochrom> But I play my "why are we still alive?" card. :)
2020-09-25 23:02:16 +0200ericsagnes(~ericsagne@2405:6580:0:5100:c98f:bbb5:ca9:3c24)
2020-09-25 23:02:26 +0200 <archaephyrryx> anthropic principle to the rescue
2020-09-25 23:02:30 +0200 <archaephyrryx> just like qunatum-bogosort
2020-09-25 23:05:33 +0200thir(~thir@p200300f27f0fc60094e773283d7bf825.dip0.t-ipconnect.de) (Remote host closed the connection)
2020-09-25 23:05:33 +0200merijn(~merijn@83-160-49-249.ip.xs4all.nl) (Ping timeout: 256 seconds)
2020-09-25 23:05:55 +0200 <dmwit> It says very clearly in the link that the dragon's fire is heatless.
2020-09-25 23:06:05 +0200 <dmwit> So of course throwing flour in the air doesn't kill us.
2020-09-25 23:06:11 +0200sfvm(~sfvm@37.228.215.148)
2020-09-25 23:06:28 +0200 <monochrom> Oops.
2020-09-25 23:06:45 +0200 <monochrom> Does that still count as fire? heh
2020-09-25 23:07:00 +0200 <dmwit> Yeah, that's... sort of Sagan's conclusion, too.
2020-09-25 23:07:11 +0200 <dmwit> Does this even count as a dragon if there's no way to observe it being a dragon?
2020-09-25 23:07:30 +0200 <monochrom> It's like Tigger but s/tiger/dragon/
2020-09-25 23:07:31 +0200mu(~mu@unaffiliated/mu) (Read error: Connection reset by peer)
2020-09-25 23:07:54 +0200mu(~mu@unaffiliated/mu)
2020-09-25 23:08:21 +0200 <monochrom> http://www.vex.net/~trebla/photo/unorganized/dragon.jpg
2020-09-25 23:09:00 +0200 <dsal> Lazy IO is the best! My programs all run instantly! Sometimes takes a while to print the output, though.
2020-09-25 23:09:31 +0200 <monochrom> Um that's not lazy I/O. That's just output buffering.
2020-09-25 23:09:43 +0200 <monochrom> OK you were joking. Haha.
2020-09-25 23:10:00 +0200 <cheater> monochrom: it's not output buffering, his dot matrix printer is just a bit slow
2020-09-25 23:10:10 +0200 <monochrom> I do have students confused by output buffering. And it's a C course.
2020-09-25 23:10:20 +0200 <monochrom> hahaha
2020-09-25 23:10:53 +0200 <cheater> monochrom: if it's a C course, make sure to get the shellfish
2020-09-25 23:11:03 +0200 <monochrom> hahahaha
2020-09-25 23:11:38 +0200 <monochrom> The course is a unix course too, there is shell. I'll have to think how to turn shell into shellfish.
2020-09-25 23:11:49 +0200heatsink(~heatsink@107-136-5-69.lightspeed.sntcca.sbcglobal.net)
2020-09-25 23:12:25 +0200fluturel(~fluturel@82.137.14.51)
2020-09-25 23:12:45 +0200fluturel(~fluturel@82.137.14.51) (Client Quit)
2020-09-25 23:13:52 +0200noecho(~noecho@2a01:4f8:1c0c:80ee::4223) (Quit: ZNC - http://znc.in)
2020-09-25 23:14:19 +0200noecho(~noecho@2a01:4f8:1c0c:80ee::4223)
2020-09-25 23:14:20 +0200 <dmwit> Oh, hell. I'm a professional programmer that does programming stuff for... well, not quite 8 hours a day ;-)... and I still occasionally get flummoxed by output buffering.
2020-09-25 23:15:14 +0200 <MarcelineVQ> The trick is to put a couple people between you and the problem.
2020-09-25 23:15:50 +0200 <c_wraith> so... input buffering?
2020-09-25 23:15:57 +0200 <dmwit> Ahhh, problem buffering! Why didn't I think of that?
2020-09-25 23:16:36 +0200heatsink(~heatsink@107-136-5-69.lightspeed.sntcca.sbcglobal.net) (Ping timeout: 272 seconds)
2020-09-25 23:16:42 +0200carlomagno1(~cararell@inet-hqmc02-o.oracle.com)
2020-09-25 23:17:23 +0200mu(~mu@unaffiliated/mu) (Read error: Connection reset by peer)
2020-09-25 23:17:32 +0200wonko7(~wonko7@2a01:e35:2ffb:7040:8c5f:831a:4acc:45dd) (Ping timeout: 260 seconds)
2020-09-25 23:17:45 +0200carlomagno(~cararell@inet-hqmc02-o.oracle.com) (Ping timeout: 265 seconds)
2020-09-25 23:17:54 +0200mu(~mu@unaffiliated/mu)
2020-09-25 23:20:42 +0200hyperisco(~hyperisco@d192-186-117-226.static.comm.cgocable.net) (Ping timeout: 256 seconds)
2020-09-25 23:20:45 +0200 <dsal> monochrom: Oh sorry, I was going for the one where I do all this awesome parallelism and the parallel functions compute the IO actions immediately, and then they all happen sequentially when the output is needed.
2020-09-25 23:21:41 +0200 <monochrom> Ah.
2020-09-25 23:21:57 +0200hackageaeson-schemas 1.3.1 - Easily consume JSON data on-demand with type-safety https://hackage.haskell.org/package/aeson-schemas-1.3.1 (leapyear)
2020-09-25 23:22:11 +0200falafel_(~falafel@2605:e000:1527:d491:f090:20fe:cddf:2a1a)
2020-09-25 23:22:20 +0200heatsink(~heatsink@107-136-5-69.lightspeed.sntcca.sbcglobal.net)
2020-09-25 23:26:49 +0200heatsink(~heatsink@107-136-5-69.lightspeed.sntcca.sbcglobal.net) (Ping timeout: 246 seconds)
2020-09-25 23:27:24 +0200mu(~mu@unaffiliated/mu) (Read error: Connection reset by peer)
2020-09-25 23:28:02 +0200mu(~mu@unaffiliated/mu)
2020-09-25 23:31:50 +0200merijn(~merijn@83-160-49-249.ip.xs4all.nl)
2020-09-25 23:31:56 +0200 <cheater> monochrom: just use the C shell
2020-09-25 23:32:07 +0200 <monochrom> Ah, neato
2020-09-25 23:32:31 +0200heatsink(~heatsink@107-136-5-69.lightspeed.sntcca.sbcglobal.net)
2020-09-25 23:32:34 +0200 <monochrom> Hey, I now recall that "fish shell" exists, too.
2020-09-25 23:35:52 +0200AlterEgo-(~ladew@124-198-158-163.dynamic.caiway.nl) (Quit: Leaving)
2020-09-25 23:36:11 +0200dhil(~dhil@11.29.39.217.dyn.plus.net) (Ping timeout: 240 seconds)
2020-09-25 23:36:56 +0200heatsink(~heatsink@107-136-5-69.lightspeed.sntcca.sbcglobal.net) (Ping timeout: 260 seconds)
2020-09-25 23:37:50 +0200mu(~mu@unaffiliated/mu) (Read error: Connection reset by peer)
2020-09-25 23:38:03 +0200mu__(~mu@unaffiliated/mu)
2020-09-25 23:39:56 +0200aarvar(~foewfoiew@50.35.43.33)
2020-09-25 23:40:02 +0200sand_dull(~theuser@62.182.99.37)
2020-09-25 23:41:56 +0200 <maerwald> it's nice
2020-09-25 23:42:02 +0200nyd(~nyd@unaffiliated/elysian) (Quit: nyd)
2020-09-25 23:42:33 +0200 <maerwald> finally someone figured out that shell is about ergonmics, not features
2020-09-25 23:42:37 +0200falafel_(~falafel@2605:e000:1527:d491:f090:20fe:cddf:2a1a) (Ping timeout: 260 seconds)
2020-09-25 23:42:44 +0200heatsink(~heatsink@107-136-5-69.lightspeed.sntcca.sbcglobal.net)
2020-09-25 23:42:47 +0200 <maerwald> (when I need features, I switch to bash temporarily)
2020-09-25 23:45:01 +0200crobbins(~crobbins@2600:1700:48eb:8490:4a3:9554:f20a:562c) (Remote host closed the connection)
2020-09-25 23:45:22 +0200thir(~thir@p200300f27f0fc60094e773283d7bf825.dip0.t-ipconnect.de)
2020-09-25 23:47:38 +0200heatsink(~heatsink@107-136-5-69.lightspeed.sntcca.sbcglobal.net) (Ping timeout: 272 seconds)
2020-09-25 23:47:38 +0200mu__(~mu@unaffiliated/mu) (Read error: Connection reset by peer)
2020-09-25 23:48:00 +0200mu(~mu@unaffiliated/mu)
2020-09-25 23:48:07 +0200heatsink(~heatsink@107-136-5-69.lightspeed.sntcca.sbcglobal.net)
2020-09-25 23:48:54 +0200sand_dull(~theuser@62.182.99.37) (Ping timeout: 272 seconds)
2020-09-25 23:49:02 +0200 <monochrom> It's probably a programmer trait to prefer features to ergonomics, syntax to semantics.
2020-09-25 23:49:13 +0200falafel_(~falafel@2605:e000:1527:d491:f090:20fe:cddf:2a1a)
2020-09-25 23:49:43 +0200 <monochrom> or generally a human trait to prefer superficial to careful
2020-09-25 23:50:39 +0200cgfuh(~cgfuh@181.167.191.58) (Quit: WeeChat 2.9)
2020-09-25 23:51:24 +0200 <Cale> In the words of Bob the Angry Flower: "I can't drink *possible* beers, I need *actual* beers! Damn you, quantum physics!"
2020-09-25 23:51:30 +0200 <pie_> sm[m]: well, if you have any suggestions: <_aD> It's fascinating to see how different people's idea of "big" is in computing, and how they handle it.
2020-09-25 23:51:32 +0200 <pie_> whoops
2020-09-25 23:51:41 +0200 <pie_> sm[m]: https://github.com/python-parsy/parsy/issues/48
2020-09-25 23:53:22 +0200thir(~thir@p200300f27f0fc60094e773283d7bf825.dip0.t-ipconnect.de) (Ping timeout: 260 seconds)
2020-09-25 23:56:30 +0200aj1(~aj@185.204.1.185)
2020-09-25 23:57:00 +0200 <ddellacosta> omg I forgot about Bob the Angry Flower, thank you Cale
2020-09-25 23:57:50 +0200mu(~mu@unaffiliated/mu) (Read error: Connection reset by peer)
2020-09-25 23:57:56 +0200mu__(~mu@unaffiliated/mu)
2020-09-25 23:58:26 +0200luke(~luke@bitnomial/staff/luke)