2022/06/01

2022-06-01 00:01:32 +0200gehmehgeh(~user@user/gehmehgeh) (Quit: Leaving)
2022-06-01 00:06:41 +0200ehammarstrom(~ehammarst@62-20-203-39-no182.tbcn.telia.com)
2022-06-01 00:10:39 +0200shalokshalom(~quassel@2a02:8109:b40:42f4:4f45:338b:3ba8:8f20) (Quit: https://quassel-irc.org - Komfortabler Chat. Überall.)
2022-06-01 00:11:21 +0200tromp(~textual@dhcp-077-249-230-040.chello.nl) (Quit: My iMac has gone to sleep. ZZZzzz…)
2022-06-01 00:12:11 +0200 <jackdk> c_wraith: are remote entities like the outer gods in H.P. Lovecraft's writing?
2022-06-01 00:12:37 +0200 <c_wraith> very similar, if you're worried about security...
2022-06-01 00:15:15 +0200ehammarstrom(~ehammarst@62-20-203-39-no182.tbcn.telia.com) (Ping timeout: 276 seconds)
2022-06-01 00:21:23 +0200ehammarstrom(~ehammarst@62-20-203-39-no182.tbcn.telia.com)
2022-06-01 00:24:38 +0200calleum(~calleum@user/calleum)
2022-06-01 00:24:45 +0200toluene(~toluene@user/toulene) (Read error: Connection reset by peer)
2022-06-01 00:25:12 +0200__monty__(~toonn@user/toonn) (Quit: leaving)
2022-06-01 00:26:19 +0200toluene(~toluene@user/toulene)
2022-06-01 00:26:34 +0200cosimone(~user@93-44-186-171.ip98.fastwebnet.it) (Ping timeout: 272 seconds)
2022-06-01 00:27:05 +0200ehammarstrom(~ehammarst@62-20-203-39-no182.tbcn.telia.com) (Ping timeout: 256 seconds)
2022-06-01 00:27:41 +0200toluene(~toluene@user/toulene) (Read error: Connection reset by peer)
2022-06-01 00:29:14 +0200toluene(~toluene@user/toulene)
2022-06-01 00:30:50 +0200bontaq(~user@ool-45779fe5.dyn.optonline.net) (Remote host closed the connection)
2022-06-01 00:32:15 +0200ehammarstrom(~ehammarst@62-20-203-39-no182.tbcn.telia.com)
2022-06-01 00:33:14 +0200jgeerds_(~jgeerds@55d45f48.access.ecotel.net) (Ping timeout: 258 seconds)
2022-06-01 00:33:15 +0200dextaa(~DV@user/dextaa) (Read error: Connection reset by peer)
2022-06-01 00:35:28 +0200dextaa(~DV@user/dextaa)
2022-06-01 00:36:04 +0200spacenautx(~spacenaut@user/spacenautx) (Quit: WeeChat 3.0)
2022-06-01 00:36:43 +0200ehammarstrom(~ehammarst@62-20-203-39-no182.tbcn.telia.com) (Ping timeout: 256 seconds)
2022-06-01 00:38:00 +0200Tuplanolla(~Tuplanoll@91-159-68-39.elisa-laajakaista.fi) (Quit: Leaving.)
2022-06-01 00:40:00 +0200Benzi-Junior(~BenziJuni@dsl-149-64-179.hive.is) (Ping timeout: 260 seconds)
2022-06-01 00:40:56 +0200euandreh(~euandreh@2804:14c:33:966c:2059:6e22:1326:6607)
2022-06-01 00:41:21 +0200pavonia(~user@user/siracusa)
2022-06-01 00:41:45 +0200acidjnk(~acidjnk@p200300d0c7068b758cef14057e9476fe.dip0.t-ipconnect.de) (Ping timeout: 260 seconds)
2022-06-01 00:41:53 +0200zeenk(~zeenk@2a02:2f04:a104:ef00:10:581:f80f:b980)
2022-06-01 00:42:47 +0200ehammarstrom(~ehammarst@62-20-203-39-no182.tbcn.telia.com)
2022-06-01 00:42:57 +0200trisolaran(~ye@roc37-h01-176-170-197-243.dsl.sta.abo.bbox.fr) (Ping timeout: 256 seconds)
2022-06-01 00:58:30 +0200motherfsck(~motherfsc@user/motherfsck) (Quit: quit)
2022-06-01 01:02:10 +0200ehammarstrom(~ehammarst@62-20-203-39-no182.tbcn.telia.com) (Ping timeout: 240 seconds)
2022-06-01 01:06:21 +0200calleum(~calleum@user/calleum) (Ping timeout: 246 seconds)
2022-06-01 01:11:30 +0200ehammarstrom(~ehammarst@62-20-203-39-no182.tbcn.telia.com)
2022-06-01 01:14:59 +0200motherfsck(~motherfsc@user/motherfsck)
2022-06-01 01:15:08 +0200epolanski(uid312403@id-312403.helmsley.irccloud.com) (Quit: Connection closed for inactivity)
2022-06-01 01:18:07 +0200ehammarstrom(~ehammarst@62-20-203-39-no182.tbcn.telia.com) (Ping timeout: 240 seconds)
2022-06-01 01:18:53 +0200pretty_dumm_guy(trottel@gateway/vpn/protonvpn/prettydummguy/x-88029655) (Quit: WeeChat 3.5)
2022-06-01 01:21:09 +0200DigitalKiwi(~kiwi@137.184.156.191) (Quit: quite.)
2022-06-01 01:21:12 +0200calleum(~calleum@user/calleum)
2022-06-01 01:21:41 +0200 <Bulby[m]> with the op parsing in parser combinators, I don't quite understand how to fail in megaparsec when defining an operator...
2022-06-01 01:21:49 +0200DigitalKiwi(~kiwi@137.184.156.191)
2022-06-01 01:21:55 +0200 <Bulby[m]> i'm making the assign operator and want to fail if the left hand side isn't an identifier
2022-06-01 01:22:38 +0200ehammarstrom(~ehammarst@62-20-203-39-no182.tbcn.telia.com)
2022-06-01 01:25:57 +0200calleum(~calleum@user/calleum) (Ping timeout: 246 seconds)
2022-06-01 01:26:16 +0200 <sm> Bulby: fail the current parser, allowing mp to try others ? or end parsing altogether ?
2022-06-01 01:27:47 +0200 <sm> for the latter, I think you have to transform with ExceptT as mp doesn't have that built in
2022-06-01 01:28:47 +0200 <Bulby[m]> I mean, I have to do a parser of `Expr -> Expr -> Expr` because of https://hackage.haskell.org/package/parser-combinators-1.3.0/docs/Control-Monad-Combinators-Expr.h…
2022-06-01 01:29:07 +0200 <Bulby[m]> idk how i would fail iff left isn't ident
2022-06-01 01:29:40 +0200Pickchea(~private@user/pickchea) (Ping timeout: 248 seconds)
2022-06-01 01:31:18 +0200 <sm> maybe just calling fail is enough ?
2022-06-01 01:31:27 +0200ehammarstrom(~ehammarst@62-20-203-39-no182.tbcn.telia.com) (Ping timeout: 240 seconds)
2022-06-01 01:31:55 +0200 <Bulby[m]> calling fail inside the function makes it `Expr -> Expr -> Parser Expr`, not `Parser (Expr -> Expr -> Expr)`
2022-06-01 01:32:27 +0200 <sm> ah, sorry, don't know
2022-06-01 01:32:39 +0200 <Bulby[m]> glad to know i'm not stupid 🙂
2022-06-01 01:33:25 +0200 <sm> that type signature implies it may not fail, eh
2022-06-01 01:34:07 +0200ehammarstrom(~ehammarst@62-20-203-39-no182.tbcn.telia.com)
2022-06-01 01:35:27 +0200 <sm> this must not be the right place to enforce that more specific limitation
2022-06-01 01:36:11 +0200 <EvanR> i was under the impression Parser A may or may not fail, without more info
2022-06-01 01:36:22 +0200 <EvanR> like Maybe A
2022-06-01 01:38:46 +0200 <sm> Bulby isn't defining an ordinary parser, but providing a combining function to a generic parser builder provided by mp
2022-06-01 01:38:47 +0200ehammarstrom(~ehammarst@62-20-203-39-no182.tbcn.telia.com) (Ping timeout: 258 seconds)
2022-06-01 01:39:03 +0200 <sm> I think
2022-06-01 01:39:58 +0200 <sm> (so it's not right to call that a parser)
2022-06-01 01:42:28 +0200raehik(~raehik@cpc95906-rdng25-2-0-cust156.15-3.cable.virginm.net)
2022-06-01 01:49:06 +0200szkl(uid110435@id-110435.uxbridge.irccloud.com) (Quit: Connection closed for inactivity)
2022-06-01 01:51:43 +0200ehammarstrom(~ehammarst@62-20-203-39-no182.tbcn.telia.com)
2022-06-01 01:55:39 +0200stackdroid18(14094@user/stackdroid) (Quit: hasta la vista... tchau!)
2022-06-01 01:58:24 +0200Axma46431Axman6
2022-06-01 01:59:15 +0200dost^(~dost@128-092-173-218.biz.spectrum.com) (Ping timeout: 276 seconds)
2022-06-01 02:01:06 +0200polykernel[m](~polykerne@user/polykernel)
2022-06-01 02:02:17 +0200jle`(~jle`@cpe-23-240-75-236.socal.res.rr.com) (Ping timeout: 256 seconds)
2022-06-01 02:02:56 +0200ehammarstrom(~ehammarst@62-20-203-39-no182.tbcn.telia.com) (Ping timeout: 258 seconds)
2022-06-01 02:04:06 +0200jle`(~jle`@cpe-23-240-75-236.socal.res.rr.com)
2022-06-01 02:09:21 +0200ehammarstrom(~ehammarst@62-20-203-39-no182.tbcn.telia.com)
2022-06-01 02:09:54 +0200dost^(~dost@128-092-173-218.biz.spectrum.com)
2022-06-01 02:11:33 +0200whatsupdoc(uid509081@id-509081.hampstead.irccloud.com) (Quit: Connection closed for inactivity)
2022-06-01 02:13:40 +0200ehammarstrom(~ehammarst@62-20-203-39-no182.tbcn.telia.com) (Ping timeout: 258 seconds)
2022-06-01 02:15:14 +0200szkl(uid110435@id-110435.uxbridge.irccloud.com)
2022-06-01 02:17:48 +0200dost^(~dost@128-092-173-218.biz.spectrum.com) (Remote host closed the connection)
2022-06-01 02:18:02 +0200ehammarstrom(~ehammarst@62-20-203-39-no182.tbcn.telia.com)
2022-06-01 02:21:30 +0200machinedgod(~machinedg@24.105.81.50) (Ping timeout: 240 seconds)
2022-06-01 02:24:57 +0200bjobjo(~bjobjo@user/bjobjo) (Ping timeout: 248 seconds)
2022-06-01 02:26:42 +0200ehammarstrom(~ehammarst@62-20-203-39-no182.tbcn.telia.com) (Ping timeout: 258 seconds)
2022-06-01 02:27:53 +0200vicfred(~vicfred@user/vicfred) (Quit: Leaving)
2022-06-01 02:28:06 +0200bjobjo(~bjobjo@user/bjobjo)
2022-06-01 02:36:11 +0200inversed(~inversed@176.248.27.211) (Ping timeout: 255 seconds)
2022-06-01 02:37:20 +0200inversed(~inversed@176.248.27.211)
2022-06-01 02:39:35 +0200ehammarstrom(~ehammarst@62-20-203-39-no182.tbcn.telia.com)
2022-06-01 02:43:09 +0200alp(~alp@user/alp) (Ping timeout: 244 seconds)
2022-06-01 02:43:57 +0200Lord_of_Life(~Lord@user/lord-of-life/x-2819915) (Ping timeout: 258 seconds)
2022-06-01 02:44:06 +0200harveypwca(~harveypwc@2601:246:c180:a570:3828:d8:e523:3f67)
2022-06-01 02:44:47 +0200xff0x(~xff0x@b133147.ppp.asahi-net.or.jp) (Ping timeout: 256 seconds)
2022-06-01 02:45:06 +0200raehik(~raehik@cpc95906-rdng25-2-0-cust156.15-3.cable.virginm.net) (Ping timeout: 258 seconds)
2022-06-01 02:46:08 +0200Lord_of_Life(~Lord@user/lord-of-life/x-2819915)
2022-06-01 02:47:19 +0200Benzi-Junior(~BenziJuni@dsl-149-64-179.hive.is)
2022-06-01 02:48:11 +0200lottaquestions(~nick@2607:fa49:5041:a200:3daf:9139:3014:7a17)
2022-06-01 02:51:25 +0200ehammarstrom(~ehammarst@62-20-203-39-no182.tbcn.telia.com) (Ping timeout: 244 seconds)
2022-06-01 02:54:47 +0200ehammarstrom(~ehammarst@62-20-203-39-no182.tbcn.telia.com)
2022-06-01 03:02:16 +0200ehammarstrom(~ehammarst@62-20-203-39-no182.tbcn.telia.com) (Ping timeout: 244 seconds)
2022-06-01 03:02:54 +0200kimjetwav(~user@2607:fea8:2362:b400:cf0b:9d95:c978:e54a)
2022-06-01 03:05:33 +0200motherfsck(~motherfsc@user/motherfsck) (Ping timeout: 276 seconds)
2022-06-01 03:06:44 +0200motherfsck(~motherfsc@user/motherfsck)
2022-06-01 03:10:13 +0200ehammarstrom(~ehammarst@62-20-203-39-no182.tbcn.telia.com)
2022-06-01 03:11:11 +0200albet70(~xxx@2400:8902::f03c:92ff:fe60:98d8) (Remote host closed the connection)
2022-06-01 03:14:30 +0200ehammarstrom(~ehammarst@62-20-203-39-no182.tbcn.telia.com) (Ping timeout: 240 seconds)
2022-06-01 03:15:27 +0200Kaiepi(~Kaiepi@156.34.47.253) (Ping timeout: 240 seconds)
2022-06-01 03:17:19 +0200albet70(~xxx@2400:8902::f03c:92ff:fe60:98d8)
2022-06-01 03:18:56 +0200gurkenglas(~gurkengla@dslb-084-057-085-111.084.057.pools.vodafone-ip.de) (Ping timeout: 255 seconds)
2022-06-01 03:21:40 +0200zeenk(~zeenk@2a02:2f04:a104:ef00:10:581:f80f:b980) (Quit: Konversation terminated!)
2022-06-01 03:24:03 +0200ehammarstrom(~ehammarst@62-20-203-39-no182.tbcn.telia.com)
2022-06-01 03:28:55 +0200xff0x(~xff0x@s5.HtokyoFL1.vectant.ne.jp)
2022-06-01 03:32:41 +0200bitdex(~bitdex@gateway/tor-sasl/bitdex)
2022-06-01 03:33:26 +0200jao(~jao@cpc103048-sgyl39-2-0-cust502.18-2.cable.virginm.net) (Ping timeout: 252 seconds)
2022-06-01 03:34:27 +0200rose(~rose@user/rose)
2022-06-01 03:36:21 +0200bitdex_(~bitdex@gateway/tor-sasl/bitdex)
2022-06-01 03:36:30 +0200ehammarstrom(~ehammarst@62-20-203-39-no182.tbcn.telia.com) (Ping timeout: 240 seconds)
2022-06-01 03:38:04 +0200bitdex(~bitdex@gateway/tor-sasl/bitdex) (Ping timeout: 240 seconds)
2022-06-01 03:38:47 +0200ehammarstrom(~ehammarst@62-20-203-39-no182.tbcn.telia.com)
2022-06-01 03:51:50 +0200ehammarstrom(~ehammarst@62-20-203-39-no182.tbcn.telia.com) (Ping timeout: 240 seconds)
2022-06-01 03:51:52 +0200ix(~ix@2a02:8010:674f:0:d65d:64ff:fe52:5efe) (Ping timeout: 244 seconds)
2022-06-01 03:52:56 +0200Unicorn_Princess(~Unicorn_P@93-103-228-248.dynamic.t-2.net)
2022-06-01 03:54:02 +0200ehammarstrom(~ehammarst@62-20-203-39-no182.tbcn.telia.com)
2022-06-01 03:54:56 +0200andrey__(~andrey@p200300dbcf0aa300256a01d40b961d18.dip0.t-ipconnect.de)
2022-06-01 03:55:23 +0200xff0x(~xff0x@s5.HtokyoFL1.vectant.ne.jp) (Ping timeout: 255 seconds)
2022-06-01 03:57:14 +0200xff0x(~xff0x@s5.HtokyoFL1.vectant.ne.jp)
2022-06-01 03:57:45 +0200andrey_(~andrey@p200300dbcf1607007715c2deb780d806.dip0.t-ipconnect.de) (Ping timeout: 260 seconds)
2022-06-01 04:01:26 +0200harveypwca(~harveypwc@2601:246:c180:a570:3828:d8:e523:3f67) (Quit: Leaving)
2022-06-01 04:06:39 +0200ehammarstrom(~ehammarst@62-20-203-39-no182.tbcn.telia.com) (Ping timeout: 276 seconds)
2022-06-01 04:06:54 +0200zebrag(~chris@user/zebrag) (Quit: Konversation terminated!)
2022-06-01 04:12:13 +0200ehammarstrom(~ehammarst@62-20-203-39-no182.tbcn.telia.com)
2022-06-01 04:18:07 +0200zebrag(~chris@user/zebrag)
2022-06-01 04:22:23 +0200[itchyjunk](~itchyjunk@user/itchyjunk/x-7353470) (Remote host closed the connection)
2022-06-01 04:25:50 +0200ehammarstrom(~ehammarst@62-20-203-39-no182.tbcn.telia.com) (Ping timeout: 240 seconds)
2022-06-01 04:27:27 +0200td_(~td@muedsl-82-207-238-004.citykom.de) (Ping timeout: 276 seconds)
2022-06-01 04:28:13 +0200ehammarstrom(~ehammarst@62-20-203-39-no182.tbcn.telia.com)
2022-06-01 04:28:43 +0200td_(~td@94.134.91.230)
2022-06-01 04:32:52 +0200zebrag(~chris@user/zebrag) (Quit: Konversation terminated!)
2022-06-01 04:33:55 +0200frost(~frost@user/frost)
2022-06-01 04:35:07 +0200ehammarstrom(~ehammarst@62-20-203-39-no182.tbcn.telia.com) (Ping timeout: 258 seconds)
2022-06-01 04:38:55 +0200ehammarstrom(~ehammarst@62-20-203-39-no182.tbcn.telia.com)
2022-06-01 04:42:01 +0200waleee(~waleee@2001:9b0:213:7200:cc36:a556:b1e8:b340) (Ping timeout: 258 seconds)
2022-06-01 04:42:41 +0200terrorjack(~terrorjac@2a01:4f8:1c1e:509a::1) (Quit: The Lounge - https://thelounge.chat)
2022-06-01 04:43:57 +0200terrorjack(~terrorjac@2a01:4f8:1c1e:509a::1)
2022-06-01 04:49:18 +0200inversed(~inversed@176.248.27.211) (Ping timeout: 246 seconds)
2022-06-01 04:50:19 +0200finn_elija(~finn_elij@user/finn-elija/x-0085643)
2022-06-01 04:50:19 +0200FinnElija(~finn_elij@user/finn-elija/x-0085643) (Killed (NickServ (Forcing logout FinnElija -> finn_elija)))
2022-06-01 04:50:19 +0200finn_elijaFinnElija
2022-06-01 04:52:47 +0200eggplantade(~Eggplanta@2600:1700:bef1:5e10:f072:4241:498:eedf) (Remote host closed the connection)
2022-06-01 04:53:03 +0200eggplantade(~Eggplanta@2600:1700:bef1:5e10:600e:e6c3:702:93eb)
2022-06-01 05:02:37 +0200Guest45(~Guest45@c-67-165-193-67.hsd1.co.comcast.net)
2022-06-01 05:03:11 +0200img(~img@user/img) (Quit: ZNC 1.8.2 - https://znc.in)
2022-06-01 05:09:22 +0200Guest45(~Guest45@c-67-165-193-67.hsd1.co.comcast.net) (Quit: Client closed)
2022-06-01 05:14:16 +0200ix(~ix@2a02:8010:674f:0:d65d:64ff:fe52:5efe)
2022-06-01 05:16:05 +0200img(~img@user/img)
2022-06-01 05:19:02 +0200seriously(~seriously@ool-18bd5811.dyn.optonline.net)
2022-06-01 05:22:16 +0200ehammarstrom(~ehammarst@62-20-203-39-no182.tbcn.telia.com) (Ping timeout: 258 seconds)
2022-06-01 05:26:52 +0200causal(~user@50.35.83.177)
2022-06-01 05:36:00 +0200eggplantade(~Eggplanta@2600:1700:bef1:5e10:600e:e6c3:702:93eb) (Remote host closed the connection)
2022-06-01 05:38:56 +0200seriously(~seriously@ool-18bd5811.dyn.optonline.net) (Ping timeout: 252 seconds)
2022-06-01 05:39:22 +0200ehammarstrom(~ehammarst@62-20-203-39-no182.tbcn.telia.com)
2022-06-01 05:47:20 +0200Kaiepi(~Kaiepi@156.34.47.253)
2022-06-01 05:49:24 +0200eggplantade(~Eggplanta@2600:1700:bef1:5e10:600e:e6c3:702:93eb)
2022-06-01 05:51:10 +0200ehammarstrom(~ehammarst@62-20-203-39-no182.tbcn.telia.com) (Ping timeout: 240 seconds)
2022-06-01 05:51:17 +0200raym(~raym@user/raym)
2022-06-01 05:54:57 +0200jinsun(~jinsun@user/jinsun)
2022-06-01 05:57:27 +0200jinsun__(~jinsun@user/jinsun) (Ping timeout: 240 seconds)
2022-06-01 06:00:27 +0200Me-me(~me-me@tunnel690570-pt.tunnel.tserv12.mia1.ipv6.he.net) (Quit: Disconnecting on purpose.)
2022-06-01 06:03:06 +0200ix(~ix@2a02:8010:674f:0:d65d:64ff:fe52:5efe) (Ping timeout: 244 seconds)
2022-06-01 06:06:54 +0200ehammarstrom(~ehammarst@62-20-203-39-no182.tbcn.telia.com)
2022-06-01 06:11:01 +0200ix(~ix@2a02:8010:674f:0:d65d:64ff:fe52:5efe)
2022-06-01 06:11:20 +0200ehammarstrom(~ehammarst@62-20-203-39-no182.tbcn.telia.com) (Ping timeout: 258 seconds)
2022-06-01 06:11:45 +0200holmes(~holmes@user/holmes)
2022-06-01 06:19:39 +0200ehammarstrom(~ehammarst@62-20-203-39-no182.tbcn.telia.com)
2022-06-01 06:19:54 +0200mvk(~mvk@2607:fea8:5ce3:8500::ba9a)
2022-06-01 06:20:22 +0200justsomeguy(~justsomeg@user/justsomeguy)
2022-06-01 06:23:01 +0200slack1256(~slack1256@181.43.227.124)
2022-06-01 06:24:26 +0200vglfr(~vglfr@coupling.penchant.volia.net)
2022-06-01 06:30:07 +0200Maxdamantus(~Maxdamant@user/maxdamantus) (Ping timeout: 258 seconds)
2022-06-01 06:31:01 +0200Maxdamantus(~Maxdamant@user/maxdamantus)
2022-06-01 06:34:43 +0200odnes(~odnes@5-203-249-198.pat.nym.cosmote.net)
2022-06-01 06:36:34 +0200jpds1(~jpds@gateway/tor-sasl/jpds) (Ping timeout: 240 seconds)
2022-06-01 06:37:13 +0200jpds1(~jpds@gateway/tor-sasl/jpds)
2022-06-01 06:39:54 +0200xsarnik(xsarnik@lounge.fi.muni.cz) (Ping timeout: 246 seconds)
2022-06-01 06:39:54 +0200xstill-(xstill@fimu/xstill) (Ping timeout: 246 seconds)
2022-06-01 06:40:56 +0200xsarnik(xsarnik@lounge.fi.muni.cz)
2022-06-01 06:41:11 +0200xstill-(xstill@fimu/xstill)
2022-06-01 06:44:53 +0200slack1256(~slack1256@181.43.227.124) (Remote host closed the connection)
2022-06-01 06:54:40 +0200biberu(~biberu@user/biberu) (Read error: Connection reset by peer)
2022-06-01 06:55:01 +0200biberu(~biberu@user/biberu)
2022-06-01 06:57:29 +0200coot(~coot@213.134.190.95)
2022-06-01 06:58:33 +0200zmt01(~zmt00@user/zmt00)
2022-06-01 06:58:52 +0200frost(~frost@user/frost) (Ping timeout: 252 seconds)
2022-06-01 07:00:20 +0200zmt00(~zmt00@user/zmt00) (Ping timeout: 255 seconds)
2022-06-01 07:06:03 +0200ehammarstrom(~ehammarst@62-20-203-39-no182.tbcn.telia.com) (Ping timeout: 276 seconds)
2022-06-01 07:13:03 +0200ehammarstrom(~ehammarst@62-20-203-39-no182.tbcn.telia.com)
2022-06-01 07:13:06 +0200kimjetwav(~user@2607:fea8:2362:b400:cf0b:9d95:c978:e54a) (Quit: ERC 5.4.1 (IRC client for GNU Emacs 29.0.50))
2022-06-01 07:13:09 +0200Teacup(~teacup@user/teacup) (Quit: Teacup)
2022-06-01 07:14:23 +0200Teacup(~teacup@user/teacup)
2022-06-01 07:15:09 +0200rose(~rose@user/rose) (Read error: Connection reset by peer)
2022-06-01 07:17:07 +0200ehammarstrom(~ehammarst@62-20-203-39-no182.tbcn.telia.com) (Ping timeout: 240 seconds)
2022-06-01 07:17:30 +0200Teacup(~teacup@user/teacup) (Client Quit)
2022-06-01 07:18:09 +0200Teacup(~teacup@user/teacup)
2022-06-01 07:18:45 +0200Teacup(~teacup@user/teacup) (Client Quit)
2022-06-01 07:19:49 +0200Teacup(~teacup@user/teacup)
2022-06-01 07:20:26 +0200ehammarstrom(~ehammarst@62-20-203-39-no182.tbcn.telia.com)
2022-06-01 07:23:02 +0200holmes(~holmes@user/holmes) (Quit: Textual IRC Client: www.textualapp.com)
2022-06-01 07:28:47 +0200martin02(~silas@141.84.69.76) (Ping timeout: 240 seconds)
2022-06-01 07:29:14 +0200martin02(~silas@141.84.69.76)
2022-06-01 07:34:42 +0200inversed(~inversed@176.248.27.211)
2022-06-01 07:34:59 +0200acidjnk(~acidjnk@p200300d0c7068b08d490575bc8478d60.dip0.t-ipconnect.de)
2022-06-01 07:38:07 +0200Batzy(~quassel@user/batzy) (Quit: https://quassel-irc.org - Chat comfortably. Anywhere.)
2022-06-01 07:39:22 +0200Batzy(~quassel@user/batzy)
2022-06-01 07:42:58 +0200jgeerds_(~jgeerds@55d45f48.access.ecotel.net)
2022-06-01 07:47:30 +0200takuan(~takuan@178-116-218-225.access.telenet.be)
2022-06-01 07:51:09 +0200Guest|62(~Guest|62@c-71-205-105-44.hsd1.co.comcast.net) (Quit: Connection closed)
2022-06-01 08:00:26 +0200mbuf(~Shakthi@122.174.210.245)
2022-06-01 08:09:46 +0200odnes(~odnes@5-203-249-198.pat.nym.cosmote.net) (Quit: Leaving)
2022-06-01 08:11:52 +0200 <dibblego> @src (>>=) []
2022-06-01 08:11:53 +0200 <lambdabot> Source not found. Have you considered trying to match wits with a rutabaga?
2022-06-01 08:12:03 +0200 <dibblego> what's the syntax for that ^^ again please?
2022-06-01 08:14:08 +0200mvk(~mvk@2607:fea8:5ce3:8500::ba9a) (Ping timeout: 255 seconds)
2022-06-01 08:14:11 +0200 <dibblego> @src [] (>>=)
2022-06-01 08:14:11 +0200 <lambdabot> xs >>= f = concatMap f xs
2022-06-01 08:15:38 +0200 <dibblego> @src Const mappend
2022-06-01 08:15:38 +0200 <lambdabot> Source not found. My mind is going. I can feel it.
2022-06-01 08:23:24 +0200ehammarstrom(~ehammarst@62-20-203-39-no182.tbcn.telia.com) (Ping timeout: 276 seconds)
2022-06-01 08:27:22 +0200ehammarstrom(~ehammarst@62-20-203-39-no182.tbcn.telia.com)
2022-06-01 08:27:31 +0200yosef```(~user@2409:8a55:e214:41a0:58b9:4cff:fea0:d9) (Quit: ERC (IRC client for Emacs 26.1))
2022-06-01 08:29:01 +0200yosef``(~user@user/yosef/x-3154124)
2022-06-01 08:31:13 +0200mmhat(~mmh@p200300f1c71bc38eee086bfffe095315.dip0.t-ipconnect.de)
2022-06-01 08:37:31 +0200chomwitt(~chomwitt@2a02:587:dc0e:3e00:9566:7d3:9c0f:2549)
2022-06-01 08:45:56 +0200michalz(~michalz@185.246.204.126)
2022-06-01 08:46:31 +0200Pickchea(~private@user/pickchea)
2022-06-01 08:49:16 +0200ehammarstrom(~ehammarst@62-20-203-39-no182.tbcn.telia.com) (Ping timeout: 258 seconds)
2022-06-01 08:51:58 +0200Sgeo(~Sgeo@user/sgeo) (Read error: Connection reset by peer)
2022-06-01 08:53:31 +0200ehammarstrom(~ehammarst@62-20-203-39-no182.tbcn.telia.com)
2022-06-01 08:53:54 +0200Sgeo(~Sgeo@user/sgeo)
2022-06-01 08:55:01 +0200chele(~chele@user/chele)
2022-06-01 08:58:34 +0200Sgeo(~Sgeo@user/sgeo) (Read error: Connection reset by peer)
2022-06-01 09:04:59 +0200ehammarstrom(~ehammarst@62-20-203-39-no182.tbcn.telia.com) (Ping timeout: 258 seconds)
2022-06-01 09:08:07 +0200ehammarstrom(~ehammarst@62-20-203-39-no182.tbcn.telia.com)
2022-06-01 09:10:00 +0200calleum_(~calleum@user/calleum)
2022-06-01 09:14:01 +0200tromp(~textual@dhcp-077-249-230-040.chello.nl)
2022-06-01 09:19:05 +0200gehmehgeh(~user@user/gehmehgeh)
2022-06-01 09:26:28 +0200jakalx(~jakalx@base.jakalx.net) ()
2022-06-01 09:28:07 +0200habib(~textual@188.119.54.182)
2022-06-01 09:32:12 +0200ehammarstrom(~ehammarst@62-20-203-39-no182.tbcn.telia.com) (Ping timeout: 258 seconds)
2022-06-01 09:32:57 +0200Pickchea(~private@user/pickchea) (Ping timeout: 276 seconds)
2022-06-01 09:34:02 +0200jakalx(~jakalx@base.jakalx.net)
2022-06-01 09:34:44 +0200habibalamin(~habib@188.241.157.224)
2022-06-01 09:35:17 +0200habib(~textual@188.119.54.182) (Ping timeout: 260 seconds)
2022-06-01 09:36:45 +0200habibalamin(~habib@188.241.157.224) (Client Quit)
2022-06-01 09:37:23 +0200alp(~alp@user/alp)
2022-06-01 09:37:39 +0200ehammarstrom(~ehammarst@62-20-203-39-no182.tbcn.telia.com)
2022-06-01 09:39:58 +0200tzh(~tzh@c-24-21-73-154.hsd1.or.comcast.net) (Quit: zzz)
2022-06-01 09:42:10 +0200ehammarstrom(~ehammarst@62-20-203-39-no182.tbcn.telia.com) (Ping timeout: 244 seconds)
2022-06-01 09:44:05 +0200ehammarstrom(~ehammarst@62-20-203-39-no182.tbcn.telia.com)
2022-06-01 09:48:19 +0200machinedgod(~machinedg@24.105.81.50)
2022-06-01 09:49:13 +0200wrengr(~wrengr@249.189.233.35.bc.googleusercontent.com) (Remote host closed the connection)
2022-06-01 09:51:14 +0200Me-me(~me-me@tunnel690570-pt.tunnel.tserv12.mia1.ipv6.he.net)
2022-06-01 09:51:46 +0200Me-me(~me-me@tunnel690570-pt.tunnel.tserv12.mia1.ipv6.he.net) (Remote host closed the connection)
2022-06-01 09:52:24 +0200Me-me(~me-me@tunnel690570-pt.tunnel.tserv12.mia1.ipv6.he.net)
2022-06-01 10:05:58 +0200__monty__(~toonn@user/toonn)
2022-06-01 10:13:41 +0200ehammarstrom(~ehammarst@62-20-203-39-no182.tbcn.telia.com) (Ping timeout: 244 seconds)
2022-06-01 10:15:07 +0200cosimone(~user@2001:b07:ae5:db26:a7aa:8027:6b4e:2fb3)
2022-06-01 10:15:43 +0200ehammarstrom(~ehammarst@62-20-203-39-no182.tbcn.telia.com)
2022-06-01 10:15:58 +0200shriekingnoise(~shrieking@201.231.16.156) (Quit: Quit)
2022-06-01 10:18:23 +0200cosimone`(~user@93-44-186-171.ip98.fastwebnet.it)
2022-06-01 10:19:53 +0200cosimone(~user@2001:b07:ae5:db26:a7aa:8027:6b4e:2fb3) (Ping timeout: 244 seconds)
2022-06-01 10:22:48 +0200jmdaemon(~jmdaemon@user/jmdaemon) (Ping timeout: 258 seconds)
2022-06-01 10:23:25 +0200zeenk(~zeenk@2a02:2f04:a104:ef00:10:581:f80f:b980)
2022-06-01 10:23:30 +0200jgeerds_(~jgeerds@55d45f48.access.ecotel.net) (Ping timeout: 240 seconds)
2022-06-01 10:26:37 +0200calleum_(~calleum@user/calleum) (Ping timeout: 256 seconds)
2022-06-01 10:26:52 +0200Sweet(~user@s19427110.onlinehome-server.info) (Quit: ERC (IRC client for Emacs 24.5.1))
2022-06-01 10:28:36 +0200artem(~artem@95.140.192.176)
2022-06-01 10:28:41 +0200Sweet(~user@s19427110.onlinehome-server.info)
2022-06-01 10:29:12 +0200Sweet(~user@s19427110.onlinehome-server.info) ()
2022-06-01 10:29:51 +0200 <artem> Hi! Suppose I want to have `throwError` but not `catchError` in my eDSL, so instancing MonadError isn't an option. Is there a good solution besides creating my own type class?
2022-06-01 10:31:48 +0200`2jt(~jtomas@182.red-88-17-61.dynamicip.rima-tde.net)
2022-06-01 10:32:10 +0200coot(~coot@213.134.190.95) (Quit: coot)
2022-06-01 10:35:27 +0200werneta(~werneta@70-142-214-115.lightspeed.irvnca.sbcglobal.net) (Ping timeout: 246 seconds)
2022-06-01 10:37:55 +0200 <tomsmeding> artem: does throwError take non-String stuff?
2022-06-01 10:39:30 +0200 <tomsmeding> dibblego: you can always look it up in the haddocks :) https://hackage.haskell.org/package/base-4.14.0.0/docs/src/Data.Functor.Const.html#line-86
2022-06-01 10:39:43 +0200 <tomsmeding> though inexplicably you have to go back to base-4.14 to get source?
2022-06-01 10:40:37 +0200 <tomsmeding> oh /me is dumb, it's a deriving
2022-06-01 10:40:52 +0200 <tomsmeding> right, but then it's the mappend on `a`
2022-06-01 10:41:03 +0200jonathanx_(~jonathan@h-178-174-176-109.A357.priv.bahnhof.se)
2022-06-01 10:41:50 +0200jonathanx(~jonathan@h-178-174-176-109.A357.priv.bahnhof.se) (Ping timeout: 240 seconds)
2022-06-01 10:48:06 +0200 <artem> tomsmeding: it does. It's parametrized by the error type
2022-06-01 10:48:37 +0200 <artem> https://hackage.haskell.org/package/mtl-2.3/docs/Control-Monad-Error-Class.html#v:throwError
2022-06-01 10:50:09 +0200eggplantade(~Eggplanta@2600:1700:bef1:5e10:600e:e6c3:702:93eb) (Remote host closed the connection)
2022-06-01 10:50:24 +0200 <tomsmeding> artem: I know throwError is parametrised. :) My point is, MonadFail exists but is hard-coded to use String. If you only use String as the error type in practice anyway, you can use the existing MonadFail.
2022-06-01 10:50:57 +0200 <tomsmeding> if not, then there is no such class in the standard libraries in any case (there might be one in a less-used third-party library on hackage; no idea)
2022-06-01 10:51:39 +0200bitdex_(~bitdex@gateway/tor-sasl/bitdex) (Remote host closed the connection)
2022-06-01 10:52:06 +0200 <artem> tomsmeding: Ah, I see your point. Unfortunately, I do use throwError with non-String types
2022-06-01 10:52:15 +0200 <artem> homegrown type class it is, it appears
2022-06-01 10:52:39 +0200bitdex_(~bitdex@gateway/tor-sasl/bitdex)
2022-06-01 10:52:40 +0200 <artem> Oh, alternatively, actually
2022-06-01 10:53:33 +0200 <artem> Is it possible to see the topmost "step" in a church-encoded free monad? e.g. https://hackage.haskell.org/package/free-5.1.8/docs/Control-Monad-Trans-Free-Church.html
2022-06-01 10:54:41 +0200 <artem> It's pretty simple for the conventional free monad by just pattern matching. For the church-encoded one it seems a bit more complicated
2022-06-01 10:57:13 +0200 <artem> Okay, I think I see how
2022-06-01 10:58:10 +0200cfricke(~cfricke@user/cfricke)
2022-06-01 11:04:33 +0200habib(~habib@188.241.157.224)
2022-06-01 11:05:15 +0200ubert(~Thunderbi@2a02:8109:abc0:6434:f1f:5029:349e:6d24)
2022-06-01 11:07:04 +0200tromp(~textual@dhcp-077-249-230-040.chello.nl) (Quit: My iMac has gone to sleep. ZZZzzz…)
2022-06-01 11:15:18 +0200qhong(~qhong@rescomp-21-400677.stanford.edu) (Read error: Connection reset by peer)
2022-06-01 11:15:27 +0200qhong(~qhong@rescomp-21-400677.stanford.edu)
2022-06-01 11:16:01 +0200jao(~jao@cpc103048-sgyl39-2-0-cust502.18-2.cable.virginm.net)
2022-06-01 11:22:52 +0200CiaoSen(~Jura@p200300c95731a0002a3a4dfffe84dbd5.dip0.t-ipconnect.de)
2022-06-01 11:25:01 +0200tromp(~textual@dhcp-077-249-230-040.chello.nl)
2022-06-01 11:27:35 +0200ehammarstrom(~ehammarst@62-20-203-39-no182.tbcn.telia.com) (Ping timeout: 258 seconds)
2022-06-01 11:31:59 +0200frost(~frost@user/frost)
2022-06-01 11:35:18 +0200`2jt(~jtomas@182.red-88-17-61.dynamicip.rima-tde.net) (Ping timeout: 246 seconds)
2022-06-01 11:39:46 +0200ehammarstrom(~ehammarst@62-20-203-39-no182.tbcn.telia.com)
2022-06-01 11:40:34 +0200econo(uid147250@user/econo) (Quit: Connection closed for inactivity)
2022-06-01 11:44:27 +0200ehammarstrom(~ehammarst@62-20-203-39-no182.tbcn.telia.com) (Ping timeout: 258 seconds)
2022-06-01 11:45:01 +0200statusbot(~statusbot@ec2-34-198-122-184.compute-1.amazonaws.com) (Read error: Connection reset by peer)
2022-06-01 11:45:07 +0200statusbot2(~statusbot@ec2-34-198-122-184.compute-1.amazonaws.com)
2022-06-01 11:46:41 +0200notzmv(~zmv@user/notzmv) (Ping timeout: 244 seconds)
2022-06-01 11:49:46 +0200nun8(~nun@113.111.33.38)
2022-06-01 11:50:11 +0200ehammarstrom(~ehammarst@62-20-203-39-no182.tbcn.telia.com)
2022-06-01 11:50:33 +0200eggplantade(~Eggplanta@2600:1700:bef1:5e10:600e:e6c3:702:93eb)
2022-06-01 11:52:52 +0200nun8(~nun@113.111.33.38) (Client Quit)
2022-06-01 11:53:56 +0200tromp(~textual@dhcp-077-249-230-040.chello.nl) (Quit: My iMac has gone to sleep. ZZZzzz…)
2022-06-01 11:54:24 +0200kuribas(~user@ip-188-118-57-242.reverse.destiny.be)
2022-06-01 11:55:05 +0200eggplantade(~Eggplanta@2600:1700:bef1:5e10:600e:e6c3:702:93eb) (Ping timeout: 255 seconds)
2022-06-01 11:55:17 +0200tromp(~textual@dhcp-077-249-230-040.chello.nl)
2022-06-01 12:00:39 +0200raehik(~raehik@cpc95906-rdng25-2-0-cust156.15-3.cable.virginm.net)
2022-06-01 12:03:37 +0200ehammarstrom(~ehammarst@62-20-203-39-no182.tbcn.telia.com) (Ping timeout: 258 seconds)
2022-06-01 12:05:45 +0200gurkenglas(~gurkengla@dslb-084-057-085-111.084.057.pools.vodafone-ip.de)
2022-06-01 12:06:19 +0200cfricke(~cfricke@user/cfricke) (Ping timeout: 244 seconds)
2022-06-01 12:08:54 +0200ehammarstrom(~ehammarst@62-20-203-39-no182.tbcn.telia.com)
2022-06-01 12:11:10 +0200nurupo(~nurupo.ga@user/nurupo) (Quit: nurupo.ga)
2022-06-01 12:11:18 +0200sajith_(~sajith@user/sajith) (Quit: Gone)
2022-06-01 12:11:23 +0200nurupo(~nurupo.ga@user/nurupo)
2022-06-01 12:11:34 +0200sajith(~sajith@user/sajith)
2022-06-01 12:13:10 +0200ehammarstrom(~ehammarst@62-20-203-39-no182.tbcn.telia.com) (Ping timeout: 240 seconds)
2022-06-01 12:15:29 +0200ehammarstrom(~ehammarst@62-20-203-39-no182.tbcn.telia.com)
2022-06-01 12:17:35 +0200xff0x(~xff0x@s5.HtokyoFL1.vectant.ne.jp) (Ping timeout: 255 seconds)
2022-06-01 12:23:46 +0200chreekat(~chreekat@2001:470:69fc:105::16b5)
2022-06-01 12:24:10 +0200ehammarstrom(~ehammarst@62-20-203-39-no182.tbcn.telia.com) (Ping timeout: 240 seconds)
2022-06-01 12:26:01 +0200jgeerds_(~jgeerds@55d45f48.access.ecotel.net)
2022-06-01 12:26:12 +0200ehammarstrom(~ehammarst@62-20-203-39-no182.tbcn.telia.com)
2022-06-01 12:27:39 +0200spacenautx(~spacenaut@user/spacenautx)
2022-06-01 12:30:30 +0200ehammarstrom(~ehammarst@62-20-203-39-no182.tbcn.telia.com) (Ping timeout: 260 seconds)
2022-06-01 12:32:13 +0200ehammarstrom(~ehammarst@62-20-203-39-no182.tbcn.telia.com)
2022-06-01 12:34:41 +0200bliminse(~bliminse@host86-164-169-5.range86-164.btcentralplus.com) (Ping timeout: 256 seconds)
2022-06-01 12:35:26 +0200chreekat(~chreekat@2001:470:69fc:105::16b5) (Quit: Reconnecting)
2022-06-01 12:35:45 +0200chreekat(~chreekat@2001:470:69fc:105::16b5)
2022-06-01 12:36:15 +0200bliminse(~bliminse@host86-164-169-5.range86-164.btcentralplus.com)
2022-06-01 12:37:15 +0200raehik(~raehik@cpc95906-rdng25-2-0-cust156.15-3.cable.virginm.net) (Ping timeout: 246 seconds)
2022-06-01 12:38:40 +0200merijn(~merijn@c-001-001-001.client.esciencecenter.eduvpn.nl) (Ping timeout: 260 seconds)
2022-06-01 12:39:39 +0200Kaiepi(~Kaiepi@156.34.47.253) (Ping timeout: 258 seconds)
2022-06-01 12:40:25 +0200acidjnk(~acidjnk@p200300d0c7068b08d490575bc8478d60.dip0.t-ipconnect.de) (Ping timeout: 260 seconds)
2022-06-01 12:46:28 +0200machinedgod(~machinedg@24.105.81.50) (Ping timeout: 248 seconds)
2022-06-01 12:47:53 +0200`2jt(~jtomas@182.red-88-17-61.dynamicip.rima-tde.net)
2022-06-01 12:48:12 +0200alp(~alp@user/alp) (Ping timeout: 272 seconds)
2022-06-01 12:52:05 +0200ehammarstrom(~ehammarst@62-20-203-39-no182.tbcn.telia.com) (Ping timeout: 260 seconds)
2022-06-01 12:52:14 +0200stefan-_(~cri@42dots.de) (Ping timeout: 252 seconds)
2022-06-01 12:53:39 +0200ehammarstrom(~ehammarst@62-20-203-39-no182.tbcn.telia.com)
2022-06-01 12:55:28 +0200raehik(~raehik@cpc95906-rdng25-2-0-cust156.15-3.cable.virginm.net)
2022-06-01 12:56:19 +0200alp(~alp@user/alp)
2022-06-01 12:56:51 +0200jakalx(~jakalx@base.jakalx.net) ()
2022-06-01 12:57:28 +0200`2jt(~jtomas@182.red-88-17-61.dynamicip.rima-tde.net) (Ping timeout: 244 seconds)
2022-06-01 12:57:47 +0200ehammarstrom(~ehammarst@62-20-203-39-no182.tbcn.telia.com) (Ping timeout: 240 seconds)
2022-06-01 12:59:16 +0200ehammarstrom(~ehammarst@62-20-203-39-no182.tbcn.telia.com)
2022-06-01 13:01:43 +0200pretty_dumm_guy(trottel@gateway/vpn/protonvpn/prettydummguy/x-88029655)
2022-06-01 13:01:51 +0200jakalx(~jakalx@base.jakalx.net)
2022-06-01 13:03:06 +0200bontaq(~user@ool-45779fe5.dyn.optonline.net)
2022-06-01 13:04:07 +0200Kaiepi(~Kaiepi@156.34.47.253)
2022-06-01 13:11:20 +0200tromp(~textual@dhcp-077-249-230-040.chello.nl) (Quit: My iMac has gone to sleep. ZZZzzz…)
2022-06-01 13:14:27 +0200tromp(~textual@dhcp-077-249-230-040.chello.nl)
2022-06-01 13:14:30 +0200tromp(~textual@dhcp-077-249-230-040.chello.nl) (Client Quit)
2022-06-01 13:14:47 +0200tromp(~textual@dhcp-077-249-230-040.chello.nl)
2022-06-01 13:14:55 +0200ehammarstrom(~ehammarst@62-20-203-39-no182.tbcn.telia.com) (Ping timeout: 258 seconds)
2022-06-01 13:15:24 +0200cortisol(~cortisol@180-150-37-80.b49625.bne.nbn.aussiebb.net)
2022-06-01 13:16:49 +0200cortisol(~cortisol@180-150-37-80.b49625.bne.nbn.aussiebb.net) (Client Quit)
2022-06-01 13:17:32 +0200cortisol(~cortisol@180-150-37-80.b49625.bne.nbn.aussiebb.net)
2022-06-01 13:20:23 +0200ehammarstrom(~ehammarst@62-20-203-39-no182.tbcn.telia.com)
2022-06-01 13:21:13 +0200statusbot2(~statusbot@ec2-34-198-122-184.compute-1.amazonaws.com) (Remote host closed the connection)
2022-06-01 13:21:44 +0200statusbot(~statusbot@ec2-34-198-122-184.compute-1.amazonaws.com)
2022-06-01 13:24:53 +0200ehammarstrom(~ehammarst@62-20-203-39-no182.tbcn.telia.com) (Ping timeout: 258 seconds)
2022-06-01 13:25:16 +0200CiaoSen(~Jura@p200300c95731a0002a3a4dfffe84dbd5.dip0.t-ipconnect.de) (Ping timeout: 258 seconds)
2022-06-01 13:26:54 +0200ehammarstrom(~ehammarst@62-20-203-39-no182.tbcn.telia.com)
2022-06-01 13:30:18 +0200Guest14(~Guest14@2401:4900:1cc8:474b:8208:fb2d:cfa7:bac9)
2022-06-01 13:31:32 +0200ehammarstrom(~ehammarst@62-20-203-39-no182.tbcn.telia.com) (Ping timeout: 260 seconds)
2022-06-01 13:34:42 +0200ehammarstrom(~ehammarst@62-20-203-39-no182.tbcn.telia.com)
2022-06-01 13:39:07 +0200ehammarstrom(~ehammarst@62-20-203-39-no182.tbcn.telia.com) (Ping timeout: 260 seconds)
2022-06-01 13:40:15 +0200sympt(~sympt@user/sympt) (Read error: Connection reset by peer)
2022-06-01 13:40:26 +0200sympt(~sympt@user/sympt)
2022-06-01 13:40:57 +0200ehammarstrom(~ehammarst@62-20-203-39-no182.tbcn.telia.com)
2022-06-01 13:41:03 +0200Guest14(~Guest14@2401:4900:1cc8:474b:8208:fb2d:cfa7:bac9) ()
2022-06-01 13:44:50 +0200Guest27(~Guest27@2401:4900:1cc8:474b:8208:fb2d:cfa7:bac9)
2022-06-01 13:46:44 +0200alp(~alp@user/alp) (Ping timeout: 248 seconds)
2022-06-01 13:46:49 +0200Pickchea(~private@user/pickchea)
2022-06-01 13:47:40 +0200Guest27(~Guest27@2401:4900:1cc8:474b:8208:fb2d:cfa7:bac9) (Client Quit)
2022-06-01 13:49:39 +0200stefan-_(~cri@42dots.de)
2022-06-01 13:52:20 +0200CiaoSen(~Jura@p200300c95731a0002a3a4dfffe84dbd5.dip0.t-ipconnect.de)
2022-06-01 13:52:37 +0200eggplantade(~Eggplanta@2600:1700:bef1:5e10:600e:e6c3:702:93eb)
2022-06-01 13:55:27 +0200ehammarstrom(~ehammarst@62-20-203-39-no182.tbcn.telia.com) (Ping timeout: 260 seconds)
2022-06-01 13:56:08 +0200frost(~frost@user/frost) (Ping timeout: 252 seconds)
2022-06-01 13:57:14 +0200eggplantade(~Eggplanta@2600:1700:bef1:5e10:600e:e6c3:702:93eb) (Ping timeout: 272 seconds)
2022-06-01 13:58:14 +0200bitdex_(~bitdex@gateway/tor-sasl/bitdex) (Quit: = "")
2022-06-01 13:58:58 +0200notzmv(~zmv@user/notzmv)
2022-06-01 13:59:29 +0200xff0x(~xff0x@b133147.ppp.asahi-net.or.jp)
2022-06-01 14:00:16 +0200odnes(~odnes@5-203-253-183.pat.nym.cosmote.net)
2022-06-01 14:01:36 +0200ehammarstrom(~ehammarst@62-20-203-39-no182.tbcn.telia.com)
2022-06-01 14:10:47 +0200ehammarstrom(~ehammarst@62-20-203-39-no182.tbcn.telia.com) (Ping timeout: 240 seconds)
2022-06-01 14:13:06 +0200mattil(~mattil@helsinki.portalify.com)
2022-06-01 14:14:50 +0200sheb(~sheb@31.223.228.71)
2022-06-01 14:15:18 +0200coot(~coot@213.134.190.95)
2022-06-01 14:17:47 +0200raehik(~raehik@cpc95906-rdng25-2-0-cust156.15-3.cable.virginm.net) (Ping timeout: 258 seconds)
2022-06-01 14:18:18 +0200ehammarstrom(~ehammarst@62-20-203-39-no182.tbcn.telia.com)
2022-06-01 14:20:10 +0200raehik(~raehik@cpc95906-rdng25-2-0-cust156.15-3.cable.virginm.net)
2022-06-01 14:22:43 +0200ehammarstrom(~ehammarst@62-20-203-39-no182.tbcn.telia.com) (Ping timeout: 244 seconds)
2022-06-01 14:25:28 +0200calleum_(~calleum@user/calleum)
2022-06-01 14:25:31 +0200ehammarstrom(~ehammarst@62-20-203-39-no182.tbcn.telia.com)
2022-06-01 14:27:47 +0200mattil(~mattil@helsinki.portalify.com) (Remote host closed the connection)
2022-06-01 14:29:16 +0200cfricke(~cfricke@user/cfricke)
2022-06-01 14:30:59 +0200ehammarstrom(~ehammarst@62-20-203-39-no182.tbcn.telia.com) (Ping timeout: 244 seconds)
2022-06-01 14:35:33 +0200liz(~liz@host86-159-158-175.range86-159.btcentralplus.com)
2022-06-01 14:38:41 +0200ehammarstrom(~ehammarst@62-20-203-39-no182.tbcn.telia.com)
2022-06-01 14:38:58 +0200lyle(~lyle@104.246.145.85)
2022-06-01 14:46:53 +0200`2jt(~jtomas@182.red-88-17-61.dynamicip.rima-tde.net)
2022-06-01 14:57:39 +0200ehammarstrom(~ehammarst@62-20-203-39-no182.tbcn.telia.com) (Ping timeout: 258 seconds)
2022-06-01 15:02:59 +0200ehammarstrom(~ehammarst@62-20-203-39-no182.tbcn.telia.com)
2022-06-01 15:10:50 +0200artem(~artem@95.140.192.176) (Quit: Konversation terminated!)
2022-06-01 15:11:07 +0200artem(~artem@95.140.192.176)
2022-06-01 15:12:43 +0200habib(~habib@188.241.157.224) (Quit: My MacBook has gone to sleep. ZZZzzz…)
2022-06-01 15:17:19 +0200tafa(~tafa@user/tafa) (Quit: ZNC - https://znc.in)
2022-06-01 15:18:05 +0200tafa(~tafa@user/tafa)
2022-06-01 15:22:39 +0200ehammarstrom(~ehammarst@62-20-203-39-no182.tbcn.telia.com) (Ping timeout: 244 seconds)
2022-06-01 15:24:52 +0200Pickchea(~private@user/pickchea) (Ping timeout: 258 seconds)
2022-06-01 15:25:51 +0200ystael(~ystael@user/ystael) (Quit: Lost terminal)
2022-06-01 15:31:06 +0200calleum_(~calleum@user/calleum) (Ping timeout: 276 seconds)
2022-06-01 15:32:25 +0200habib(~habib@188.241.157.224)
2022-06-01 15:33:06 +0200tromp(~textual@dhcp-077-249-230-040.chello.nl) (Quit: My iMac has gone to sleep. ZZZzzz…)
2022-06-01 15:33:32 +0200russruss(~russruss@my.russellmcc.com) (Quit: The Lounge - https://thelounge.chat)
2022-06-01 15:35:52 +0200russruss(~russruss@my.russellmcc.com)
2022-06-01 15:38:03 +0200ehammarstrom(~ehammarst@62-20-203-39-no182.tbcn.telia.com)
2022-06-01 15:45:42 +0200jgeerds_(~jgeerds@55d45f48.access.ecotel.net) (Ping timeout: 260 seconds)
2022-06-01 15:48:30 +0200ehammarstrom(~ehammarst@62-20-203-39-no182.tbcn.telia.com) (Ping timeout: 240 seconds)
2022-06-01 15:49:26 +0200tromp(~textual@dhcp-077-249-230-040.chello.nl)
2022-06-01 15:52:42 +0200ehammarstrom(~ehammarst@62-20-203-39-no182.tbcn.telia.com)
2022-06-01 15:53:08 +0200`2jt(~jtomas@182.red-88-17-61.dynamicip.rima-tde.net) (Ping timeout: 255 seconds)
2022-06-01 15:53:35 +0200hpc(~juzz@ip98-169-35-13.dc.dc.cox.net) (Ping timeout: 256 seconds)
2022-06-01 15:54:17 +0200eggplantade(~Eggplanta@108-201-191-115.lightspeed.sntcca.sbcglobal.net)
2022-06-01 15:55:02 +0200hpc(~juzz@ip98-169-35-13.dc.dc.cox.net)
2022-06-01 15:55:30 +0200FinnElija(~finn_elij@user/finn-elija/x-0085643) (Remote host closed the connection)
2022-06-01 15:56:04 +0200FinnElija(~finn_elij@user/finn-elija/x-0085643)
2022-06-01 15:56:50 +0200__monty__(~toonn@user/toonn) (Quit: leaving)
2022-06-01 15:57:09 +0200`2jt(~jtomas@182.red-88-17-61.dynamicip.rima-tde.net)
2022-06-01 15:57:16 +0200ehammarstrom(~ehammarst@62-20-203-39-no182.tbcn.telia.com) (Ping timeout: 244 seconds)
2022-06-01 15:57:50 +0200tenniscp25(~tenniscp2@2001:fb1:fe:264c:40bd:2ac0:2314:be29)
2022-06-01 15:58:30 +0200eggplantade(~Eggplanta@108-201-191-115.lightspeed.sntcca.sbcglobal.net) (Ping timeout: 246 seconds)
2022-06-01 15:59:42 +0200hpc(~juzz@ip98-169-35-13.dc.dc.cox.net) (Ping timeout: 260 seconds)
2022-06-01 16:00:09 +0200ehammarstrom(~ehammarst@62-20-203-39-no182.tbcn.telia.com)
2022-06-01 16:04:49 +0200`2jt(~jtomas@182.red-88-17-61.dynamicip.rima-tde.net) (Remote host closed the connection)
2022-06-01 16:07:04 +0200gehmehgeh(~user@user/gehmehgeh) (Ping timeout: 240 seconds)
2022-06-01 16:07:07 +0200hpc(~juzz@ip98-169-35-13.dc.dc.cox.net)
2022-06-01 16:09:31 +0200Pickchea(~private@user/pickchea)
2022-06-01 16:09:39 +0200gehmehgeh(~user@user/gehmehgeh)
2022-06-01 16:10:45 +0200absence(torgeihe@hildring.pvv.ntnu.no)
2022-06-01 16:12:19 +0200Sgeo(~Sgeo@user/sgeo)
2022-06-01 16:12:27 +0200ehammarstrom(~ehammarst@62-20-203-39-no182.tbcn.telia.com) (Ping timeout: 240 seconds)
2022-06-01 16:14:31 +0200cortisol(~cortisol@180-150-37-80.b49625.bne.nbn.aussiebb.net) (Quit: Client closed)
2022-06-01 16:19:18 +0200tenniscp25(~tenniscp2@2001:fb1:fe:264c:40bd:2ac0:2314:be29) ()
2022-06-01 16:20:04 +0200ehammarstrom(~ehammarst@62-20-203-39-no182.tbcn.telia.com)
2022-06-01 16:20:40 +0200habib(~habib@188.241.157.224) (Read error: Connection reset by peer)
2022-06-01 16:24:40 +0200ehammarstrom(~ehammarst@62-20-203-39-no182.tbcn.telia.com) (Ping timeout: 258 seconds)
2022-06-01 16:25:37 +0200cfricke(~cfricke@user/cfricke) (Quit: WeeChat 3.5)
2022-06-01 16:26:50 +0200tzh(~tzh@c-24-21-73-154.hsd1.or.comcast.net)
2022-06-01 16:29:20 +0200ehammarstrom(~ehammarst@62-20-203-39-no182.tbcn.telia.com)
2022-06-01 16:32:27 +0200artem(~artem@95.140.192.176) (Ping timeout: 246 seconds)
2022-06-01 16:33:49 +0200Pickchea(~private@user/pickchea) (Ping timeout: 256 seconds)
2022-06-01 16:41:12 +0200spacenautx(~spacenaut@user/spacenautx) (Ping timeout: 246 seconds)
2022-06-01 16:43:18 +0200spacenautx(~spacenaut@user/spacenautx)
2022-06-01 16:44:36 +0200ehammarstrom(~ehammarst@62-20-203-39-no182.tbcn.telia.com) (Ping timeout: 258 seconds)
2022-06-01 16:44:41 +0200shriekingnoise(~shrieking@201.231.16.156)
2022-06-01 16:48:16 +0200artem_(~artem@217.76.14.10)
2022-06-01 16:48:44 +0200z0k(~z0k@206.84.143.77)
2022-06-01 16:49:50 +0200 <Bulby[m]> ok, i'm awake 🙂
2022-06-01 16:51:33 +0200 <Bulby[m]> https://paste.tomsmeding.com/XI0bhGpa
2022-06-01 16:51:38 +0200 <Bulby[m]> this is what I tried to do
2022-06-01 16:51:41 +0200 <Bulby[m]> but it's incorrect
2022-06-01 16:51:54 +0200ehammarstrom(~ehammarst@62-20-203-39-no182.tbcn.telia.com)
2022-06-01 16:52:20 +0200 <Bulby[m]> it infers type type as `Expr -> (Expr -> Expr -> Expr)`
2022-06-01 16:53:14 +0200 <Bulby[m]> wait
2022-06-01 16:53:14 +0200artem_(~artem@217.76.14.10) (Read error: Connection reset by peer)
2022-06-01 16:53:24 +0200 <Bulby[m]> `Expr -> f0 (Expr -> Expr -> Expr)`
2022-06-01 16:53:42 +0200artem_(~artem@217.76.14.10)
2022-06-01 16:55:21 +0200 <Bulby[m]> oh, idea
2022-06-01 16:56:54 +0200ehammarstrom(~ehammarst@62-20-203-39-no182.tbcn.telia.com) (Ping timeout: 276 seconds)
2022-06-01 16:58:09 +0200jgeerds_(~jgeerds@55d45f48.access.ecotel.net)
2022-06-01 16:58:49 +0200artem_(~artem@217.76.14.10) (Read error: Connection reset by peer)
2022-06-01 16:59:01 +0200pavonia(~user@user/siracusa) (Quit: Bye!)
2022-06-01 16:59:15 +0200zebrag(~chris@user/zebrag)
2022-06-01 16:59:56 +0200waleee(~waleee@2001:9b0:213:7200:cc36:a556:b1e8:b340)
2022-06-01 17:00:14 +0200 <geekosaur> btw, tomsmeding, feature request for play-haskell: the ability to fork a snippet straight into another play instance, instead of having to go indirect via a paste
2022-06-01 17:00:48 +0200 <geekosaur> I've wanted that at least 3 times so far, using it to show someone else something
2022-06-01 17:02:35 +0200artem_(~artem@95.140.192.176)
2022-06-01 17:03:45 +0200Unicorn_Princess(~Unicorn_P@93-103-228-248.dynamic.t-2.net) (Remote host closed the connection)
2022-06-01 17:05:24 +0200ehammarstrom(~ehammarst@62-20-203-39-no182.tbcn.telia.com)
2022-06-01 17:07:19 +0200Vajb(~Vajb@hag-jnsbng11-58c3a8-176.dhcp.inet.fi) (Read error: Connection reset by peer)
2022-06-01 17:08:06 +0200Vajb(~Vajb@hag-jnsbng11-58c3a8-176.dhcp.inet.fi)
2022-06-01 17:09:30 +0200ehammarstrom(~ehammarst@62-20-203-39-no182.tbcn.telia.com) (Ping timeout: 240 seconds)
2022-06-01 17:10:50 +0200son0p(~ff@181.136.122.143)
2022-06-01 17:11:42 +0200ehammarstrom(~ehammarst@62-20-203-39-no182.tbcn.telia.com)
2022-06-01 17:15:50 +0200ehammarstrom(~ehammarst@62-20-203-39-no182.tbcn.telia.com) (Ping timeout: 240 seconds)
2022-06-01 17:17:04 +0200nahcetan(~nate@98.45.169.16)
2022-06-01 17:17:25 +0200ehammarstrom(~ehammarst@62-20-203-39-no182.tbcn.telia.com)
2022-06-01 17:19:54 +0200CiaoSen(~Jura@p200300c95731a0002a3a4dfffe84dbd5.dip0.t-ipconnect.de) (Ping timeout: 272 seconds)
2022-06-01 17:21:30 +0200ehammarstrom(~ehammarst@62-20-203-39-no182.tbcn.telia.com) (Ping timeout: 240 seconds)
2022-06-01 17:23:57 +0200spacenautx(~spacenaut@user/spacenautx) (Quit: WeeChat 3.0)
2022-06-01 17:24:44 +0200califax(~califax@user/califx) (Remote host closed the connection)
2022-06-01 17:25:34 +0200califax(~califax@user/califx)
2022-06-01 17:25:45 +0200spacenautx(~spacenaut@user/spacenautx)
2022-06-01 17:30:06 +0200odnes_(~odnes@5-203-253-183.pat.nym.cosmote.net)
2022-06-01 17:30:33 +0200ehammarstrom(~ehammarst@62-20-203-39-no182.tbcn.telia.com)
2022-06-01 17:31:23 +0200odnes(~odnes@5-203-253-183.pat.nym.cosmote.net) (Read error: Connection reset by peer)
2022-06-01 17:35:22 +0200ehammarstrom(~ehammarst@62-20-203-39-no182.tbcn.telia.com) (Ping timeout: 260 seconds)
2022-06-01 17:37:42 +0200ehammarstrom(~ehammarst@62-20-203-39-no182.tbcn.telia.com)
2022-06-01 17:38:15 +0200raehik(~raehik@cpc95906-rdng25-2-0-cust156.15-3.cable.virginm.net) (Ping timeout: 246 seconds)
2022-06-01 17:40:30 +0200raehik(~raehik@cpc95906-rdng25-2-0-cust156.15-3.cable.virginm.net)
2022-06-01 17:40:37 +0200eggplantade(~Eggplanta@108-201-191-115.lightspeed.sntcca.sbcglobal.net)
2022-06-01 17:46:57 +0200ehammarstrom(~ehammarst@62-20-203-39-no182.tbcn.telia.com) (Ping timeout: 276 seconds)
2022-06-01 17:48:52 +0200ehammarstrom(~ehammarst@62-20-203-39-no182.tbcn.telia.com)
2022-06-01 17:48:56 +0200odnes_(~odnes@5-203-253-183.pat.nym.cosmote.net) (Remote host closed the connection)
2022-06-01 17:49:05 +0200ubert(~Thunderbi@2a02:8109:abc0:6434:f1f:5029:349e:6d24) (Quit: ubert)
2022-06-01 17:49:13 +0200odnes_(~odnes@5-203-253-183.pat.nym.cosmote.net)
2022-06-01 17:52:25 +0200slack1256(~slack1256@191.126.99.79)
2022-06-01 17:52:47 +0200ehammarstrom(~ehammarst@62-20-203-39-no182.tbcn.telia.com) (Ping timeout: 240 seconds)
2022-06-01 17:55:26 +0200ehammarstrom(~ehammarst@62-20-203-39-no182.tbcn.telia.com)
2022-06-01 17:58:33 +0200dschrempf(~dominik@070-207.dynamic.dsl.fonira.net)
2022-06-01 17:58:47 +0200Sgeo(~Sgeo@user/sgeo) (Read error: Connection reset by peer)
2022-06-01 17:59:27 +0200ehammarstrom(~ehammarst@62-20-203-39-no182.tbcn.telia.com) (Ping timeout: 240 seconds)
2022-06-01 17:59:38 +0200dschrempf(~dominik@070-207.dynamic.dsl.fonira.net) (Client Quit)
2022-06-01 18:00:13 +0200jakalx(~jakalx@base.jakalx.net) ()
2022-06-01 18:01:26 +0200Sgeo(~Sgeo@user/sgeo)
2022-06-01 18:01:26 +0200ehammarstrom(~ehammarst@62-20-203-39-no182.tbcn.telia.com)
2022-06-01 18:03:52 +0200eggplantade(~Eggplanta@108-201-191-115.lightspeed.sntcca.sbcglobal.net) (Remote host closed the connection)
2022-06-01 18:04:27 +0200jakalx(~jakalx@base.jakalx.net)
2022-06-01 18:05:27 +0200ehammarstrom(~ehammarst@62-20-203-39-no182.tbcn.telia.com) (Ping timeout: 240 seconds)
2022-06-01 18:05:30 +0200nahcetan(~nate@98.45.169.16) (Ping timeout: 240 seconds)
2022-06-01 18:07:31 +0200ehammarstrom(~ehammarst@62-20-203-39-no182.tbcn.telia.com)
2022-06-01 18:12:00 +0200ehammarstrom(~ehammarst@62-20-203-39-no182.tbcn.telia.com) (Ping timeout: 258 seconds)
2022-06-01 18:12:29 +0200econo(uid147250@user/econo)
2022-06-01 18:15:29 +0200artem_(~artem@95.140.192.176) (Quit: Konversation terminated!)
2022-06-01 18:18:04 +0200 <tomsmeding> geekosaur: I already have a todo item about the ability to save the current playground contents as a new paste without leaving the playground (basically redirect from /play to /play/paste/<newly-generated/)
2022-06-01 18:18:30 +0200 <tomsmeding> does that also address your feature request? I'm not sure I understand precisely what you mean
2022-06-01 18:20:35 +0200 <geekosaur[m]> I mean I don't want to have to make a paste and then make a playground of it, which sounds like your todo
2022-06-01 18:24:27 +0200ehammarstrom(~ehammarst@62-20-203-39-no182.tbcn.telia.com)
2022-06-01 18:26:28 +0200 <geekosaur> it's just saving a click but it seems kinda silly to make that detour
2022-06-01 18:28:52 +0200ehammarstrom(~ehammarst@62-20-203-39-no182.tbcn.telia.com) (Ping timeout: 258 seconds)
2022-06-01 18:29:22 +0200coot(~coot@213.134.190.95) (Quit: coot)
2022-06-01 18:32:29 +0200Pickchea(~private@user/pickchea)
2022-06-01 18:33:19 +0200 <tomsmeding> geekosaur: I completely agree that the detour is silly
2022-06-01 18:33:51 +0200 <tomsmeding> I'm just currently (well, whenever I'm working on it, which is precious few hours per week) focusing on making the backend better, not on improving the frontend so much
2022-06-01 18:34:02 +0200 <tomsmeding> but keep the requests coming
2022-06-01 18:34:21 +0200 <geekosaur> yep. but I'm already finding it useful, mostly in haskell-beginners
2022-06-01 18:34:47 +0200 <geekosaur> seen a few others using it in here
2022-06-01 18:35:35 +0200 <tomsmeding> geekosaur: what do you think of separating the paste and play websites wholesale, like: the only connection is that paste has playground links, and that /paste/XYZ on the playground fetches the paste content first
2022-06-01 18:35:49 +0200 <tomsmeding> it's one server now but somehow that makes little sense
2022-06-01 18:35:54 +0200mbuf(~Shakthi@122.174.210.245) (Quit: Leaving)
2022-06-01 18:36:31 +0200 <geekosaur> I've been thinking about that, mostly because of the default landing page for play-haskell being the pastebin
2022-06-01 18:36:37 +0200 <tomsmeding> heh yes
2022-06-01 18:36:49 +0200ehammarstrom(~ehammarst@62-20-203-39-no182.tbcn.telia.com)
2022-06-01 18:37:17 +0200machinedgod(~machinedg@24.105.81.50)
2022-06-01 18:37:45 +0200 <geekosaur> I wasn't even sure the pastebins were linked
2022-06-01 18:37:53 +0200 <tomsmeding> they aren't :p
2022-06-01 18:37:58 +0200 <tomsmeding> completely separate things
2022-06-01 18:38:08 +0200kuribas(~user@ip-188-118-57-242.reverse.destiny.be) (Remote host closed the connection)
2022-06-01 18:38:11 +0200eggplantade(~Eggplanta@2600:1700:bef1:5e10:600e:e6c3:702:93eb)
2022-06-01 18:38:41 +0200 <geekosaur> that seems even sillier, although understandable especially if there's some hope of play-haskell eventually being under haskell.org
2022-06-01 18:39:03 +0200 <tomsmeding> what seems sillier, the pastebins not being linked or splitting the backend?
2022-06-01 18:39:14 +0200 <geekosaur> not being linked
2022-06-01 18:39:22 +0200 <tomsmeding> hm right
2022-06-01 18:39:39 +0200 <geekosaur> although the possibility of relocating under haskell.org then raises the question of paste.haskell.org
2022-06-01 18:39:57 +0200 <tomsmeding> also, if this would be hosted under haskell.org at some point, it even makes little sense to let this pastebin have "Paste for #haskell" at the top
2022-06-01 18:40:28 +0200 <geekosaur> which may possibly be harder to argue given the maintenance requirements (mostly spam) for pastebins these days
2022-06-01 18:40:29 +0200 <tomsmeding> paste.haskell.org could be a thing maybe
2022-06-01 18:40:33 +0200 <tomsmeding> right
2022-06-01 18:40:47 +0200 <tomsmeding> not sure I've seen spam yet on this thing tbh, but that may be the lack of advertisement
2022-06-01 18:41:08 +0200ehammarstrom(~ehammarst@62-20-203-39-no182.tbcn.telia.com) (Ping timeout: 258 seconds)
2022-06-01 18:41:23 +0200 <tomsmeding> having it on haskell.org would certainly be enough to incite spam
2022-06-01 18:45:29 +0200Infinite(~Infinite@49.39.126.247)
2022-06-01 18:49:08 +0200ehammarstrom(~ehammarst@62-20-203-39-no182.tbcn.telia.com)
2022-06-01 18:49:48 +0200eggplantade(~Eggplanta@2600:1700:bef1:5e10:600e:e6c3:702:93eb) (Remote host closed the connection)
2022-06-01 18:50:14 +0200 <tomsmeding> geekosaur: does the playground even need a pastebin
2022-06-01 18:50:36 +0200 <tomsmeding> as in, an alternative idea is to just give the playground its own database and let it be a standalone thing
2022-06-01 18:50:50 +0200eggplantade(~Eggplanta@2600:1700:bef1:5e10:600e:e6c3:702:93eb)
2022-06-01 18:51:16 +0200 <geekosaur> I've been thinking about that too. I mean, all it needs is a download link and it can be its own pastebin
2022-06-01 18:51:30 +0200 <tomsmeding> just without multi-file pastes
2022-06-01 18:51:54 +0200 <tomsmeding> I think that's actually the nicest format
2022-06-01 18:51:55 +0200 <geekosaur> right, but that could be a future enhancement and also differentiate it from most of the other playgrounds out there
2022-06-01 18:52:00 +0200 <tomsmeding> s/format/setup/
2022-06-01 18:52:03 +0200 <tomsmeding> true
2022-06-01 18:53:45 +0200ehammarstrom(~ehammarst@62-20-203-39-no182.tbcn.telia.com) (Ping timeout: 260 seconds)
2022-06-01 18:54:12 +0200mvk(~mvk@2607:fea8:5ce3:8500::ba9a)
2022-06-01 18:54:40 +0200alp(~alp@user/alp)
2022-06-01 18:58:04 +0200vicfred(~vicfred@user/vicfred)
2022-06-01 18:58:57 +0200 <oats> mfw no one plugs godbolt
2022-06-01 18:59:30 +0200 <oats> in case you need to paste, run, and inspect the assembly for your haskell :P
2022-06-01 19:01:41 +0200 <geekosaur> play does that. and core and cmm
2022-06-01 19:02:25 +0200 <geekosaur> not to piss on godbolt or anything but it'd be nice if we had our own dedicated playground, ideally tied to haskell.org like rust has
2022-06-01 19:03:37 +0200 <geekosaur> (hm. wonder if stg would also be interesting, possibly in conjunction with stgi)
2022-06-01 19:03:43 +0200werneta(~werneta@70-142-214-115.lightspeed.irvnca.sbcglobal.net)
2022-06-01 19:04:08 +0200 <geekosaur> dunno if stgi is implemented enough to handle actual ghc stg though
2022-06-01 19:04:36 +0200tomsmedingadds cmm to the todo list
2022-06-01 19:05:45 +0200 <geekosaur> oh,m I thought I saw it in there, I'm seeing things, sorry. of the two I think stg is probably more interesting than cmm, if you can deal with cmm you can probably do it yourself
2022-06-01 19:06:54 +0200 <geekosaur> stg+stgi might be really nice if stgi is up to it
2022-06-01 19:08:05 +0200ehammarstrom(~ehammarst@62-20-203-39-no182.tbcn.telia.com)
2022-06-01 19:10:14 +0200alp(~alp@user/alp) (Ping timeout: 255 seconds)
2022-06-01 19:14:55 +0200justsomeguy(~justsomeg@user/justsomeguy) (Quit: WeeChat 3.4)
2022-06-01 19:16:58 +0200whatsupdoc(uid509081@id-509081.hampstead.irccloud.com)
2022-06-01 19:17:18 +0200ehammarstrom(~ehammarst@62-20-203-39-no182.tbcn.telia.com) (Ping timeout: 276 seconds)
2022-06-01 19:19:06 +0200szkl(uid110435@id-110435.uxbridge.irccloud.com) (Quit: Connection closed for inactivity)
2022-06-01 19:20:18 +0200ehammarstrom(~ehammarst@62-20-203-39-no182.tbcn.telia.com)
2022-06-01 19:25:06 +0200ehammarstrom(~ehammarst@62-20-203-39-no182.tbcn.telia.com) (Ping timeout: 276 seconds)
2022-06-01 19:28:34 +0200FinnElija(~finn_elij@user/finn-elija/x-0085643) (Ping timeout: 240 seconds)
2022-06-01 19:28:38 +0200ehammarstrom(~ehammarst@62-20-203-39-no182.tbcn.telia.com)
2022-06-01 19:29:07 +0200Pickchea(~private@user/pickchea) (Ping timeout: 260 seconds)
2022-06-01 19:29:25 +0200FinnElija(~finn_elij@user/finn-elija/x-0085643)
2022-06-01 19:32:43 +0200ehammarstrom(~ehammarst@62-20-203-39-no182.tbcn.telia.com) (Ping timeout: 244 seconds)
2022-06-01 19:33:03 +0200FinnElija(~finn_elij@user/finn-elija/x-0085643) (Client Quit)
2022-06-01 19:35:55 +0200vglfr(~vglfr@coupling.penchant.volia.net) (Remote host closed the connection)
2022-06-01 19:36:44 +0200vglfr(~vglfr@coupling.penchant.volia.net)
2022-06-01 19:36:57 +0200acidjnk(~acidjnk@p200300d0c7068b08d490575bc8478d60.dip0.t-ipconnect.de)
2022-06-01 19:38:05 +0200Infinite(~Infinite@49.39.126.247) (Quit: Client closed)
2022-06-01 19:39:48 +0200ehammarstrom(~ehammarst@62-20-203-39-no182.tbcn.telia.com)
2022-06-01 19:42:38 +0200FinnElija(~finn_elij@user/finn-elija/x-0085643)
2022-06-01 19:45:32 +0200ehammarstrom(~ehammarst@62-20-203-39-no182.tbcn.telia.com) (Ping timeout: 258 seconds)
2022-06-01 19:45:36 +0200nahcetan(~nate@98.45.169.16)
2022-06-01 19:47:44 +0200ehammarstrom(~ehammarst@62-20-203-39-no182.tbcn.telia.com)
2022-06-01 19:51:34 +0200 <tomsmeding> > if you can deal with cmm you can probably do it yourself
2022-06-01 19:51:36 +0200 <tomsmeding> true lol
2022-06-01 19:52:03 +0200ehammarstrom(~ehammarst@62-20-203-39-no182.tbcn.telia.com) (Ping timeout: 258 seconds)
2022-06-01 19:53:21 +0200 <tomsmeding> geekosaur: https://github.com/quchen/stgi#ghcs-current-stg sounds like stgi can't handle actual ghc stgf
2022-06-01 19:53:24 +0200 <tomsmeding> s/stgf/stg/
2022-06-01 19:53:52 +0200 <geekosaur> yeh, I was afraid of that
2022-06-01 19:54:12 +0200ehammarstrom(~ehammarst@62-20-203-39-no182.tbcn.telia.com)
2022-06-01 19:54:49 +0200 <geekosaur> pity, it'd be nice to be able to show visually how a Haskell program is evaluated
2022-06-01 19:55:02 +0200 <tomsmeding> I've been dreaming of making a tool like that for a while
2022-06-01 19:55:23 +0200 <geekosaur> there's also ghc-vis which works at a different level
2022-06-01 19:55:50 +0200 <geekosaur> of course the other question is whether either has a web frontend compatible with play-haskell
2022-06-01 19:56:49 +0200 <tomsmeding> ghc-vis is nice indeed, not sure about swapping out a frontend for that indeed
2022-06-01 19:56:59 +0200 <tomsmeding> I'm not really planning to reach for ghcjs personally
2022-06-01 19:57:26 +0200 <geekosaur> I figured not
2022-06-01 19:57:36 +0200 <geekosaur> that's why I said "compatible with"
2022-06-01 19:58:13 +0200 <tomsmeding> :)
2022-06-01 19:58:34 +0200ehammarstrom(~ehammarst@62-20-203-39-no182.tbcn.telia.com) (Ping timeout: 258 seconds)
2022-06-01 20:01:18 +0200ehammarstrom(~ehammarst@62-20-203-39-no182.tbcn.telia.com)
2022-06-01 20:03:27 +0200raehik(~raehik@cpc95906-rdng25-2-0-cust156.15-3.cable.virginm.net) (Ping timeout: 276 seconds)
2022-06-01 20:07:00 +0200ehammarstrom(~ehammarst@62-20-203-39-no182.tbcn.telia.com) (Ping timeout: 258 seconds)
2022-06-01 20:09:18 +0200ehammarstrom(~ehammarst@62-20-203-39-no182.tbcn.telia.com)
2022-06-01 20:12:30 +0200Kaiepi(~Kaiepi@156.34.47.253) (Remote host closed the connection)
2022-06-01 20:12:55 +0200Kaiepi(~Kaiepi@156.34.47.253)
2022-06-01 20:13:54 +0200ehammarstrom(~ehammarst@62-20-203-39-no182.tbcn.telia.com) (Ping timeout: 258 seconds)
2022-06-01 20:16:12 +0200ehammarstrom(~ehammarst@62-20-203-39-no182.tbcn.telia.com)
2022-06-01 20:18:36 +0200 <Bulby[m]> what is stg
2022-06-01 20:19:08 +0200 <geekosaur> "spineless tagless g-machine", the graph reduction engine used by the ghc runtime
2022-06-01 20:19:28 +0200 <Bulby[m]> 😲
2022-06-01 20:19:41 +0200 <Bulby[m]> not even going to try to understand that
2022-06-01 20:21:57 +0200ehammarstrom(~ehammarst@62-20-203-39-no182.tbcn.telia.com) (Ping timeout: 258 seconds)
2022-06-01 20:23:30 +0200mmhat(~mmh@p200300f1c71bc38eee086bfffe095315.dip0.t-ipconnect.de) (Ping timeout: 250 seconds)
2022-06-01 20:26:32 +0200 <slack1256> The fourmolu package recomends that I install it with the old cabal commands ie: cabal install fourmolu. Given that cabal is not a package manager, what is the current way to do that?
2022-06-01 20:26:40 +0200 <geekosaur> lazy evaluation can't be done in the usual straightforward manner used by imperative code; it's done by graph reduction instead https://en.wikipedia.org/wiki/Graph_reduction
2022-06-01 20:26:58 +0200 <geekosaur> stg is how ghc's runtime does graph reduction and therefore lazy evaluation
2022-06-01 20:27:08 +0200jakalx(~jakalx@base.jakalx.net) (Error from remote client)
2022-06-01 20:27:33 +0200 <geekosaur> stgi is na interactive stg interpreter that can be used to see how lazy evaluation works
2022-06-01 20:27:39 +0200 <geekosaur> (it's on hackage)
2022-06-01 20:28:35 +0200 <geekosaur> slack1256, that works fine
2022-06-01 20:28:38 +0200 <sclv> slack1256: you can still "cabal install" executables
2022-06-01 20:28:51 +0200 <geekosaur> it'll build it and drop a symlink (or copy if so configured) into ~/.cabal/bin
2022-06-01 20:29:41 +0200 <slack1256> Oh, I thought it was deprecated given the existence of v2- or new- commands.
2022-06-01 20:30:17 +0200 <geekosaur> installing executables is still meaningful
2022-06-01 20:30:35 +0200 <geekosaur> it'd be pretty sad if you had to `cabal run` random cabal-installed executables
2022-06-01 20:31:07 +0200ehammarstrom(~ehammarst@62-20-203-39-no182.tbcn.telia.com)
2022-06-01 20:32:49 +0200Pickchea(~private@user/pickchea)
2022-06-01 20:33:10 +0200 <slack1256> I think there is a minor gotcha with `cabal install fourmolu`, we better not run on when the CWD is on another haskell proyect. Cabal will try to resolve both targets.
2022-06-01 20:33:49 +0200 <geekosaur> yes, it's best to install unrelated-to-a-project stuff from ~
2022-06-01 20:34:03 +0200 <geekosaur> maybe there should be an option (or maybe there is)
2022-06-01 20:34:33 +0200 <EvanR> Bulby[m], learning the weird way haskell is implemented is one of the great parts of haskell. "It has to be done like C" gets old xD
2022-06-01 20:35:07 +0200ehammarstrom(~ehammarst@62-20-203-39-no182.tbcn.telia.com) (Ping timeout: 240 seconds)
2022-06-01 20:35:32 +0200tromp(~textual@dhcp-077-249-230-040.chello.nl) (Quit: My iMac has gone to sleep. ZZZzzz…)
2022-06-01 20:36:34 +0200ubert(~Thunderbi@p548c85e4.dip0.t-ipconnect.de)
2022-06-01 20:37:49 +0200mmhat(~mmh@p200300f1c71bc3f5ee086bfffe095315.dip0.t-ipconnect.de)
2022-06-01 20:38:20 +0200 <romes[m]> What does "<command line>: cannot satisfy -package simple-plugin" mean?
2022-06-01 20:39:09 +0200 <slack1256> romes[m]: What were you doing?
2022-06-01 20:40:04 +0200 <romes[m]> running plugin tests on ghc, but I thought the error message might mean something outside of the ghc context
2022-06-01 20:40:29 +0200jakalx(~jakalx@base.jakalx.net)
2022-06-01 20:43:51 +0200ehammarstrom(~ehammarst@62-20-203-39-no182.tbcn.telia.com)
2022-06-01 20:47:47 +0200ehammarstrom(~ehammarst@62-20-203-39-no182.tbcn.telia.com) (Ping timeout: 240 seconds)
2022-06-01 20:48:08 +0200 <geekosaur> it's expecting to find the plugin in a package, and hasn't found the package
2022-06-01 20:49:24 +0200ubert(~Thunderbi@p548c85e4.dip0.t-ipconnect.de) (Quit: ubert)
2022-06-01 20:49:27 +0200Sgeo(~Sgeo@user/sgeo) (Ping timeout: 240 seconds)
2022-06-01 20:54:06 +0200adium(~adium@user/adium)
2022-06-01 20:54:55 +0200_ht(~quassel@231-169-21-31.ftth.glasoperator.nl)
2022-06-01 20:57:12 +0200Sgeo(~Sgeo@user/sgeo)
2022-06-01 21:00:18 +0200ehammarstrom(~ehammarst@62-20-203-39-no182.tbcn.telia.com)
2022-06-01 21:01:04 +0200adium(~adium@user/adium) (Quit: Stable ZNC by #bnc4you)
2022-06-01 21:01:22 +0200atarv(~atarv@dsl-jklbng12-54fbde-4.dhcp.inet.fi)
2022-06-01 21:06:51 +0200z0k(~z0k@206.84.143.77) (Ping timeout: 246 seconds)
2022-06-01 21:11:57 +0200tromp(~textual@dhcp-077-249-230-040.chello.nl)
2022-06-01 21:12:42 +0200jgeerds_(~jgeerds@55d45f48.access.ecotel.net) (Remote host closed the connection)
2022-06-01 21:15:18 +0200sonny(~user@142.126.78.85)
2022-06-01 21:15:30 +0200 <sonny> how does haskell seperate arguments?
2022-06-01 21:16:36 +0200zincy(~zincy@host86-160-236-152.range86-160.btcentralplus.com)
2022-06-01 21:17:49 +0200[itchyjunk](~itchyjunk@user/itchyjunk/x-7353470)
2022-06-01 21:17:54 +0200 <yushyin> with space
2022-06-01 21:19:36 +0200 <geekosaur> instead of f(a,b,c) we say f a b c
2022-06-01 21:19:50 +0200 <sonny> ok say you have a function like \x y -> x + y. If you use arguments that are complex expressions how does it figure out what the parameters are? add 50-3 4-5 vs add 50 -3 4 -5.
2022-06-01 21:20:34 +0200 <geekosaur> unary minus is a wart in the default language, you have to use parentheses (add 50 (-3) 4 (-5))
2022-06-01 21:21:06 +0200 <geekosaur> in ghc 9.2 there's a NumericLiterals extension such that the spacing you used will be understood as you expect
2022-06-01 21:21:19 +0200 <sonny> damn
2022-06-01 21:21:22 +0200 <geekosaur> with the downside that you have to use spaces everywhere else (x - 4, not x-4)
2022-06-01 21:22:00 +0200 <sonny> so on a parsing level, you could solve that if you had another symbol for unary minus?
2022-06-01 21:22:04 +0200tromp(~textual@dhcp-077-249-230-040.chello.nl) (Quit: My iMac has gone to sleep. ZZZzzz…)
2022-06-01 21:22:09 +0200 <geekosaur> yes, and some languages do that
2022-06-01 21:22:26 +0200 <darkling> That leads to a follow-on question: You can create a partially applied function (+3); is the equivalent (-3) not actually the same kind of thing?
2022-06-01 21:22:26 +0200 <geekosaur> I've seen a language I'm not recalling off the top of my head that used ~ for unary minus
2022-06-01 21:22:36 +0200 <geekosaur> it's not
2022-06-01 21:22:46 +0200 <geekosaur> you have to express it as a lambda or use `subtract`
2022-06-01 21:22:53 +0200 <darkling> Good to know, thanks.
2022-06-01 21:23:17 +0200 <sonny> would it be better defined this way?
2022-06-01 21:24:34 +0200 <yushyin> https://ghc.gitlab.haskell.org/ghc/doc/users_guide/exts/negative_literals.html for reference
2022-06-01 21:25:17 +0200 <geekosaur> I don't think there's any non-sucky way to deal with it
2022-06-01 21:25:49 +0200 <sonny> ok
2022-06-01 21:25:53 +0200 <EvanR> "Hands-On Functional Programming in Rust" waht...
2022-06-01 21:25:57 +0200 <geekosaur> unary minus is a wart in every language; how much of a wart depends on the language
2022-06-01 21:26:04 +0200atarv(~atarv@dsl-jklbng12-54fbde-4.dhcp.inet.fi) (Quit: Client closed)
2022-06-01 21:26:22 +0200 <EvanR> accountants are way ahead of you
2022-06-01 21:26:41 +0200 <darkling> On the few occasions I've written a language parser, It's always been the bit I don't look at too hard and pray that the compiler compiler will do the right thing. :)
2022-06-01 21:26:58 +0200atarv(~atarv@dsl-jklbng12-54fbde-4.dhcp.inet.fi)
2022-06-01 21:27:23 +0200atarv(~atarv@dsl-jklbng12-54fbde-4.dhcp.inet.fi) (Client Quit)
2022-06-01 21:28:00 +0200 <yushyin> tbh, LexicalNegation does an ok job.
2022-06-01 21:30:05 +0200ehammarstrom(~ehammarst@62-20-203-39-no182.tbcn.telia.com) (Ping timeout: 260 seconds)
2022-06-01 21:32:03 +0200zincy(~zincy@host86-160-236-152.range86-160.btcentralplus.com) (Remote host closed the connection)
2022-06-01 21:34:38 +0200ehammarstrom(~ehammarst@62-20-203-39-no182.tbcn.telia.com)
2022-06-01 21:35:47 +0200adium(adium@user/adium)
2022-06-01 21:37:21 +0200tromp(~textual@dhcp-077-249-230-040.chello.nl)
2022-06-01 21:41:18 +0200ehammarstrom(~ehammarst@62-20-203-39-no182.tbcn.telia.com) (Ping timeout: 258 seconds)
2022-06-01 21:49:10 +0200slac70768(~slack1256@186.11.42.162)
2022-06-01 21:49:29 +0200TonyStone(~TonyStone@cpe-74-76-51-197.nycap.res.rr.com) (Remote host closed the connection)
2022-06-01 21:49:34 +0200ehammarstrom(~ehammarst@62-20-203-39-no182.tbcn.telia.com)
2022-06-01 21:49:55 +0200zer0bitz(~zer0bitz@2001:2003:f444:8f00:fd05:2e75:91eb:6c90)
2022-06-01 21:50:50 +0200slac26730(~slack1256@191.125.227.199)
2022-06-01 21:51:16 +0200slack1256(~slack1256@191.126.99.79) (Ping timeout: 258 seconds)
2022-06-01 21:51:23 +0200slac26730slack1256
2022-06-01 21:52:09 +0200tromp(~textual@dhcp-077-249-230-040.chello.nl) (Quit: My iMac has gone to sleep. ZZZzzz…)
2022-06-01 21:53:34 +0200slac70768(~slack1256@186.11.42.162) (Ping timeout: 258 seconds)
2022-06-01 21:53:57 +0200ehammarstrom(~ehammarst@62-20-203-39-no182.tbcn.telia.com) (Ping timeout: 258 seconds)
2022-06-01 21:56:19 +0200 <sm> \
2022-06-01 21:56:20 +0200 <sm> =-1
2022-06-01 21:56:30 +0200 <sm> \987654
2022-06-01 21:59:36 +0200 <sm> yikes what's going on there, sorry
2022-06-01 21:59:46 +0200 <sm> begone poltergeist
2022-06-01 22:00:27 +0200 <dsal> numberwang
2022-06-01 22:03:56 +0200 <sm> in today's news.. Tweag acquired by random unknown company.. hmm
2022-06-01 22:06:01 +0200 <sm> "Modus Create also has a long history of open source community contributions and continues to publish projects with their Modus Labs initiative.".. ok then
2022-06-01 22:07:32 +0200ehammarstrom(~ehammarst@62-20-203-39-no182.tbcn.telia.com)
2022-06-01 22:08:06 +0200dsrt^(~dsrt@128-092-173-218.biz.spectrum.com)
2022-06-01 22:11:58 +0200ehammarstrom(~ehammarst@62-20-203-39-no182.tbcn.telia.com) (Ping timeout: 258 seconds)
2022-06-01 22:14:43 +0200 <tomsmeding> hm, I would expect the tweag.io page to say something about this
2022-06-01 22:16:00 +0200wrengr(~wrengr@249.189.233.35.bc.googleusercontent.com)
2022-06-01 22:16:03 +0200jakalx(~jakalx@base.jakalx.net) (Error from remote client)
2022-06-01 22:16:50 +0200ehammarstrom(~ehammarst@62-20-203-39-no182.tbcn.telia.com)
2022-06-01 22:16:55 +0200 <Bulby[m]> is there a easy to read (i.e. not a research paper) thing on spineless tagless g-machine
2022-06-01 22:17:17 +0200 <tomsmeding> Bulby[m]: try the https://github.com/quchen/stgi#ghcs-current-stg readme
2022-06-01 22:18:02 +0200 <tomsmeding> Bulby[m]: mind the "GHC's current STG" section at the end; not sure how large the difference is
2022-06-01 22:18:21 +0200 <tomsmeding> but it sounds like it should be fairly similar
2022-06-01 22:19:26 +0200 <tomsmeding> oh I tag-linked the final section, I meant the whole readme lol, sorry
2022-06-01 22:20:25 +0200cosimone`(~user@93-44-186-171.ip98.fastwebnet.it) (Remote host closed the connection)
2022-06-01 22:20:29 +0200sonny(~user@142.126.78.85) (ERC 5.4 (IRC client for GNU Emacs 28.1))
2022-06-01 22:20:47 +0200ehammarstrom(~ehammarst@62-20-203-39-no182.tbcn.telia.com) (Ping timeout: 240 seconds)
2022-06-01 22:23:50 +0200_ht(~quassel@231-169-21-31.ftth.glasoperator.nl) (Remote host closed the connection)
2022-06-01 22:24:00 +0200ehammarstrom(~ehammarst@62-20-203-39-no182.tbcn.telia.com)
2022-06-01 22:24:20 +0200jakalx(~jakalx@base.jakalx.net)
2022-06-01 22:25:29 +0200spacenautx(~spacenaut@user/spacenautx) (Quit: WeeChat 3.0)
2022-06-01 22:28:07 +0200ehammarstrom(~ehammarst@62-20-203-39-no182.tbcn.telia.com) (Ping timeout: 240 seconds)
2022-06-01 22:30:07 +0200spacenautx(~spacenaut@user/spacenautx)
2022-06-01 22:30:35 +0200takuan(~takuan@178-116-218-225.access.telenet.be) (Remote host closed the connection)
2022-06-01 22:31:43 +0200ehammarstrom(~ehammarst@62-20-203-39-no182.tbcn.telia.com)
2022-06-01 22:34:41 +0200dsrt^(~dsrt@128-092-173-218.biz.spectrum.com) (Ping timeout: 252 seconds)
2022-06-01 22:34:55 +0200 <geekosaur> Bulby[m], that was why I linked the wikipedia page on graph reduction. as stg is about optimizing graph reduction for real hardware, pretty much any paper on it goes into fine details of machine representations, registers, and such
2022-06-01 22:35:10 +0200 <geekosaur> and less about "why would you want this?"
2022-06-01 22:36:03 +0200 <Bulby[m]> graph reduction is abstract, stg is more concrete
2022-06-01 22:36:35 +0200 <geekosaur> even the stgi stuff talks about concrete details of stuff that is more about optimization, e.g. update frames
2022-06-01 22:37:20 +0200 <geekosaur> ideally you don't care much about the concrete at this level because it's necessarily at close to hardware level
2022-06-01 22:38:06 +0200 <geekosaur> (there's even hardware that runs stg directly, although not in production use e.g. reduceron)
2022-06-01 22:38:12 +0200ehammarstrom(~ehammarst@62-20-203-39-no182.tbcn.telia.com) (Ping timeout: 244 seconds)
2022-06-01 22:38:34 +0200 <energizer> is there a language where expressions aren't evaluated by default, eg `x = 1+1; print x` gives `1+1`?
2022-06-01 22:39:16 +0200eggplantade(~Eggplanta@2600:1700:bef1:5e10:600e:e6c3:702:93eb) (Remote host closed the connection)
2022-06-01 22:39:16 +0200 <tomsmeding> not evaluating _anything_ by default not sure, but Mathematica gets pretty far
2022-06-01 22:40:20 +0200 <darkling> Yeah, you tend to need to tell it to do something with the expression (which might be evaluation, or it might be, say, integration w.r.t. a variable)
2022-06-01 22:40:47 +0200 <geekosaur> the problem with such a language is:P what tells it to evaluate the evaluator?
2022-06-01 22:41:06 +0200 <geekosaur> s/P//
2022-06-01 22:41:29 +0200 <tomsmeding> Mathematica allows `Hold[1+1]` which stops evaluation
2022-06-01 22:41:37 +0200 <geekosaur> even symbolic math systems tend to evaluate simple expressions
2022-06-01 22:41:58 +0200lyle(~lyle@104.246.145.85) (Quit: Lost terminal)
2022-06-01 22:42:05 +0200eggplantade(~Eggplanta@2600:1700:bef1:5e10:600e:e6c3:702:93eb)
2022-06-01 22:42:09 +0200 <geekosaur> i.e. `x+3` might not be evaluated immediately but `5+3` would be
2022-06-01 22:43:28 +0200 <monochrom> CAS'es are much smarter than evaluation. Or at least looks like smarter.
2022-06-01 22:45:17 +0200 <monochrom> Hypothetically you could create your own CAS that leaves 1+1 alone even when printed, but it would have no market.
2022-06-01 22:45:51 +0200 <geekosaur> ^
2022-06-01 22:46:00 +0200 <tomsmeding> energizer: why are you asking? :)
2022-06-01 22:46:13 +0200 <monochrom> People on the CAS market will want both 1+1 and "(integral of 1 dx from 0 to 1) + sin (pi/2)" to be simplified to 2 automatically.
2022-06-01 22:46:34 +0200nate2(~nate@98.45.169.16)
2022-06-01 22:47:31 +0200 <energizer> tomsmeding: just curious i guess
2022-06-01 22:48:52 +0200ehammarstrom(~ehammarst@62-20-203-39-no182.tbcn.telia.com)
2022-06-01 22:51:38 +0200dextaa(~DV@user/dextaa) (Ping timeout: 255 seconds)
2022-06-01 22:52:02 +0200jmdaemon(~jmdaemon@user/jmdaemon)
2022-06-01 22:52:26 +0200eggplantade(~Eggplanta@2600:1700:bef1:5e10:600e:e6c3:702:93eb) (Remote host closed the connection)
2022-06-01 22:52:59 +0200 <energizer> i guess Hold[...] is like (quote ...)
2022-06-01 22:53:17 +0200 <tomsmeding> kind of?
2022-06-01 22:53:24 +0200 <energizer> how not?
2022-06-01 22:53:34 +0200 <tomsmeding> well, not really, because (quote) produces an AST of its argument
2022-06-01 22:53:57 +0200 <energizer> what does Hold produce if not an ast?
2022-06-01 22:53:57 +0200 <tomsmeding> Mathematica is a term rewriting language, not a language based on beta-reduction (standard lambda calculus-like evaluation)
2022-06-01 22:54:04 +0200 <tomsmeding> everything is an AST always
2022-06-01 22:54:16 +0200 <tomsmeding> ASTs are just sometimes automatically simplified
2022-06-01 22:54:17 +0200 <tomsmeding> Hold stops that
2022-06-01 22:54:41 +0200 <tomsmeding> you can write `a+a` in Mathematica, and if `a` hasn't been defined yet, that just stays as-is
2022-06-01 22:54:47 +0200tromp(~textual@dhcp-077-249-230-040.chello.nl)
2022-06-01 22:55:04 +0200 <tomsmeding> and there are other "functions" to inspect expressions in Mma, and they will work on that a+a
2022-06-01 22:55:14 +0200 <tomsmeding> so without Hold, you still somehow got an AST
2022-06-01 22:56:06 +0200 <tomsmeding> `a+a /. a -> 1` (if I remember the syntax correctly) simplifies to `1+1`, which simplies to `2`
2022-06-01 22:56:19 +0200 <tomsmeding> that's a rewrite rule applied to an expression, not a substitution
2022-06-01 22:56:33 +0200 <tomsmeding> IIRC you can also `a+a /. a+a -> 3` and it will result in 3
2022-06-01 22:57:30 +0200 <tomsmeding> yep remembered correctly
2022-06-01 22:57:42 +0200 <tomsmeding> (I lied about `a+a` not simplifying; it simplifies to `2 a`)
2022-06-01 22:58:24 +0200 <energizer> i see
2022-06-01 22:58:39 +0200 <tomsmeding> from a CAS perspective the evaluation model of Mma makes sense, but it's really fundamentally different from lambda calculus / haskell, even if one can _simulate_ beta-reduction quite well in it
2022-06-01 23:01:41 +0200 <tomsmeding> the fact that Mma's rewriting is scoping-aware allows you to recover beta-reduction in it :)
2022-06-01 23:03:24 +0200machinedgod(~machinedg@24.105.81.50) (Ping timeout: 246 seconds)
2022-06-01 23:04:29 +0200ehammarstrom(~ehammarst@62-20-203-39-no182.tbcn.telia.com) (Ping timeout: 258 seconds)
2022-06-01 23:06:26 +0200slack1256(~slack1256@191.125.227.199) (Read error: Connection reset by peer)
2022-06-01 23:06:31 +0200slac72175(~slack1256@186.11.46.34)
2022-06-01 23:06:56 +0200 <monochrom> Hold is like Lazy ML's "suspend".
2022-06-01 23:07:08 +0200odnes_(~odnes@5-203-253-183.pat.nym.cosmote.net) (Quit: Leaving)
2022-06-01 23:07:43 +0200 <monochrom> Or in general in a language the opposite of Haskell, eager by default, but you can add laziness annotations.
2022-06-01 23:08:05 +0200 <monochrom> Haskell is lazy by default, but you can add eagerness annotations.
2022-06-01 23:08:13 +0200 <Bulby[m]> so back to my conditional parser
2022-06-01 23:08:15 +0200 <Bulby[m]> sorry
2022-06-01 23:08:59 +0200 <Bulby[m]> could I somehow convert an `(LxExpr -> LxExpr -> LoxParser LxExpr)` to a `LoxParser (LxExpr -> LxExpr -> LxExpr)`
2022-06-01 23:09:24 +0200ec(~ec@gateway/tor-sasl/ec) (Quit: ec)
2022-06-01 23:09:51 +0200 <monochrom> Not unless LoxParser is desgined to support it.
2022-06-01 23:09:51 +0200 <Bulby[m]> given LoxParser is a monad
2022-06-01 23:10:00 +0200 <monochrom> This is not a monad operation.
2022-06-01 23:10:16 +0200 <tomsmeding> monochrom: I bet Lazy ML cannot do the [13] line in this :) https://tomsmeding.com/ss/get/tomsmeding/yyLM4B
2022-06-01 23:10:18 +0200 <Bulby[m]> it's a megaparsec parser...
2022-06-01 23:10:19 +0200 <Bulby[m]> ok, let me fully explain
2022-06-01 23:10:26 +0200 <Bulby[m]> I only truly need the first argument
2022-06-01 23:10:32 +0200 <monochrom> Either that, or the actual "(LxExpr -> LxExpr -> LoxParser LxExpr)" value is trivial.
2022-06-01 23:10:59 +0200 <Bulby[m]> https://hackage.haskell.org/package/parser-combinators-1.3.0/docs/Control-Monad-Combinators-Expr.h…
2022-06-01 23:11:06 +0200 <Bulby[m]> using InfixR here
2022-06-01 23:11:21 +0200 <tomsmeding> Bulby[m]: how did you make that `(LxExpr -> LxExpr -> LoxParser LxExpr)`
2022-06-01 23:12:08 +0200 <monochrom> tomsmeding: Right, but that's orthogonal to laziness. That's another aspect of CAS, that you can inspect the AST of expressions.
2022-06-01 23:12:10 +0200 <tomsmeding> as monochrom said, you cannot do this in general, but in certain specific cases you can, depending on what function this is exactly
2022-06-01 23:12:18 +0200 <tomsmeding> monochrom: true
2022-06-01 23:12:18 +0200 <Bulby[m]> https://paste.tomsmeding.com/66dFNI5n
2022-06-01 23:13:03 +0200 <Bulby[m]> oops, wrong thing
2022-06-01 23:13:04 +0200 <Bulby[m]> that was a newer attempt
2022-06-01 23:13:04 +0200 <Bulby[m]> inshort, I need the first argument to check if it's bad
2022-06-01 23:13:09 +0200 <Bulby[m]> i.e. not an identifir
2022-06-01 23:13:12 +0200 <Bulby[m]> * i.e. not an identifier
2022-06-01 23:13:41 +0200jespada(~jespada@cpc121022-nmal24-2-0-cust171.19-2.cable.virginm.net)
2022-06-01 23:13:56 +0200 <tomsmeding> Bulby[m]: assuming that version is wrong, what is the error you get?
2022-06-01 23:13:57 +0200stackdroid18(14094@user/stackdroid)
2022-06-01 23:14:05 +0200chele(~chele@user/chele) (Remote host closed the connection)
2022-06-01 23:14:12 +0200 <monochrom> Sacrilegeously, the first pattern matching I learned was from Mathematica, not functional languages. >:)
2022-06-01 23:14:40 +0200 <monochrom> OK I lied, the first pattern matching I learned was from Prolog, but I wasn't very fond of Prolog.
2022-06-01 23:14:44 +0200 <tomsmeding> pattern matching in a term rewriting language is even more powerful than in a functional language :p
2022-06-01 23:15:15 +0200`2jt(~jtomas@182.red-88-17-61.dynamicip.rima-tde.net)
2022-06-01 23:15:28 +0200 <Bulby[m]> can't match `LoxParser (LxExpr -> LxExpr -> LxExpr)` with `LxExpr -> f0 (LxExpr -> LxExpr -> LxExpr)`
2022-06-01 23:16:19 +0200 <tomsmeding> in what expression
2022-06-01 23:16:30 +0200 <Bulby[m]> in that case statement
2022-06-01 23:16:41 +0200 <tomsmeding> what's the type of lxassign
2022-06-01 23:16:53 +0200 <Bulby[m]> LoxParser () iirc
2022-06-01 23:17:14 +0200dsrt^(~dsrt@128-092-173-218.biz.spectrum.com)
2022-06-01 23:17:17 +0200 <Bulby[m]> i don't paticularly want to solve this code
2022-06-01 23:17:28 +0200 <tomsmeding> oh now I get your issue
2022-06-01 23:17:37 +0200 <tomsmeding> you cannot do what you want with InfixR
2022-06-01 23:17:57 +0200 <tomsmeding> the whole point of the `m (a -> a -> a)` type is that the argument to InfixR _cannot_ inspect the arguments to the infix operator
2022-06-01 23:18:19 +0200 <Bulby[m]> 😭
2022-06-01 23:18:36 +0200 <tomsmeding> otherwise it would be ~impossible to implement makeExprParser
2022-06-01 23:18:47 +0200 <Bulby[m]> then how do I stop invalid code?
2022-06-01 23:18:53 +0200dextaa(~DV@user/dextaa)
2022-06-01 23:19:16 +0200 <tomsmeding> the assignment operator really an infix operator in an expression? Or is `a = expression` a _statement_ form in Lox? I don't remember well
2022-06-01 23:19:26 +0200 <tomsmeding> like, can you write `a = (b = 42) + 1`
2022-06-01 23:19:42 +0200 <Bulby[m]> it's an expression, yea
2022-06-01 23:20:35 +0200 <tomsmeding> (ew)
2022-06-01 23:20:35 +0200 <geekosaur> C has lvalue expressions too
2022-06-01 23:21:01 +0200eggplantade(~Eggplanta@2600:1700:bef1:5e10:600e:e6c3:702:93eb)
2022-06-01 23:21:02 +0200 <geekosaur> and accepts that syntax
2022-06-01 23:21:19 +0200 <tomsmeding> yes I know C :p
2022-06-01 23:23:46 +0200ehammarstrom(~ehammarst@62-20-203-39-no182.tbcn.telia.com)
2022-06-01 23:23:56 +0200 <tomsmeding> Bulby[m]: I was lying, what you want could perfectly well be implemented in makeExprParser, it just isn't
2022-06-01 23:24:13 +0200 <Bulby[m]> 😠
2022-06-01 23:24:27 +0200 <tomsmeding> the `return` here in pInfixR is your issue I think https://hackage.haskell.org/package/parser-combinators-1.3.0/docs/src/Control.Monad.Combinators.Ex…
2022-06-01 23:24:35 +0200 <tomsmeding> (the last `return`)
2022-06-01 23:25:40 +0200 <tomsmeding> so you have two options: 1. check validity of the parsed AST after makeExprParser is done, or 2. reimplement makeExprParser yourself
2022-06-01 23:26:04 +0200 <Bulby[m]> ☹️
2022-06-01 23:26:11 +0200 <Bulby[m]> both not nice options
2022-06-01 23:26:13 +0200 <tomsmeding> option (2) is less scary than it sounds, but it's still a bit of work (meet your new friend `chainl`)
2022-06-01 23:26:25 +0200 <Bulby[m]> NO NOT CHAINL AGAIN
2022-06-01 23:26:29 +0200 <tomsmeding> lol
2022-06-01 23:26:33 +0200tromp(~textual@dhcp-077-249-230-040.chello.nl) (Quit: My iMac has gone to sleep. ZZZzzz…)
2022-06-01 23:26:44 +0200 <Bulby[m]> i thought chainl didn't work on megaparsec?
2022-06-01 23:27:23 +0200 <tomsmeding> bloody megaparsec I always get confused with its delegation of operations to other modules
2022-06-01 23:28:03 +0200ehammarstrom(~ehammarst@62-20-203-39-no182.tbcn.telia.com) (Ping timeout: 256 seconds)
2022-06-01 23:28:15 +0200 <tomsmeding> oh parsec's chainl is limited in the same way as makeExprParser is lol
2022-06-01 23:28:18 +0200 <tomsmeding> but you can reimplement it!
2022-06-01 23:29:04 +0200 <tomsmeding> check chainl and chainl1 here, and see if you can make it slightly more general https://hackage.haskell.org/package/parsec-3.1.14.0/docs/src/Text.Parsec.Combinator.html#line-191
2022-06-01 23:30:36 +0200Kaiepi(~Kaiepi@156.34.47.253) (Read error: Connection reset by peer)
2022-06-01 23:31:26 +0200Kaiepi(~Kaiepi@156.34.47.253)
2022-06-01 23:32:07 +0200spacenautx(~spacenaut@user/spacenautx) (Ping timeout: 240 seconds)
2022-06-01 23:33:02 +0200eggplantade(~Eggplanta@2600:1700:bef1:5e10:600e:e6c3:702:93eb) (Remote host closed the connection)
2022-06-01 23:33:08 +0200 <monochrom> The reason of "Parser (E -> E -> E)" is because for example `char '+' *> pure (+) <|> char '*' *> pure (*)`
2022-06-01 23:33:13 +0200ehammarstrom(~ehammarst@62-20-203-39-no182.tbcn.telia.com)
2022-06-01 23:34:25 +0200spacenautx(~spacenaut@user/spacenautx)
2022-06-01 23:34:47 +0200 <monochrom> OK chainl is in parser-combinators but it works.
2022-06-01 23:34:50 +0200 <geekosaur> hm. can't you check this in the resulting AST instead of in the parser?
2022-06-01 23:35:10 +0200 <Bulby[m]> what if the AST is fairly large?
2022-06-01 23:35:59 +0200 <geekosaur> you presumably need to be able to find assignment operators in the AST at some point anyway, likely during generation of that AST
2022-06-01 23:36:25 +0200 <Bulby[m]> ... why would i?
2022-06-01 23:36:37 +0200 <monochrom> I see, nevermind, chainl is not in parser-combinator either, at least not by that name.
2022-06-01 23:36:41 +0200 <geekosaur> uh?
2022-06-01 23:37:03 +0200 <geekosaur> you are generating an AST, right? you have access at that point if nothing else
2022-06-01 23:37:15 +0200 <monochrom> I guess it really wants us to just use makeExprParser.
2022-06-01 23:37:26 +0200 <geekosaur> but I'd also expect either interpretation or code generation from that AST
2022-06-01 23:37:27 +0200ehammarstrom(~ehammarst@62-20-203-39-no182.tbcn.telia.com) (Ping timeout: 240 seconds)
2022-06-01 23:37:45 +0200 <Bulby[m]> interpretation yes
2022-06-01 23:37:59 +0200 <geekosaur> so you should have two points at which you are passing through an op=assign node, either creation or interpretation
2022-06-01 23:38:01 +0200 <monochrom> But it's the same principle. Your operator parser is Parser (E -> E -> E) because it parses an operator, not an expression.
2022-06-01 23:38:30 +0200 <geekosaur> and you can validate its left parameter is an identifier, or for more general languages an lvalue of some kind
2022-06-01 23:38:43 +0200 <Bulby[m]> interpretation would make it a runtime error ☹️
2022-06-01 23:38:55 +0200 <geekosaur> where another assignment is trivially an lvalue
2022-06-01 23:39:42 +0200 <geekosaur> are you separating AST generation and interpretation? if so, you are effectively compiling. if not, the difference between compile and run time is effectively nonexistent
2022-06-01 23:40:01 +0200 <monochrom> If you're trying to parse an assignment statement of the form "var = expr", you use makeExprParser for the expr part, not for the whole thing.
2022-06-01 23:40:19 +0200 <Bulby[m]> ... lox has explicit var declarations
2022-06-01 23:40:40 +0200 <monochrom> The whole thing is trivially: 1. insist on parsing a var; 2. insist on parsing the = operator; 3. now you can parse an arbitrary expression.
2022-06-01 23:41:14 +0200 <geekosaur> and you still haven't answered why you can't do this while *building* the AST
2022-06-01 23:41:32 +0200 <Bulby[m]> because it's all inside of the parser monad?
2022-06-01 23:41:32 +0200 <geekosaur> which is when I'd do it
2022-06-01 23:41:49 +0200 <Bulby[m]> hm...
2022-06-01 23:41:54 +0200 <Bulby[m]> i could just check it
2022-06-01 23:41:57 +0200 <Bulby[m]> may as well try
2022-06-01 23:42:44 +0200 <geekosaur> the parser monad has no clue about creating ASTs. you need to add code to it to do that, in which you should have access to the parameters to op=assign
2022-06-01 23:43:32 +0200 <geekosaur> left to itself a parser monad will tell you whether it parsed or not, it will not generate an AST
2022-06-01 23:44:26 +0200michalz(~michalz@185.246.204.126) (Remote host closed the connection)
2022-06-01 23:46:15 +0200eggplantade(~Eggplanta@2600:1700:bef1:5e10:600e:e6c3:702:93eb)
2022-06-01 23:46:49 +0200ehammarstrom(~ehammarst@62-20-203-39-no182.tbcn.telia.com)
2022-06-01 23:48:20 +0200chomwitt(~chomwitt@2a02:587:dc0e:3e00:9566:7d3:9c0f:2549) (Ping timeout: 248 seconds)
2022-06-01 23:48:39 +0200 <geekosaur> (consider that Parser has no clue what additional information you want attached to AST nodes, for the purposes of interpretation or optimization or etc.)
2022-06-01 23:49:39 +0200nate2(~nate@98.45.169.16) (Ping timeout: 276 seconds)
2022-06-01 23:49:53 +0200 <Bulby[m]> well, my parser is a parser of expressions
2022-06-01 23:50:11 +0200 <monochrom> pure (Plus (Var "x") (Var "y"))
2022-06-01 23:51:15 +0200 <monochrom> I wrote this for Parsec but the basics are the same, and it sounds like you lack the basics: https://wiki.haskell.org/Parsing_expressions_and_statements
2022-06-01 23:52:01 +0200dsrt^(~dsrt@128-092-173-218.biz.spectrum.com) (Ping timeout: 258 seconds)
2022-06-01 23:52:16 +0200 <Bulby[m]> my parser _was_ working until I realized "oops, all right associative"
2022-06-01 23:53:03 +0200 <monochrom> Sure.
2022-06-01 23:53:45 +0200 <monochrom> My sum-up-the-list algorithm "was working" until I realized "oops, it doesn't handle lists longer than 3 elements".
2022-06-01 23:53:49 +0200 <monochrom> "working"
2022-06-01 23:53:59 +0200 <Bulby[m]> right 🙂
2022-06-01 23:54:12 +0200 <monochrom> I saw first-years students saying "my code works but it doesn't pass your test cases".
2022-06-01 23:54:16 +0200 <monochrom> "works"
2022-06-01 23:55:12 +0200andrey__(~andrey@p200300dbcf0aa300256a01d40b961d18.dip0.t-ipconnect.de) (Remote host closed the connection)
2022-06-01 23:55:18 +0200 <monochrom> When something like that happens, you know that there is 99% chance you can't just minor-patch the code, its whole structure and approach and premise is wrong in the first place, you have to go back to square one.
2022-06-01 23:55:25 +0200andrey__(~andrey@p508d581f.dip0.t-ipconnect.de)
2022-06-01 23:55:50 +0200 <Bulby[m]> ... which is why I am now using makeExprParser
2022-06-01 23:56:02 +0200 <maerwald> monochrom: "it works on my machine" was the response of a fellow student working with me in a group on a C project after I told him his C code is broken (as per the standard and the debugger) and works only by accident
2022-06-01 23:56:07 +0200ehammarstrom(~ehammarst@62-20-203-39-no182.tbcn.telia.com) (Ping timeout: 240 seconds)
2022-06-01 23:57:06 +0200 <monochrom> I think I saw shell scripts and C programs making syscalls working on mac but break on Linux, too.
2022-06-01 23:57:55 +0200 <monochrom> I am not certain but my current theory is that, I test student shell scripts with "sh foo", and on mac "sh" means bash.
2022-06-01 23:58:15 +0200jakalx(~jakalx@base.jakalx.net) (Error from remote client)
2022-06-01 23:58:42 +0200 <geekosaur[m]> Zsh in recent versions
2022-06-01 23:59:00 +0200jakalx(~jakalx@base.jakalx.net)
2022-06-01 23:59:04 +0200 <monochrom> There is also a fringe theory that mac accepts exec("prog", "arg", NULL) whereas real unixes insist on exec("prog", "prog again", "arg", NULL).
2022-06-01 23:59:25 +0200 <monochrom> s/exec/execlp/ or something