Home liberachat/#haskell: Logs Calendar

Logs on 2022-09-13 (liberachat/#haskell)

00:00:28 <hpc> this is probably why ghci has so many traditional debugging features, too
00:00:35 <monochrom> But a REPL doesn't let you hotplug code like that. GHC, OCaml, and Racket don't. Only Clojure does.
00:01:07 <hpc> monochrom: not in a way that mutates existing expressions
00:01:27 <hpc> but i can certainly type "foo = first definition; test foo; foo = second definition; test foo"
00:01:41 × califax quits (~califax@user/califx) (Remote host closed the connection)
00:02:47 × moet quits (~moet@mobile-166-170-42-249.mycingular.net) (Ping timeout: 252 seconds)
00:03:06 <hpc> and if all my function definitions were IORefs the way they are in typical languages, i would be able to hotplug code exactly like that
00:03:31 <hpc> it's monkeypatching as a language feature that does it, not as a debugging feature
00:04:18 <monochrom> That's an interesting idea right there.
00:04:50 <jackdk> hot code loading + strong typing seems really hard, but Unison managed it somehow
00:05:48 × [itchyjunk] quits (~itchyjunk@user/itchyjunk/x-7353470) (Ping timeout: 264 seconds)
00:06:06 califax joins (~califax@user/califx)
00:08:17 <hpc> monochrom: yeah, it took me a while to figure it out too, from wondering why i could never figure out the value of actually using a debugger
00:08:56 <sshine> oh... eh... what... my tests don't fail.
00:09:20 <hpc> i kept seeing people say "just spend some time learning how to use the tools", but never saw anyone say what they did that i couldn't do with just editing my code a bit
00:09:22 [itchyjunk] joins (~itchyjunk@user/itchyjunk/x-7353470)
00:09:39 <hpc> so i gave it the old feynman process step 2, and this is what i came up with :D
00:10:28 × mikoto-chan quits (~mikoto-ch@164.5.249.78) (Ping timeout: 268 seconds)
00:11:50 zebrag joins (~chris@user/zebrag)
00:12:10 <sm> sshine: I'm a big fan of building in observability like [Leary] said, but there's also this tool that's in between logging and an interactive debugger: https://hackage.haskell.org/package/breakpoint
00:12:28 <hpc> bah, apparently there's another feynman process with different steps - mine is "step 1, write down the problem, step 2, think really hard, step 3, write down the solution"
00:12:44 <monochrom> That's the one I know.
00:13:24 × frost quits (~frost@user/frost) (Quit: Client closed)
00:13:29 <monochrom> My exams can be solved by "1. read the question carefully, 2. think really hard, 3. write down one line of code" :)
00:14:15 <hpc> i like those sorts of exams
00:14:27 <hpc> way back when, one of my professors did exams a lot like that
00:14:43 <hpc> if you had really mastered the material, you finished the final in 5 minutes with a perfect score
00:15:14 <hpc> if you had enough of a foundation to figure it out as you went, you finished pretty close to the time limit with a perfect score
00:15:24 <hpc> and so on and so on
00:17:28 matthewmosior joins (~matthewmo@173.170.253.91)
00:19:34 × Tuplanolla quits (~Tuplanoll@91-159-69-34.elisa-laajakaista.fi) (Quit: Leaving.)
00:20:56 nate1 joins (~nate@98.45.169.16)
00:21:35 × ec quits (~ec@gateway/tor-sasl/ec) (Remote host closed the connection)
00:21:56 × matthewmosior quits (~matthewmo@173.170.253.91) (Ping timeout: 260 seconds)
00:22:14 × bontaq quits (~user@ool-45779fe5.dyn.optonline.net) (Ping timeout: 265 seconds)
00:22:21 ec joins (~ec@gateway/tor-sasl/ec)
00:23:12 × cpli quits (~cpli@77.47.62.180) (Ping timeout: 265 seconds)
00:23:23 <sshine> hm. my test suite is OK with >> L.translate [STOP] `shouldBe` Right [STOP] << and >> L.translate [ADD] `shouldNotBe` Right [SUB] <<, but if I make a false test, like >> L.translate [ADD] `shouldBe` Right [SUB] <<, it'll recurse forever.
00:23:34 <sshine> that seems less good of my test.
00:24:46 cpli joins (~cpli@77.47.62.180)
00:26:12 × nate1 quits (~nate@98.45.169.16) (Ping timeout: 264 seconds)
00:28:57 sshine goes back in history to see when this didn't crash and burn.
00:34:25 nate1 joins (~nate@98.45.169.16)
00:39:56 <dragestil> how do you decode multiple json objects from a string with aeson? i'm getting Nothing from decode "{\"title\": \"hello\"}{\"title\": \"bye\"}" :: Maybe Value or decode "{\"title\": \"hello\"}{\"title\": \"bye\"}" :: Maybe [Value]
00:40:04 × werneta quits (~werneta@137.79.215.202) (Ping timeout: 268 seconds)
00:44:09 <c_wraith> dragestil: you're going to have to work with the Parser directly
00:44:26 × ec quits (~ec@gateway/tor-sasl/ec) (Quit: ec)
00:44:37 <c_wraith> dragestil: https://hackage.haskell.org/package/attoparsec-0.14.4/docs/Data-Attoparsec-ByteString.html#t:Parser
00:44:47 <dragestil> c_wraith: ok thanks
00:44:56 ec joins (~ec@gateway/tor-sasl/ec)
00:45:04 <jackdk> The parsers live in `Data.Aeson.Parser`
00:45:42 <c_wraith> well. there's also https://hackage.haskell.org/package/aeson-2.1.0.0/docs/Data-Aeson.html#v:json
00:46:36 <c_wraith> But yeah, you're going to have to use attoparsec with one of those parsers, run it until you get a Done, then keep going with the remaining input
00:47:54 <jackdk> I didn't realise that it was exported from there too. Thanks c_wraith
00:50:12 × cpli quits (~cpli@77.47.62.180) (Quit: WeeChat 3.6)
00:50:44 cpli joins (~cpli@77.47.62.180)
00:52:27 × cpli quits (~cpli@77.47.62.180) (Client Quit)
00:52:53 cpli joins (~cpli@77.47.62.180)
00:53:19 × lottaquestions quits (~nick@2607:fa49:503e:7100:c24f:b04e:32d4:e421) (Ping timeout: 244 seconds)
00:54:01 matthewmosior joins (~matthewmo@173.170.253.91)
00:58:22 frost joins (~frost@user/frost)
00:58:41 × matthewmosior quits (~matthewmo@173.170.253.91) (Ping timeout: 260 seconds)
01:08:10 × gurkenglas quits (~gurkengla@p548ac72e.dip0.t-ipconnect.de) (Ping timeout: 265 seconds)
01:08:10 × avoniap quits (~gurkengla@p548ac72e.dip0.t-ipconnect.de) (Ping timeout: 265 seconds)
01:11:13 × albet70 quits (~xxx@2400:8902::f03c:92ff:fe60:98d8) (Remote host closed the connection)
01:13:15 <sshine> haha
01:13:53 <sshine> now I understand why positive and negative tests don't fail, but an intentionally failing test loops infinitely: the error is in the pretty-printer.
01:14:21 <sshine> the correct tests will just say "OK", and the failing test will try to print the bad example :-D
01:15:24 × xff0x quits (~xff0x@2405:6580:b080:900:ea2b:58b2:8c6:e38) (Ping timeout: 264 seconds)
01:17:12 × waleee quits (~waleee@2001:9b0:213:7200:cc36:a556:b1e8:b340) (Ping timeout: 264 seconds)
01:17:12 × michalz quits (~michalz@185.246.204.89) (Ping timeout: 264 seconds)
01:17:19 albet70 joins (~xxx@2400:8902::f03c:92ff:fe60:98d8)
01:23:46 × ec quits (~ec@gateway/tor-sasl/ec) (Quit: ec)
01:24:17 ec joins (~ec@gateway/tor-sasl/ec)
01:24:17 causal joins (~user@50.35.83.177)
01:27:42 × L29Ah quits (~L29Ah@wikipedia/L29Ah) (Read error: Connection reset by peer)
01:29:21 matthewmosior joins (~matthewmo@173.170.253.91)
01:33:37 × matthewmosior quits (~matthewmo@173.170.253.91) (Ping timeout: 244 seconds)
01:34:18 eggplantade joins (~Eggplanta@108-201-191-115.lightspeed.sntcca.sbcglobal.net)
01:52:55 × ec quits (~ec@gateway/tor-sasl/ec) (Remote host closed the connection)
01:53:17 werneta joins (~werneta@70-142-214-115.lightspeed.irvnca.sbcglobal.net)
01:53:21 ec joins (~ec@gateway/tor-sasl/ec)
01:53:25 kimjetwav joins (~user@2607:fea8:235e:b600:c094:5550:659c:dc9a)
01:56:54 <sshine> well, that was a learning experience. I made a small list of all the quirky things I've done since this regression occurred and wasn't detected that made finding the bug harder.
01:58:45 matthewmosior joins (~matthewmo@173.170.253.91)
01:59:19 × machinedgod quits (~machinedg@d198-53-218-113.abhsia.telus.net) (Quit: Lost terminal)
02:01:50 xff0x joins (~xff0x@125x103x176x34.ap125.ftth.ucom.ne.jp)
02:06:54 × [itchyjunk] quits (~itchyjunk@user/itchyjunk/x-7353470) (Remote host closed the connection)
02:07:36 × matthewmosior quits (~matthewmo@173.170.253.91) (Ping timeout: 265 seconds)
02:08:19 × justsomeguy quits (~justsomeg@user/justsomeguy) (Quit: WeeChat 3.5)
02:09:29 Sylvo joins (~Sylvo@110-174-240-221.static.tpgi.com.au)
02:15:38 × stef204 quits (~stef204@user/stef204) (Quit: WeeChat 3.6)
02:18:20 × zebrag quits (~chris@user/zebrag) (Quit: Konversation terminated!)
02:30:44 lisbeths joins (uid135845@id-135845.lymington.irccloud.com)
02:31:43 fmgornick joins (~fmgornick@2601:445:4480:c90:c075:a50e:8a70:5ad6)
02:32:06 <fmgornick> ?src map
02:32:06 <lambdabot> map _ [] = []
02:32:06 <lambdabot> map f (x:xs) = f x : map f xs
02:32:55 × td_ quits (~td@94.134.91.96) (Ping timeout: 268 seconds)
02:34:16 × frost quits (~frost@user/frost) (Ping timeout: 252 seconds)
02:34:20 td_ joins (~td@muedsl-82-207-238-243.citykom.de)
02:34:56 <fmgornick> ?src concatMap
02:34:56 <lambdabot> concatMap f = foldr ((++) . f) []
02:36:11 <EvanR> ?src concat
02:36:11 <lambdabot> concat = foldr (++) []
02:37:18 <fmgornick> bruh i got no idea how any of this irc stuff works
02:37:43 frost joins (~frost@user/frost)
02:37:57 lottaquestions joins (~nick@2607:fa49:503e:7100:ea0c:ba00:cd12:f6bc)
02:38:27 <EvanR> what, the bot?
02:38:51 <EvanR> no one knows how lambdabot works
02:39:10 <EvanR> other than "just fine thanks"
02:41:14 <fmgornick> haha yeah lambdabot cool but i still don't even know how i managed to get here with the whole irc client stuff
02:43:54 finn_elija joins (~finn_elij@user/finn-elija/x-0085643)
02:43:54 × FinnElija quits (~finn_elij@user/finn-elija/x-0085643) (Killed (NickServ (Forcing logout FinnElija -> finn_elija)))
02:43:54 finn_elija is now known as FinnElija
02:45:57 × cpli quits (~cpli@77.47.62.180) (Quit: WeeChat 3.6)
02:49:04 <sm> sshine: nice
02:52:40 fmgornick parts (~fmgornick@2601:445:4480:c90:c075:a50e:8a70:5ad6) (WeeChat 3.6)
02:54:19 matthewmosior joins (~matthewmo@173.170.253.91)
02:58:52 × matthewmosior quits (~matthewmo@173.170.253.91) (Ping timeout: 244 seconds)
03:00:38 × kimjetwav quits (~user@2607:fea8:235e:b600:c094:5550:659c:dc9a) (Remote host closed the connection)
03:00:42 <jackdk> @botsnack
03:00:42 <lambdabot> :)
03:01:23 × eggplantade quits (~Eggplanta@108-201-191-115.lightspeed.sntcca.sbcglobal.net) (Remote host closed the connection)
03:06:35 matthewmosior joins (~matthewmo@173.170.253.91)
03:08:09 × jero98772 quits (~jero98772@2800:484:1d80:d8ce:efcc:cbb3:7f2a:6dff) (Remote host closed the connection)
03:11:06 × matthewmosior quits (~matthewmo@173.170.253.91) (Ping timeout: 260 seconds)
03:15:38 × azimut quits (~azimut@gateway/tor-sasl/azimut) (Ping timeout: 258 seconds)
03:17:13 × nate1 quits (~nate@98.45.169.16) (Ping timeout: 265 seconds)
03:20:24 jakalx parts (~jakalx@base.jakalx.net) ()
03:20:25 jakalx joins (~jakalx@base.jakalx.net)
03:21:32 × Sylvo quits (~Sylvo@110-174-240-221.static.tpgi.com.au) (Quit: Leaving)
03:22:04 <sshine> sm, my list of bitter hindsights: 1. make every commit on master executable (testable, runnable), 2. when you move a file, don't make small subtle changes in the same commit, 3. don't use overlapping instances, 4. test `show`.
03:22:51 <sshine> sm, they're all things I'd say "why, of course not!" -- but evidently this was not true of me if I go even just a handful of years back.
03:23:58 <sm> I'd find 1 and 2 tough discipline... is that to make bisecting easier ?
03:28:59 Nuzman joins (~Out@node-1w7jr9sr9s632yr8ey9duxx5x.ipv6.telus.net)
03:29:24 cpli joins (~cpli@77.47.62.180)
03:29:24 × Nuzman quits (~Out@node-1w7jr9sr9s632yr8ey9duxx5x.ipv6.telus.net) (Client Quit)
03:34:01 <mjrosenb> how did overlapping instances fit into these hijinks?
03:37:00 × cpli quits (~cpli@77.47.62.180) (Ping timeout: 264 seconds)
03:42:32 nate1 joins (~nate@98.45.169.16)
03:42:37 matthewmosior joins (~matthewmo@173.170.253.91)
03:43:16 <sshine> mjrosenb, I have this type, Opcode' j, for which Opcode' () had its own Show instance. all other Opcode' j instances had a recursive one that depended on the Opcode' () one. through some dark combination of {-# OVERLAP... #-} and FlexibleInstances, this sorta worked until I... orphaned the Opcode' () instance by moving it into the file I'd reserved for all the Opcode' ()-specific stuff. this made it stop
03:43:22 <sshine> working as a base case. instead, the recursively defined, which used 'void :: Functor f => f a -> f ()', started going into infinite recursion because the recursive case depended on the recursive case.
03:43:49 × TheCoffeMaker quits (~TheCoffeM@user/thecoffemaker) (Ping timeout: 244 seconds)
03:43:53 <sshine> mjrosenb, I think... you only go this wrong if you kinda try to do all the bad things. overlapping instances + flexible instances + orphan instances, hahaha.
03:45:37 TheCoffeMaker joins (~TheCoffeM@user/thecoffemaker)
03:45:52 × ec quits (~ec@gateway/tor-sasl/ec) (Remote host closed the connection)
03:46:28 <sshine> mjrosenb, also, this was broken since December 2020, since everything I did on this library was bump versions / dependency bounds. the tests didn't catch it, because they didn't cover 'show'. and nobody used the library. until apparently today when someone opened a ticket.
03:46:55 × matthewmosior quits (~matthewmo@173.170.253.91) (Ping timeout: 244 seconds)
03:47:50 <sshine> sm, yeah, I basically couldn't figure out what the problem was through print debugging (I was sure it had to do with this fixpoint function), so I just started bisecting from the last time I did an actual, logical change to a function and the library worked.
03:48:48 <sm> fun !
03:48:49 <sshine> sm, incidentally, the commit just before the commit that broke this didn't compile properly; so I ended up replicating that commit minus the breakage.
03:49:17 <sshine> sm, had it compiled, I'd have quickly found out it wasn't that commit.
03:49:45 <sshine> sm, if I wanna break something halfway through, I should do it in a branch and merge it once it stops breaking. :-D
03:50:38 <sm> indeed. Mine usually do pass tests, but quite possibly the one time I break the rule it will trip me up
03:52:43 ec joins (~ec@gateway/tor-sasl/ec)
03:52:44 × Vajb quits (~Vajb@2001:999:251:6c46:af67:6433:cfc0:311b) (Read error: Connection reset by peer)
03:52:50 Vajb joins (~Vajb@hag-jnsbng11-58c3ad-40.dhcp.inet.fi)
03:53:05 × nate1 quits (~nate@98.45.169.16) (Ping timeout: 268 seconds)
03:55:01 <sshine> hm. apparently Stackage is still on text-1.2.5.0?
04:00:05 eggplantade joins (~Eggplanta@108-201-191-115.lightspeed.sntcca.sbcglobal.net)
04:01:25 fmgornick joins (~fmgornick@2601:445:4480:c90:c075:a50e:8a70:5ad6)
04:02:03 × fmgornick quits (~fmgornick@2601:445:4480:c90:c075:a50e:8a70:5ad6) (Client Quit)
04:03:12 × Vajb quits (~Vajb@hag-jnsbng11-58c3ad-40.dhcp.inet.fi) (Read error: Connection reset by peer)
04:03:55 Vajb joins (~Vajb@2001:999:251:6c46:af67:6433:cfc0:311b)
04:08:58 kimjetwav joins (~user@2607:fea8:235e:b600:c094:5550:659c:dc9a)
04:16:18 matthewmosior joins (~matthewmo@173.170.253.91)
04:21:00 × matthewmosior quits (~matthewmo@173.170.253.91) (Ping timeout: 265 seconds)
04:21:50 titibandit joins (~titibandi@xdsl-85-197-3-115.nc.de)
04:44:06 takuan joins (~takuan@178-116-218-225.access.telenet.be)
04:48:33 moet joins (~moet@mobile-166-170-42-249.mycingular.net)
04:48:43 × moet quits (~moet@mobile-166-170-42-249.mycingular.net) (Client Quit)
04:48:54 matthewmosior joins (~matthewmo@173.170.253.91)
04:53:03 × matthewmosior quits (~matthewmo@173.170.253.91) (Ping timeout: 244 seconds)
04:57:59 × adanwan quits (~adanwan@gateway/tor-sasl/adanwan) (Ping timeout: 258 seconds)
04:58:41 adanwan joins (~adanwan@gateway/tor-sasl/adanwan)
05:01:18 × jonathanx quits (~jonathan@94.234.98.82) (Read error: Connection reset by peer)
05:02:38 jonathanx joins (~jonathan@h-178-174-176-109.A357.priv.bahnhof.se)
05:08:36 × jmdaemon quits (~jmdaemon@user/jmdaemon) (Quit: ZNC 1.8.2 - https://znc.in)
05:12:01 × OpenSource quits (~kernel@user/OpenSource) (Ping timeout: 268 seconds)
05:15:01 × titibandit quits (~titibandi@xdsl-85-197-3-115.nc.de) (Quit: Leaving.)
05:15:30 michalz joins (~michalz@185.246.204.89)
05:22:02 titibandit joins (~titibandi@xdsl-85-197-3-115.nc.de)
05:25:47 × shriekingnoise quits (~shrieking@186.137.167.202) (Ping timeout: 265 seconds)
05:26:16 × jao quits (~jao@cpc103048-sgyl39-2-0-cust502.18-2.cable.virginm.net) (Ping timeout: 265 seconds)
05:27:26 matthewmosior joins (~matthewmo@173.170.253.91)
05:30:00 ormaaaj is now known as ormaaj
05:32:03 × matthewmosior quits (~matthewmo@173.170.253.91) (Ping timeout: 265 seconds)
05:38:43 × segfaultfizzbuzz quits (~segfaultf@23-93-74-212.fiber.dynamic.sonic.net) (Remote host closed the connection)
05:46:21 × TonyStone quits (~TonyStone@cpe-74-76-51-197.nycap.res.rr.com) (Ping timeout: 252 seconds)
05:55:00 × vglfr quits (~vglfr@145.224.94.199) (Ping timeout: 264 seconds)
05:58:22 TonyStone joins (~TonyStone@2603-7080-8607-c36a-c1e9-cb91-01c1-e3d9.res6.spectrum.com)
06:05:57 tromp joins (~textual@92-110-219-57.cable.dynamic.v4.ziggo.nl)
06:09:36 jakalx parts (~jakalx@base.jakalx.net) ()
06:10:14 matthewmosior joins (~matthewmo@173.170.253.91)
06:12:43 vglfr joins (~vglfr@145.224.94.72)
06:14:12 jakalx joins (~jakalx@base.jakalx.net)
06:14:51 × matthewmosior quits (~matthewmo@173.170.253.91) (Ping timeout: 260 seconds)
06:18:53 × titibandit quits (~titibandi@xdsl-85-197-3-115.nc.de) (Remote host closed the connection)
06:19:01 jonathanx_ joins (~jonathan@h-178-174-176-109.A357.priv.bahnhof.se)
06:21:11 × jonathanx quits (~jonathan@h-178-174-176-109.A357.priv.bahnhof.se) (Ping timeout: 252 seconds)
06:25:21 × bebu quits (uid567927@id-567927.uxbridge.irccloud.com) (Quit: Connection closed for inactivity)
06:27:06 matthewmosior joins (~matthewmo@173.170.253.91)
06:27:07 jonathanx joins (~jonathan@h-178-174-176-109.A357.priv.bahnhof.se)
06:28:57 mbuf joins (~Shakthi@195.69.96.100)
06:30:32 × jonathanx_ quits (~jonathan@h-178-174-176-109.A357.priv.bahnhof.se) (Ping timeout: 265 seconds)
06:30:56 × zaquest quits (~notzaques@5.130.79.72) (Remote host closed the connection)
06:31:30 × matthewmosior quits (~matthewmo@173.170.253.91) (Ping timeout: 265 seconds)
06:32:13 zaquest joins (~notzaques@5.130.79.72)
06:36:49 × jonathanx quits (~jonathan@h-178-174-176-109.A357.priv.bahnhof.se) (Ping timeout: 265 seconds)
06:38:47 irfan joins (~irfan@user/irfan)
06:39:36 × mbuf quits (~Shakthi@195.69.96.100) (Ping timeout: 268 seconds)
06:40:06 mbuf joins (~Shakthi@195.69.96.100)
06:40:33 shriekingnoise joins (~shrieking@186.137.167.202)
06:45:36 OpenSource joins (~kernel@user/OpenSource)
06:47:14 Guest74 joins (~Guest74@199.101.192.163)
06:48:40 × Guest74 quits (~Guest74@199.101.192.163) (Client Quit)
06:52:10 jonathanx joins (~jonathan@h-98-128-168-222.NA.cust.bahnhof.se)
06:55:00 × shriekingnoise quits (~shrieking@186.137.167.202) (Ping timeout: 264 seconds)
06:58:10 lortabac joins (~lortabac@2a01:e0a:541:b8f0:1ca4:6b13:8e69:b48)
07:06:29 acidjnk joins (~acidjnk@p200300d6e7137a30e5db8b0af6c36aac.dip0.t-ipconnect.de)
07:07:14 × califax quits (~califax@user/califx) (Remote host closed the connection)
07:07:41 califax joins (~califax@user/califx)
07:11:19 mikoto-chan joins (~mikoto-ch@164.5.249.78)
07:12:22 shriekingnoise joins (~shrieking@186.137.167.202)
07:18:20 matthewmosior joins (~matthewmo@173.170.253.91)
07:22:53 × matthewmosior quits (~matthewmo@173.170.253.91) (Ping timeout: 244 seconds)
07:23:18 × darkstardev13 quits (~darkstard@50.53.212.60) (Remote host closed the connection)
07:26:09 razetime joins (~quassel@117.254.34.77)
07:27:33 cfricke joins (~cfricke@user/cfricke)
07:29:24 darkstardev13 joins (~darkstard@50.53.212.60)
07:32:11 × kimjetwav quits (~user@2607:fea8:235e:b600:c094:5550:659c:dc9a) (Ping timeout: 244 seconds)
07:32:49 × darkstardev13 quits (~darkstard@50.53.212.60) (Max SendQ exceeded)
07:36:54 darkstardev13 joins (~darkstard@50.53.212.60)
07:37:23 Pickchea joins (~private@user/pickchea)
07:38:22 alternateved joins (~user@staticline-31-183-146-203.toya.net.pl)
07:38:57 toeffel joins (~toeffel@user/toeffel)
07:39:38 × darkstardev13 quits (~darkstard@50.53.212.60) (Max SendQ exceeded)
07:43:05 darkstardev13 joins (~darkstard@50.53.212.60)
07:44:57 × Sgeo quits (~Sgeo@user/sgeo) (Read error: Connection reset by peer)
07:46:32 coot joins (~coot@213.134.176.158)
07:49:50 × jonathanx quits (~jonathan@h-98-128-168-222.NA.cust.bahnhof.se) (Remote host closed the connection)
07:50:03 jonathanx joins (~jonathan@h-98-128-168-222.NA.cust.bahnhof.se)
07:52:37 luffy joins (~chenqisu1@183.217.201.192)
07:53:41 × darkstardev13 quits (~darkstard@50.53.212.60) (Ping timeout: 265 seconds)
07:53:41 × coot quits (~coot@213.134.176.158) (Quit: coot)
07:54:54 × potash quits (~foghorn@user/foghorn) (Excess Flood)
07:55:15 × frost quits (~frost@user/frost) (Quit: Client closed)
07:55:19 matthewmosior joins (~matthewmo@173.170.253.91)
07:55:57 × kritzefitz quits (~kritzefit@debian/kritzefitz) (Ping timeout: 244 seconds)
07:56:04 machinedgod joins (~machinedg@d198-53-218-113.abhsia.telus.net)
07:56:15 × mbuf quits (~Shakthi@195.69.96.100) (Ping timeout: 250 seconds)
07:56:34 potash joins (~foghorn@user/foghorn)
07:57:02 fserucas joins (~fserucas@2001:818:e376:a400:fb92:70c1:dd88:c7d7)
07:57:24 <dminuoso> I recall GHC has an extension to quality an import with a package name (in case of conflicting module names across packages), but I cant figure out what to look for in the manual.
07:57:28 <dminuoso> Does someone have a pointer for me?
07:57:47 <geekosaur> PackageImports
07:57:51 <dminuoso> Ah thanks!
07:59:31 coot joins (~coot@213.134.176.158)
08:00:55 × matthewmosior quits (~matthewmo@173.170.253.91) (Ping timeout: 265 seconds)
08:03:11 × irfan quits (~irfan@user/irfan) (Ping timeout: 250 seconds)
08:05:15 irfan joins (~irfan@171.49.143.66)
08:05:46 × mvk quits (~mvk@2607:fea8:5ce3:8500::875a) (Ping timeout: 244 seconds)
08:09:18 × ft quits (~ft@p3e9bc57b.dip0.t-ipconnect.de) (Quit: Lost terminal)
08:12:31 × razetime quits (~quassel@117.254.34.77) (Ping timeout: 265 seconds)
08:13:35 × shriekingnoise quits (~shrieking@186.137.167.202) (Quit: Quit)
08:19:43 olle joins (~olle@i5E866D87.versanet.de)
08:22:43 × tzh quits (~tzh@c-24-21-73-154.hsd1.wa.comcast.net) (Quit: zzz)
08:22:59 chomwitt joins (~chomwitt@2a02:587:dc05:1e00:3aa3:c983:c1fc:25dc)
08:23:51 darkstardevx joins (~darkstard@50.53.212.60)
08:24:38 × darkstardevx quits (~darkstard@50.53.212.60) (Remote host closed the connection)
08:25:03 darkstardevx joins (~darkstard@50.53.212.60)
08:29:17 × eggplantade quits (~Eggplanta@108-201-191-115.lightspeed.sntcca.sbcglobal.net) (Remote host closed the connection)
08:31:47 razetime joins (~quassel@117.254.34.77)
08:32:40 × tromp quits (~textual@92-110-219-57.cable.dynamic.v4.ziggo.nl) (Quit: My iMac has gone to sleep. ZZZzzz…)
08:36:45 × [Leary] quits (~Leary]@user/Leary/x-0910699) (Ping timeout: 268 seconds)
08:41:22 matthewmosior joins (~matthewmo@173.170.253.91)
08:41:42 × toeffel quits (~toeffel@user/toeffel) (Ping timeout: 268 seconds)
08:42:05 ph88 joins (~ph88@95.90.247.31)
08:42:33 × psydroid quits (~psydroid@user/psydroid) (Quit: Bridge terminating on SIGTERM)
08:42:33 × siraben quits (~siraben@user/siraben) (Quit: Bridge terminating on SIGTERM)
08:42:33 × ormaaj quits (~ormaaj@user/ormaaj) (Quit: Bridge terminating on SIGTERM)
08:42:33 × chreekat quits (~chreekat@2001:470:69fc:105::16b5) (Quit: Bridge terminating on SIGTERM)
08:42:33 × fgaz quits (~fgaz@2001:470:69fc:105::842) (Quit: Bridge terminating on SIGTERM)
08:42:33 × ericson2314 quits (~ericson23@2001:470:69fc:105::70c) (Quit: Bridge terminating on SIGTERM)
08:42:33 × ongy[m] quits (~ongymatri@2001:470:69fc:105::5018) (Quit: Bridge terminating on SIGTERM)
08:42:33 × peddie quits (~peddie@2001:470:69fc:105::25d) (Quit: Bridge terminating on SIGTERM)
08:42:33 × mekeor[m] quits (~mekeormat@2001:470:69fc:105::17e4) (Quit: Bridge terminating on SIGTERM)
08:42:33 × famubu[m] quits (~famubumat@2001:470:69fc:105::1081) (Quit: Bridge terminating on SIGTERM)
08:42:34 × sm quits (~sm@plaintextaccounting/sm) (Quit: Bridge terminating on SIGTERM)
08:42:34 × jmcantrell quits (~jmcantrel@user/jmcantrell) (Quit: Bridge terminating on SIGTERM)
08:42:34 × Matthew|m quits (~arathorn@2001:470:69fc:105::1f) (Quit: Bridge terminating on SIGTERM)
08:42:34 × maralorn quits (~maralorn@2001:470:69fc:105::251) (Quit: Bridge terminating on SIGTERM)
08:42:34 × aviladev[m] quits (~aviladevm@2001:470:69fc:105::1:cbc7) (Quit: Bridge terminating on SIGTERM)
08:42:34 × Tisoxin quits (~ikosit@user/ikosit) (Quit: Bridge terminating on SIGTERM)
08:42:34 × kadoban quits (~kadoban@user/kadoban) (Quit: Bridge terminating on SIGTERM)
08:42:34 × fr33domlover[m] quits (~fr33domlo@2001:470:69fc:105::1:3bb6) (Quit: Bridge terminating on SIGTERM)
08:42:34 × jinsun_ quits (~jinsun@user/jinsun) (Quit: Bridge terminating on SIGTERM)
08:42:34 × jean-paul[m] quits (~jean-paul@2001:470:69fc:105::d1ab) (Quit: Bridge terminating on SIGTERM)
08:42:34 × vladan[m] quits (~vladanmat@2001:470:69fc:105::2:24df) (Quit: Bridge terminating on SIGTERM)
08:42:34 × fendor[m] quits (~fendormat@2001:470:69fc:105::fcbd) (Quit: Bridge terminating on SIGTERM)
08:42:35 × geekosaur[m] quits (~geekosaur@xmonad/geekosaur) (Quit: Bridge terminating on SIGTERM)
08:42:35 × Killy quits (~killy@2001:470:69fc:105::2:6ec1) (Quit: Bridge terminating on SIGTERM)
08:42:35 × VarikValefor[m] quits (~varikvale@2001:470:69fc:105::a5d) (Quit: Bridge terminating on SIGTERM)
08:42:35 × nomagno quits (~nomagno@2001:470:69fc:105::c1f0) (Quit: Bridge terminating on SIGTERM)
08:42:35 × vaibhavsagar[m] quits (~vaibhavsa@2001:470:69fc:105::ffe) (Quit: Bridge terminating on SIGTERM)
08:42:35 × SeanKing[m] quits (~seankingm@2001:470:69fc:105::cf9c) (Quit: Bridge terminating on SIGTERM)
08:42:35 × sektor[m] quits (~sektor@2001:470:69fc:105::2:3f60) (Quit: Bridge terminating on SIGTERM)
08:42:36 × smichel17[m] quits (~smichel17@2001:470:69fc:105::2d32) (Quit: Bridge terminating on SIGTERM)
08:42:36 × alexfmpe[m] quits (~alexfmpem@2001:470:69fc:105::38ba) (Quit: Bridge terminating on SIGTERM)
08:42:36 × maerwald[m] quits (~maerwaldm@2001:470:69fc:105::1ee) (Quit: Bridge terminating on SIGTERM)
08:42:36 × FurudeRika[m] quits (~chitandae@2001:470:69fc:105::1:6039) (Quit: Bridge terminating on SIGTERM)
08:42:36 × Deide quits (~deide@user/deide) (Quit: Bridge terminating on SIGTERM)
08:42:36 × unclechu quits (~unclechu@2001:470:69fc:105::354) (Quit: Bridge terminating on SIGTERM)
08:42:36 × losfair[m] quits (~losfairma@2001:470:69fc:105::2:7ca3) (Quit: Bridge terminating on SIGTERM)
08:42:36 × foghorn quits (~foghorn@user/foghorn) (Quit: Bridge terminating on SIGTERM)
08:42:36 × buster_blue[m] quits (~busterblu@2001:470:69fc:105::1:d7e8) (Quit: Bridge terminating on SIGTERM)
08:42:36 × Christoph[m] quits (~hpotsirhc@2001:470:69fc:105::2ff8) (Quit: Bridge terminating on SIGTERM)
08:42:37 × RowanG[m] quits (~rowang077@2001:470:69fc:105::1:ca9f) (Quit: Bridge terminating on SIGTERM)
08:42:37 × JensPetersen[m] quits (~juhp@2001:470:69fc:105::6e9) (Quit: Bridge terminating on SIGTERM)
08:42:37 × duckie quits (~duckie@user/duckie) (Quit: Bridge terminating on SIGTERM)
08:42:37 × polykernel[m] quits (~polykerne@user/polykernel) (Quit: Bridge terminating on SIGTERM)
08:42:37 × Guillaum[m] quits (~guiboumat@2001:470:69fc:105::1:72ac) (Quit: Bridge terminating on SIGTERM)
08:42:38 × romes[m] quits (~romesmatr@2001:470:69fc:105::2:1660) (Quit: Bridge terminating on SIGTERM)
08:42:38 × ManofLetters[m] quits (~manoflett@2001:470:69fc:105::3be) (Quit: Bridge terminating on SIGTERM)
08:42:38 × kadenwolff[m] quits (~kadenwolf@2001:470:69fc:105::1:d97f) (Quit: Bridge terminating on SIGTERM)
08:42:38 × elvishjerricco quits (~elvishjer@2001:470:69fc:105::6172) (Quit: Bridge terminating on SIGTERM)
08:42:38 × jneira[m] quits (~jneiramat@2001:470:69fc:105::d729) (Quit: Bridge terminating on SIGTERM)
08:42:38 × Artem[m] quits (~artemtype@2001:470:69fc:105::75b) (Quit: Bridge terminating on SIGTERM)
08:42:39 × Orbstheorem quits (~orbstheor@2001:470:69fc:105::a56) (Quit: Bridge terminating on SIGTERM)
08:42:39 × july541[m] quits (~july541ma@2001:470:69fc:105::1:e416) (Quit: Bridge terminating on SIGTERM)
08:42:39 × Bulby[m] quits (~bulbyvrma@2001:470:69fc:105::1:fe0a) (Quit: Bridge terminating on SIGTERM)
08:42:39 × baaash[m] quits (~baaashmat@2001:470:69fc:105::2:1e90) (Quit: Bridge terminating on SIGTERM)
08:42:39 × jz99[m] quits (~jz99matri@2001:470:69fc:105::1:d5f1) (Quit: Bridge terminating on SIGTERM)
08:42:39 × cdsmith quits (~cdsmithma@2001:470:69fc:105::284) (Quit: Bridge terminating on SIGTERM)
08:42:40 × zfnmxt quits (~zfnmxt@2001:470:69fc:105::2b32) (Quit: Bridge terminating on SIGTERM)
08:42:43 × cafkafk[m] quits (~cafkafkma@2001:470:69fc:105::1:cea8) (Quit: Bridge terminating on SIGTERM)
08:42:43 × sibnull[m] quits (~sibnullma@2001:470:69fc:105::1:1291) (Quit: Bridge terminating on SIGTERM)
08:42:43 × crazazy[m] quits (~crazazyma@2001:470:69fc:105::2:6bd9) (Quit: Bridge terminating on SIGTERM)
08:42:43 × ajf___[m] quits (~ajfmatrix@2001:470:69fc:105::2:5be3) (Quit: Bridge terminating on SIGTERM)
08:42:43 × phuegrvs[m] quits (~phuegrvsm@2001:470:69fc:105::1:65e4) (Quit: Bridge terminating on SIGTERM)
08:42:43 × Clinton[m] quits (~clintonme@2001:470:69fc:105::2:31d4) (Quit: Bridge terminating on SIGTERM)
08:42:43 × ilichu[m] quits (~ilichumat@2001:470:69fc:105::2:6afb) (Quit: Bridge terminating on SIGTERM)
08:42:43 × steve[m]12 quits (~stevetrou@2001:470:69fc:105::e0b) (Quit: Bridge terminating on SIGTERM)
08:42:43 × adziahel[m] quits (~adziahelm@2001:470:69fc:105::b4d) (Quit: Bridge terminating on SIGTERM)
08:42:43 × aaron[m] quits (~aaronvarg@2001:470:69fc:105::db5e) (Quit: Bridge terminating on SIGTERM)
08:42:43 × komikat[m] quits (~komikatma@2001:470:69fc:105::1:c71e) (Quit: Bridge terminating on SIGTERM)
08:42:43 × TravisAthougies[ quits (~tathougie@2001:470:69fc:105::2:6fbd) (Quit: Bridge terminating on SIGTERM)
08:42:43 × the-coot[m] quits (~the-cootm@2001:470:69fc:105::95f) (Quit: Bridge terminating on SIGTERM)
08:42:43 × schuelermine[m] quits (~schuelerm@user/schuelermine) (Quit: Bridge terminating on SIGTERM)
08:42:43 × pareto-optimal-d quits (~pareto-op@2001:470:69fc:105::1:b61f) (Quit: Bridge terminating on SIGTERM)
08:42:43 × sjanssen quits (~sjanssenm@2001:470:69fc:105::1:61d8) (Quit: Bridge terminating on SIGTERM)
08:42:43 × weeezes[m] quits (~weeezesma@2001:470:69fc:105::1:da65) (Quit: Bridge terminating on SIGTERM)
08:45:03 × finsternis quits (~X@23.226.237.192) (Ping timeout: 244 seconds)
08:45:56 × matthewmosior quits (~matthewmo@173.170.253.91) (Ping timeout: 260 seconds)
08:46:25 fgaz joins (~fgaz@2001:470:69fc:105::842)
08:47:36 finsternis joins (~X@23.226.237.192)
08:50:27 mbuf joins (~Shakthi@195.69.96.100)
08:51:27 ubert joins (~Thunderbi@178.115.63.2.wireless.dyn.drei.com)
08:52:28 kuribas joins (~user@ptr-17d51emvh3k186bo862.18120a2.ip6.access.telenet.be)
08:52:56 × kjak quits (~kjak@pool-108-31-68-111.washdc.fios.verizon.net) (Ping timeout: 260 seconds)
08:54:26 kjak joins (~kjak@pool-108-31-114-135.washdc.fios.verizon.net)
08:57:26 peddie joins (~peddie@2001:470:69fc:105::25d)
08:57:26 ericson2314 joins (~ericson23@2001:470:69fc:105::70c)
08:57:26 maralorn joins (~maralorn@2001:470:69fc:105::251)
08:57:26 buster_blue[m] joins (~busterblu@2001:470:69fc:105::1:d7e8)
08:57:26 sm joins (~sm@plaintextaccounting/sm)
08:57:26 famubu[m] joins (~famubumat@2001:470:69fc:105::1081)
08:57:26 zfnmxt joins (~zfnmxt@2001:470:69fc:105::2b32)
08:57:26 psydroid joins (~psydroid@user/psydroid)
08:57:26 Christoph[m] joins (~hpotsirhc@2001:470:69fc:105::2ff8)
08:57:26 siraben joins (~siraben@user/siraben)
08:57:26 ongy[m] joins (~ongymatri@2001:470:69fc:105::5018)
08:57:26 july541[m] joins (~july541ma@2001:470:69fc:105::1:e416)
08:57:26 smichel17[m] joins (~smichel17@2001:470:69fc:105::2d32)
08:57:26 ManofLetters[m] joins (~manoflett@2001:470:69fc:105::3be)
08:57:26 fendor[m] joins (~fendormat@2001:470:69fc:105::fcbd)
08:57:26 maerwald[m] joins (~maerwaldm@2001:470:69fc:105::1ee)
08:57:26 jmcantrell joins (~jmcantrel@user/jmcantrell)
08:57:27 jinsun_ joins (~jinsun@user/jinsun)
08:57:27 romes[m] joins (~romesmatr@2001:470:69fc:105::2:1660)
08:57:27 JensPetersen[m] joins (~juhp@2001:470:69fc:105::6e9)
08:57:27 chreekat joins (~chreekat@2001:470:69fc:105::16b5)
08:57:27 ormaaj joins (~ormaaj@user/ormaaj)
08:57:27 Guillaum[m] joins (~guiboumat@2001:470:69fc:105::1:72ac)
08:57:27 jneira[m] joins (~jneiramat@2001:470:69fc:105::d729)
08:57:27 Deide joins (~deide@user/deide)
08:57:27 cafkafk[m] joins (~cafkafkma@2001:470:69fc:105::1:cea8)
08:57:27 alexfmpe[m] joins (~alexfmpem@2001:470:69fc:105::38ba)
08:57:27 Matthew|m joins (~arathorn@2001:470:69fc:105::1f)
08:57:27 RowanG[m] joins (~rowang077@2001:470:69fc:105::1:ca9f)
08:57:27 Orbstheorem joins (~orbstheor@2001:470:69fc:105::a56)
08:57:27 Tisoxin joins (~ikosit@user/ikosit)
08:57:27 Bulby[m] joins (~bulbyvrma@2001:470:69fc:105::1:fe0a)
08:57:28 Artem[m] joins (~artemtype@2001:470:69fc:105::75b)
08:57:29 foghorn joins (~foghorn@user/foghorn)
08:57:29 crazazy[m] joins (~crazazyma@2001:470:69fc:105::2:6bd9)
08:57:29 vaibhavsagar[m] joins (~vaibhavsa@2001:470:69fc:105::ffe)
08:57:29 sektor[m] joins (~sektor@2001:470:69fc:105::2:3f60)
08:57:29 mekeor[m] joins (~mekeormat@2001:470:69fc:105::17e4)
08:57:29 baaash[m] joins (~baaashmat@2001:470:69fc:105::2:1e90)
08:57:29 elvishjerricco joins (~elvishjer@2001:470:69fc:105::6172)
08:57:29 polykernel[m] joins (~polykerne@user/polykernel)
08:57:29 jz99[m] joins (~jz99matri@2001:470:69fc:105::1:d5f1)
08:57:29 geekosaur[m] joins (~geekosaur@xmonad/geekosaur)
08:57:29 unclechu joins (~unclechu@2001:470:69fc:105::354)
08:57:29 duckie joins (~duckie@user/duckie)
08:57:29 VarikValefor[m] joins (~varikvale@2001:470:69fc:105::a5d)
08:57:29 nomagno joins (~nomagno@2001:470:69fc:105::c1f0)
08:57:30 vladan[m] joins (~vladanmat@2001:470:69fc:105::2:24df)
08:57:31 jean-paul[m] joins (~jean-paul@2001:470:69fc:105::d1ab)
08:57:31 kadenwolff[m] joins (~kadenwolf@2001:470:69fc:105::1:d97f)
08:57:31 fr33domlover[m] joins (~fr33domlo@2001:470:69fc:105::1:3bb6)
08:57:31 kadoban joins (~kadoban@user/kadoban)
08:57:31 FurudeRika[m] joins (~chitandae@2001:470:69fc:105::1:6039)
08:57:31 aviladev[m] joins (~aviladevm@2001:470:69fc:105::1:cbc7)
08:57:31 cdsmith joins (~cdsmithma@2001:470:69fc:105::284)
08:57:31 Killy joins (~killy@2001:470:69fc:105::2:6ec1)
08:57:32 SeanKing[m] joins (~seankingm@2001:470:69fc:105::cf9c)
08:57:39 losfair[m] joins (~losfairma@2001:470:69fc:105::2:7ca3)
08:57:39 phuegrvs[m] joins (~phuegrvsm@2001:470:69fc:105::1:65e4)
08:57:39 ajf___[m] joins (~ajfmatrix@2001:470:69fc:105::2:5be3)
08:57:41 ilichu[m] joins (~ilichumat@2001:470:69fc:105::2:6afb)
08:57:41 sibnull[m] joins (~sibnullma@2001:470:69fc:105::1:1291)
08:57:44 the-coot[m] joins (~the-cootm@2001:470:69fc:105::95f)
08:57:44 adziahel[m] joins (~adziahelm@2001:470:69fc:105::b4d)
08:57:44 Clinton[m] joins (~clintonme@2001:470:69fc:105::2:31d4)
08:57:45 pareto-optimal-d joins (~pareto-op@2001:470:69fc:105::1:b61f)
08:57:46 steve[m]12 joins (~stevetrou@2001:470:69fc:105::e0b)
08:57:46 TravisAthougies[ joins (~tathougie@2001:470:69fc:105::2:6fbd)
08:57:52 komikat[m] joins (~komikatma@2001:470:69fc:105::1:c71e)
08:57:53 sjanssen joins (~sjanssenm@2001:470:69fc:105::1:61d8)
08:57:53 weeezes[m] joins (~weeezesma@2001:470:69fc:105::1:da65)
08:57:56 aaron[m] joins (~aaronvarg@2001:470:69fc:105::db5e)
08:57:56 schuelermine[m] joins (~schuelerm@user/schuelermine)
08:59:15 __monty__ joins (~toonn@user/toonn)
09:03:03 odnes joins (~odnes@5-203-152-64.pat.nym.cosmote.net)
09:03:40 <irfan> if there is an ambigous phantom type variable, like `data T a = T Int deriving Show`, is it correct to say that it would always be defaulted to `GHC.Type.Any` during compilation, in a context like, `print (T 1)`?
09:04:00 <dminuoso> irfan: No
09:05:01 <dminuoso> Oh hold on, I think I may have misread what you meant by GHC.Type.Any
09:07:18 <dminuoso> irfan: Yes.
09:07:24 <dminuoso> You can observe this with -ddump-simpl
09:07:36 <dminuoso> main :: IO () [GblId] main = print @(T GHC.Types.Any) (Main.$fShowT @GHC.Types.Any) (Main.T @GHC.Types.Any (GHC.Types.I# 1#))
09:09:48 tromp joins (~textual@92-110-219-57.cable.dynamic.v4.ziggo.nl)
09:10:36 <irfan> dminuoso: thanks a lot for answering.
09:10:57 × irfan quits (~irfan@171.49.143.66) (Quit: leaving)
09:14:29 × coot quits (~coot@213.134.176.158) (Remote host closed the connection)
09:16:19 matthewmosior joins (~matthewmo@173.170.253.91)
09:17:23 × lisbeths quits (uid135845@id-135845.lymington.irccloud.com) (Quit: Connection closed for inactivity)
09:20:41 × matthewmosior quits (~matthewmo@173.170.253.91) (Ping timeout: 244 seconds)
09:23:00 frost joins (~frost@user/frost)
09:23:12 × mbuf quits (~Shakthi@195.69.96.100) (Ping timeout: 264 seconds)
09:27:08 × acidjnk quits (~acidjnk@p200300d6e7137a30e5db8b0af6c36aac.dip0.t-ipconnect.de) (Remote host closed the connection)
09:27:26 acidjnk joins (~acidjnk@p200300d6e7137a30e5db8b0af6c36aac.dip0.t-ipconnect.de)
09:29:49 eggplantade joins (~Eggplanta@108-201-191-115.lightspeed.sntcca.sbcglobal.net)
09:30:04 waleee joins (~waleee@2001:9b0:213:7200:cc36:a556:b1e8:b340)
09:30:09 toeffel joins (~toeffel@user/toeffel)
09:33:19 × cyphase quits (~cyphase@user/cyphase) (Ping timeout: 252 seconds)
09:34:03 coot joins (~coot@2a02:a310:e241:1b00:ec1a:e9df:79ac:66ba)
09:34:43 × eggplantade quits (~Eggplanta@108-201-191-115.lightspeed.sntcca.sbcglobal.net) (Ping timeout: 268 seconds)
09:38:00 × coot quits (~coot@2a02:a310:e241:1b00:ec1a:e9df:79ac:66ba) (Client Quit)
09:38:13 coot joins (~coot@2a02:a310:e241:1b00:ec1a:e9df:79ac:66ba)
09:38:27 × coot quits (~coot@2a02:a310:e241:1b00:ec1a:e9df:79ac:66ba) (Remote host closed the connection)
09:38:38 coot joins (~coot@2a02:a310:e241:1b00:ec1a:e9df:79ac:66ba)
09:39:59 [Leary] joins (~Leary]@user/Leary/x-0910699)
09:41:02 wonko joins (~wjc@2a01:e0a:4f9:6500:7c3e:1edd:d64c:344f)
09:41:35 cacke joins (~cacke@mainpc.lha.sgsnet.se)
09:42:09 mbuf joins (~Shakthi@195.69.96.100)
09:42:32 mbuf parts (~Shakthi@195.69.96.100) ()
09:49:20 × econo quits (uid147250@user/econo) (Quit: Connection closed for inactivity)
09:49:23 × euandreh quits (~euandreh@179.214.113.107) (Ping timeout: 248 seconds)
09:49:37 matthewmosior joins (~matthewmo@173.170.253.91)
09:49:41 kritzefitz joins (~kritzefit@debian/kritzefitz)
09:51:53 × cacke quits (~cacke@mainpc.lha.sgsnet.se) (Quit: Ping timeout (120 seconds))
09:52:42 <kuribas> isn't type defaulting only done in ghci?
09:53:14 × coot quits (~coot@2a02:a310:e241:1b00:ec1a:e9df:79ac:66ba) (Quit: coot)
09:53:14 <kuribas> So a phantom type needs to be instantiated in ghc.
09:53:27 coot joins (~coot@2a02:a310:e241:1b00:ec1a:e9df:79ac:66ba)
09:53:40 <geekosaur> there's ExtendedDefaultRules, but there is also GHC.Types.Any
09:54:30 × matthewmosior quits (~matthewmo@173.170.253.91) (Ping timeout: 265 seconds)
09:55:15 <geekosaur> I think ghc knows how to use the latter when the result can't affect type resolution
09:55:52 olle parts (~olle@i5E866D87.versanet.de) ()
09:57:55 <kuribas> > length []
09:57:57 <lambdabot> 0
10:12:21 gurkenglas joins (~gurkengla@p548ac72e.dip0.t-ipconnect.de)
10:12:22 avoniap joins (~gurkengla@p548ac72e.dip0.t-ipconnect.de)
10:20:22 × cfricke quits (~cfricke@user/cfricke) (Ping timeout: 268 seconds)
10:21:39 × coot quits (~coot@2a02:a310:e241:1b00:ec1a:e9df:79ac:66ba) (Quit: coot)
10:21:55 coot joins (~coot@213.134.176.158)
10:22:38 × Pickchea quits (~private@user/pickchea) (Quit: Leaving)
10:25:18 × xff0x quits (~xff0x@125x103x176x34.ap125.ftth.ucom.ne.jp) (Ping timeout: 268 seconds)
10:25:55 matthewmosior joins (~matthewmo@173.170.253.91)
10:26:37 × acidjnk quits (~acidjnk@p200300d6e7137a30e5db8b0af6c36aac.dip0.t-ipconnect.de) (Ping timeout: 250 seconds)
10:27:05 <int-e> > length (1,2)
10:27:07 <lambdabot> 1
10:30:21 × matthewmosior quits (~matthewmo@173.170.253.91) (Ping timeout: 260 seconds)
10:34:46 cfricke joins (~cfricke@user/cfricke)
10:37:03 × ph88 quits (~ph88@95.90.247.31) (Ping timeout: 265 seconds)
10:40:08 <kuribas> what's so nice about haskell is that it is predictable and easy to reason about.
10:41:17 dminuoso stares at this haskell code and is trying really hard to reason about how and why the GHC is able to twist it to the point of being nearly as fast as handwritten primops code
10:41:56 akegalj joins (~akegalj@cpe-94-253-204-81.zg2.cable.xnet.hr)
10:41:58 <kuribas> dminuoso: which code?
10:42:02 <kuribas> it's magick :)
10:42:11 <dminuoso> Pretty sure its not using imagemagick
10:43:07 euandreh joins (~euandreh@179.214.113.107)
10:43:19 <kuribas> dminuoso: you could look at the core and stg and each separate optimization step.
10:43:37 <kuribas> it's only some 30 or so :)
10:44:10 <dminuoso> That are heavily intertwined and run many times.
10:44:14 <dminuoso> :)
10:45:01 <dminuoso> The GHC simplifier is the result of an organically executed genetic algorithm.
10:45:37 <int-e> But GHC doesn't make the {-# RULES #-}
10:46:34 <kuribas> I wonder how a compiler compares to a symbolic algebra system, since both are rewrite systems...
10:55:35 ph88 joins (~ph88@2a02:8109:9e00:71d0:3578:dbbf:f7b2:91f0)
10:56:45 × ph88 quits (~ph88@2a02:8109:9e00:71d0:3578:dbbf:f7b2:91f0) (Remote host closed the connection)
10:57:10 ph88 joins (~ph88@2a02:8109:9e00:71d0:3578:dbbf:f7b2:91f0)
10:59:13 matthewmosior joins (~matthewmo@173.170.253.91)
10:59:16 × euandreh quits (~euandreh@179.214.113.107) (Ping timeout: 265 seconds)
10:59:45 tubogram44 joins (~tubogram@user/tubogram)
10:59:49 euandreh joins (~euandreh@179.214.113.107)
11:03:30 × matthewmosior quits (~matthewmo@173.170.253.91) (Ping timeout: 244 seconds)
11:04:26 × tromp quits (~textual@92-110-219-57.cable.dynamic.v4.ziggo.nl) (Quit: My iMac has gone to sleep. ZZZzzz…)
11:04:45 × euandreh quits (~euandreh@179.214.113.107) (Ping timeout: 250 seconds)
11:06:21 mbuf joins (~Shakthi@195.69.96.100)
11:07:00 × michalz quits (~michalz@185.246.204.89) (Ping timeout: 264 seconds)
11:09:46 <qrpnxz> I've been investigating methods of selecting effect instances in a monad stack, and it occur to me that if instead of parameterizing on the monad, we parameterize on the transformer, then it becomes simple, because then you simply `lift` to the transformer you care about.
11:09:59 L29Ah joins (~L29Ah@wikipedia/L29Ah)
11:10:02 × Katarushisu quits (~Katarushi@cpc147790-finc20-2-0-cust502.4-2.cable.virginm.net) (Quit: The Lounge - https://thelounge.chat)
11:10:34 Katarushisu joins (~Katarushi@cpc147790-finc20-2-0-cust502.4-2.cable.virginm.net)
11:11:00 bontaq joins (~user@ool-45779fe5.dyn.optonline.net)
11:11:03 <maralorn> Will there be an online stream for the https://www.haskell.org/haskell-symposium/2022/index.html ?
11:12:02 xff0x joins (~xff0x@ai071162.d.east.v6connect.net)
11:14:38 chele joins (~chele@user/chele)
11:17:37 euandreh joins (~euandreh@179.214.113.107)
11:20:53 <dminuoso> qrpnxz: What do you mean by "parametrize on the transformer"?
11:24:21 <qrpnxz> dminuoso: I'm playing around with something like this: class (MonadTrans t, Monad m, Monad (t m)) => StringWriter t m where write :: String -> t m ()
11:24:56 <qrpnxz> so a func that uses this would look like `StringWriter t m => a -> b -> t m c`
11:25:48 <qrpnxz> if you used more than one you'd have like `(StringWriter w1 _, StringWriter w2 _) => a -> b -> w1 (w2 m) c`
11:25:52 <dminuoso> Why do you need the MonadTrans here anyway?
11:26:00 <dminuoso> It seems.. useless?
11:26:02 × frost quits (~frost@user/frost) (Quit: Client closed)
11:26:20 × euandreh quits (~euandreh@179.214.113.107) (Ping timeout: 265 seconds)
11:26:21 <qrpnxz> do you consider the Monad constraint in MonadIO useless?
11:26:37 <qrpnxz> sure, you can do without
11:28:07 <dminuoso> qrpnxz: In case of MonadIO it is because there's additional laws that need to be satisfied.
11:28:19 <dminuoso> Which by themselves already impose a monad constraint.
11:29:01 × wonko quits (~wjc@2a01:e0a:4f9:6500:7c3e:1edd:d64c:344f) (Ping timeout: 250 seconds)
11:29:12 × mbuf quits (~Shakthi@195.69.96.100) (Ping timeout: 264 seconds)
11:29:21 <dminuoso> But Im not sure how StringWriter could potentially benefit from it. In fact, it makes it *less* useful because you can only use it on transformers - but I doubt this relationship is necessary at all for StringWriter to work.
11:29:22 <qrpnxz> well i'd imagine you'd have some laws here too idk. The point is that you pick the instance by just lifting
11:29:57 <dminuoso> Sure, but you dont need MonadTrans as a superclass here.
11:29:58 mbuf joins (~Shakthi@195.69.96.100)
11:30:15 <dminuoso> Being able to lift is orthogonal to "writing a string", no?
11:30:37 <dminuoso> Consider, if you have a handcrafted monad `newtype MyMonad a = ...`, you couldnt possibly make it an instance of StringWriter
11:30:42 × darkstardevx quits (~darkstard@50.53.212.60) (Read error: Connection reset by peer)
11:30:49 × ec quits (~ec@gateway/tor-sasl/ec) (Remote host closed the connection)
11:30:50 <qrpnxz> i have conceded you can do without. I can just add the constraint at use site
11:31:13 <dminuoso> Which seems silly, since if you have some `T M` that would be valid, a `newtype Q a = Q (T M a)` suddenly would not be valid anymore
11:31:17 <qrpnxz> well that could work too, you just make the transformer IdentityT
11:31:28 <dminuoso> Winning you.. nothing.
11:31:29 <qrpnxz> but then you don't have flexibility on the m
11:31:38 <dminuoso> Except inconveniening yourself
11:31:50 ec joins (~ec@gateway/tor-sasl/ec)
11:32:22 <qrpnxz> the way i'm testing using it is all extra functionality goes on the `t`, but i have that `m` as a parameter too so that you can delegate to the base monad for MonadIO for example
11:32:45 euandreh joins (~euandreh@179.214.113.107)
11:33:05 <qrpnxz> so i have for example `instance MonadIO m => Writer MyWriter m where ...`
11:33:28 lyle joins (~lyle@104.246.145.85)
11:33:33 <qrpnxz> where MyWriter is `ReaderT (IORef String) m`
11:33:49 × mbuf quits (~Shakthi@195.69.96.100) (Read error: Connection reset by peer)
11:34:03 <qrpnxz> but you can do MutVar and PrimMonad, or StateT and any monad
11:35:31 <qrpnxz> the other thing i'm playing with is using a proxy value and passing that to the methods. Works better because you just pass the proxy for the one you want, nothing like (lift . lift . lift . lift) could every happen, but it requires creating pass-through instances
11:35:54 <qrpnxz> whereas this uses more general lifting capabilities
11:36:26 × zachel quits (~zachel@user/zachel) (Quit: DIsconnected: v7+nano)
11:36:36 <dminuoso> That's nothing new. You obtain that by just having mtl-style typeclasses
11:36:42 <dminuoso> See MonadState
11:36:48 <dminuoso> The lifting happens automatically via instances
11:36:56 <dminuoso> Except there's on obscure MonadTrans demand
11:37:16 <qrpnxz> MonadState does not have a type tag to pick instance, this is something different, but does work similar to those normal mtl classes
11:37:23 zachel joins (~zachel@user/zachel)
11:37:38 <dminuoso> I dont understand what you mean by "tag to pick instance"
11:37:41 <qrpnxz> this second method doesn't do the parameterized monadtrans
11:37:44 <qrpnxz> one sec
11:37:44 matthewmosior joins (~matthewmo@173.170.253.91)
11:38:32 <qrpnxz> it looks like this `class Writer t m where write :: p s -> String -> m ()` and your run function would look like `runWriter :: (forall s. Proxy s -> MyWriter s a) -> m a`
11:38:56 <lortabac> there was a library that did something similar, that is mtl + phantom type to select the instance
11:39:27 <qrpnxz> `p s` should read `p t`, sorry
11:40:27 <lortabac> I can't find it anymore, it was called something like 'ether'
11:40:29 × coot quits (~coot@213.134.176.158) (Quit: coot)
11:41:32 mbuf joins (~Shakthi@195.69.96.100)
11:42:06 × matthewmosior quits (~matthewmo@173.170.253.91) (Ping timeout: 260 seconds)
11:42:18 frost joins (~frost@user/frost)
11:43:21 <qrpnxz> I found one blog post that talk about doing something similar, so it likely may be in a library out there somewhere for sure.
11:43:35 <lortabac> apparently it's deprecated
11:43:38 <lortabac> @hackage ether
11:43:38 <lambdabot> https://hackage.haskell.org/package/ether
11:44:08 × bitdex quits (~bitdex@gateway/tor-sasl/bitdex) (Quit: = "")
11:44:11 dminuoso finds himself disliking effect systems more and more
11:47:26 × euandreh quits (~euandreh@179.214.113.107) (Ping timeout: 244 seconds)
11:47:32 <qrpnxz> if the method just look like `o -> String -> IO ()`, there be no problem. This is what you have in Java, but in the search for that extra power to thread other kind of monadic effects through the code and just be more general then we get mtl style, and more.
11:47:58 azimut joins (~azimut@gateway/tor-sasl/azimut)
11:50:10 <dminuoso> qrpnxz: I generally just have some `ReaderT Env IO`. If I need mutability, I keep IORef's in that Env. If I need custom sequencing logic, I invent custom operators >|>, and so forth.
11:50:37 <dminuoso> The brilliant thing about sticking to ReaderT and isomorphic things is being able to MonadUnliftIO
11:50:47 <dminuoso> It keeps things simple, understandable, communicatable
11:54:08 euandreh joins (~euandreh@179.214.113.107)
11:56:14 <qrpnxz> lortabac: ohhh, i like that. I see how it works.
11:56:44 <qrpnxz> yeah, ReaderT pretty good
12:02:44 × waleee quits (~waleee@2001:9b0:213:7200:cc36:a556:b1e8:b340) (Ping timeout: 268 seconds)
12:05:37 × zachel quits (~zachel@user/zachel) (Quit: DIsconnected: v7+nano)
12:12:20 matthewmosior joins (~matthewmo@173.170.253.91)
12:16:49 <tdammers> yeah, so, the general idea is that if your monad stack involves IO, then you already have exceptions, mutability, concurrency, and, well, IO, covered, so there's not much use adding ExceptT and StateT and such into the mix
12:16:52 × matthewmosior quits (~matthewmo@173.170.253.91) (Ping timeout: 244 seconds)
12:18:18 <maerwald[m]> tdammers: ExceptT allows to distinguish between expected and unexpected exceptions to a degree
12:19:21 <tdammers> I've never been a fan of the "expected/unexpected exception" terminology. If it's expected, then it's not really an exception, just a program state that requires a short-circuiting code path maybe.
12:19:45 <maerwald[m]> Yes
12:19:54 <maerwald[m]> ExceptT is not an exception
12:19:56 <maerwald[m]> It's an Either
12:20:01 <tdammers> I mean, the only reasonably objective distinction you can make is "exceptions that we can handle" and "exceptions that we can't/won't handle"
12:20:30 <maerwald[m]> You catch the exceptions and turn them into values
12:20:31 <tdammers> Also that, yes. Should have called it EitherT (which I believe also exists somewhere out there)
12:21:09 <maerwald[m]> So your own API boundaries can be expected to not throw true exceptions. And if they do, all is lost
12:21:17 <geekosaur> there was a decision that Either/EitherT is agnostic (that is, a Left is as valid as a Right), iirc
12:21:46 <geekosaur> whereas ExceptT considers Right a value and Left an exception
12:21:47 <tdammers> IMO the "valid" part is interpretation.
12:22:31 <tdammers> The right bias of Either/EitherT/ExceptT however is an emergent property, not a matter of decision-making.
12:24:49 × mikoto-chan quits (~mikoto-ch@164.5.249.78) (Ping timeout: 265 seconds)
12:25:19 cpli joins (~cpli@77.47.62.180)
12:25:45 <tdammers> It follows from how the right type argument is the last one in the type constructor (Either a b), so the Functor, Applicative and Monad instances of Either have to use Right as return, not Left. And by extension, the same goes for both EitherT and ExceptT
12:29:33 <maerwald[m]> The only alternative is testing all exceptions branches and then keep your documentation in sync with your tests
12:29:39 <qrpnxz> I think of ExceptT more as either for temporarily working with Either returning functions nicely, or for a pure implementation of a generic error interface. I don't see a problem with mixing ExceptT and IO in the first case, but in the second, it's probably a waste of time.
12:30:47 × cfricke quits (~cfricke@user/cfricke) (Ping timeout: 252 seconds)
12:30:47 × mbuf quits (~Shakthi@195.69.96.100) (Read error: Connection reset by peer)
12:32:31 mbuf joins (~Shakthi@195.69.96.100)
12:34:03 <dminuoso> Sure, I mean using runMaybeT or runExceptT locally is really neat. I have a few places where it cleans up the code logic immensely. But those are usually limited to do-blocks of less than half a dozen lines.
12:34:27 <tdammers> Exactly. It's fine for those, but it has no place in an AppM stack
12:36:03 <maerwald[m]> tdammers: you mean like servants Handler xD
12:36:07 <maerwald[m]> https://hackage.haskell.org/package/servant-server-0.19.1/docs/Servant-Server-Internal-Handler.html#t:Handler
12:36:44 <dminuoso> maerwald[m]: That's no problem. toHandler :: Logger -> StartupEnv -> FreyjaM a -> Handler a
12:36:56 <dminuoso> genericServeTWithContext is a blessing
12:37:15 <dminuoso> If you can survive its glorios type signature
12:37:23 <dminuoso> genericServeTWithContext :: forall (routes :: * -> *) (m :: * -> *) (ctx :: [*]) . (GenericServant routes (AsServerT m), GenericServant routes AsApi, HasServer (ToServantApi routes) ctx, HasContextEntry (ctx .++ DefaultErrorFormatters) ErrorFormatters, ServerT (ToServantApi routes) m ~ ToServant routes (AsServerT m)) => (forall a . m a -> Handler a) -> routes (AsServerT m) -> Context ctx ->
12:37:25 <dminuoso> Application
12:38:03 <dminuoso> If I had a chance to learn Haskell from scratch, I think I would avoid servant *shrugs*
12:38:35 <dminuoso> By the way, what's the recommended way to identify whether or not the haskell program is running in an interactive shell?
12:38:54 <maerwald[m]> I started to easily understand those type sigs when I stopped thinking they have anything declarative in them.
12:40:12 <dminuoso> Yeah. I mean they are just an artifact of their internal machinery. You can essentially just ignore the entire context.
12:40:31 <dminuoso> Then it becomes some opaqe: (forall a . m a -> Handler a) -> routes (AsServerT m) -> Context ctx -> Application
12:40:40 × akegalj quits (~akegalj@cpe-94-253-204-81.zg2.cable.xnet.hr) (Quit: leaving)
12:40:42 <maerwald[m]> I used to think there must be a design behind it
12:40:47 <maerwald[m]> Until I read the servant code
12:41:01 <dminuoso> It is a curious experiment like xmonad.
12:41:14 <maerwald[m]> There's not too many way to do things on type level
12:41:28 <dminuoso> Yup
12:44:08 × ph88 quits (~ph88@2a02:8109:9e00:71d0:3578:dbbf:f7b2:91f0) (Quit: Leaving)
12:47:27 × hgolden quits (~Howard@cpe-172-251-233-141.socal.res.rr.com) (Remote host closed the connection)
12:48:39 matthewmosior joins (~matthewmo@173.170.253.91)
12:49:15 hgolden joins (~Howard@cpe-172-251-233-141.socal.res.rr.com)
12:50:17 Guest27 joins (~Guest27@host-87-20-60-33.retail.telecomitalia.it)
12:50:41 × Guest27 quits (~Guest27@host-87-20-60-33.retail.telecomitalia.it) (Client Quit)
12:55:01 × matthewmosior quits (~matthewmo@173.170.253.91) (Ping timeout: 260 seconds)
12:57:41 × luffy quits (~chenqisu1@183.217.201.192) (Ping timeout: 265 seconds)
12:59:19 × califax quits (~califax@user/califx) (Remote host closed the connection)
13:00:30 califax joins (~califax@user/califx)
13:02:53 × califax quits (~califax@user/califx) (Remote host closed the connection)
13:05:31 × elkcl quits (~elkcl@broadband-37-110-156-162.ip.moscow.rt.ru) (Ping timeout: 260 seconds)
13:05:39 raehik joins (~raehik@cpc95906-rdng25-2-0-cust156.15-3.cable.virginm.net)
13:06:37 elkcl joins (~elkcl@broadband-37-110-156-162.ip.moscow.rt.ru)
13:08:00 × mbuf quits (~Shakthi@195.69.96.100) (Read error: Connection reset by peer)
13:08:09 califax joins (~califax@user/califx)
13:08:31 mbuf joins (~Shakthi@195.69.96.100)
13:11:36 Colere joins (~colere@about/linux/staff/sauvin)
13:12:39 × califax quits (~califax@user/califx) (Remote host closed the connection)
13:13:09 × Furor quits (~colere@about/linux/staff/sauvin) (Ping timeout: 265 seconds)
13:13:11 × mbuf quits (~Shakthi@195.69.96.100) (Read error: Connection reset by peer)
13:14:30 califax joins (~califax@user/califx)
13:14:33 mbuf joins (~Shakthi@195.69.96.100)
13:21:35 zeenk joins (~zeenk@2a02:2f04:a311:2d00:6865:d863:4c93:799f)
13:22:34 × Lord_of_Life quits (~Lord@user/lord-of-life/x-2819915) (Quit: Laa shay'a waqi'un moutlaq bale kouloun moumkine)
13:31:20 matthewmosior joins (~matthewmo@173.170.253.91)
13:31:27 Lord_of_Life joins (~Lord@user/lord-of-life/x-2819915)
13:32:23 × Colere quits (~colere@about/linux/staff/sauvin) (Ping timeout: 252 seconds)
13:33:22 eggplantade joins (~Eggplanta@108-201-191-115.lightspeed.sntcca.sbcglobal.net)
13:34:29 fjMSX joins (~hypni2p@128-68-149-52.broadband.corbina.ru)
13:37:28 × eggplantade quits (~Eggplanta@108-201-191-115.lightspeed.sntcca.sbcglobal.net) (Ping timeout: 244 seconds)
13:37:59 × matthewmosior quits (~matthewmo@173.170.253.91) (Ping timeout: 244 seconds)
13:38:48 nschoe joins (~quassel@178.251.84.79)
13:39:02 × frost quits (~frost@user/frost) (Ping timeout: 252 seconds)
13:39:13 matthewmosior joins (~matthewmo@173.170.253.91)
13:41:14 × FinnElija quits (~finn_elij@user/finn-elija/x-0085643) (Ping timeout: 258 seconds)
13:41:27 Colere joins (~colere@about/linux/staff/sauvin)
13:43:11 FinnElija joins (~finn_elij@user/finn-elija/x-0085643)
13:43:33 mvk joins (~mvk@2607:fea8:5ce3:8500::875a)
13:44:00 Furor joins (~colere@about/linux/staff/sauvin)
13:44:05 × matthewmosior quits (~matthewmo@173.170.253.91) (Ping timeout: 265 seconds)
13:45:42 matthewmosior joins (~matthewmo@173.170.253.91)
13:46:59 × Colere quits (~colere@about/linux/staff/sauvin) (Ping timeout: 265 seconds)
13:57:57 stef204 joins (~stef204@user/stef204)
13:59:34 ph88 joins (~ph88@2a02:8109:9e00:71d0:3578:dbbf:f7b2:91f0)
14:03:19 × mbuf quits (~Shakthi@195.69.96.100) (Read error: Connection reset by peer)
14:03:41 szkl joins (uid110435@id-110435.uxbridge.irccloud.com)
14:03:48 mbuf joins (~Shakthi@195.69.96.100)
14:04:08 × hgolden quits (~Howard@cpe-172-251-233-141.socal.res.rr.com) (Quit: Leaving)
14:04:29 hgolden joins (~Howard@cpe-172-251-233-141.socal.res.rr.com)
14:05:23 × hgolden quits (~Howard@cpe-172-251-233-141.socal.res.rr.com) (Client Quit)
14:05:46 hgolden joins (~hgolden@cpe-172-251-233-141.socal.res.rr.com)
14:11:39 jero98772 joins (~jero98772@2800:484:1d80:d8ce:3490:26c5:1782:da8c)
14:21:29 × jero98772 quits (~jero98772@2800:484:1d80:d8ce:3490:26c5:1782:da8c) (Ping timeout: 268 seconds)
14:23:56 Sgeo joins (~Sgeo@user/sgeo)
14:25:11 shriekingnoise joins (~shrieking@186.137.167.202)
14:25:48 coot joins (~coot@213.134.176.158)
14:28:27 mniip joins (mniip@libera/staff/mniip)
14:32:30 jero98772 joins (~jero98772@2800:484:1d80:d8ce:3490:26c5:1782:da8c)
14:33:17 jao joins (~jao@cpc103048-sgyl39-2-0-cust502.18-2.cable.virginm.net)
14:38:24 × raym quits (~raym@user/raym) (Quit: kernel update, rebooting...)
14:40:41 × pavonia quits (~user@user/siracusa) (Quit: Bye!)
14:44:57 raym joins (~raym@user/raym)
14:44:57 elkcl_ joins (~elkcl@broadband-37-110-156-162.ip.moscow.rt.ru)
14:46:11 × elkcl quits (~elkcl@broadband-37-110-156-162.ip.moscow.rt.ru) (Ping timeout: 244 seconds)
14:46:12 elkcl_ is now known as elkcl
14:47:56 × Deide quits (~deide@user/deide) (Quit: issued !quit command)
14:52:55 tzh joins (~tzh@c-24-21-73-154.hsd1.wa.comcast.net)
14:59:19 × JimL quits (~quassel@89-162-2-132.fiber.signal.no) (Quit: No Ping reply in 180 seconds.)
15:00:44 JimL joins (~quassel@89-162-2-132.fiber.signal.no)
15:04:16 × jero98772 quits (~jero98772@2800:484:1d80:d8ce:3490:26c5:1782:da8c) (Ping timeout: 244 seconds)
15:05:57 Deide joins (~deide@user/deide)
15:06:46 kimjetwav joins (~user@2607:fea8:235e:b600:4200:1043:6a56:f137)
15:07:13 × raehik quits (~raehik@cpc95906-rdng25-2-0-cust156.15-3.cable.virginm.net) (Ping timeout: 265 seconds)
15:07:45 MoC joins (~moc@user/moc)
15:07:59 raehik joins (~raehik@cpc95906-rdng25-2-0-cust156.15-3.cable.virginm.net)
15:08:06 × coot quits (~coot@213.134.176.158) (Quit: coot)
15:11:35 Guest13 joins (~Guest13@2001:9e8:33dd:d800:3c56:b6a6:c2a8:3290)
15:11:38 × matthewmosior quits (~matthewmo@173.170.253.91) (Remote host closed the connection)
15:12:05 matthewmosior joins (~matthewmo@173.170.253.91)
15:13:01 × matthewmosior quits (~matthewmo@173.170.253.91) (Remote host closed the connection)
15:13:07 matthewmosior joins (~matthewmo@173.170.253.91)
15:13:47 coot joins (~coot@213.134.176.158)
15:17:21 jero98772 joins (~jero98772@2800:484:1d80:d8ce:efcc:cbb3:7f2a:6dff)
15:17:45 × jonathanx quits (~jonathan@h-98-128-168-222.NA.cust.bahnhof.se) (Remote host closed the connection)
15:18:26 × Guest13 quits (~Guest13@2001:9e8:33dd:d800:3c56:b6a6:c2a8:3290) (Quit: Client closed)
15:18:39 × lortabac quits (~lortabac@2a01:e0a:541:b8f0:1ca4:6b13:8e69:b48) (Quit: WeeChat 2.8)
15:19:16 eggplantade joins (~Eggplanta@108-201-191-115.lightspeed.sntcca.sbcglobal.net)
15:25:15 × matthewmosior quits (~matthewmo@173.170.253.91) (Remote host closed the connection)
15:25:42 matthewmosior joins (~matthewmo@173.170.253.91)
15:28:01 × mbuf quits (~Shakthi@195.69.96.100) (Read error: Connection reset by peer)
15:28:31 mbuf joins (~Shakthi@195.69.96.100)
15:30:11 × matthewmosior quits (~matthewmo@173.170.253.91) (Ping timeout: 260 seconds)
15:33:24 × kimjetwav quits (~user@2607:fea8:235e:b600:4200:1043:6a56:f137) (Remote host closed the connection)
15:39:03 × zmt00 quits (~zmt00@user/zmt00) (Ping timeout: 250 seconds)
15:42:06 Guest13 joins (~Guest13@2001:9e8:33dd:d800:3c56:b6a6:c2a8:3290)
15:43:31 × coot quits (~coot@213.134.176.158) (Quit: coot)
15:44:40 × califax quits (~califax@user/califx) (Ping timeout: 258 seconds)
15:45:25 califax joins (~califax@user/califx)
15:47:58 docter_d joins (~docter_d@39-183-142-46.pool.kielnet.net)
15:49:20 docter_d parts (~docter_d@39-183-142-46.pool.kielnet.net) ()
15:49:37 × Guest13 quits (~Guest13@2001:9e8:33dd:d800:3c56:b6a6:c2a8:3290) (Quit: Client closed)
15:50:45 zmt00 joins (~zmt00@user/zmt00)
15:57:12 × mbuf quits (~Shakthi@195.69.96.100) (Quit: Leaving)
15:59:08 matthewmosior joins (~matthewmo@173.170.253.91)
16:02:25 × eggplantade quits (~Eggplanta@108-201-191-115.lightspeed.sntcca.sbcglobal.net) (Remote host closed the connection)
16:02:42 × cpli quits (~cpli@77.47.62.180) (Read error: Connection reset by peer)
16:03:20 titibandit joins (~titibandi@xdsl-85-197-3-115.nc.de)
16:03:46 × matthewmosior quits (~matthewmo@173.170.253.91) (Ping timeout: 265 seconds)
16:07:13 matthewmosior joins (~matthewmo@173.170.253.91)
16:10:39 × jpds1 quits (~jpds@gateway/tor-sasl/jpds) (Remote host closed the connection)
16:10:55 tromp joins (~textual@92-110-219-57.cable.dynamic.v4.ziggo.nl)
16:11:17 jpds1 joins (~jpds@gateway/tor-sasl/jpds)
16:11:41 OpenSource is now known as Linux
16:12:24 × ph88 quits (~ph88@2a02:8109:9e00:71d0:3578:dbbf:f7b2:91f0) (Ping timeout: 264 seconds)
16:21:37 × szkl quits (uid110435@id-110435.uxbridge.irccloud.com) (Quit: Connection closed for inactivity)
16:21:40 eggplantade joins (~Eggplanta@108-201-191-115.lightspeed.sntcca.sbcglobal.net)
16:22:10 × |beowulf| quits (florian@sourcemage/mage/beowulf) (Quit: = "")
16:22:29 × fjMSX quits (~hypni2p@128-68-149-52.broadband.corbina.ru) (Remote host closed the connection)
16:27:20 × matthewmosior quits (~matthewmo@173.170.253.91) (Remote host closed the connection)
16:27:56 matthewmosior joins (~matthewmo@173.170.253.91)
16:30:29 fjMSX joins (~hypni2p@128-68-149-52.broadband.corbina.ru)
16:30:49 × matthewmosior quits (~matthewmo@173.170.253.91) (Remote host closed the connection)
16:30:55 matthewmosior joins (~matthewmo@173.170.253.91)
16:31:51 × matthewmosior quits (~matthewmo@173.170.253.91) (Remote host closed the connection)
16:32:45 matthewmosior joins (~matthewmo@173.170.253.91)
16:37:47 × matthewmosior quits (~matthewmo@173.170.253.91) (Ping timeout: 244 seconds)
16:40:29 matthewmosior joins (~matthewmo@173.170.253.91)
16:40:55 fmgornick joins (~fmgornick@131.212.251.165)
16:41:17 <fmgornick> ?src foldl
16:41:18 <lambdabot> foldl f z [] = z
16:41:18 <lambdabot> foldl f z (x:xs) = foldl f (f z x) xs
16:41:40 × matthewmosior quits (~matthewmo@173.170.253.91) (Remote host closed the connection)
16:41:55 × fmgornick quits (~fmgornick@131.212.251.165) (Client Quit)
16:42:35 matthewmosior joins (~matthewmo@173.170.253.91)
16:42:56 gdd1 is now known as gdd
16:43:25 × pieguy128_ quits (~pieguy128@bras-base-mtrlpq5031w-grc-47-67-70-101-44.dsl.bell.ca) (Ping timeout: 265 seconds)
16:44:41 pieguy128 joins (~pieguy128@bras-base-mtrlpq5031w-grc-50-65-93-192-212.dsl.bell.ca)
16:47:16 × matthewmosior quits (~matthewmo@173.170.253.91) (Ping timeout: 265 seconds)
16:53:05 × nschoe quits (~quassel@178.251.84.79) (Ping timeout: 265 seconds)
16:54:41 econo joins (uid147250@user/econo)
16:59:17 beteigeuze joins (~Thunderbi@89.187.168.57)
17:03:13 × marquis_andras quits (~marquis_a@27-32-242-122.tpgi.com.au) (Ping timeout: 265 seconds)
17:04:01 × gmg quits (~user@user/gehmehgeh) (Ping timeout: 258 seconds)
17:04:46 marquis_andras joins (~marquis_a@194-193-221-185.tpgi.com.au)
17:06:30 gmg joins (~user@user/gehmehgeh)
17:15:09 matthewmosior joins (~matthewmo@173.170.253.91)
17:18:59 × FinnElija quits (~finn_elij@user/finn-elija/x-0085643) (Remote host closed the connection)
17:19:51 × matthewmosior quits (~matthewmo@173.170.253.91) (Ping timeout: 260 seconds)
17:20:18 FinnElija joins (~finn_elij@user/finn-elija/x-0085643)
17:23:00 Guest|16 joins (~Guest|16@181.174.107.122)
17:23:31 × Guest|16 quits (~Guest|16@181.174.107.122) (Client Quit)
17:23:44 × glguy quits (~glguy@libera/staff-emeritus/glguy) (Ping timeout: 255 seconds)
17:25:42 × jpds1 quits (~jpds@gateway/tor-sasl/jpds) (Remote host closed the connection)
17:26:34 jpds1 joins (~jpds@gateway/tor-sasl/jpds)
17:26:47 × tromp quits (~textual@92-110-219-57.cable.dynamic.v4.ziggo.nl) (Quit: My iMac has gone to sleep. ZZZzzz…)
17:26:53 epolanski joins (uid312403@id-312403.helmsley.irccloud.com)
17:28:21 × beteigeuze quits (~Thunderbi@89.187.168.57) (Ping timeout: 265 seconds)
17:29:29 × avoniap quits (~gurkengla@p548ac72e.dip0.t-ipconnect.de) (Quit: leaving)
17:32:54 × razetime quits (~quassel@117.254.34.77) (Remote host closed the connection)
17:39:05 × alternateved quits (~user@staticline-31-183-146-203.toya.net.pl) (Remote host closed the connection)
17:41:00 coot joins (~coot@213.134.176.158)
17:45:53 Pickchea joins (~private@user/pickchea)
17:52:15 matthewmosior joins (~matthewmo@173.170.253.91)
17:54:17 tromp joins (~textual@92-110-219-57.cable.dynamic.v4.ziggo.nl)
17:57:20 wonko joins (~wjc@2a01:e0a:4f9:6500:7c3e:1edd:d64c:344f)
17:58:02 glguy joins (~glguy@libera/staff-emeritus/glguy)
18:00:06 × matthewmosior quits (~matthewmo@173.170.253.91) (Ping timeout: 260 seconds)
18:14:19 ph88 joins (~ph88@2a02:8109:9e00:71d0:3578:dbbf:f7b2:91f0)
18:14:30 × tromp quits (~textual@92-110-219-57.cable.dynamic.v4.ziggo.nl) (Quit: My iMac has gone to sleep. ZZZzzz…)
18:16:53 tromp joins (~textual@92-110-219-57.cable.dynamic.v4.ziggo.nl)
18:17:11 <Hecate> heyo
18:17:21 <Hecate> anyone coming to MuniHac 2022?
18:18:43 <geekosaur> zero chance of my going to Munich 😞 I think Solid and maybe liskin are?
18:19:15 × odnes quits (~odnes@5-203-152-64.pat.nym.cosmote.net) (Remote host closed the connection)
18:20:05 × glguy quits (~glguy@libera/staff-emeritus/glguy) (Ping timeout: 244 seconds)
18:23:27 × titibandit quits (~titibandi@xdsl-85-197-3-115.nc.de) (Ping timeout: 265 seconds)
18:29:07 matthewmosior joins (~matthewmo@173.170.253.91)
18:31:37 × eggplantade quits (~Eggplanta@108-201-191-115.lightspeed.sntcca.sbcglobal.net) (Remote host closed the connection)
18:33:36 × matthewmosior quits (~matthewmo@173.170.253.91) (Ping timeout: 265 seconds)
18:36:58 glguy joins (~glguy@libera/staff-emeritus/glguy)
18:45:24 acidjnk joins (~acidjnk@p54ad5adb.dip0.t-ipconnect.de)
18:46:05 Lord_of_Life_ joins (~Lord@user/lord-of-life/x-2819915)
18:47:09 × Lord_of_Life quits (~Lord@user/lord-of-life/x-2819915) (Ping timeout: 265 seconds)
18:48:49 Lord_of_Life_ is now known as Lord_of_Life
18:51:57 × chele quits (~chele@user/chele) (Remote host closed the connection)
18:56:08 eggplantade joins (~Eggplanta@108-201-191-115.lightspeed.sntcca.sbcglobal.net)
18:56:35 king_gs joins (~Thunderbi@2806:103e:29:1004:c2ae:c6b3:b9c2:8d75)
18:56:41 × king_gs quits (~Thunderbi@2806:103e:29:1004:c2ae:c6b3:b9c2:8d75) (Client Quit)
19:01:58 × toeffel quits (~toeffel@user/toeffel) (Quit: quit)
19:03:36 matthewmosior joins (~matthewmo@173.170.253.91)
19:04:49 ph88^ joins (~ph88@2a02:8109:9e00:71d0:5e5:6e2e:7c5a:d7a6)
19:07:47 × coot quits (~coot@213.134.176.158) (Quit: coot)
19:08:08 × matthewmosior quits (~matthewmo@173.170.253.91) (Ping timeout: 244 seconds)
19:10:06 × wonko quits (~wjc@2a01:e0a:4f9:6500:7c3e:1edd:d64c:344f) (Ping timeout: 260 seconds)
19:14:46 jonathanx joins (~jonathan@h-178-174-176-109.A357.priv.bahnhof.se)
19:14:48 ft joins (~ft@p3e9bc57b.dip0.t-ipconnect.de)
19:17:50 × tromp quits (~textual@92-110-219-57.cable.dynamic.v4.ziggo.nl) (Quit: My iMac has gone to sleep. ZZZzzz…)
19:17:51 × Vajb quits (~Vajb@2001:999:251:6c46:af67:6433:cfc0:311b) (Read error: Connection reset by peer)
19:18:42 Vajb joins (~Vajb@hag-jnsbng11-58c3ad-40.dhcp.inet.fi)
19:20:29 × adanwan quits (~adanwan@gateway/tor-sasl/adanwan) (Ping timeout: 258 seconds)
19:20:49 adanwan joins (~adanwan@gateway/tor-sasl/adanwan)
19:23:27 kenaryn joins (~aurele@cre71-h03-89-88-44-27.dsl.sta.abo.bbox.fr)
19:26:46 × raehik quits (~raehik@cpc95906-rdng25-2-0-cust156.15-3.cable.virginm.net) (Ping timeout: 265 seconds)
19:27:55 wonko joins (~wjc@88.123.229.148)
19:27:58 × eggplantade quits (~Eggplanta@108-201-191-115.lightspeed.sntcca.sbcglobal.net) (Remote host closed the connection)
19:28:18 raehik joins (~raehik@cpc95906-rdng25-2-0-cust156.15-3.cable.virginm.net)
19:30:38 × glguy quits (~glguy@libera/staff-emeritus/glguy) (Ping timeout: 265 seconds)
19:31:20 titibandit joins (~titibandi@xdsl-87-78-162-143.nc.de)
19:32:13 aaronv joins (~aaronv@user/aaronv)
19:32:57 × aaronv quits (~aaronv@user/aaronv) (Client Quit)
19:34:31 matthewmosior joins (~matthewmo@173.170.253.91)
19:36:42 × aaron[m] quits (~aaronvarg@2001:470:69fc:105::db5e) (Quit: Reconnecting)
19:36:56 aaron[m] joins (~aaronvarg@2001:470:69fc:105::db5e)
19:38:20 Guest94 joins (~Guest94@2601:602:a080:fa0::b9fc)
19:38:28 codaraxis joins (~codaraxis@user/codaraxis)
19:39:16 × matthewmosior quits (~matthewmo@173.170.253.91) (Ping timeout: 260 seconds)
19:39:45 × aaron[m] quits (~aaronvarg@2001:470:69fc:105::db5e) (Client Quit)
19:40:00 aaron[m] joins (~aaronv@2001:470:69fc:105::db5e)
19:43:15 × aaron[m] quits (~aaronv@2001:470:69fc:105::db5e) (Client Quit)
19:43:29 aaron[m] joins (~aaronv@user/aaronv)
19:44:16 aaron[m] is now known as aaronv
19:46:27 tromp joins (~textual@92-110-219-57.cable.dynamic.v4.ziggo.nl)
19:47:55 × vglfr quits (~vglfr@145.224.94.72) (Ping timeout: 244 seconds)
19:50:07 Midjak joins (~Midjak@82.66.147.146)
19:51:39 vglfr joins (~vglfr@145.224.94.72)
20:01:31 × causal quits (~user@50.35.83.177) (Quit: WeeChat 3.6)
20:06:24 × kenaryn quits (~aurele@cre71-h03-89-88-44-27.dsl.sta.abo.bbox.fr) (Quit: leaving)
20:07:24 × perrierjouet quits (~perrier-j@modemcable048.127-56-74.mc.videotron.ca) (Quit: WeeChat 3.6)
20:10:11 matthewmosior joins (~matthewmo@173.170.253.91)
20:10:38 califax_ joins (~califax@user/califx)
20:11:28 × califax quits (~califax@user/califx) (Ping timeout: 258 seconds)
20:11:44 califax_ is now known as califax
20:12:34 × lyle quits (~lyle@104.246.145.85) (Quit: WeeChat 3.6)
20:13:41 × ph88 quits (~ph88@2a02:8109:9e00:71d0:3578:dbbf:f7b2:91f0) (Ping timeout: 268 seconds)
20:13:47 × fserucas quits (~fserucas@2001:818:e376:a400:fb92:70c1:dd88:c7d7) (Ping timeout: 250 seconds)
20:14:25 × econo quits (uid147250@user/econo) (Quit: Connection closed for inactivity)
20:15:06 <liskin> I dunno. I'm already doing four flights in two weeks so going to Munihac seems irresponsible. Could use mental health as an excuse but no promises.
20:20:20 × kuribas quits (~user@ptr-17d51emvh3k186bo862.18120a2.ip6.access.telenet.be) (Quit: ERC (IRC client for Emacs 26.3))
20:22:50 × matthewmosior quits (~matthewmo@173.170.253.91) (Ping timeout: 265 seconds)
20:23:37 × wonko quits (~wjc@88.123.229.148) (Ping timeout: 260 seconds)
20:28:28 eggplantade joins (~Eggplanta@108-201-191-115.lightspeed.sntcca.sbcglobal.net)
20:29:31 econo joins (uid147250@user/econo)
20:31:06 × takuan quits (~takuan@178-116-218-225.access.telenet.be) (Remote host closed the connection)
20:31:34 nate1 joins (~nate@98.45.169.16)
20:32:04 Adran joins (adran@botters/adran)
20:32:59 × eggplantade quits (~Eggplanta@108-201-191-115.lightspeed.sntcca.sbcglobal.net) (Ping timeout: 265 seconds)
20:34:22 perrierjouet joins (~perrier-j@modemcable048.127-56-74.mc.videotron.ca)
20:35:03 × perrierjouet quits (~perrier-j@modemcable048.127-56-74.mc.videotron.ca) (Client Quit)
20:38:22 pavonia joins (~user@user/siracusa)
20:41:14 × albet70 quits (~xxx@2400:8902::f03c:92ff:fe60:98d8) (Remote host closed the connection)
20:42:15 × Adran quits (adran@botters/adran) (Quit: Este é o fim.)
20:47:22 albet70 joins (~xxx@2400:8902::f03c:92ff:fe60:98d8)
20:47:47 Adran joins (adran@botters/adran)
20:48:02 perrierjouet joins (~perrier-j@modemcable048.127-56-74.mc.videotron.ca)
20:50:07 matthewmosior joins (~matthewmo@173.170.253.91)
20:50:46 glguy joins (~glguy@libera/staff-emeritus/glguy)
20:54:31 × matthewmosior quits (~matthewmo@173.170.253.91) (Ping timeout: 260 seconds)
21:00:33 wonko joins (~wjc@88.123.229.148)
21:03:04 × Guest94 quits (~Guest94@2601:602:a080:fa0::b9fc) (Ping timeout: 252 seconds)
21:05:14 × gmg quits (~user@user/gehmehgeh) (Quit: Leaving)
21:06:30 × epolanski quits (uid312403@id-312403.helmsley.irccloud.com) (Quit: Connection closed for inactivity)
21:07:00 × wonko quits (~wjc@88.123.229.148) (Ping timeout: 264 seconds)
21:07:57 × chomwitt quits (~chomwitt@2a02:587:dc05:1e00:3aa3:c983:c1fc:25dc) (Ping timeout: 268 seconds)
21:09:37 × acarrico quits (~acarrico@dhcp-68-142-48-19.greenmountainaccess.net) (Ping timeout: 252 seconds)
21:09:58 × MoC quits (~moc@user/moc) (Quit: Konversation terminated!)
21:19:01 × koz_ quits (~koz@121.99.240.58) (Ping timeout: 260 seconds)
21:19:30 matthewmosior joins (~matthewmo@173.170.253.91)
21:20:38 × __monty__ quits (~toonn@user/toonn) (Quit: leaving)
21:20:47 koz joins (~koz@121.99.240.58)
21:21:30 × Vajb quits (~Vajb@hag-jnsbng11-58c3ad-40.dhcp.inet.fi) (Read error: Connection reset by peer)
21:24:01 × matthewmosior quits (~matthewmo@173.170.253.91) (Ping timeout: 244 seconds)
21:25:12 Vajb joins (~Vajb@2001:999:251:6c46:af67:6433:cfc0:311b)
21:25:54 × ph88^ quits (~ph88@2a02:8109:9e00:71d0:5e5:6e2e:7c5a:d7a6) (Quit: Leaving)
21:27:46 × raehik quits (~raehik@cpc95906-rdng25-2-0-cust156.15-3.cable.virginm.net) (Ping timeout: 260 seconds)
21:32:15 × Pickchea quits (~private@user/pickchea) (Quit: Leaving)
21:34:22 × nate1 quits (~nate@98.45.169.16) (Ping timeout: 265 seconds)
21:44:01 × tromp quits (~textual@92-110-219-57.cable.dynamic.v4.ziggo.nl) (Quit: My iMac has gone to sleep. ZZZzzz…)
21:47:10 nate1 joins (~nate@98.45.169.16)
21:51:47 × nate1 quits (~nate@98.45.169.16) (Ping timeout: 252 seconds)
21:52:37 × zeenk quits (~zeenk@2a02:2f04:a311:2d00:6865:d863:4c93:799f) (Quit: Konversation terminated!)
21:54:46 matthewmosior joins (~matthewmo@173.170.253.91)
21:58:37 coot joins (~coot@213.134.176.158)
21:59:30 × matthewmosior quits (~matthewmo@173.170.253.91) (Ping timeout: 265 seconds)
22:04:53 nehsou^ joins (~dsrt@70.88.176.185)
22:11:35 × titibandit quits (~titibandi@xdsl-87-78-162-143.nc.de) (Remote host closed the connection)
22:12:58 Tuplanolla joins (~Tuplanoll@91-159-69-34.elisa-laajakaista.fi)
22:17:58 × ec quits (~ec@gateway/tor-sasl/ec) (Ping timeout: 258 seconds)
22:19:19 × nehsou^ quits (~dsrt@70.88.176.185) (Ping timeout: 265 seconds)
22:20:49 × acidjnk quits (~acidjnk@p54ad5adb.dip0.t-ipconnect.de) (Remote host closed the connection)
22:21:11 acidjnk joins (~acidjnk@p200300d6e7137a6938064ad36ff8ac53.dip0.t-ipconnect.de)
22:24:41 × finsternis quits (~X@23.226.237.192) (Read error: Connection reset by peer)
22:27:09 × acidjnk quits (~acidjnk@p200300d6e7137a6938064ad36ff8ac53.dip0.t-ipconnect.de) (Read error: Connection reset by peer)
22:28:00 × ubert quits (~Thunderbi@178.115.63.2.wireless.dyn.drei.com) (Ping timeout: 264 seconds)
22:31:06 matthewmosior joins (~matthewmo@173.170.253.91)
22:36:01 × matthewmosior quits (~matthewmo@173.170.253.91) (Ping timeout: 260 seconds)
22:38:17 bitdex joins (~bitdex@gateway/tor-sasl/bitdex)
22:42:22 <hippoid> I'm trying to start a hakyll project using nix. After doing `nix-shell` and `stack ghci`, I can succesfully do a `import Hakyll`. But I don't have any of the hakyll executables, like hakyll-init. repo here: https://github.com/idrisr/stack-nix. What do I need to alter to get the hakyll executables?
22:45:21 × perrierjouet quits (~perrier-j@modemcable048.127-56-74.mc.videotron.ca) (Quit: WeeChat 3.6)
22:51:20 <[Leary]> hippoid: I don't know hakyll, but it you can probably add something like `haskellPackages.hakyll` to `buildInputs`.
22:52:05 <hippoid> i think i just needed to do `stack exec hakyll-init` cause that's working for me.
22:54:15 nehsou^ joins (~nehsou@70.88.176.185)
22:55:13 <[Leary]> There are a lot of different workflows when you're combining nix with stack or cabal; if it works for you, it works.
22:55:35 waleee joins (~waleee@2001:9b0:213:7200:cc36:a556:b1e8:b340)
22:55:47 <davean> I've never gotten a nix+haskell workflow I like, haskell.nix isn't terrible but god why is it so bad?
22:56:16 <davean> and I still don't know how to make it so stuff has access to zlib.out/zlib.dev for dynamic recompilation when it is installed on the system as a shell command I actually want to run but it needs to relink its self.
22:59:36 × glguy quits (~glguy@libera/staff-emeritus/glguy) (Ping timeout: 244 seconds)
23:01:25 <sm> there's also #haskell.nix:libera.chat
23:02:55 × jespada quits (~jespada@cpc121060-nmal24-2-0-cust249.19-2.cable.virginm.net) (Ping timeout: 252 seconds)
23:05:21 matthewmosior joins (~matthewmo@173.170.253.91)
23:10:04 × matthewmosior quits (~matthewmo@173.170.253.91) (Ping timeout: 265 seconds)
23:11:32 × coot quits (~coot@213.134.176.158) (Ping timeout: 265 seconds)
23:13:41 <jackdk> davean: I never solved the zlib issues myself. If I need a shell that can build something that transitively depends on zlib, I use `haskellPackages.ghcWithPackages(p: [p.zlib])`
23:14:18 cyphase joins (~cyphase@user/cyphase)
23:15:41 × Igloo quits (~ian@matrix.chaos.earth.li) (Ping timeout: 260 seconds)
23:16:22 <davean> jackdk: yah but I need my *normal shell* to be able to do it to run commands that self-rebuild to generate optimal implimentations
23:16:42 <davean> That means I have to alias every execution of that command to run inside a shell
23:17:34 × Techcable quits (~Techcable@user/Techcable) (Ping timeout: 268 seconds)
23:19:09 <jackdk> As an extreme answer, you could put that ghc-with-zlib in environment.systemPackages? I am almost annoyed enough to try writing a pure haskell zlib. Almost.
23:19:31 <jackdk> (I was considering wanting ghcjs-compiled zlib the other day for bad reasons)
23:21:06 <davean> jackdk: mmm, I think one could make a very performant version if they tried. That isn't even the best implimentation of its self.
23:21:10 <davean> But you'd lose a lot too
23:22:25 <davean> Really this is a nix problem though
23:22:36 <davean> their design philosophy has a few flaws in expectation
23:22:45 king_gs joins (~Thunderbi@2806:103e:29:1004:c2ae:c6b3:b9c2:8d75)
23:22:52 × king_gs quits (~Thunderbi@2806:103e:29:1004:c2ae:c6b3:b9c2:8d75) (Client Quit)
23:27:13 Igloo joins (~ian@matrix.chaos.earth.li)
23:29:15 Techcable joins (~Techcable@user/Techcable)
23:29:29 glguy joins (~glguy@libera/staff-emeritus/glguy)
23:29:56 <davean> jackdk: you might be better vendoring a vendorable DEFLATE C implimentation
23:31:55 <jackdk> davean: Could be. Though I'm more likely better of adding it to the pile of projects I'm yet to start and closing something else off ^^
23:32:00 <jackdk> and/or finishing amazonka2
23:32:34 dsal apologies for complaining about amazonka2 -- really like it, but builds got in my way today
23:33:10 <davean> Is amazonka2 a thing? (I stay away from using AWS)
23:33:43 zachel joins (~zachelfai@user/zachel)
23:33:53 <dsal> Yeah, it's pretty nice. I've got a couple of programs making good use of it.
23:34:27 <davean> That library, don't say such slander about AWS, they work hard to have that level of downtime!
23:34:51 <davean> (I've litterly never encountered another host with as many issues)
23:35:48 <dsal> My programs were mostly made when I had really bad connectivity and were built almost entirely around "everything is broken" so I don't really notice when they have issues.
23:36:10 <davean> Ah well I serve to other people
23:36:18 <davean> somewhere on the globe will notice when something is down
23:36:23 dsal is self-serving
23:36:41 <dsal> Where do you put stuff you expect people to be able to get?
23:37:32 <davean> Various places. If you want a cloud GCP is MASSIVELY more stable and with a better network, otherwise theres like equinix metal if you want a lot of performance and bandwidth, but hell, I think Digital Ocean has better uptime than AWS
23:37:49 <dsal> I've mostly only seen GCP from the inside, so that's a pretty scary thing to hear. heh
23:37:50 <davean> Scale matters a lot for that decision
23:37:59 <davean> dsal: Yah, isn't it?
23:38:34 <davean> dsal: you can't even ping locally inside AWS for any period of time without packet loss
23:38:35 × bontaq quits (~user@ool-45779fe5.dyn.optonline.net) (Ping timeout: 265 seconds)
23:38:43 <davean> or at least extreme latency spikes
23:38:54 <hpc> can't be that much scarier than what i have heard about us-east-1
23:40:00 matthewmosior joins (~matthewmo@173.170.253.91)
23:40:50 <[Leary]> davean, jackdk: Re the zlib / shared libraries problem, have you seen this discussion? <https://discourse.nixos.org/t/shared-libraries-error-with-cabal-repl-in-nix-shell/8921/9>. For use in a system/profile install when the program needs to recompile itself, I suppose you'd use `makeWrapper` and set the env var in there instead.
23:42:29 <jackdk> [Leary]: That's a cute trick with `LD_LIBRARY_PATH`
23:42:47 <davean> [Leary]: oh!
23:42:52 <davean> Thanks thats something to look at
23:43:08 <jackdk> davean: Yeah I've been helping Brendan clean up and catch up amazonka to a bunch of newer services etc
23:44:29 <jean-paul[m]> "I can't even set up a reproducible build environment where my software can rebuild itself at runtime against non-hermetic cross-language dependencies" biiiig fail there, haskell.nix, feel much shame.
23:44:50 <davean> jean-paul[m]: I mean it assumes all the build is at installtime is the problem
23:44:51 × matthewmosior quits (~matthewmo@173.170.253.91) (Ping timeout: 260 seconds)
23:44:53 <davean> thats not how things work
23:45:05 <davean> building is part of the lifetime of a system
23:45:06 <jean-paul[m]> davean: It is how a _lot_ of things work.
23:45:13 <davean> jean-paul[m]: the most basic sure
23:45:22 <davean> but its a very limited perspective
23:45:31 <jean-paul[m]> Or really, it assumes all of the build is at build time. :)
23:45:53 <jean-paul[m]> Sure, it is limited. A lot of limited tools do a good job. Show me an unlimited tool. :)
23:50:08 <[Leary]> It's not like it can't support run-time rebuilds, but you /should/ expect to have to jump through more hoops to do so.
23:52:17 wonko joins (~wjc@2a0e:1c80:11::50)
23:54:50 × Tuplanolla quits (~Tuplanoll@91-159-69-34.elisa-laajakaista.fi) (Quit: Leaving.)
23:59:34 × stef204 quits (~stef204@user/stef204) (Quit: WeeChat 3.6)

All times are in UTC on 2022-09-13.