Home liberachat/#haskell: Logs Calendar

Logs on 2022-07-08 (liberachat/#haskell)

00:01:36 nuc13u5 joins (~nuc13u5@73.48.251.119)
00:02:18 × azimut quits (~azimut@gateway/tor-sasl/azimut) (Remote host closed the connection)
00:04:18 × mstksg quits (~jle`@cpe-23-240-75-236.socal.res.rr.com) (Ping timeout: 240 seconds)
00:04:47 azimut joins (~azimut@gateway/tor-sasl/azimut)
00:06:28 merijn joins (~merijn@c-001-001-028.client.esciencecenter.eduvpn.nl)
00:06:33 mstksg joins (~jle`@cpe-23-240-75-236.socal.res.rr.com)
00:09:02 jjhoo joins (~jahakala@user/jjhoo)
00:09:39 jakalx parts (~jakalx@base.jakalx.net) ()
00:11:06 jakalx joins (~jakalx@base.jakalx.net)
00:17:36 × ix quits (~ix@2a02:8010:674f:0:d65d:64ff:fe52:5efe) (Quit: WeeChat 3.5)
00:17:51 ix joins (~ix@2a02:8010:674f:0:d65d:64ff:fe52:5efe)
00:21:19 × jjhoo quits (~jahakala@user/jjhoo) (Remote host closed the connection)
00:21:46 × pleo quits (~pleo@user/pleo) (Quit: quit)
00:23:30 × alp quits (~alp@user/alp) (Ping timeout: 276 seconds)
00:29:51 nate4 joins (~nate@98.45.169.16)
00:31:39 slack7373 joins (~slack1256@186.11.61.110)
00:31:39 × slack1256 quits (~slack1256@191.126.99.200) (Read error: Connection reset by peer)
00:34:01 Kaladin joins (~Kaladin@157-131-200-16.fiber.dynamic.sonic.net)
00:34:59 × gurkenglas quits (~gurkengla@dslb-002-203-144-112.002.203.pools.vodafone-ip.de) (Ping timeout: 244 seconds)
00:36:32 sonny joins (~sonny@142.126.78.125)
00:37:07 × merijn quits (~merijn@c-001-001-028.client.esciencecenter.eduvpn.nl) (Ping timeout: 256 seconds)
00:40:50 × nate4 quits (~nate@98.45.169.16) (Ping timeout: 240 seconds)
00:42:13 × machinedgod quits (~machinedg@d172-219-86-154.abhsia.telus.net) (Ping timeout: 256 seconds)
00:42:23 × eggplantade quits (~Eggplanta@2600:1700:bef1:5e10:7d79:d1a4:aca1:4fde) (Remote host closed the connection)
00:44:49 gdown joins (~gavin@h69-11-149-231.kndrid.broadband.dynamic.tds.net)
00:54:04 × sonny quits (~sonny@142.126.78.125) (Remote host closed the connection)
00:54:25 sonny joins (~sonny@142.126.78.125)
00:55:03 × nuc13u5 quits (~nuc13u5@73.48.251.119) (Remote host closed the connection)
00:57:21 frost joins (~frost@user/frost)
00:58:44 × ulvarrefr quits (~user@188.124.56.153) (Ping timeout: 255 seconds)
01:00:19 jao joins (~jao@cpc103048-sgyl39-2-0-cust502.18-2.cable.virginm.net)
01:07:23 eggplantade joins (~Eggplanta@2600:1700:bef1:5e10:7d79:d1a4:aca1:4fde)
01:08:06 nate4 joins (~nate@98.45.169.16)
01:10:21 vglfr joins (~vglfr@88.155.112.245)
01:10:28 × albet70 quits (~xxx@2400:8902::f03c:92ff:fe60:98d8) (Remote host closed the connection)
01:16:35 albet70 joins (~xxx@2400:8902::f03c:92ff:fe60:98d8)
01:17:32 nuc13u5 joins (~nuc13u5@2601:203:400:af50:89cc:9642:c954:860)
01:19:37 × nate4 quits (~nate@98.45.169.16) (Ping timeout: 256 seconds)
01:19:51 × Kaladin quits (~Kaladin@157-131-200-16.fiber.dynamic.sonic.net) (Quit: Leaving)
01:23:33 × nuc13u5 quits (~nuc13u5@2601:203:400:af50:89cc:9642:c954:860) (Ping timeout: 244 seconds)
01:29:26 Kaladin joins (~Kaladin@157-131-200-16.fiber.dynamic.sonic.net)
01:31:09 eggplant_ joins (~Eggplanta@2600:1700:bef1:5e10:e83b:f237:c3ef:87c1)
01:33:53 × eggplantade quits (~Eggplanta@2600:1700:bef1:5e10:7d79:d1a4:aca1:4fde) (Ping timeout: 244 seconds)
01:35:38 × sonny quits (~sonny@142.126.78.125) (Remote host closed the connection)
01:35:58 sonny joins (~sonny@142.126.78.125)
01:50:59 zxx7529 joins (~Thunderbi@user/zxx7529)
01:52:16 nate4 joins (~nate@98.45.169.16)
01:57:35 × nate4 quits (~nate@98.45.169.16) (Ping timeout: 256 seconds)
02:03:32 jargon joins (~jargon@184.101.208.36)
02:04:28 nuc13u5 joins (~nuc13u5@2601:203:400:af50:89cc:9642:c954:860)
02:05:46 merijn joins (~merijn@c-001-001-028.client.esciencecenter.eduvpn.nl)
02:08:09 × notzmv quits (~zmv@user/notzmv) (Ping timeout: 276 seconds)
02:13:30 × Kaladin quits (~Kaladin@157-131-200-16.fiber.dynamic.sonic.net) (Quit: Leaving)
02:18:19 × jao quits (~jao@cpc103048-sgyl39-2-0-cust502.18-2.cable.virginm.net) (Ping timeout: 244 seconds)
02:18:58 <hololeap> has anyone put any thought into how to use composed Alternatives?
02:19:56 × quarkyalice quits (~alice@user/quarkyalice) (Read error: Connection reset by peer)
02:20:14 quarkyalice joins (~alice@user/quarkyalice)
02:20:49 × motherfsck quits (~motherfsc@user/motherfsck) (Ping timeout: 256 seconds)
02:21:57 <hololeap> I was trying to think of a way to "abort" something like this so that it would skip g and h: (\f g h -> f <|> g <|> h) :: Alternative f => f a -> f a -> f a -> f a
02:22:57 <hololeap> turns out it is pretty simple if you change it to: f (Maybe a) -> f (Maybe a) -> f (Maybe a) -> f (Maybe a)
02:23:30 <hololeap> if you want to abort, you just have the Alternative succeed with the value Nothing
02:23:30 jpds1 joins (~jpds@gateway/tor-sasl/jpds)
02:24:19 <hololeap> this ends up looking a lot loke: MaybeT f a
02:25:25 <hololeap> so I'm wondering if there is a way to express this problem more generally using composed Applicatives, even if there isn't a nice interface for it
02:26:19 × jpds quits (~jpds@gateway/tor-sasl/jpds) (Ping timeout: 268 seconds)
02:29:10 × vglfr quits (~vglfr@88.155.112.245) (Ping timeout: 244 seconds)
02:32:22 × sonny quits (~sonny@142.126.78.125) (Remote host closed the connection)
02:32:22 yauhsien joins (~yauhsien@61-231-36-12.dynamic-ip.hinet.net)
02:32:43 sonny joins (~sonny@142.126.78.125)
02:33:10 × td_ quits (~td@muedsl-82-207-238-170.citykom.de) (Ping timeout: 240 seconds)
02:33:17 vglfr joins (~vglfr@88.155.112.245)
02:33:22 motherfsck joins (~motherfsc@user/motherfsck)
02:33:27 × winny quits (~weechat@user/winny) (Remote host closed the connection)
02:35:21 td_ joins (~td@94.134.91.254)
02:36:01 winny joins (~weechat@user/winny)
02:36:50 × merijn quits (~merijn@c-001-001-028.client.esciencecenter.eduvpn.nl) (Ping timeout: 240 seconds)
02:38:36 × sonny quits (~sonny@142.126.78.125) (Remote host closed the connection)
02:38:56 sonny joins (~sonny@142.126.78.125)
02:39:21 × yauhsien quits (~yauhsien@61-231-36-12.dynamic-ip.hinet.net) (Ping timeout: 276 seconds)
02:45:14 × sonny quits (~sonny@142.126.78.125) (Remote host closed the connection)
02:45:33 × slack7373 quits (~slack1256@186.11.61.110) (Remote host closed the connection)
02:45:35 sonny joins (~sonny@142.126.78.125)
02:49:14 × sonny quits (~sonny@142.126.78.125) (Remote host closed the connection)
02:49:34 sonny joins (~sonny@142.126.78.125)
02:51:12 × chexum quits (~quassel@gateway/tor-sasl/chexum) (Remote host closed the connection)
02:51:43 chexum joins (~quassel@gateway/tor-sasl/chexum)
02:53:27 yauhsien joins (~yauhsien@61-231-36-12.dynamic-ip.hinet.net)
02:54:51 × Haskelytic quits (~Haskelyti@118.179.211.17) (Quit: Client closed)
02:55:36 × vglfr quits (~vglfr@88.155.112.245) (Ping timeout: 276 seconds)
03:05:00 × chexum quits (~quassel@gateway/tor-sasl/chexum) (Remote host closed the connection)
03:05:12 chexum joins (~quassel@gateway/tor-sasl/chexum)
03:07:13 dsrt^ joins (~dsrt@128-092-191-146.biz.spectrum.com)
03:07:14 Haskelytic joins (~Haskelyti@118.179.211.17)
03:07:24 × yauhsien quits (~yauhsien@61-231-36-12.dynamic-ip.hinet.net) (Ping timeout: 244 seconds)
03:09:33 <Haskelytic> "Alternatively, and more usefully, ((->) e) can be thought of as a context in which a value of type e is available to be consulted in a read-only fashion." from the typeclassopedia doesn't make sense to me. How can a value of type `e` be "available to be consulted" when `e -> a` consumes a provided `e` to produce an `a` ?
03:11:14 <Haskelytic> Oh wait, it makes sense if I consider that statement from the perspective of the mapping and not someone applying it
03:12:44 <monochrom> Yes, programming is a dialectic class struggle. :)
03:17:14 × nuc13u5 quits (~nuc13u5@2601:203:400:af50:89cc:9642:c954:860) (Remote host closed the connection)
03:19:53 nuc13u5 joins (~nuc13u5@2601:203:400:af50:89cc:9642:c954:860)
03:24:04 × sonny quits (~sonny@142.126.78.125) (Remote host closed the connection)
03:24:25 sonny joins (~sonny@142.126.78.125)
03:24:27 × nuc13u5 quits (~nuc13u5@2601:203:400:af50:89cc:9642:c954:860) (Ping timeout: 244 seconds)
03:26:07 × sonny quits (~sonny@142.126.78.125) (Remote host closed the connection)
03:26:27 sonny joins (~sonny@142.126.78.125)
03:27:41 × motherfsck quits (~motherfsc@user/motherfsck) (Ping timeout: 256 seconds)
03:30:15 × [itchyjunk] quits (~itchyjunk@user/itchyjunk/x-7353470) (Remote host closed the connection)
03:31:22 × Vajb quits (~Vajb@85-76-102-9-nat.elisa-mobile.fi) (Read error: Connection reset by peer)
03:32:11 Vajb joins (~Vajb@hag-jnsbng11-58c3ad-40.dhcp.inet.fi)
03:33:18 × dsrt^ quits (~dsrt@128-092-191-146.biz.spectrum.com) (Ping timeout: 276 seconds)
03:34:58 × sonny quits (~sonny@142.126.78.125) (Remote host closed the connection)
03:35:19 sonny joins (~sonny@142.126.78.125)
03:36:10 × Vajb quits (~Vajb@hag-jnsbng11-58c3ad-40.dhcp.inet.fi) (Ping timeout: 240 seconds)
03:36:57 × sonny quits (~sonny@142.126.78.125) (Remote host closed the connection)
03:42:01 × waleee quits (~waleee@2001:9b0:213:7200:cc36:a556:b1e8:b340) (Ping timeout: 244 seconds)
03:43:17 motherfsck joins (~motherfsc@user/motherfsck)
03:46:09 dsrt^ joins (~dsrt@128-092-191-146.biz.spectrum.com)
03:47:42 × motherfsck quits (~motherfsc@user/motherfsck) (Ping timeout: 244 seconds)
03:47:43 × azimut quits (~azimut@gateway/tor-sasl/azimut) (Ping timeout: 268 seconds)
03:48:05 × mon_aaraj quits (~MonAaraj@user/mon-aaraj/x-4416475) (Ping timeout: 256 seconds)
03:48:48 × gdown quits (~gavin@h69-11-149-231.kndrid.broadband.dynamic.tds.net) (Remote host closed the connection)
03:49:10 × zebrag quits (~chris@user/zebrag) (Quit: Konversation terminated!)
03:49:46 mon_aaraj joins (~MonAaraj@user/mon-aaraj/x-4416475)
03:59:14 mrmr joins (~mrmr@user/mrmr)
03:59:32 <yin> :)
03:59:32 yauhsien joins (~yauhsien@61-231-36-12.dynamic-ip.hinet.net)
04:01:09 <Axman6> Haskelytic: because that e can be passed to many other functions which also consume that e - thig of e = Config
04:01:13 motherfsck joins (~motherfsc@user/motherfsck)
04:01:29 kenran joins (~kenran@200116b82b11f800d1a334670b804eed.dip.versatel-1u1.de)
04:01:54 <Axman6> which is exactly what Reader does (which is just a wrapper around e -> a)
04:05:50 × mon_aaraj quits (~MonAaraj@user/mon-aaraj/x-4416475) (Ping timeout: 240 seconds)
04:08:16 mon_aaraj joins (~MonAaraj@user/mon-aaraj/x-4416475)
04:09:42 × dsrt^ quits (~dsrt@128-092-191-146.biz.spectrum.com) (Ping timeout: 276 seconds)
04:10:03 nate4 joins (~nate@98.45.169.16)
04:11:28 alp joins (~alp@user/alp)
04:11:34 Vajb joins (~Vajb@85-76-102-9-nat.elisa-mobile.fi)
04:12:30 × yauhsien quits (~yauhsien@61-231-36-12.dynamic-ip.hinet.net) (Ping timeout: 240 seconds)
04:12:30 × Vajb quits (~Vajb@85-76-102-9-nat.elisa-mobile.fi) (Read error: Connection reset by peer)
04:12:49 merijn joins (~merijn@c-001-001-028.client.esciencecenter.eduvpn.nl)
04:13:20 Vajb joins (~Vajb@2001:999:58c:b683:1e3e:e86f:8cdc:e10)
04:14:48 bitdex joins (~bitdex@gateway/tor-sasl/bitdex)
04:15:08 <jackdk> It is a simple idea expressed in such a baroque way - I remember being so confused by transformer documentation when I was first starting out.
04:15:12 × nate4 quits (~nate@98.45.169.16) (Ping timeout: 276 seconds)
04:16:13 notzmv joins (~zmv@user/notzmv)
04:22:58 × bitdex quits (~bitdex@gateway/tor-sasl/bitdex) (Remote host closed the connection)
04:23:50 bitdex joins (~bitdex@gateway/tor-sasl/bitdex)
04:25:10 dsrt^ joins (~dsrt@128-092-191-146.biz.spectrum.com)
04:25:45 takuan joins (~takuan@178-116-218-225.access.telenet.be)
04:29:13 × kenran quits (~kenran@200116b82b11f800d1a334670b804eed.dip.versatel-1u1.de) (Quit: WeeChat info:version)
04:29:37 × toluene quits (~toluene@user/toulene) (Read error: Connection reset by peer)
04:30:10 × bitdex quits (~bitdex@gateway/tor-sasl/bitdex) (Remote host closed the connection)
04:30:10 × winny quits (~weechat@user/winny) (Write error: Connection reset by peer)
04:30:10 × jpds1 quits (~jpds@gateway/tor-sasl/jpds) (Read error: Connection reset by peer)
04:30:41 winny joins (~weechat@user/winny)
04:30:47 toluene joins (~toluene@user/toulene)
04:31:09 bitdex joins (~bitdex@gateway/tor-sasl/bitdex)
04:31:20 jpds1 joins (~jpds@gateway/tor-sasl/jpds)
04:42:51 × merijn quits (~merijn@c-001-001-028.client.esciencecenter.eduvpn.nl) (Ping timeout: 276 seconds)
04:44:50 × motherfsck quits (~motherfsc@user/motherfsck) (Ping timeout: 240 seconds)
04:45:15 motherfsck joins (~motherfsc@user/motherfsck)
04:59:34 mbuf joins (~Shakthi@122.164.9.153)
05:04:24 wenjie joins (~nut@roc37-h01-176-170-197-243.dsl.sta.abo.bbox.fr)
05:20:09 coot joins (~coot@213.134.190.95)
05:22:30 × quarkyalice quits (~alice@user/quarkyalice) (Ping timeout: 240 seconds)
05:23:47 _ht joins (~quassel@231-169-21-31.ftth.glasoperator.nl)
05:23:57 quarkyalice joins (~alice@172.77.26.62)
05:23:57 × quarkyalice quits (~alice@172.77.26.62) (Changing host)
05:23:57 quarkyalice joins (~alice@user/quarkyalice)
05:25:06 christiansen joins (~christian@83-95-137-75-dynamic.dk.customer.tdc.net)
05:25:30 cyanide3dinner joins (~cyanide4d@110.227.171.252)
05:25:33 × dsrt^ quits (~dsrt@128-092-191-146.biz.spectrum.com) (Ping timeout: 256 seconds)
05:28:52 tromp joins (~textual@92-110-219-57.cable.dynamic.v4.ziggo.nl)
05:30:00 fockerize joins (~finn@roc37-h01-176-170-197-243.dsl.sta.abo.bbox.fr)
05:30:39 × mbuf quits (~Shakthi@122.164.9.153) (Ping timeout: 256 seconds)
05:40:30 × tromp quits (~textual@92-110-219-57.cable.dynamic.v4.ziggo.nl) (Quit: My iMac has gone to sleep. ZZZzzz…)
05:45:51 × _ht quits (~quassel@231-169-21-31.ftth.glasoperator.nl) (Remote host closed the connection)
05:57:14 × liz quits (~liz@86.159.158.175) (Quit: Lost terminal)
05:59:22 mbuf joins (~Shakthi@122.164.13.128)
06:07:05 dsrt^ joins (~dsrt@128-092-191-146.biz.spectrum.com)
06:12:50 yauhsien joins (~yauhsien@61-231-36-12.dynamic-ip.hinet.net)
06:16:31 vglfr joins (~vglfr@coupling.penchant.volia.net)
06:16:59 tromp joins (~textual@92-110-219-57.cable.dynamic.v4.ziggo.nl)
06:20:11 dcoutts joins (~duncan@host-92-23-41-52.as13285.net)
06:20:24 × shriekingnoise quits (~shrieking@201.212.175.181) (Quit: Quit)
06:25:46 MajorBiscuit joins (~MajorBisc@86-88-79-148.fixed.kpn.net)
06:27:42 <kronicmage> anyone know how to make a conduit terminate?
06:27:50 × zxx7529 quits (~Thunderbi@user/zxx7529) (Ping timeout: 240 seconds)
06:28:08 × Sgeo quits (~Sgeo@user/sgeo) (Read error: Connection reset by peer)
06:28:15 <kronicmage> in particular I have a `sourceFile filePath` that I want to have Nothing to await on when the file has all been consumed
06:28:24 <kronicmage> right now my `await` just hangs forever
06:33:59 <jackdk> looking at the source code of various sinks (like `sinkHandle`) in `conduit` itself, it seems like does in fact await forever, so the source is probably expected to stop `yield`ing when it has no more to produce
06:34:49 <jackdk> https://hackage.haskell.org/package/conduit-1.3.4.2/docs/src/Data.Conduit.Combinators.html#sourceFile `sourceFile` will return `()` once it has no more to produce
06:34:50 <kronicmage> is there a version of `sourceFile` that does stop yielding then?
06:35:05 <kronicmage> hmm i'll take a look
06:35:38 <jackdk> the one in conduit seems to do that?
06:36:07 briandaed joins (~briandaed@109.95.143.14.r.toneticgroup.pl)
06:36:11 <kronicmage> I see, my problem is elsewhere
06:36:16 × coot quits (~coot@213.134.190.95) (Quit: coot)
06:36:19 <kronicmage> thank you
06:37:14 gmg joins (~user@user/gehmehgeh)
06:37:42 <kronicmage> okay it seems ZipSource does not behave like ZipList as the docs would have me believe
06:39:17 <kronicmage> I have `(,) <$> ZipSource finiteStream <*> ZipSource (yieldMany [0..])` to tag the things from `finiteStream` with a counter, but ZipSource awaits indefinitely when one of the conduits is exhausted
06:39:21 <kronicmage> is there anyway I can get around this?
06:39:39 merijn joins (~merijn@c-001-001-028.client.esciencecenter.eduvpn.nl)
06:40:21 × yauhsien quits (~yauhsien@61-231-36-12.dynamic-ip.hinet.net) (Ping timeout: 256 seconds)
06:41:34 redmp joins (~redmp@mobile-166-171-250-168.mycingular.net)
06:42:00 × redmp quits (~redmp@mobile-166-171-250-168.mycingular.net) (Client Quit)
06:45:42 × alp quits (~alp@user/alp) (Ping timeout: 276 seconds)
06:46:50 <jackdk> I'd try to define a `ConduitT i (i, Int) m r` that does the tagging, instead of doing a zip? I don't normally write streaming stuff
06:47:13 <jackdk> Or maybe use https://hackage.haskell.org/package/conduit-1.3.4.2/docs/Data-Conduit-Internal.html#v:zipSources
06:47:58 <jackdk> although... the docs for ZipSource say "A combined source will take input yielded from each of its Sources until any of them stop producing output." so I think there's something else going on
06:48:38 qrpnxz joins (~qrpnxz@fsf/member/qrpnxz)
06:48:44 `2jt joins (~jtomas@141.red-88-17-65.dynamicip.rima-tde.net)
06:52:12 pretty_dumm_guy joins (trottel@gateway/vpn/protonvpn/prettydummguy/x-88029655)
06:52:51 × cyanide3dinner quits (~cyanide4d@110.227.171.252) (Remote host closed the connection)
06:59:25 × tcard quits (~tcard@p945242-ipngn9701hodogaya.kanagawa.ocn.ne.jp) (Quit: Leaving)
07:01:26 × quarkyalice quits (~alice@user/quarkyalice) (Remote host closed the connection)
07:01:50 quarkyalice joins (~alice@172.77.26.62)
07:01:50 × quarkyalice quits (~alice@172.77.26.62) (Changing host)
07:01:50 quarkyalice joins (~alice@user/quarkyalice)
07:02:02 michalz joins (~michalz@185.246.204.72)
07:02:47 gurkenglas joins (~gurkengla@dslb-002-203-144-112.002.203.pools.vodafone-ip.de)
07:03:45 res0nat0r0844 joins (~Fletch@dia.whatbox.ca)
07:04:29 tcard joins (~tcard@p945242-ipngn9701hodogaya.kanagawa.ocn.ne.jp)
07:12:50 × merijn quits (~merijn@c-001-001-028.client.esciencecenter.eduvpn.nl) (Ping timeout: 240 seconds)
07:13:56 × tromp quits (~textual@92-110-219-57.cable.dynamic.v4.ziggo.nl) (Quit: My iMac has gone to sleep. ZZZzzz…)
07:16:04 merijn joins (~merijn@c-001-001-028.client.esciencecenter.eduvpn.nl)
07:16:27 zxx7529 joins (~Thunderbi@user/zxx7529)
07:17:05 × Midjak quits (~Midjak@82.66.147.146) (Read error: Connection reset by peer)
07:24:00 × causal quits (~user@50.35.83.177) (Quit: WeeChat 3.5)
07:24:47 × sander quits (~sander@user/sander) (Quit: So long! :))
07:25:07 ccntrq joins (~Thunderbi@2a02:908:1d43:8ae0:90cd:9d46:c4ce:7598)
07:25:36 sander joins (~sander@user/sander)
07:30:50 quarkyalice_ joins (~alice@user/quarkyalice/x-8092822)
07:32:58 × quarkyalice quits (~alice@user/quarkyalice) (Ping timeout: 244 seconds)
07:36:03 chomwitt joins (~chomwitt@2a02:587:dc0d:4a00:e563:a1c3:b513:f7a5)
07:37:22 × hexeme quits (~hexeme@user/hexeme) (Quit: co'o ro do)
07:40:54 × dsrt^ quits (~dsrt@128-092-191-146.biz.spectrum.com) (Ping timeout: 264 seconds)
07:41:15 hexeme joins (~hexeme@user/hexeme)
07:44:12 Pickchea joins (~private@user/pickchea)
07:45:53 cfricke joins (~cfricke@user/cfricke)
07:45:59 Tuplanolla joins (~Tuplanoll@91-159-69-97.elisa-laajakaista.fi)
07:53:34 machinedgod joins (~machinedg@d172-219-86-154.abhsia.telus.net)
07:53:48 coot joins (~coot@213.134.190.95)
07:56:15 tzh_ joins (~tzh@c-24-21-73-154.hsd1.or.comcast.net)
07:57:13 lemonsni- joins (~lemonsnic@cpc159519-perr18-2-0-cust114.19-1.cable.virginm.net)
07:58:00 × chomwitt quits (~chomwitt@2a02:587:dc0d:4a00:e563:a1c3:b513:f7a5) (Ping timeout: 276 seconds)
07:58:00 × lemonsnicks quits (~lemonsnic@cpc159519-perr18-2-0-cust114.19-1.cable.virginm.net) (Quit: ZNC 1.8.2 - https://znc.in)
07:58:00 × hexeme quits (~hexeme@user/hexeme) (Quit: co'o ro do)
07:58:00 × hueso quits (~root@user/hueso) (Quit: No Ping reply in 180 seconds.)
07:58:17 × coot quits (~coot@213.134.190.95) (Ping timeout: 244 seconds)
07:58:51 hueso joins (~root@user/hueso)
07:58:59 ShalokShalom joins (~quassel@2a02:8109:b40:42f4:4f45:338b:3ba8:8f20)
08:00:00 hexeme joins (~hexeme@user/hexeme)
08:00:27 × tzh quits (~tzh@c-24-21-73-154.hsd1.wa.comcast.net) (Ping timeout: 276 seconds)
08:07:20 × jpds1 quits (~jpds@gateway/tor-sasl/jpds) (Ping timeout: 268 seconds)
08:08:11 jpds1 joins (~jpds@gateway/tor-sasl/jpds)
08:10:30 coot joins (~coot@213.134.190.95)
08:11:09 raehik joins (~raehik@cpc95906-rdng25-2-0-cust156.15-3.cable.virginm.net)
08:11:50 nate4 joins (~nate@98.45.169.16)
08:12:22 CiaoSen joins (~Jura@p200300c9570ffb002a3a4dfffe84dbd5.dip0.t-ipconnect.de)
08:13:12 × eggplant_ quits (~Eggplanta@2600:1700:bef1:5e10:e83b:f237:c3ef:87c1) (Remote host closed the connection)
08:15:21 × adanwan quits (~adanwan@gateway/tor-sasl/adanwan) (Ping timeout: 268 seconds)
08:16:22 × nate4 quits (~nate@98.45.169.16) (Ping timeout: 244 seconds)
08:16:22 adanwan joins (~adanwan@gateway/tor-sasl/adanwan)
08:17:21 × quarkyalice_ quits (~alice@user/quarkyalice/x-8092822) (Remote host closed the connection)
08:17:50 quarkyalice_ joins (~alice@user/quarkyalice/x-8092822)
08:17:58 × tzh_ quits (~tzh@c-24-21-73-154.hsd1.or.comcast.net) (Quit: zzz)
08:18:51 × quarkyalice_ quits (~alice@user/quarkyalice/x-8092822) (Remote host closed the connection)
08:19:14 quarkyalice_ joins (~alice@172.79.210.234)
08:19:14 × quarkyalice_ quits (~alice@172.79.210.234) (Changing host)
08:19:14 quarkyalice_ joins (~alice@user/quarkyalice/x-8092822)
08:20:21 × quarkyalice_ quits (~alice@user/quarkyalice/x-8092822) (Remote host closed the connection)
08:20:50 quarkyalice_ joins (~alice@172.79.210.234)
08:20:50 × quarkyalice_ quits (~alice@172.79.210.234) (Changing host)
08:20:50 quarkyalice_ joins (~alice@user/quarkyalice/x-8092822)
08:28:16 alp joins (~alp@user/alp)
08:28:25 osukup[m] joins (~osukupmat@2001:470:69fc:105::2:418d)
08:31:27 Surobaki joins (~surobaki@79.77.128.17)
08:31:39 × coot quits (~coot@213.134.190.95) (Quit: coot)
08:34:15 × cosimone quits (~user@93-44-186-171.ip98.fastwebnet.it) (Ping timeout: 276 seconds)
08:38:45 yauhsien joins (~yauhsien@61-231-36-12.dynamic-ip.hinet.net)
08:39:19 wolfshappen_ joins (~waff@irc.furworks.de)
08:39:37 × perrierjouet quits (~perrier-j@modemcable012.251-130-66.mc.videotron.ca) (Quit: WeeChat 3.5)
08:41:10 × raehik quits (~raehik@cpc95906-rdng25-2-0-cust156.15-3.cable.virginm.net) (Ping timeout: 244 seconds)
08:41:36 perrierjouet joins (~perrier-j@modemcable012.251-130-66.mc.videotron.ca)
08:41:55 × wolfshappen quits (~waff@irc.furworks.de) (Ping timeout: 260 seconds)
08:44:44 PiDelport joins (uid25146@id-25146.lymington.irccloud.com)
08:47:15 × Surobaki quits (~surobaki@79.77.128.17) (Ping timeout: 276 seconds)
08:47:58 × yauhsien quits (~yauhsien@61-231-36-12.dynamic-ip.hinet.net) (Ping timeout: 240 seconds)
08:49:49 × sus quits (zero@user/zeromomentum) (Quit: the lounge - https://webirc.envs.net)
08:50:21 × paddymahoney quits (~paddymaho@cpe9050ca207f83-cm9050ca207f80.cpe.net.cable.rogers.com) (Ping timeout: 246 seconds)
08:51:48 sus joins (zero@user/zeromomentum)
08:54:13 kuribas joins (~user@ptr-17d51emh493yj3hltjo.18120a2.ip6.access.telenet.be)
08:54:58 raehik joins (~raehik@cpc95906-rdng25-2-0-cust156.15-3.cable.virginm.net)
08:55:21 × quarkyalice_ quits (~alice@user/quarkyalice/x-8092822) (Remote host closed the connection)
08:55:45 quarkyalice_ joins (~alice@172.79.210.234)
08:55:45 × quarkyalice_ quits (~alice@172.79.210.234) (Changing host)
08:55:45 quarkyalice_ joins (~alice@user/quarkyalice/x-8092822)
08:56:51 × quarkyalice_ quits (~alice@user/quarkyalice/x-8092822) (Remote host closed the connection)
08:57:14 quarkyalice_ joins (~alice@172.79.210.234)
08:57:14 × quarkyalice_ quits (~alice@172.79.210.234) (Changing host)
08:57:14 quarkyalice_ joins (~alice@user/quarkyalice/x-8092822)
08:58:16 coot joins (~coot@213.134.190.95)
08:58:21 × quarkyalice_ quits (~alice@user/quarkyalice/x-8092822) (Remote host closed the connection)
08:58:45 quarkyalice_ joins (~alice@172.79.210.234)
08:58:45 × quarkyalice_ quits (~alice@172.79.210.234) (Changing host)
08:58:45 quarkyalice_ joins (~alice@user/quarkyalice/x-8092822)
08:59:51 × quarkyalice_ quits (~alice@user/quarkyalice/x-8092822) (Remote host closed the connection)
09:00:13 quarkyalice_ joins (~alice@172.79.210.234)
09:00:13 × quarkyalice_ quits (~alice@172.79.210.234) (Changing host)
09:00:13 quarkyalice_ joins (~alice@user/quarkyalice/x-8092822)
09:02:47 cosimone joins (~user@2001:b07:ae5:db26:57c7:21a5:6e1c:6b81)
09:07:18 × econo quits (uid147250@user/econo) (Quit: Connection closed for inactivity)
09:09:26 × quarkyalice_ quits (~alice@user/quarkyalice/x-8092822) (Remote host closed the connection)
09:09:45 quarkyalice_ joins (~alice@172.79.210.234)
09:09:45 × quarkyalice_ quits (~alice@172.79.210.234) (Changing host)
09:09:45 quarkyalice_ joins (~alice@user/quarkyalice/x-8092822)
09:10:51 × quarkyalice_ quits (~alice@user/quarkyalice/x-8092822) (Remote host closed the connection)
09:11:14 quarkyalice_ joins (~alice@172.79.210.234)
09:11:14 × quarkyalice_ quits (~alice@172.79.210.234) (Changing host)
09:11:14 quarkyalice_ joins (~alice@user/quarkyalice/x-8092822)
09:13:35 eggplantade joins (~Eggplanta@2600:1700:bef1:5e10:e83b:f237:c3ef:87c1)
09:13:52 Kaiepi joins (~Kaiepi@156.34.47.253)
09:17:50 × eggplantade quits (~Eggplanta@2600:1700:bef1:5e10:e83b:f237:c3ef:87c1) (Ping timeout: 240 seconds)
09:19:10 × motherfsck quits (~motherfsc@user/motherfsck) (Ping timeout: 240 seconds)
09:19:35 motherfsck joins (~motherfsc@user/motherfsck)
09:25:10 × jargon quits (~jargon@184.101.208.36) (Ping timeout: 240 seconds)
09:25:36 jargon joins (~jargon@184.101.188.251)
09:26:28 bilegeek joins (~bilegeek@101.sub-174-209-38.myvzw.com)
09:27:40 × raehik quits (~raehik@cpc95906-rdng25-2-0-cust156.15-3.cable.virginm.net) (Ping timeout: 244 seconds)
09:29:39 raehik joins (~raehik@cpc95906-rdng25-2-0-cust156.15-3.cable.virginm.net)
09:31:04 × alexhandy quits (~trace@user/trace) (Read error: Connection reset by peer)
09:31:10 alexhandy2 joins (~trace@user/trace)
09:34:18 × raym quits (~raym@user/raym) (Ping timeout: 264 seconds)
09:37:36 × fockerize quits (~finn@roc37-h01-176-170-197-243.dsl.sta.abo.bbox.fr) (Ping timeout: 276 seconds)
09:38:26 dsrt^ joins (~dsrt@128-092-191-146.biz.spectrum.com)
09:40:51 × quarkyalice_ quits (~alice@user/quarkyalice/x-8092822) (Remote host closed the connection)
09:41:15 quarkyalice_ joins (~alice@172.79.210.234)
09:41:15 × quarkyalice_ quits (~alice@172.79.210.234) (Changing host)
09:41:15 quarkyalice_ joins (~alice@user/quarkyalice/x-8092822)
09:43:19 <kuribas> is it just me, or is Generics way, way harder then it should be?
09:45:12 × bilegeek quits (~bilegeek@101.sub-174-209-38.myvzw.com) (Quit: Leaving)
09:48:22 tromp joins (~textual@92-110-219-57.cable.dynamic.v4.ziggo.nl)
09:49:49 × qhong quits (~qhong@rescomp-21-400677.stanford.edu) (Remote host closed the connection)
09:59:00 <dknite> kuribas: Probably just you, but you'll get over it, don't worry
09:59:14 <kuribas> I doubt it
09:59:32 <kuribas> like, why is there this extra type variable which complicates everything.
09:59:47 × tromp quits (~textual@92-110-219-57.cable.dynamic.v4.ziggo.nl) (Quit: My iMac has gone to sleep. ZZZzzz…)
10:01:46 × dsrt^ quits (~dsrt@128-092-191-146.biz.spectrum.com) (Ping timeout: 244 seconds)
10:02:32 × zxx7529 quits (~Thunderbi@user/zxx7529) (Remote host closed the connection)
10:02:46 zxx7529 joins (~Thunderbi@user/zxx7529)
10:02:48 × frost quits (~frost@user/frost) (Ping timeout: 252 seconds)
10:05:23 eggplantade joins (~Eggplanta@2600:1700:bef1:5e10:e83b:f237:c3ef:87c1)
10:06:25 <kuribas> And balancing the :*: also complicates things.
10:08:10 tromp joins (~textual@92-110-219-57.cable.dynamic.v4.ziggo.nl)
10:09:27 fweht joins (uid404746@id-404746.lymington.irccloud.com)
10:09:30 × eggplantade quits (~Eggplanta@2600:1700:bef1:5e10:e83b:f237:c3ef:87c1) (Ping timeout: 244 seconds)
10:09:33 × cfricke quits (~cfricke@user/cfricke) (Quit: WeeChat 3.5)
10:12:08 Surobaki joins (~surobaki@137.44.222.80)
10:12:17 frost joins (~frost@user/frost)
10:13:39 kjak joins (~kjak@pool-108-31-68-111.washdc.fios.verizon.net)
10:13:42 × raehik quits (~raehik@cpc95906-rdng25-2-0-cust156.15-3.cable.virginm.net) (Ping timeout: 276 seconds)
10:13:55 × Surobaki quits (~surobaki@137.44.222.80) (Changing host)
10:13:55 Surobaki joins (~surobaki@user/surobaki)
10:13:59 × merijn quits (~merijn@c-001-001-028.client.esciencecenter.eduvpn.nl) (Ping timeout: 256 seconds)
10:15:06 raehik joins (~raehik@cpc95906-rdng25-2-0-cust156.15-3.cable.virginm.net)
10:15:37 × Haskelytic quits (~Haskelyti@118.179.211.17) (Quit: Client closed)
10:17:27 <kuribas> How do I make an existential function again?
10:17:51 <kuribas> for example: (forall a. Show a => a) takes any `a` which has a Show instance.
10:18:06 <kuribas> However I want (exists a. Show a => a)
10:18:10 × kjak quits (~kjak@pool-108-31-68-111.washdc.fios.verizon.net) (Ping timeout: 240 seconds)
10:18:23 <kuribas> a function that has some type which has a show instance.
10:19:59 <kuribas> oh never mind, I can just remove the forall.
10:23:18 <jackdk> kuribas: generics took me a while. this talk helped me a lot: https://www.youtube.com/watch?v=yiT3fAA-BDo
10:23:45 <kuribas> If I write (forall a. y), it means y is independent of a, right?
10:23:49 <kuribas> Or can y contain a?
10:24:59 <kuribas> jackdk: I *do* understand generics. I just find it hard to use.
10:25:08 __monty__ joins (~toonn@user/toonn)
10:26:03 _ht joins (~quassel@231-169-21-31.ftth.glasoperator.nl)
10:26:31 osukup[m] is now known as mimi1vx[m]
10:26:38 × frost quits (~frost@user/frost) (Ping timeout: 252 seconds)
10:26:56 kjak joins (~kjak@pool-108-31-68-111.washdc.fios.verizon.net)
10:28:05 <kuribas> I want to write a polymorphic function parameterised over `a`, like `(Foo a, Bar a) -> Baz a`
10:28:33 <kuribas> or `(Foo a, Bar a, Fuga a) -> Baz a`
10:29:10 × stiell quits (~stiell@gateway/tor-sasl/stiell) (Ping timeout: 268 seconds)
10:29:14 <kuribas> However ghc's type system seems not good enough to express that the tuple is a function of `a`.
10:29:39 <kuribas> this function should be universally quantified.
10:29:44 <kuribas> (forall a. ...)
10:30:01 stiell joins (~stiell@gateway/tor-sasl/stiell)
10:30:06 dschrempf joins (~dominik@mobiledyn-62-240-134-33.mrsn.at)
10:30:43 × dschrempf quits (~dominik@mobiledyn-62-240-134-33.mrsn.at) (Client Quit)
10:31:03 × alexhandy2 quits (~trace@user/trace) (Read error: Connection reset by peer)
10:31:10 alexhandy joins (~trace@user/trace)
10:32:33 × alp quits (~alp@user/alp) (Ping timeout: 276 seconds)
10:33:47 <Lears> Honestly I'm not sure exactly what you're trying to do. But maybe you want functor product?
10:34:31 <kuribas> I could use a HList, or just (:*:), but tuples seem more ergonomic.
10:35:10 <__monty__> kuribas: Isn't an explicit forall enough?
10:35:46 <kuribas> if I write (forall a. f a -> i a), ghc cannot infer the f.
10:36:05 × dcoutts quits (~duncan@host-92-23-41-52.as13285.net) (Ping timeout: 256 seconds)
10:36:25 × coot quits (~coot@213.134.190.95) (Quit: coot)
10:36:38 frost joins (~frost@user/frost)
10:37:03 <__monty__> Can't you use it multiple times? `forall f i. (forall a. f a -> i a)`
10:38:37 <kuribas> the problem is inferring the `f`.
10:38:54 <kuribas> WHat is `f` for (forall a. (Foo a, Bar a)) ?
10:39:42 × Surobaki quits (~surobaki@user/surobaki) (Quit: Leaving)
10:40:32 merijn joins (~merijn@c-001-001-028.client.esciencecenter.eduvpn.nl)
10:41:05 raym joins (~raym@user/raym)
10:41:26 <kuribas> Seems my API is simply not possible, and I'd need a hetergenous list.
10:41:52 jjhoo joins (~jahakala@user/jjhoo)
10:42:18 × CiaoSen quits (~Jura@p200300c9570ffb002a3a4dfffe84dbd5.dip0.t-ipconnect.de) (Ping timeout: 272 seconds)
10:44:28 califax_ joins (~califax@user/califx)
10:45:12 × califax quits (~califax@user/califx) (Ping timeout: 268 seconds)
10:45:43 califax_ is now known as califax
10:51:03 chomwitt joins (~chomwitt@2a02:587:dc0d:4a00:bd6:dafd:ce58:5eb6)
10:52:01 <tomsmeding> kuribas: \a -> (Foo a, Bar a) is unfortunately not expressible in a type in GHC
10:52:28 <tomsmeding> A type-level lambda needs a guarding type constructor, i.e. a newtype
10:52:34 eggplantade joins (~Eggplanta@2600:1700:bef1:5e10:e83b:f237:c3ef:87c1)
10:52:43 ccapndave joins (~ccapndave@xcpe-194-230-18-110.cgn.res.adslplus.ch)
10:53:01 <tomsmeding> So yeah, in today's haskell, you either need :*: / HList (mostly the same solution in this respect) or a newtypr
10:53:35 <tomsmeding> I point out the existence of Data.Functor.Product as a slightly more canonical, albeit more verbose, version of :*:
10:55:10 × tromp quits (~textual@92-110-219-57.cable.dynamic.v4.ziggo.nl) (Quit: My iMac has gone to sleep. ZZZzzz…)
10:55:53 tromp joins (~textual@92-110-219-57.cable.dynamic.v4.ziggo.nl)
10:57:16 <jackdk> I do wish those two were unified
10:57:30 × eggplantade quits (~Eggplanta@2600:1700:bef1:5e10:e83b:f237:c3ef:87c1) (Ping timeout: 272 seconds)
10:58:00 <ccapndave> Hi everyone - I wrote a little Haskell program to parse bank account statements a while ago. Since then I have got an M1 Mac and I'm trying to run it today and I get an error saying: No setup information found for ghc-8.8.4 on your platform. This probably means a GHC bindist has not yet been added for OS key 'macosx-aarch64'. Supported versions: ghc-8.10.5, ghc-8.10.6, ghc-8.10.7, ghc-9.0.2, ghc-9.2.1, ghc-9.2.2,
10:58:01 <kuribas> hmm, maybe I found a way...
10:58:01 <ccapndave> ghc-9.2.3
10:58:12 <ccapndave> I installed using `ghcup`. Any idea what I should do to fix this?
10:59:52 <raehik> ccapndave: I think native M1 support is only available in the newer GHC versions
10:59:54 <ccapndave> Ah, I just did `stack config set resolver ghc-8.10.7` and that looked like it helps
11:00:09 <raehik> ah, so you had the new one installed but stack was asking for an older one
11:00:13 <ccapndave> I guess so
11:00:33 <ccapndave> I haven't touched anything Haskell-y (sadly) for about 9 months so I forgot how it works
11:01:01 coot joins (~coot@213.134.190.95)
11:01:09 <ccapndave> The day I find someone willing to pay me to work with Haskell will be the day I chuck out every other language
11:01:16 <raehik> If you have bugs or performance issues, consider using 9.0 or 9.2. But they might need a bit more fiddling with Stack due to how they package things
11:01:31 <ccapndave> Its a very simple program so hopefully it won't require any tweaking
11:01:59 <ccapndave> https://github.com/ccapndave/postfinance-freeagent
11:02:26 nate4 joins (~nate@98.45.169.16)
11:03:27 <kuribas> Why is this language so amazing and frustrating at the same time?
11:04:17 × jonathanx quits (~jonathan@h-178-174-176-109.A357.priv.bahnhof.se) (Ping timeout: 244 seconds)
11:07:15 <kuribas> When it comes to parsing, manipulation complex data, I haven't found anything nearly as nice.
11:07:20 sayola joins (~vekto@dslb-088-078-152-210.088.078.pools.vodafone-ip.de)
11:07:39 × nate4 quits (~nate@98.45.169.16) (Ping timeout: 276 seconds)
11:07:52 <kuribas> Also creating nice DSLs. Lisps take pride in that, but lisp DSLs can be hard to understand.
11:08:48 <sm> ccapndave: I recommend 9.2, it supports the M1 and builds 3x quicker
11:09:10 <ccapndave> Alright
11:09:21 <ccapndave> `stack` is throwing all kinds of dependency errors anyway
11:09:36 × motherfsck quits (~motherfsc@user/motherfsck) (Ping timeout: 276 seconds)
11:09:41 <ccapndave> ha - Stack has not been tested with GHC versions above 9.0, and using 9.2, this may fail
11:09:46 <ccapndave> This is the first message I got
11:09:59 <sm> that's a standard stack message, ignore it
11:10:04 <ccapndave> Ok
11:10:38 <ccapndave> I can see that an afternoon that was supposed to be spent doing taxes is going to turn into an afternoon playing with Haskell
11:10:47 <sm> lots of errors are caused by mixed intel and arm binaries installed by different tools, the safest way is to expunge all of them now then install all tools with an up to date ghcup
11:10:52 <jackdk> Death, taxes, and type errors.
11:11:02 <sm> and then tell stack to use ghcup's ghcs
11:11:22 <ccapndave> Ah - I just did `stack config set resolver ghc-9.2` and then `stack install`
11:11:28 <jackdk> I personally would not use stack, because it seems to bring lots of pain and another layer to think about, but you can probably make it work
11:11:32 <ccapndave> I should install it from `ghc` first eh
11:11:59 <sm> you can see which kind of binaries you have in Activity Monitor
11:12:26 <ccapndave> Activity Monitor like the Mac `top` thing?
11:12:51 jonathanx joins (~jonathan@h-178-174-176-109.A357.priv.bahnhof.se)
11:12:55 <sm> yes
11:13:40 <sm> https://haskell-links.org/?q=stack-system-ghc is how to make stack use ghcup
11:14:03 × merijn quits (~merijn@c-001-001-028.client.esciencecenter.eduvpn.nl) (Ping timeout: 256 seconds)
11:14:37 <kuribas> tomsmeding: I think I found a way... It does require wrapping the tuple in an existential.
11:15:28 <ccapndave> sm: Thanks very much. Now I shall fight with versions until it installs
11:16:36 <tomsmeding> kuribas: how does that look?
11:17:00 <kuribas> tomsmeding: data PartialTuple x a = forall t f y . ( GFTranspose x t f, Coercible (Rep y ()) (Tupled f a)) => PT y
11:17:00 <kuribas>
11:17:07 <ccapndave> I had to copy-paste a lot of nonsense into `stack.yaml`'s `extra-deps` but it seems to be compiling :+1:
11:17:42 <tomsmeding> kuribas: ._.
11:17:50 <sm> that's usually a sign of using the wrong resolver
11:19:20 <kuribas> tomsmeding: or I could require the user to use a function, instead of wrapping an existential.
11:20:11 motherfsck joins (~motherfsc@user/motherfsck)
11:20:13 <ccapndave> sm: Feel free to take a peek - https://github.com/ccapndave/postfinance-freeagent
11:20:28 <ccapndave> It does compile like this however, which is a step in the right direction
11:20:59 <sm> nifty! I'm interested in finance tools too. Tried FreeAgent a while back
11:21:23 <kuribas> tomsmeding: like: fzipTupleWith (partially $ \(Identity x, Const y) -> ...) (fields, names)
11:21:30 merijn joins (~merijn@c-001-001-028.client.esciencecenter.eduvpn.nl)
11:21:41 <ccapndave> sm: Its great, I've been using it almost since the beginning
11:21:47 <sm> 9.2.3 is in stackage now, so you could just use https://www.stackage.org/nightly-2022-07-07
11:21:48 <kuribas> tomsmeding: vs fzipTupleWith (\(PT (Identity x, Const y)) -> ...) (fields, names)
11:22:04 <tomsmeding> kuribas: that's cool
11:22:21 <tomsmeding> Is that Rep from Representable?
11:22:27 <kuribas> tomsmeding: for generics
11:22:32 <tomsmeding> Ooh
11:22:32 <ccapndave> sm: Assume I know little about package management in Haskell :) What does "use" mean in this context?
11:24:35 <kuribas> tomsmeding: not typechecked yet :)
11:24:44 <tomsmeding> Heh
11:24:45 <sm> ccapndave: well, usually in stack.yaml we'd see `resolver: nightly-2022-07-07` or so, causing all the packages in https://www.stackage.org/nightly-2022-07-07 to be available. Your resolver setting is unfamiliar to me, it seems to specify just the compiler version and no snapshot ? As a result you have to list all the deps manually
11:25:51 <ccapndave> yay
11:26:02 <ccapndave> That did the trick
11:26:04 <ccapndave> Thanks
11:26:16 <sm> np
11:27:30 alp joins (~alp@user/alp)
11:30:38 × zxx7529 quits (~Thunderbi@user/zxx7529) (Ping timeout: 244 seconds)
11:31:03 × alexhandy quits (~trace@user/trace) (Read error: Connection reset by peer)
11:31:09 alexhandy2 joins (~trace@user/trace)
11:32:41 × sayola quits (~vekto@dslb-088-078-152-210.088.078.pools.vodafone-ip.de) (Quit: Leaving.)
11:38:59 pleo joins (~pleo@user/pleo)
11:39:21 × quarkyalice_ quits (~alice@user/quarkyalice/x-8092822) (Remote host closed the connection)
11:39:45 quarkyalice_ joins (~alice@user/quarkyalice/x-8092822)
11:39:50 × califax quits (~califax@user/califx) (Quit: ZNC 1.8.2 - https://znc.in)
11:39:53 eggplantade joins (~Eggplanta@2600:1700:bef1:5e10:e83b:f237:c3ef:87c1)
11:39:57 califax_ joins (~califax@user/califx)
11:40:50 dsrt^ joins (~dsrt@128-092-191-146.biz.spectrum.com)
11:41:07 califax_ is now known as califax
11:43:50 × eggplantade quits (~Eggplanta@2600:1700:bef1:5e10:e83b:f237:c3ef:87c1) (Ping timeout: 240 seconds)
11:51:51 × Pickchea quits (~private@user/pickchea) (Ping timeout: 276 seconds)
11:53:56 × gurkenglas quits (~gurkengla@dslb-002-203-144-112.002.203.pools.vodafone-ip.de) (Ping timeout: 255 seconds)
11:56:34 Guest30 joins (~Guest30@80.92.68.22)
11:57:11 × ccntrq quits (~Thunderbi@2a02:908:1d43:8ae0:90cd:9d46:c4ce:7598) (Remote host closed the connection)
11:59:45 ccntrq joins (~Thunderbi@2a02:908:1d43:8ae0:8f94:7da8:255b:75f5)
12:00:09 × Guest30 quits (~Guest30@80.92.68.22) (Client Quit)
12:01:36 × dsrt^ quits (~dsrt@128-092-191-146.biz.spectrum.com) (Ping timeout: 276 seconds)
12:07:29 sayola joins (~sayola@dslb-088-078-152-210.088.078.pools.vodafone-ip.de)
12:08:04 × ShalokShalom quits (~quassel@2a02:8109:b40:42f4:4f45:338b:3ba8:8f20) (Remote host closed the connection)
12:08:49 zxx7529 joins (~Thunderbi@user/zxx7529)
12:09:20 × tromp quits (~textual@92-110-219-57.cable.dynamic.v4.ziggo.nl) (Quit: My iMac has gone to sleep. ZZZzzz…)
12:10:46 × frost quits (~frost@user/frost) (Ping timeout: 252 seconds)
12:10:56 × cheater quits (~Username@user/cheater) (Read error: Connection reset by peer)
12:12:28 ShalokShalom joins (~quassel@2a02:8109:b40:42f4:4f45:338b:3ba8:8f20)
12:12:28 × ShalokShalom quits (~quassel@2a02:8109:b40:42f4:4f45:338b:3ba8:8f20) (Client Quit)
12:14:23 cheater joins (~Username@user/cheater)
12:19:08 × fweht quits (uid404746@id-404746.lymington.irccloud.com) (Quit: Connection closed for inactivity)
12:19:26 × quarkyalice_ quits (~alice@user/quarkyalice/x-8092822) (Remote host closed the connection)
12:19:43 quarkyalice_ joins (~alice@172.79.210.234)
12:19:43 × quarkyalice_ quits (~alice@172.79.210.234) (Changing host)
12:19:43 quarkyalice_ joins (~alice@user/quarkyalice/x-8092822)
12:20:53 adrazalan joins (~adrazalan@42.191.189.65)
12:22:04 yaroot_ joins (~yaroot@166.104.13.160.dy.iij4u.or.jp)
12:22:48 dsrt^ joins (~dsrt@128-092-191-146.biz.spectrum.com)
12:23:38 × yaroot quits (~yaroot@2409:12:ac0:2300:680e:dbff:fe1e:4953) (Ping timeout: 240 seconds)
12:23:38 yaroot_ is now known as yaroot
12:25:27 tromp joins (~textual@92-110-219-57.cable.dynamic.v4.ziggo.nl)
12:25:39 × pleo quits (~pleo@user/pleo) (Ping timeout: 276 seconds)
12:25:58 Pickchea joins (~private@user/pickchea)
12:26:41 eggplantade joins (~Eggplanta@2600:1700:bef1:5e10:e83b:f237:c3ef:87c1)
12:27:15 pleo joins (~pleo@user/pleo)
12:27:47 × pleo quits (~pleo@user/pleo) (Client Quit)
12:28:06 pleo joins (~pleo@user/pleo)
12:31:04 × eggplantade quits (~Eggplanta@2600:1700:bef1:5e10:e83b:f237:c3ef:87c1) (Ping timeout: 244 seconds)
12:32:57 fockerize joins (~finn@roc37-h01-176-170-197-243.dsl.sta.abo.bbox.fr)
12:33:36 john joins (~john@115.98.233.159)
12:33:49 <john> Hi
12:34:01 <john> I am solving haskell from first principles
12:34:35 <john> task write a function which takes a string "curry is awesome" and returns "awesome is curry"
12:35:15 <kuribas> :t words
12:35:17 <lambdabot> String -> [String]
12:35:22 <kuribas> :t unwords
12:35:24 <lambdabot> [String] -> String
12:35:37 <john> my answer is myReverse x = drop 9 x ++ " " ++ take 4 (drop 5 x) ++ " " ++ take 5 x
12:36:02 <john> can my answer be re written using $ sign ?
12:36:09 Clint squints.
12:36:30 <kuribas> john: did you just hardcode the word lengths? :-O
12:36:43 <john> @kuribas
12:36:43 <lambdabot> Unknown command, try @list
12:37:05 <john> The question asks to make a function only for that string "curry is awesome"
12:37:15 <john> its very early in the book
12:37:19 <john> chap 3
12:37:55 <kuribas> :t \s -> case s of "curry is awesome" -> "awesome is curry"; _ -> ""
12:37:56 <lambdabot> [Char] -> [Char]
12:38:14 <dknite> john: That doesn't mean you shouldn't think generally
12:38:39 <dknite> Think about the steps: break the string into words
12:38:40 <kuribas> dknite: maybe it does? The text should clarify what needs to be done.
12:39:01 <dknite> Then reverse the words
12:39:08 <john> while my answer works, if i use $ sign like this myReverse x = drop 9 x ++ " " take 4 $ drop 5 x ++" "++ take 5 x
12:39:16 <dknite> Finally join them again
12:39:19 <john> it gives an error.. why
12:39:27 <john> I dont want to use brackets
12:39:45 <dknite> john: that's not always feasible
12:40:47 <john> @dknite.. the book says $ can be used instead of brackets ??
12:40:47 <lambdabot> Unknown command, try @list
12:41:08 <john> the error i get is here. https://pastebin.com/SPxFu64Z
12:41:56 <dknite> kuribas: It is not a textbook or homework, so exercises don't have to razor-accurately specified
12:42:03 <Clint> your first problem is that you got rid of a ++
12:42:10 × Pickchea quits (~private@user/pickchea) (Ping timeout: 240 seconds)
12:42:33 <int-e> you're missing a ++, and ++ binds stronger than $ does
12:43:02 × ccapndave quits (~ccapndave@xcpe-194-230-18-110.cgn.res.adslplus.ch) (Read error: Connection reset by peer)
12:43:24 <int-e> > take 4 $ "ghi" ++ " " ++ "abcdef"
12:43:26 <lambdabot> "ghi "
12:45:25 <john> @intt-e.. can you elaborate on stronger ? ..
12:45:25 <lambdabot> Unknown command, try @list
12:45:56 × qrpnxz quits (~qrpnxz@fsf/member/qrpnxz) (Quit: WeeChat 3.4)
12:46:35 × mon_aaraj quits (~MonAaraj@user/mon-aaraj/x-4416475) (Ping timeout: 244 seconds)
12:46:35 <john> are there some rules as to when the $ can be used ??
12:47:50 × cosimone quits (~user@2001:b07:ae5:db26:57c7:21a5:6e1c:6b81) (Ping timeout: 240 seconds)
12:48:07 <TMA> john: $ is a way to avoid parentheses
12:48:07 × dsrt^ quits (~dsrt@128-092-191-146.biz.spectrum.com) (Ping timeout: 256 seconds)
12:48:25 jgeerds joins (~jgeerds@55d437cf.access.ecotel.net)
12:48:50 mon_aaraj joins (~MonAaraj@user/mon-aaraj/x-4416475)
12:51:20 <TMA> john: a b c is a shorthand for (((a) b) c) ; a $ b c is a shorthand for ((a) ((b) c)) or a (b c)
12:51:43 <kuribas> dknite: it should at least say something like "reverse the words". Otherwise his solution is as good as any.
12:52:04 × pavonia quits (~user@user/siracusa) (Quit: k-lined (proving Goldbach's conjecture is off-topic on this network))
12:52:28 <dknite> kuribas: Oh it's a correct solution alright
12:52:45 Haskelytic joins (~Haskelyti@118.179.211.17)
12:52:50 <kuribas> dknite: though it would get minus points for complexity :)
12:53:16 <john> is there an order in which $ sign is evaluated? why am i getting the error ?
12:53:49 <int-e> you have a (" " take 4) subexpression that will never be correctly typed, as it says on line 19.
12:55:23 [itchyjunk] joins (~itchyjunk@user/itchyjunk/x-7353470)
12:55:25 <int-e> once you fix that you'll run into the fact that ++ binds more strongly than $
12:56:14 <john> int-e : ya i fixed that
12:56:15 <[itchyjunk]> $++$
12:56:18 <john> still got this https://pastebin.com/WPh8sA2C
12:56:29 <[itchyjunk]> oops wrong channel
12:57:00 <john> int-e are you saying that in this particular case i will not be able to use $ ??
12:57:06 <int-e> john: well, as I said, ++ binds more strongly than $, so `take 4` becomes an argument of ++ as it says on line 20
12:57:25 <int-e> john: not to save parentheses, nope
12:57:53 <john> int e : thanks.. I guess i need to understand rules of using $ a bit more..
12:57:55 <john> thanks a lot
12:58:12 <int-e> Which is fine, parentheses are good. Personally I mostly use $ in places where it's never wrong... like println $ ...whatever... or pure $ ...whatever...
12:58:39 <john> int-e : ok
12:58:44 <int-e> so mostly a select few functions that take a single argument
12:59:00 jmcarthur joins (~jmcarthur@c-73-29-224-10.hsd1.nj.comcast.net)
12:59:08 × coot quits (~coot@213.134.190.95) (Quit: coot)
12:59:36 cosimone joins (~user@93-44-186-171.ip98.fastwebnet.it)
12:59:37 coot joins (~coot@213.134.190.95)
13:00:03 <int-e> btw, I also think it's worth your time to actually read error messages... they often provide good hints as to what it's wrong, but you'll need practice to decipher them
13:00:12 <int-e> it's->is
13:00:19 × Techcable quits (~Techcable@user/Techcable) (Remote host closed the connection)
13:00:29 <john> int-e: i was actually going over the same coupled with your interpretation..
13:00:35 <john> :D
13:02:27 Techcable joins (~Techcable@user/Techcable)
13:02:41 <john> int-e : The book asks readers to focus on the first few lines of the error.. which in my case talks about type mismatch.. https://pastebin.com/WPh8sA2C any reason you focussed on the second part ?
13:04:18 <int-e> Well, the second part breaks down the error location in terms of subexpressions. In this case, that's more useful than the first part because one of the subexpressions doesn't make sense even if you don't think in terms of types
13:04:46 <int-e> basically, if you're confused about precedences, the second part will help you more than the first
13:05:09 <int-e> oh... also... those are two errors
13:05:10 <int-e> hmm
13:05:22 <int-e> but the second one is easier to understand?
13:05:32 <john> int-e: understood.. but how did you know where to focus? or is it that out of practice ??
13:05:56 <int-e> It's kind of cheating... I knew what was wrong before I saw the error.
13:06:30 <john> oh.. ok.. so its just practice.. ..having a tough time with haskell in general..:D
13:06:33 <john> thanks
13:07:00 × cosimone quits (~user@93-44-186-171.ip98.fastwebnet.it) (Remote host closed the connection)
13:11:12 × mncheckm quits (~mncheck@193.224.205.254) (Quit: Leaving)
13:12:12 cosimone joins (~user@2001:b07:ae5:db26:57c7:21a5:6e1c:6b81)
13:13:43 eggplantade joins (~Eggplanta@2600:1700:bef1:5e10:e83b:f237:c3ef:87c1)
13:17:07 × jmcarthur quits (~jmcarthur@c-73-29-224-10.hsd1.nj.comcast.net) (Quit: My MacBook Air has gone to sleep. ZZZzzz…)
13:17:50 × jgeerds quits (~jgeerds@55d437cf.access.ecotel.net) (Ping timeout: 240 seconds)
13:18:05 × eggplantade quits (~Eggplanta@2600:1700:bef1:5e10:e83b:f237:c3ef:87c1) (Ping timeout: 255 seconds)
13:18:32 amonowy joins (~amonowy@83.6.20.198.ipv4.supernova.orange.pl)
13:19:50 jao joins (~jao@cpc103048-sgyl39-2-0-cust502.18-2.cable.virginm.net)
13:20:41 × alp quits (~alp@user/alp) (Ping timeout: 244 seconds)
13:21:55 <amonowy> Hi! I just finished my first Haskell project and I'm looking for someone to review it (for money). Its terminal app with Brick that is simple interface to Trello (some todo app). It is 1700 lines of code.
13:22:30 <fockerize> how to pass args to cabal run ?
13:22:50 <fockerize> cabal run -- arg1 doesn't seem to work
13:23:13 <maerwald[m]> fockerize: cabal run <target> -- [arg for target..]
13:23:31 <maerwald[m]> Ok, my client swallowed it
13:23:45 <maerwald[m]> cabal run target -- args for target
13:24:05 <fockerize> got it
13:27:16 Pickchea joins (~private@user/pickchea)
13:28:26 × motherfsck quits (~motherfsc@user/motherfsck) (Ping timeout: 244 seconds)
13:30:53 dsrt^ joins (~dsrt@128-092-191-146.biz.spectrum.com)
13:31:05 × alexhandy2 quits (~trace@user/trace) (Read error: Connection reset by peer)
13:31:16 alexhandy joins (~trace@user/trace)
13:31:58 × fockerize quits (~finn@roc37-h01-176-170-197-243.dsl.sta.abo.bbox.fr) (Ping timeout: 240 seconds)
13:32:43 × quarkyalice_ quits (~alice@user/quarkyalice/x-8092822) (Remote host closed the connection)
13:33:49 alp joins (~alp@user/alp)
13:33:49 × gentauro quits (~gentauro@user/gentauro) (Read error: Connection reset by peer)
13:35:56 × phma quits (~phma@2001:5b0:2172:b528:f34b:433f:7c06:fc5b) (Read error: Connection reset by peer)
13:36:48 phma joins (phma@2001:5b0:215a:f018:4fce:809b:f264:f166)
13:37:13 × john quits (~john@115.98.233.159) (Quit: Leaving)
13:38:19 quarkyalice joins (~alice@172.79.210.234)
13:38:19 × quarkyalice quits (~alice@172.79.210.234) (Changing host)
13:38:19 quarkyalice joins (~alice@user/quarkyalice)
13:39:53 gentauro joins (~gentauro@user/gentauro)
13:41:01 motherfsck joins (~motherfsc@user/motherfsck)
13:41:10 × pleo quits (~pleo@user/pleo) (Ping timeout: 240 seconds)
13:43:26 × quarkyalice quits (~alice@user/quarkyalice) (Remote host closed the connection)
13:44:50 quarkyalice joins (~alice@user/quarkyalice)
13:45:38 eggplantade joins (~Eggplanta@2600:1700:bef1:5e10:e83b:f237:c3ef:87c1)
13:46:00 × dsrt^ quits (~dsrt@128-092-191-146.biz.spectrum.com) (Ping timeout: 244 seconds)
13:49:14 × sayola quits (~sayola@dslb-088-078-152-210.088.078.pools.vodafone-ip.de) (Quit: Leaving.)
13:49:38 × eggplantade quits (~Eggplanta@2600:1700:bef1:5e10:e83b:f237:c3ef:87c1) (Ping timeout: 240 seconds)
13:49:52 sayola joins (~sayola@dslb-088-078-152-210.088.078.pools.vodafone-ip.de)
13:54:25 × mon_aaraj quits (~MonAaraj@user/mon-aaraj/x-4416475) (Ping timeout: 256 seconds)
13:55:48 × adanwan quits (~adanwan@gateway/tor-sasl/adanwan) (Remote host closed the connection)
13:56:06 adanwan joins (~adanwan@gateway/tor-sasl/adanwan)
14:02:48 dsrt^ joins (~dsrt@128-092-191-146.biz.spectrum.com)
14:03:23 azimut joins (~azimut@gateway/tor-sasl/azimut)
14:05:48 pleo joins (~pleo@user/pleo)
14:05:50 × FragByte quits (~christian@user/fragbyte) (Quit: Quit)
14:06:06 duckie joins (~duckie@user/duckie)
14:07:48 FragByte joins (~christian@user/fragbyte)
14:09:22 <kuribas> tomsmeding: I replaced the generics with a custom hlist, and everything suddenly became much simpler :)
14:09:38 <kuribas> tomsmeding: and type inference improved as well! (due to the custom hlist).
14:11:42 <kuribas> tomsmeding: it's a shame I cannot overload list syntax like in idris.
14:12:24 × tromp quits (~textual@92-110-219-57.cable.dynamic.v4.ziggo.nl) (Quit: My iMac has gone to sleep. ZZZzzz…)
14:12:33 <kuribas> eh, I think I found a weird bug.
14:12:50 <kuribas> this fails: zipShow x = fzipManyWith (\(Identity y :> Const t :> _ :> End) -> Const $ t <> Text.pack (show y)) (x :~> flabels :~> fdicts @Show :~> End)
14:13:04 <kuribas> But this works: zipShow x = fzipManyWith (\(Identity y :> Const t :> Dict :> End) -> Const $ t <> Text.pack (show y)) (x :~> flabels :~> fdicts @Show :~> End)
14:13:25 <kuribas> The only difference is that I put an explicit `Dict`, even though it isn't used.
14:13:42 <kuribas> However, without it, ghc doesn't seem to be able to find the Show dictionary from the context.
14:14:12 <PiDelport> kuribas: Regarding overloading list syntax, there's the OverloadedLists extension?
14:14:21 <geekosaur> it's got limitations
14:14:28 <dmj`> amonowy: I'll check it out :P
14:15:13 <geekosaur> heterogeneous lists still aren't possible with OverloadedLists. I think they're not even possible with RebindableSyntax
14:15:16 <kuribas> PiDelport: that still goes via a monomorphic list.
14:15:30 <kuribas> where in idris it is purely syntactic.
14:15:53 <kuribas> [a, b, c] gets desugared to a :: b :: c :: []
14:16:00 <Lears> kuribas: If you need the constraint in scope, you need to match to expose it.
14:16:02 <kuribas> and (::) and [] can be overloaded.
14:16:08 <kuribas> Lears: right.
14:16:51 Kevin578 joins (~Kevin578@pool-173-76-179-30.bstnma.fios.verizon.net)
14:19:30 tromp joins (~textual@92-110-219-57.cable.dynamic.v4.ziggo.nl)
14:22:20 × ccntrq quits (~Thunderbi@2a02:908:1d43:8ae0:8f94:7da8:255b:75f5) (Remote host closed the connection)
14:28:27 jonathanx_ joins (~jonathan@h-178-174-176-109.A357.priv.bahnhof.se)
14:30:30 × jonathanx quits (~jonathan@h-178-174-176-109.A357.priv.bahnhof.se) (Ping timeout: 240 seconds)
14:32:29 <tomsmeding> kuribas: the Dict pattern match doesn't seem to bind any fields, but it does bind one: the Show dictionary
14:32:45 eggplantade joins (~Eggplanta@2600:1700:bef1:5e10:e83b:f237:c3ef:87c1)
14:33:01 <tomsmeding> Without the explicit match, haskell semantics forces the argument to be lazy, which prevents ghc from projecting out the dictionary
14:33:18 <kuribas> tomsmeding: right. That makes sense.
14:33:23 <tomsmeding> This is, I believe, why evidence-producing matches like these need to be strict
14:33:45 <tomsmeding> Just inference (heh) from a user though
14:33:50 heartburn joins (~gass@2a00:d880:3:1::b1e4:b241)
14:34:03 nate4 joins (~nate@98.45.169.16)
14:34:36 × califax quits (~califax@user/califx) (Ping timeout: 268 seconds)
14:35:59 califax joins (~califax@user/califx)
14:36:26 <kuribas> now the hard part: a record of lenses ...
14:36:50 <geekosaur> isn't that what ALens is for?
14:37:05 shriekingnoise joins (~shrieking@201.212.175.181)
14:37:09 × eggplantade quits (~Eggplanta@2600:1700:bef1:5e10:e83b:f237:c3ef:87c1) (Ping timeout: 244 seconds)
14:38:03 <kuribas> no, a record of lenses in that record :)
14:39:06 × nate4 quits (~nate@98.45.169.16) (Ping timeout: 264 seconds)
14:40:20 × finsternis quits (~X@23.226.237.192) (Read error: Connection reset by peer)
14:41:19 finsternis joins (~X@23.226.237.192)
14:45:37 yauhsien joins (~yauhsien@61-231-36-12.dynamic-ip.hinet.net)
14:46:08 × geekosaur quits (~geekosaur@xmonad/geekosaur) (Quit: Leaving)
14:48:06 geekosaur joins (~geekosaur@xmonad/geekosaur)
14:50:31 × yauhsien quits (~yauhsien@61-231-36-12.dynamic-ip.hinet.net) (Ping timeout: 256 seconds)
15:01:30 dschrempf joins (~dominik@mobiledyn-62-240-134-33.mrsn.at)
15:03:28 × Haskelytic quits (~Haskelyti@118.179.211.17) (Ping timeout: 252 seconds)
15:03:55 × amonowy quits (~amonowy@83.6.20.198.ipv4.supernova.orange.pl) (Quit: Client closed)
15:04:39 pgas joins (~pg@190.247.245.154)
15:08:01 × califax quits (~califax@user/califx) (Remote host closed the connection)
15:08:01 × stiell quits (~stiell@gateway/tor-sasl/stiell) (Remote host closed the connection)
15:08:20 califax joins (~califax@user/califx)
15:08:45 stiell joins (~stiell@gateway/tor-sasl/stiell)
15:11:06 × califax quits (~califax@user/califx) (Remote host closed the connection)
15:11:24 califax joins (~califax@user/califx)
15:12:01 kenran joins (~kenran@200116b82b11f800f722575e74152ce8.dip.versatel-1u1.de)
15:16:06 × MajorBiscuit quits (~MajorBisc@86-88-79-148.fixed.kpn.net) (Quit: WeeChat 3.5)
15:17:23 × Katarushisu quits (~Katarushi@cpc147334-finc20-2-0-cust27.4-2.cable.virginm.net) (Quit: The Lounge - https://thelounge.chat)
15:19:52 eggplantade joins (~Eggplanta@2600:1700:bef1:5e10:e83b:f237:c3ef:87c1)
15:20:46 waleee joins (~waleee@2001:9b0:213:7200:cc36:a556:b1e8:b340)
15:24:25 × eggplantade quits (~Eggplanta@2600:1700:bef1:5e10:e83b:f237:c3ef:87c1) (Ping timeout: 260 seconds)
15:25:00 Sgeo joins (~Sgeo@user/sgeo)
15:27:07 × alp quits (~alp@user/alp) (Ping timeout: 260 seconds)
15:30:25 <Pickchea> Hello, I have a relatively simple problem to which I can't seem to find a solution. I'm writing a function using two definitions for pattern matching. I would like to append a where clause to define a variable for an expression that occurs in both function definitions. However, the where clause only defines variables for the immediately preceding function definition. Is there a way to provide a variable for both function definitions?
15:31:05 <maerwald> move the pattern matching into the function body
15:31:10 eggplantade joins (~Eggplanta@2600:1700:bef1:5e10:e83b:f237:c3ef:87c1)
15:32:43 <Pickchea> maerwald, using case?
15:33:51 smitop2 joins (uid328768@id-328768.tinside.irccloud.com)
15:33:54 <kuribas> Pickchea: use a case statement?
15:33:58 × motherfsck quits (~motherfsc@user/motherfsck) (Ping timeout: 240 seconds)
15:34:05 <Pickchea> OK thanks!
15:34:22 motherfsck joins (~motherfsc@user/motherfsck)
15:34:43 × christiansen quits (~christian@83-95-137-75-dynamic.dk.customer.tdc.net) (Ping timeout: 256 seconds)
15:34:47 × mrmr quits (~mrmr@user/mrmr) (Quit: The Lounge - https://thelounge.chat)
15:35:52 <maerwald> Pickchea: multiway if, lambda case, etc.
15:35:57 Haskelytic joins (~Haskelyti@118.179.211.17)
15:36:07 Guest34 joins (~Guest34@2605:a601:a615:f600:c043:338:8fca:5b7c)
15:36:25 × sander quits (~sander@user/sander) (Quit: So long! :))
15:36:45 <Guest34> Is there any way to wrap a constraint in a newtype to prevents its evaluation?
15:37:37 <Guest34> I've got a recursive constraint that will overflow the stack, and I need a way to break the loop.
15:37:56 ubert1 joins (~Thunderbi@p200300ecdf0da547da8c9bf37b686f51.dip0.t-ipconnect.de)
15:44:30 <yin> Guest34: what do you mean by constraint?
15:46:32 <yin> if you paste some code maybe we could understand better
15:50:35 <Guest34> Thanks, never mind; I'm going to try using closed type families a bit more.
15:53:47 <kuribas> Guest34: recursive constraint sounds dodgy...
15:55:43 christiansen joins (~christian@83-95-137-75-dynamic.dk.customer.tdc.net)
15:56:39 Everything joins (~Everythin@37.115.210.35)
15:56:48 × dschrempf quits (~dominik@mobiledyn-62-240-134-33.mrsn.at) (Quit: WeeChat 3.5)
15:57:18 <Everything> Hi all. What Haskell projects would you recommend for learning for a noob? Good code examples?
15:59:44 <[exa]> Everything: what level of newbieness? (new to programming or just new to haskell?)
16:00:07 <[exa]> Everything: anyway making a tiny game in Gloss is usually a nice way to start up
16:00:44 <Everything> [exa]: new to Haskell and ML dialects. Have some understanding of pure C, Python, Scheme
16:01:49 fockerize joins (~finn@roc37-h01-176-170-197-243.dsl.sta.abo.bbox.fr)
16:02:11 × coot quits (~coot@213.134.190.95) (Quit: coot)
16:02:31 <[exa]> ah nice, then you can literally start with this https://github.com/benl23x5/gloss#example :]
16:02:43 <Everything> [exa]: thanks for the hint
16:03:35 <[exa]> there may be other good starting examples but I generally find that getting some graphics up and running quickly really helps to get a grasp of how the thing works
16:04:48 sander joins (~sander@user/sander)
16:04:50 <[exa]> btw new people usually have trouble with getting a development environment up and running. Using ghcup to install stuff is AFAIK the recommended way now. Feel free to ask if anything package-y doesn't work.
16:05:14 × eggplantade quits (~Eggplanta@2600:1700:bef1:5e10:e83b:f237:c3ef:87c1) (Remote host closed the connection)
16:06:34 × ubert1 quits (~Thunderbi@p200300ecdf0da547da8c9bf37b686f51.dip0.t-ipconnect.de) (Ping timeout: 272 seconds)
16:11:20 dschrempf joins (~dominik@mobiledyn-62-240-134-33.mrsn.at)
16:12:30 × adrazalan quits (~adrazalan@42.191.189.65) (Ping timeout: 240 seconds)
16:13:30 × Haskelytic quits (~Haskelyti@118.179.211.17) (Ping timeout: 252 seconds)
16:13:46 × motherfsck quits (~motherfsc@user/motherfsck) (Ping timeout: 244 seconds)
16:14:48 hexeme is now known as ldlework
16:15:50 × pleo quits (~pleo@user/pleo) (Ping timeout: 240 seconds)
16:18:15 × tromp quits (~textual@92-110-219-57.cable.dynamic.v4.ziggo.nl) (Quit: My iMac has gone to sleep. ZZZzzz…)
16:19:45 × quarkyalice quits (~alice@user/quarkyalice) (Read error: Connection reset by peer)
16:21:27 quarkyalice joins (~alice@172.79.210.234)
16:21:27 × quarkyalice quits (~alice@172.79.210.234) (Changing host)
16:21:27 quarkyalice joins (~alice@user/quarkyalice)
16:22:19 × merijn quits (~merijn@c-001-001-028.client.esciencecenter.eduvpn.nl) (Ping timeout: 256 seconds)
16:23:07 tromp joins (~textual@92-110-219-57.cable.dynamic.v4.ziggo.nl)
16:23:46 × telser quits (~quassel@user/telser) (Quit: https://quassel-irc.org - Chat comfortably. Anywhere.)
16:28:50 mcglk joins (~mcglk@160-2-67-53.cpe.sparklight.net)
16:29:08 × kenran quits (~kenran@200116b82b11f800f722575e74152ce8.dip.versatel-1u1.de) (Quit: WeeChat info:version)
16:30:06 motherfsck joins (~motherfsc@user/motherfsck)
16:31:03 cosimone` joins (~user@93-44-186-171.ip98.fastwebnet.it)
16:32:39 × cosimone quits (~user@2001:b07:ae5:db26:57c7:21a5:6e1c:6b81) (Ping timeout: 276 seconds)
16:38:21 × zxx7529 quits (~Thunderbi@user/zxx7529) (Remote host closed the connection)
16:40:59 × Pickchea quits (~private@user/pickchea) (Quit: Leaving)
16:42:26 eggplantade joins (~Eggplanta@2600:1700:bef1:5e10:e83b:f237:c3ef:87c1)
16:43:34 harry joins (~harry@c-73-93-249-239.hsd1.ca.comcast.net)
16:43:55 tzh joins (~tzh@c-24-21-73-154.hsd1.or.comcast.net)
16:44:50 econo joins (uid147250@user/econo)
16:46:05 × kuribas quits (~user@ptr-17d51emh493yj3hltjo.18120a2.ip6.access.telenet.be) (Remote host closed the connection)
16:46:49 × dschrempf quits (~dominik@mobiledyn-62-240-134-33.mrsn.at) (Quit: WeeChat 3.5)
16:49:25 × briandaed quits (~briandaed@109.95.143.14.r.toneticgroup.pl) (Ping timeout: 244 seconds)
16:51:53 unit73e joins (~emanuel@2001:818:e8dd:7c00:656:e5ff:fe72:9d36)
16:54:33 merijn joins (~merijn@c-001-001-028.client.esciencecenter.eduvpn.nl)
16:56:30 × jargon quits (~jargon@184.101.188.251) (Remote host closed the connection)
16:59:02 × tromp quits (~textual@92-110-219-57.cable.dynamic.v4.ziggo.nl) (Quit: My iMac has gone to sleep. ZZZzzz…)
16:59:52 × merijn quits (~merijn@c-001-001-028.client.esciencecenter.eduvpn.nl) (Ping timeout: 260 seconds)
17:09:33 Haskelytic joins (~Haskelyti@118.179.211.17)
17:11:01 × eggplantade quits (~Eggplanta@2600:1700:bef1:5e10:e83b:f237:c3ef:87c1) (Remote host closed the connection)
17:15:26 × Goodbye_Vincent quits (~Goodbye_V@freakshells.net) (Quit: Ping timeout (120 seconds))
17:15:50 eggplantade joins (~Eggplanta@2600:1700:bef1:5e10:e83b:f237:c3ef:87c1)
17:19:09 × PiDelport quits (uid25146@id-25146.lymington.irccloud.com) (Quit: Connection closed for inactivity)
17:20:54 × mbuf quits (~Shakthi@122.164.13.128) (Quit: Leaving)
17:20:57 amonowy joins (uid560952@id-560952.uxbridge.irccloud.com)
17:21:10 × unit73e quits (~emanuel@2001:818:e8dd:7c00:656:e5ff:fe72:9d36) (Ping timeout: 240 seconds)
17:22:49 jgeerds joins (~jgeerds@55d437cf.access.ecotel.net)
17:22:59 Goodbye_Vincent joins (cyvahl@freakshells.net)
17:24:47 alp joins (~alp@user/alp)
17:26:28 merijn joins (~merijn@c-001-001-028.client.esciencecenter.eduvpn.nl)
17:29:09 × Haskelytic quits (~Haskelyti@118.179.211.17) (Quit: Ping timeout (120 seconds))
17:31:24 × mcglk quits (~mcglk@160-2-67-53.cpe.sparklight.net) (Quit: (zzz))
17:36:34 jakalx parts (~jakalx@base.jakalx.net) ()
17:40:22 mcglk joins (~mcglk@160-2-67-53.cpe.sparklight.net)
17:44:51 mcglk_ joins (~mcglk@160-2-67-53.cpe.sparklight.net)
17:46:30 <yin> using *only* ghcup is recommended by me
17:46:46 <yin> as in if you use ghcup, dont use anything else
17:47:17 × mcglk quits (~mcglk@160-2-67-53.cpe.sparklight.net) (Ping timeout: 244 seconds)
17:47:31 jakalx joins (~jakalx@base.jakalx.net)
17:52:31 <maerwald> excellent choice
17:55:11 × [itchyjunk] quits (~itchyjunk@user/itchyjunk/x-7353470) (Remote host closed the connection)
17:55:13 <monochrom> Why do I feel that it's the equivalent of when I go to a restaurant and order from the menu, the server always says "excellent choice" too? :)
17:55:30 [itchyjunk] joins (~itchyjunk@user/itchyjunk/x-7353470)
17:56:32 × Guest34 quits (~Guest34@2605:a601:a615:f600:c043:338:8fca:5b7c) (Quit: Client closed)
17:58:35 <darkling> It's to make you feel better about it even if you don't like it so much? :)
17:59:30 × merijn quits (~merijn@c-001-001-028.client.esciencecenter.eduvpn.nl) (Ping timeout: 240 seconds)
18:00:03 × jgeerds quits (~jgeerds@55d437cf.access.ecotel.net) (Ping timeout: 276 seconds)
18:01:04 <monochrom> Or tautologically as long as you buy from me, of course I think you've made an excellent choice :)
18:01:46 <maerwald> monochrom: those are excellent points
18:04:51 × malte quits (~malte@mal.tc) (Ping timeout: 244 seconds)
18:06:53 jumper149 joins (~jumper149@base.felixspringer.xyz)
18:08:00 tromp joins (~textual@92-110-219-57.cable.dynamic.v4.ziggo.nl)
18:08:01 <jumper149> Hi, is it possible to check a closed type family with the exhaustiveness checker in GHC?
18:10:48 × notzmv quits (~zmv@user/notzmv) (Ping timeout: 276 seconds)
18:15:21 × ix quits (~ix@2a02:8010:674f:0:d65d:64ff:fe52:5efe) (Ping timeout: 276 seconds)
18:19:46 Haskelytic joins (~Haskelyti@118.179.211.17)
18:20:30 × machinedgod quits (~machinedg@d172-219-86-154.abhsia.telus.net) (Ping timeout: 240 seconds)
18:21:02 <Haskelytic> https://paste.tomsmeding.com/rGxMYmzi
18:21:09 <Haskelytic> :t (sequence .) . fmap
18:21:11 <lambdabot> (Traversable t, Monad m) => (a1 -> m a2) -> t a1 -> m (t a2)
18:21:39 <Haskelytic> fellas, does that inference look on track? did i accidentally land on the right answer?
18:22:50 × Kevin578 quits (~Kevin578@pool-173-76-179-30.bstnma.fios.verizon.net) (Ping timeout: 240 seconds)
18:22:56 × smitop2 quits (uid328768@id-328768.tinside.irccloud.com) (Quit: Connection closed for inactivity)
18:31:37 <Haskelytic> Hmm... the type is correct but I'm having troubling mentally parsing the double-dot duo
18:32:38 <monochrom> Yeah, so I would turn it into "comp1 (comp2 sequence) fmap" before working.
18:32:51 <Haskelytic> so `(sequence .) . fmap` is a composite that: 1) lifts a function f; 2) composes that lifted f with sequence
18:33:19 <c_wraith> Any time you see that, point-free has gone too far.
18:33:24 <Haskelytic> XD
18:33:32 <Haskelytic> haha sorry it was from the haskell book
18:34:01 <Haskelytic> borked my brain so I started thinking maybe I need to understand the types better
18:34:30 <Haskelytic> monochrom: ah, yes that would be a lot more readable
18:35:33 <c_wraith> Usually when you see something like that, it's way more readable if you add one of the points back.
18:35:33 nate4 joins (~nate@98.45.169.16)
18:36:02 <Haskelytic> the original was `\f xs -> sequence (fmap f xs)`
18:36:10 <c_wraith> :t \f -> sequence . fmap f
18:36:12 <lambdabot> (Traversable t, Monad m) => (a1 -> m a2) -> t a1 -> m (t a2)
18:36:20 <Haskelytic> c_wraith: I'll keep that in mind. thanks!
18:36:34 <Haskelytic> oooh cool!
18:37:33 <c_wraith> though, you know.. in this specific case...
18:37:40 <c_wraith> :t mapM
18:37:42 <lambdabot> (Traversable t, Monad m) => (a -> m b) -> t a -> m (t b)
18:38:01 <c_wraith> or if you don't need the Monad constraint
18:38:04 <c_wraith> :t traverse
18:38:05 <lambdabot> (Traversable t, Applicative f) => (a -> f b) -> t a -> f (t b)
18:38:50 × fockerize quits (~finn@roc37-h01-176-170-197-243.dsl.sta.abo.bbox.fr) (Ping timeout: 240 seconds)
18:39:14 <Haskelytic> yeah i was in the part of the book talking about traverse and how it's implemented using `sequenceA` and `fmap`
18:39:41 <Haskelytic> I guess I'll just get used to BSODing when I see a double-dot again haha
18:39:52 <Haskelytic> my brain just can't seem to parse it
18:40:30 × nate4 quits (~nate@98.45.169.16) (Ping timeout: 240 seconds)
18:40:45 <geekosaur[m]> most people seem to have that problem. I see it abbreviated as (.:) a lot
18:41:17 <geekosaur[m]> it's a way to apply two parameters instead of one when using `(.)`
18:42:35 xlei joins (~akans@138.199.15.149)
18:42:46 × xlei quits (~akans@138.199.15.149) (Client Quit)
18:44:08 <Haskelytic> is it common in real-world code?
18:44:26 <Lears> I prefer `(<$$>) = fmap . fmap`. It's more useful and imo easier to parse.
18:44:28 <Haskelytic> I feel like the more Haskell I see the more crazy it gets :)
18:44:45 <Haskelytic> It feels like doing gymnastics with funky operators
18:44:48 cyphase is now known as cyphase__
18:44:58 notzmv joins (~zmv@user/notzmv)
18:45:03 cyphase__ is now known as cyphase
18:45:26 <Haskelytic> Lears: that's a double lift?
18:45:33 cyphase is now known as cyphase_eviltwin
18:45:33 cyphase_eviltwin is now known as 030AAGH44
18:46:32 <Haskelytic> :t fmap . fmap
18:46:33 <lambdabot> (Functor f1, Functor f2) => (a -> b) -> f1 (f2 a) -> f1 (f2 b)
18:46:51 <geekosaur[m]> fmap is (.) in the function Functor
18:46:56 <geekosaur[m]> but it's more readable
18:47:33 <geekosaur[m]> (in general the function (Functor, Applicative, Monad) is hard both to read and to think about; people's brains don't seem to work that way)
18:48:10 <Haskelytic> geekosaur[m]: you can say that again! i was blown away when I learned you could see functions as Functors
18:48:19 <Haskelytic> I got too used to the container analogy
18:48:37 unit73e joins (~emanuel@2001:818:e8dd:7c00:656:e5ff:fe72:9d36)
18:48:47 <Haskelytic> but then I realized a function could be framed as a container indexed by input
18:48:54 <Haskelytic> still blows my mind :)
18:49:20 <Lears> The function Monad can be pointlessly confusing. The Applicative is sometimes nice, used sparingly. Imo there's no problem with the Functor at all, you just need to get used to it.
18:49:51 × tromp quits (~textual@92-110-219-57.cable.dynamic.v4.ziggo.nl) (Quit: My iMac has gone to sleep. ZZZzzz…)
18:50:01 <monochrom> Wow so much opinion.
18:50:17 <Lears> And strangely, all the confusion around these instances seems to disappear as soon as you put it in Reader.
18:50:39 <Haskelytic> Haskell made me realize that the human brain needs an upgrade :)
18:50:44 <Haskelytic> Too many metaphors to keep track of honestly
18:50:56 <Haskelytic> context, structure, box, container, etc.
18:50:59 gurkenglas joins (~gurkengla@dslb-002-203-144-112.002.203.pools.vodafone-ip.de)
18:51:14 <monochrom> This is why I don't teach metaphors, I teach the actual rules.
18:51:34 <Haskelytic> monochrom: I wish someone told me that when I started :/
18:51:59 <Haskelytic> Lears: the power of names :)
18:52:09 tromp joins (~textual@92-110-219-57.cable.dynamic.v4.ziggo.nl)
18:52:17 <monochrom> I learned that myself when I was in a course that taught alpha-beta pruning and minimax etc.
18:53:12 <monochrom> The lectures and the textbook (and everyone who teaches it) provide both an "intuitive" "human-friendly" explanation and an actual mathematical proof. (It's about "admissability etc.)
18:53:35 <monochrom> I understood the proof. I didn't understand the "human-friendly" explanation, it looked like circular logic.
18:53:46 <monochrom> Since then I knew.
18:54:01 <Haskelytic> XD  I've had that experience before
18:54:10 <darkling> Heh. I once spent an entire 2 hours in a physics class at school arguing with the teacher about the behaviour of op-amps.
18:54:33 <darkling> Eventually, he conceded that the approach he was teaching wasn't the whole story, and that he needed a couple of pages of calculus.
18:54:37 <Haskelytic> I think I tend to get too hung up on authors' metaphors and analogies and get confused when I understand the proof but their picturesque descriptions just fly over my head
18:54:38 <darkling> "Fine, I'll take that." :)
18:55:00 × raehik quits (~raehik@cpc95906-rdng25-2-0-cust156.15-3.cable.virginm.net) (Ping timeout: 276 seconds)
18:55:43 <Haskelytic> darkling: haha
18:56:27 <darkling> To his credit, the next lesson, he did deliver several pages of calculus which made sense. He just didn't give them to the whole class.
18:56:57 <Haskelytic> way to rob your fellow classmates of a learning experience :P
18:58:10 <darkling> There were only two of us who actually cared that much about the formal mathematics.
19:01:41 fweht joins (uid404746@id-404746.lymington.irccloud.com)
19:01:56 mon_aaraj joins (~MonAaraj@user/mon-aaraj/x-4416475)
19:05:40 pavonia joins (~user@user/siracusa)
19:06:13 Topsi joins (~Topsi@host-88-217-154-179.customer.m-online.net)
19:06:58 × tromp quits (~textual@92-110-219-57.cable.dynamic.v4.ziggo.nl) (Quit: My iMac has gone to sleep. ZZZzzz…)
19:12:28 <monochrom> Oooohhhh, is that about virtual ground and virtual open and the paradox that both are true at the same time :)
19:14:02 × mcglk_ quits (~mcglk@160-2-67-53.cpe.sparklight.net) (Ping timeout: 255 seconds)
19:14:16 × Haskelytic quits (~Haskelyti@118.179.211.17) (Ping timeout: 252 seconds)
19:15:43 merijn joins (~merijn@c-001-001-028.client.esciencecenter.eduvpn.nl)
19:16:10 <darkling> No, it was about the thing where you feed back the output to one of the inputs and the gain magically becomes controllable.
19:16:26 mcglk joins (~mcglk@160-2-67-53.cpe.sparklight.net)
19:17:55 nuc13u5 joins (~nuc13u5@2601:203:400:af50:89cc:9642:c954:860)
19:18:11 <Noinia> question for the people knowledgable about lenses: how do I build/adapt an 'IndexedTraversal' ? Concretely, what I'm trying to do is: given an 'myInTraversal :: IndexedTraversal Int s t a b' I want to construct an 'myOutTraversal' of the same type in which all the indices have been increased by one; i.e. something like itoListOf myInTraversal [10,20,30] normally proudces something like
19:18:17 <Noinia> [(0,10),(1,20),(2,30)], I now want itoListOf myOutputTraversal [10,20,30] produce [(1,10),(2,20),(3,30)]
19:20:05 <Noinia> from looking at the source of some of the things of type 'IndexedTraversal' it seems I should be able to somehow manually expand the arguments (using that type IndexedTraversal i s t a b) is really just some two parameter function, but somehow that seems more low level than I need
19:21:41 × Topsi quits (~Topsi@host-88-217-154-179.customer.m-online.net) (Read error: Connection reset by peer)
19:22:21 × nuc13u5 quits (~nuc13u5@2601:203:400:af50:89cc:9642:c954:860) (Ping timeout: 244 seconds)
19:23:17 tromp joins (~textual@92-110-219-57.cable.dynamic.v4.ziggo.nl)
19:24:29 pleo joins (~pleo@user/pleo)
19:32:31 <Noinia> hmm I somehow figured out a way to make what I worked by explicitly using the 'conjoined' function reconstructing an inexedTraversal, but somehow that seems more clunky than necessary.
19:37:47 × tromp quits (~textual@92-110-219-57.cable.dynamic.v4.ziggo.nl) (Quit: My iMac has gone to sleep. ZZZzzz…)
19:39:07 <Noinia> ah, apparently there is the 'reindexed' function that one can use :)
19:39:57 <Noinia> i.e. myOutputTraversal = reindexed (+1) myInputTraversal
19:40:50 × mcglk quits (~mcglk@160-2-67-53.cpe.sparklight.net) (Ping timeout: 240 seconds)
19:42:35 mcglk joins (~mcglk@160-2-67-53.cpe.sparklight.net)
19:44:28 Topsi joins (~Topsi@host-88-217-154-179.customer.m-online.net)
19:46:16 ix joins (~ix@2a02:8010:674f:0:d65d:64ff:fe52:5efe)
19:46:30 × christiansen quits (~christian@83-95-137-75-dynamic.dk.customer.tdc.net) (Ping timeout: 240 seconds)
19:46:50 Kevin578 joins (~Kevin578@pool-173-76-179-30.bstnma.fios.verizon.net)
19:49:50 × merijn quits (~merijn@c-001-001-028.client.esciencecenter.eduvpn.nl) (Ping timeout: 240 seconds)
19:51:24 × mon_aaraj quits (~MonAaraj@user/mon-aaraj/x-4416475) (Ping timeout: 272 seconds)
19:52:30 tromp joins (~textual@92-110-219-57.cable.dynamic.v4.ziggo.nl)
19:52:50 mon_aaraj joins (~MonAaraj@user/mon-aaraj/x-4416475)
19:53:58 coot joins (~coot@2a02:a310:e241:1b00:ec1a:e9df:79ac:66ba)
19:55:25 × [itchyjunk] quits (~itchyjunk@user/itchyjunk/x-7353470) (Ping timeout: 244 seconds)
19:55:26 pragma- joins (~chaos@user/pragmatic-chaos)
19:57:14 dudek joins (~dudek@185.150.236.103)
20:00:05 coot_ joins (~coot@2a02:a310:e241:1b00:ec1a:e9df:79ac:66ba)
20:00:10 × coot quits (~coot@2a02:a310:e241:1b00:ec1a:e9df:79ac:66ba) (Ping timeout: 240 seconds)
20:00:45 × tessier_ quits (~treed@98.171.210.130) (Quit: leaving)
20:01:36 × dsrt^ quits (~dsrt@128-092-191-146.biz.spectrum.com) (Ping timeout: 276 seconds)
20:04:57 Katarushisu joins (~Katarushi@cpc147334-finc20-2-0-cust27.4-2.cable.virginm.net)
20:07:30 fockerize joins (~finn@roc37-h01-176-170-197-243.dsl.sta.abo.bbox.fr)
20:09:23 × tromp quits (~textual@92-110-219-57.cable.dynamic.v4.ziggo.nl) (Quit: My iMac has gone to sleep. ZZZzzz…)
20:09:27 × bitdex quits (~bitdex@gateway/tor-sasl/bitdex) (Ping timeout: 268 seconds)
20:09:33 × Everything quits (~Everythin@37.115.210.35) (Quit: leaving)
20:12:05 bitdex joins (~bitdex@gateway/tor-sasl/bitdex)
20:15:49 nuc13u5 joins (~nuc13u5@2601:203:400:af50:89cc:9642:c954:860)
20:20:11 × nuc13u5 quits (~nuc13u5@2601:203:400:af50:89cc:9642:c954:860) (Ping timeout: 255 seconds)
20:21:46 × jmdaemon quits (~jmdaemon@user/jmdaemon) (Ping timeout: 244 seconds)
20:23:44 tromp joins (~textual@92-110-219-57.cable.dynamic.v4.ziggo.nl)
20:30:33 × takuan quits (~takuan@178-116-218-225.access.telenet.be) (Remote host closed the connection)
20:32:34 × 030AAGH44 quits (~cyphase@user/cyphase) (Ping timeout: 272 seconds)
20:34:22 × eggplantade quits (~Eggplanta@2600:1700:bef1:5e10:e83b:f237:c3ef:87c1) (Remote host closed the connection)
20:37:12 × tromp quits (~textual@92-110-219-57.cable.dynamic.v4.ziggo.nl) (Quit: My iMac has gone to sleep. ZZZzzz…)
20:37:23 cyphase joins (~cyphase@user/cyphase)
20:38:15 dcoutts joins (~duncan@host-92-23-41-52.as13285.net)
20:40:50 tromp joins (~textual@92-110-219-57.cable.dynamic.v4.ziggo.nl)
20:45:27 nate4 joins (~nate@98.45.169.16)
20:51:47 × gmg quits (~user@user/gehmehgeh) (Quit: Leaving)
20:52:11 × cosimone` quits (~user@93-44-186-171.ip98.fastwebnet.it) (Remote host closed the connection)
20:52:55 eggplantade joins (~Eggplanta@108-201-191-115.lightspeed.sntcca.sbcglobal.net)
20:53:14 cosimone joins (~user@2001:b07:ae5:db26:57c7:21a5:6e1c:6b81)
21:05:43 × unit73e quits (~emanuel@2001:818:e8dd:7c00:656:e5ff:fe72:9d36) (Read error: Connection reset by peer)
21:07:39 × coot_ quits (~coot@2a02:a310:e241:1b00:ec1a:e9df:79ac:66ba) (Quit: coot_)
21:08:15 × chomwitt quits (~chomwitt@2a02:587:dc0d:4a00:bd6:dafd:ce58:5eb6) (Ping timeout: 276 seconds)
21:08:26 yax__ joins (~yax__@user/yax/x-9576643)
21:10:28 slack1256 joins (~slack1256@186.11.63.174)
21:14:11 <slack1256> Yesterday I was asking about how to obtain the `program.prof` files that the RTS generates with the `-P` option. That is not generated when you kill a program with SIGTERM, much else when the program is inside of a docker container. I solved it by mounting a bind mount on the docker container and making it write inside the folder with the `-po` option. Then I had to terminate the program gracefully, which was done using the `async` library and the race
21:14:11 <slack1256> combinator with a timeout of 15 min. I had to reproduce the hot loop in that time frame so the profiling would report what was failing. It ended up being a STM transaction where I miswrote `readTMVar` instead of `takeTMVar`, the last one being blocking. I post this just to conclude yesterday saga and thank #haskell for their wisdom diagnosting this production bug :-) .
21:14:28 × mon_aaraj quits (~MonAaraj@user/mon-aaraj/x-4416475) (Ping timeout: 244 seconds)
21:14:36 × jumper149 quits (~jumper149@base.felixspringer.xyz) (Quit: WeeChat 3.5)
21:15:05 <Rembane> slack1256: That's a beautiful bug! Thank you for reporting. :)
21:15:51 × pgas quits (~pg@190.247.245.154) (Remote host closed the connection)
21:16:03 × pleo quits (~pleo@user/pleo) (Ping timeout: 276 seconds)
21:17:06 mon_aaraj joins (~MonAaraj@user/mon-aaraj/x-4416475)
21:17:29 merijn joins (~merijn@c-001-001-028.client.esciencecenter.eduvpn.nl)
21:24:04 × __monty__ quits (~toonn@user/toonn) (Quit: leaving)
21:26:14 × tromp quits (~textual@92-110-219-57.cable.dynamic.v4.ziggo.nl) (Quit: My iMac has gone to sleep. ZZZzzz…)
21:29:13 jakalx parts (~jakalx@base.jakalx.net) (Error from remote client)
21:32:31 pleo joins (~pleo@user/pleo)
21:32:37 jakalx joins (~jakalx@base.jakalx.net)
21:35:10 × mon_aaraj quits (~MonAaraj@user/mon-aaraj/x-4416475) (Ping timeout: 240 seconds)
21:35:38 tromp joins (~textual@92-110-219-57.cable.dynamic.v4.ziggo.nl)
21:37:31 mon_aaraj joins (~MonAaraj@user/mon-aaraj/x-4416475)
21:41:38 × fockerize quits (~finn@roc37-h01-176-170-197-243.dsl.sta.abo.bbox.fr) (Ping timeout: 240 seconds)
21:44:24 mima joins (~mmh@aftr-62-216-210-245.dynamic.mnet-online.de)
21:45:10 slac11860 joins (~slack1256@191.126.227.78)
21:47:10 × slack1256 quits (~slack1256@186.11.63.174) (Ping timeout: 240 seconds)
21:47:40 × califax quits (~califax@user/califx) (Quit: ZNC 1.8.2 - https://znc.in)
21:48:08 califax joins (~califax@user/califx)
21:48:50 × nate4 quits (~nate@98.45.169.16) (Ping timeout: 255 seconds)
21:51:30 × merijn quits (~merijn@c-001-001-028.client.esciencecenter.eduvpn.nl) (Ping timeout: 240 seconds)
21:56:21 × beka quits (~beka@104.193.170.240) (Ping timeout: 276 seconds)
21:56:34 yauhsien joins (~yauhsien@61-231-36-12.dynamic-ip.hinet.net)
22:00:48 × thatcher quits (lp0@heathens.club) (Quit: https://quassel-irc.org - Chat comfortably. Anywhere.)
22:01:26 thatcher joins (lp0@heathens.club)
22:01:30 × yauhsien quits (~yauhsien@61-231-36-12.dynamic-ip.hinet.net) (Ping timeout: 240 seconds)
22:05:23 × michalz quits (~michalz@185.246.204.72) (Remote host closed the connection)
22:09:36 × Topsi quits (~Topsi@host-88-217-154-179.customer.m-online.net) (Read error: Connection reset by peer)
22:09:40 × slac11860 quits (~slack1256@191.126.227.78) (Remote host closed the connection)
22:15:30 × mon_aaraj quits (~MonAaraj@user/mon-aaraj/x-4416475) (Ping timeout: 276 seconds)
22:15:32 × tromp quits (~textual@92-110-219-57.cable.dynamic.v4.ziggo.nl) (Quit: My iMac has gone to sleep. ZZZzzz…)
22:15:48 dsrt^ joins (~dsrt@128-092-191-146.biz.spectrum.com)
22:17:17 mon_aaraj joins (~MonAaraj@user/mon-aaraj/x-4416475)
22:21:45 pragma- parts (~chaos@user/pragmatic-chaos) (Bye!)
22:23:13 × mon_aaraj quits (~MonAaraj@user/mon-aaraj/x-4416475) (Remote host closed the connection)
22:23:32 machinedgod joins (~machinedg@d172-219-86-154.abhsia.telus.net)
22:23:38 mon_aaraj joins (~MonAaraj@user/mon-aaraj/x-4416475)
22:28:13 × eggplantade quits (~Eggplanta@108-201-191-115.lightspeed.sntcca.sbcglobal.net) (Remote host closed the connection)
22:32:59 codaraxis__ joins (~codaraxis@user/codaraxis)
22:35:22 × dudek quits (~dudek@185.150.236.103) (Quit: Leaving)
22:35:25 merijn joins (~merijn@c-001-001-028.client.esciencecenter.eduvpn.nl)
22:36:30 × codaraxis quits (~codaraxis@user/codaraxis) (Ping timeout: 240 seconds)
22:40:14 × merijn quits (~merijn@c-001-001-028.client.esciencecenter.eduvpn.nl) (Ping timeout: 244 seconds)
22:41:04 matthewmosior joins (~matthewmo@173.170.253.91)
22:41:16 × dsrt^ quits (~dsrt@128-092-191-146.biz.spectrum.com) (Ping timeout: 244 seconds)
22:41:20 tromp joins (~textual@92-110-219-57.cable.dynamic.v4.ziggo.nl)
22:46:53 × haritz quits (~hrtz@user/haritz) (Remote host closed the connection)
22:48:41 × Tuplanolla quits (~Tuplanoll@91-159-69-97.elisa-laajakaista.fi) (Quit: Leaving.)
22:49:49 haritz joins (~hrtz@82-69-11-11.dsl.in-addr.zen.co.uk)
22:49:50 × haritz quits (~hrtz@82-69-11-11.dsl.in-addr.zen.co.uk) (Changing host)
22:49:50 haritz joins (~hrtz@user/haritz)
22:49:51 × pretty_dumm_guy quits (trottel@gateway/vpn/protonvpn/prettydummguy/x-88029655) (Quit: WeeChat 3.5)
22:54:33 mrmr joins (~mrmr@user/mrmr)
22:57:56 × phma quits (phma@2001:5b0:215a:f018:4fce:809b:f264:f166) (Read error: Connection reset by peer)
22:58:37 [itchyjunk] joins (~itchyjunk@user/itchyjunk/x-7353470)
23:04:23 eggplantade joins (~Eggplanta@2600:1700:bef1:5e10:e83b:f237:c3ef:87c1)
23:05:02 × tromp quits (~textual@92-110-219-57.cable.dynamic.v4.ziggo.nl) (Quit: My iMac has gone to sleep. ZZZzzz…)
23:05:22 adrazalan joins (~adrazalan@42.191.189.65)
23:06:38 dostoevsky2 joins (~5c42c5384@user/dostoevsky)
23:07:36 dsrt^ joins (~dsrt@128-092-191-146.biz.spectrum.com)
23:07:37 × dostoevsky quits (~5c42c5384@user/dostoevsky) (Read error: Connection reset by peer)
23:07:38 dostoevsky2 is now known as dostoevsky
23:07:56 phma joins (phma@2001:5b0:215d:f9b8:8b32:f15e:1903:26cf)
23:08:10 × dos__^^ quits (~user@user/dos/x-1723657) (Read error: Connection reset by peer)
23:09:50 × adrazalan quits (~adrazalan@42.191.189.65) (Ping timeout: 240 seconds)
23:12:18 × matthewmosior quits (~matthewmo@173.170.253.91) (Remote host closed the connection)
23:12:45 matthewmosior joins (~matthewmo@173.170.253.91)
23:12:58 × [itchyjunk] quits (~itchyjunk@user/itchyjunk/x-7353470) (Remote host closed the connection)
23:13:17 [itchyjunk] joins (~itchyjunk@user/itchyjunk/x-7353470)
23:14:52 Kaipei joins (~Kaiepi@156.34.47.253)
23:16:02 × [itchyjunk] quits (~itchyjunk@user/itchyjunk/x-7353470) (Remote host closed the connection)
23:17:07 × mcglk quits (~mcglk@160-2-67-53.cpe.sparklight.net) (Ping timeout: 256 seconds)
23:17:50 × Kaiepi quits (~Kaiepi@156.34.47.253) (Ping timeout: 240 seconds)
23:19:27 beka joins (~beka@104-244-24-117.PUBLIC.monkeybrains.net)
23:23:00 mcglk joins (~mcglk@160-2-67-53.cpe.sparklight.net)
23:23:17 × matthewmosior quits (~matthewmo@173.170.253.91) (Ping timeout: 255 seconds)
23:26:01 causal joins (~user@50.35.83.177)
23:31:08 [itchyjunk] joins (~itchyjunk@user/itchyjunk/x-7353470)
23:31:11 × pleo quits (~pleo@user/pleo) (Quit: quit)
23:35:14 Lord_of_Life_ joins (~Lord@user/lord-of-life/x-2819915)
23:35:27 × Lord_of_Life quits (~Lord@user/lord-of-life/x-2819915) (Ping timeout: 276 seconds)
23:36:29 Lord_of_Life_ is now known as Lord_of_Life
23:36:56 matthewmosior joins (~matthewmo@173.170.253.91)
23:42:03 × mon_aaraj quits (~MonAaraj@user/mon-aaraj/x-4416475) (Ping timeout: 256 seconds)
23:43:53 mon_aaraj joins (~MonAaraj@user/mon-aaraj/x-4416475)
23:52:21 tessier joins (~treed@98.171.210.130)
23:52:42 × gdd1 quits (~gdd@2001:470:1f13:187:2e9b:467c:7a38:be67) (Ping timeout: 272 seconds)
23:54:19 gdd1 joins (~gdd@129.199.146.230)
23:55:34 × tessier quits (~treed@98.171.210.130) (Client Quit)

All times are in UTC on 2022-07-08.