2021/09/13

2021-09-13 00:00:06 +0200eggplantade(~Eggplanta@2600:1700:bef1:5e10:2dc7:70f:65a6:fbdd)
2021-09-13 00:00:25 +0200benin03693230(~benin@183.82.24.227)
2021-09-13 00:03:32 +0200max22-(~maxime@2a01cb08833598004bd2e3d55bf9d97e.ipv6.abo.wanadoo.fr) (Quit: Leaving)
2021-09-13 00:10:48 +0200amitnjha(~amit@024-216-124-116.res.spectrum.com) (Quit: amitnjha)
2021-09-13 00:11:01 +0200amitnjha(~amit@024-216-124-116.res.spectrum.com)
2021-09-13 00:11:07 +0200amitnjha(~amit@024-216-124-116.res.spectrum.com) (Client Quit)
2021-09-13 00:11:20 +0200amitnjha(~amit@024-216-124-116.res.spectrum.com)
2021-09-13 00:11:54 +0200Guest|72(~Guest|72@142.126.232.67)
2021-09-13 00:16:30 +0200hyiltiz(~quassel@31.220.5.250) (Ping timeout: 260 seconds)
2021-09-13 00:16:53 +0200TranquilEcho(~grom@user/tranquilecho) (Quit: WeeChat 2.8)
2021-09-13 00:19:07 +0200ixlun(~ixlun@2001:470:69fc:105::41b3) (Ping timeout: 240 seconds)
2021-09-13 00:19:23 +0200ixlun(~ixlun@2001:470:69fc:105::41b3)
2021-09-13 00:20:04 +0200acidjnk_new(~acidjnk@p200300d0c7203034c44d9fe177fb36b1.dip0.t-ipconnect.de) (Ping timeout: 252 seconds)
2021-09-13 00:20:13 +0200Guest|72(~Guest|72@142.126.232.67) (Quit: Connection closed)
2021-09-13 00:22:52 +0200System123(~System123@203-134-35-213.sta.estpak.ee)
2021-09-13 00:24:14 +0200cjb(~cjbayliss@user/cjb)
2021-09-13 00:26:23 +0200amitnjha(~amit@024-216-124-116.res.spectrum.com) (Quit: amitnjha)
2021-09-13 00:26:37 +0200amitnjha(~amit@024-216-124-116.res.spectrum.com)
2021-09-13 00:27:34 +0200System123(~System123@203-134-35-213.sta.estpak.ee) (Ping timeout: 265 seconds)
2021-09-13 00:27:39 +0200myShoggoth(~myShoggot@97-120-70-214.ptld.qwest.net)
2021-09-13 00:28:21 +0200hyiltiz(~quassel@31.220.5.250)
2021-09-13 00:31:43 +0200amitnjha(~amit@024-216-124-116.res.spectrum.com) (Quit: amitnjha)
2021-09-13 00:31:56 +0200amitnjha(~amit@024-216-124-116.res.spectrum.com)
2021-09-13 00:34:14 +0200LixOS(~Guest98@2001:67c:2628:647:12::1c7)
2021-09-13 00:36:54 +0200geekosaur(~geekosaur@xmonad/geekosaur) (Remote host closed the connection)
2021-09-13 00:39:14 +0200geekosaur(~geekosaur@xmonad/geekosaur)
2021-09-13 00:40:05 +0200spruit11(~quassel@2a02:a467:ccd6:1:5542:2068:efaa:d531) (Ping timeout: 260 seconds)
2021-09-13 00:42:03 +0200amitnjha(~amit@024-216-124-116.res.spectrum.com) (Quit: amitnjha)
2021-09-13 00:42:20 +0200amitnjha(~amit@024-216-124-116.res.spectrum.com)
2021-09-13 00:43:43 +0200xff0x(~xff0x@2001:1a81:5374:7800:b91b:1969:510:c2ea) (Ping timeout: 252 seconds)
2021-09-13 00:44:04 +0200tromp(~textual@dhcp-077-249-230-040.chello.nl) (Quit: My iMac has gone to sleep. ZZZzzz…)
2021-09-13 00:44:32 +0200xff0x(~xff0x@2001:1a81:5374:7800:9550:4329:f93b:bad7)
2021-09-13 00:51:18 +0200Tuplanolla(~Tuplanoll@91-159-69-50.elisa-laajakaista.fi) (Quit: Leaving.)
2021-09-13 00:53:37 +0200myShoggoth(~myShoggot@97-120-70-214.ptld.qwest.net) (Ping timeout: 252 seconds)
2021-09-13 01:00:29 +0200spruit11(~quassel@2a02:a467:ccd6:1:a09c:5ae1:45f8:7ffe)
2021-09-13 01:17:21 +0200machinedgod(~machinedg@135-23-192-217.cpe.pppoe.ca) (Ping timeout: 265 seconds)
2021-09-13 01:19:25 +0200jpds(~jpds@gateway/tor-sasl/jpds) (Remote host closed the connection)
2021-09-13 01:19:46 +0200 <elvishjerricco> Las[m]: I did not, but I've since learned that was a bad idea anyway. In this GHC proposal https://github.com/ghc-proposals/ghc-proposals/pull/313 Alexis pointed out that she tried compiling a sizable project with everything inlinable and GHC just wouldn't terminate; it had too much to try and specialize
2021-09-13 01:19:57 +0200jpds(~jpds@gateway/tor-sasl/jpds)
2021-09-13 01:20:34 +0200hyiltiz(~quassel@31.220.5.250) (Ping timeout: 252 seconds)
2021-09-13 01:20:51 +0200hyiltiz(~quassel@31.220.5.250)
2021-09-13 01:26:16 +0200 <Cajun> so i was looking into lens libraries and i noticed two big ones, `lens` and `optics` so i was wondering what is the best one to use. i understand the implementation differences, but what about actually just using it?
2021-09-13 01:27:01 +0200 <ldlework> Cajun: I haven't gotten there but I heard that `lens` is more traditional and formal and `optics` is more egronomic and goes beyond the formalism to make it easier to use
2021-09-13 01:27:06 +0200 <ldlework> that's just what i heard
2021-09-13 01:27:53 +0200sheddow(~sheddow@84-52-255.245.3p.ntebredband.no) (Ping timeout: 256 seconds)
2021-09-13 01:27:58 +0200 <geekosaur> they're equivalent at included functionality. optics is easier for beginners because it has better error messages, lens has more power for advanced users because it's easily expandable
2021-09-13 01:29:20 +0200 <Cajun> nice, optics seems like a good start then. ive watched the long 2hr talk the dev of the lens library gave along with some optics tutorials, but they never go into detail about using it within a monad transformer stack. is there any good article/talk/textbook chapter on that?
2021-09-13 01:30:30 +0200 <geekosaur> that I couldn't really tell you. although both provide some stuff for working directly with StateT in particular
2021-09-13 01:30:53 +0200favonia(~favonia@user/favonia) (Ping timeout: 265 seconds)
2021-09-13 01:40:22 +0200 <c_wraith> optics is a closed ecosystem, lens is open. With all the advantages and disadvantages that brings to both
2021-09-13 01:41:18 +0200 <ldlework> i'm glad others chimed in to give real takes :D
2021-09-13 01:43:57 +0200 <c_wraith> to expand slightly: optics has a list of things you are allowed to do. When you try to do anything else, you get vocal error messages telling you that's not allowed. lens just says "here are some things, do whatever you want", and it allows a lot more to be done. But that's at the cost of ghc making half-sense of things you wrote and telling you about a unification error nowhere near your actual bug
2021-09-13 01:44:06 +0200zaquest(~notzaques@5.128.210.178) (Quit: Leaving)
2021-09-13 01:44:16 +0200 <dsal> lens lets you do *weird* stuff.
2021-09-13 01:44:29 +0200 <dsal> With hypergeneric mechanisms.
2021-09-13 01:44:53 +0200 <c_wraith> also, there are things optics *could* do, and just chooses not to. At least one of which is really nice.
2021-09-13 01:45:18 +0200zaquest(~notzaques@5.128.210.178)
2021-09-13 01:46:24 +0200 <c_wraith> holesOf is great fun for fanout sorts of problems.
2021-09-13 01:47:44 +0200 <ldlework> Yesterday I learned about Monoids, Functors and Applicatives
2021-09-13 01:47:57 +0200 <ldlework> Words I thought I would never bother to understand :P
2021-09-13 01:50:42 +0200LixOS(~Guest98@2001:67c:2628:647:12::1c7) (Quit: Client closed)
2021-09-13 01:51:29 +0200Melvar(~melvar@dslb-178-001-195-022.178.001.pools.vodafone-ip.de)
2021-09-13 01:51:40 +0200 <Cajun> with that toolset you might want to take a look at Alternative
2021-09-13 01:51:51 +0200 <ldlework> I think HFFP is going to move onto Monad proper next
2021-09-13 01:52:01 +0200 <ldlework> But I just wrote down "Alternative" in my notes, so thanks
2021-09-13 01:52:32 +0200 <Cajun> yeah its to do with Monoids and Applicatives. its quite useful when you need it
2021-09-13 01:52:42 +0200 <c_wraith> Alternative can show up in a lot of places, but it's something you use constantly when writing parsers in particular.
2021-09-13 01:53:07 +0200hyiltiz(~quassel@31.220.5.250) (Ping timeout: 265 seconds)
2021-09-13 01:53:48 +0200pbrisbin(~patrick@pool-173-49-147-250.phlapa.fios.verizon.net)
2021-09-13 01:54:35 +0200Jeanne-Kamikaze(~Jeanne-Ka@static-198-54-131-70.cust.tzulo.com) (Quit: Leaving)
2021-09-13 01:57:57 +0200haskl[error](~haskl@user/haskl) (Ping timeout: 265 seconds)
2021-09-13 01:58:21 +0200haskl(~haskl@user/haskl)
2021-09-13 01:58:42 +0200vysn(~vysn@user/vysn) (Ping timeout: 260 seconds)
2021-09-13 02:04:02 +0200eggplantade(~Eggplanta@2600:1700:bef1:5e10:2dc7:70f:65a6:fbdd) (Remote host closed the connection)
2021-09-13 02:05:57 +0200hyiltiz(~quassel@31.220.5.250)
2021-09-13 02:08:23 +0200eggplantade(~Eggplanta@2600:1700:bef1:5e10:2dc7:70f:65a6:fbdd)
2021-09-13 02:12:26 +0200amitnjha(~amit@024-216-124-116.res.spectrum.com) (Quit: amitnjha)
2021-09-13 02:12:39 +0200amitnjha(~amit@024-216-124-116.res.spectrum.com)
2021-09-13 02:12:39 +0200amitnjha(~amit@024-216-124-116.res.spectrum.com) (Client Quit)
2021-09-13 02:12:47 +0200amitnjha(~amit@024-216-124-116.res.spectrum.com)
2021-09-13 02:19:25 +0200pbrisbin(~patrick@pool-173-49-147-250.phlapa.fios.verizon.net) (Ping timeout: 252 seconds)
2021-09-13 02:21:09 +0200amahl(~amahl@dsl-jklbng12-54fbca-64.dhcp.inet.fi) (Ping timeout: 265 seconds)
2021-09-13 02:21:35 +0200euandreh(~euandreh@2804:14c:33:9fe5:293c:729f:ef0:fde4) (Ping timeout: 260 seconds)
2021-09-13 02:26:23 +0200alx741(~alx741@181.196.69.212) (Quit: alx741)
2021-09-13 02:27:42 +0200roboguy_(~roboguy_@cpe-98-156-4-161.kc.res.rr.com)
2021-09-13 02:33:16 +0200daylily(~daylily@104.225.146.73.16clouds.com)
2021-09-13 02:34:10 +0200retro_(~retro@176.255.22.194) (Ping timeout: 252 seconds)
2021-09-13 02:37:51 +0200 <dsal> ldlework: monoids seem really dumb until you realize how much of programming is just monoids.
2021-09-13 02:37:58 +0200 <dsal> The next big chunk is functors.
2021-09-13 02:38:41 +0200Erutuon(~Erutuon@user/erutuon)
2021-09-13 02:40:25 +0200 <Axman6> % let i = Identity in ("Hello", i "Am", Just "a complex", ["data", "structure"]) & partsOf template %~ (reverse @Char) -- dsal weird stuff you say?
2021-09-13 02:40:25 +0200 <yahb> Axman6: ("erutc",Identity "ur",Just "tsatadxel",["pmoc"," amAolleH"])
2021-09-13 02:40:35 +0200 <Axman6> % let i = Identity in ("Hello", i "Am", Just "a complex", ["data", "structure"]) & partsOf template %~ (reverse @[Char])
2021-09-13 02:40:35 +0200 <yahb> Axman6: ("structure",Identity "data",Just "a complex",["Am","Hello"])
2021-09-13 02:41:24 +0200 <dsal> Yeah… though I've used `deep` a couple of times. for good.
2021-09-13 02:44:10 +0200 <Axman6> ldlework: the 5 second summary of Alternativ is: Applicative lets you sau do this AND this, where as Alternative lets you say do this Or if it failed do that
2021-09-13 02:44:26 +0200 <Axman6> > (,) <$> Just 1 <*> Just "Hello"
2021-09-13 02:44:27 +0200 <lambdabot> Just (1,"Hello")
2021-09-13 02:44:32 +0200 <Axman6> > (,) <$> Just 1 <*> Nothing
2021-09-13 02:44:33 +0200 <lambdabot> Nothing
2021-09-13 02:44:44 +0200 <Axman6> > Just 1 <|> Just 2
2021-09-13 02:44:45 +0200 <lambdabot> Just 1
2021-09-13 02:44:51 +0200 <Axman6> > Nothing <|> Just 2
2021-09-13 02:44:52 +0200 <lambdabot> Just 2
2021-09-13 02:45:13 +0200 <Axman6> > [1,2,3] <|> [4,5,6] -- possibly confusing at first
2021-09-13 02:45:14 +0200 <lambdabot> [1,2,3,4,5,6]
2021-09-13 02:46:52 +0200retroid_(~retro@176.255.22.194)
2021-09-13 02:47:42 +0200no-n(~ed@101.53.218.157)
2021-09-13 02:49:11 +0200daylily(~daylily@104.225.146.73.16clouds.com) (Remote host closed the connection)
2021-09-13 02:50:17 +0200normsaa(~normsaa@101.175.64.73) (Quit: Client closed)
2021-09-13 02:50:46 +0200hyiltiz(~quassel@31.220.5.250) (Ping timeout: 252 seconds)
2021-09-13 02:51:57 +0200hyiltiz(~quassel@31.220.5.250)
2021-09-13 02:55:19 +0200myShoggoth(~myShoggot@97-120-70-214.ptld.qwest.net)
2021-09-13 03:00:00 +0200pretty_dumm_guy(trottel@gateway/vpn/protonvpn/prettydummguy/x-88029655) (Quit: WeeChat 3.2.1)
2021-09-13 03:02:22 +0200daylily(~daylily@104.225.146.73.16clouds.com)
2021-09-13 03:08:02 +0200hyiltiz(~quassel@31.220.5.250) (Ping timeout: 265 seconds)
2021-09-13 03:09:02 +0200hyiltiz(~quassel@31.220.5.250)
2021-09-13 03:09:29 +0200tdsltl^(~tdsltl@68.101.54.227) (Remote host closed the connection)
2021-09-13 03:12:55 +0200albet70(~xxx@2400:8902::f03c:92ff:fe60:98d8) (Remote host closed the connection)
2021-09-13 03:14:02 +0200albet70(~xxx@2400:8902::f03c:92ff:fe60:98d8)
2021-09-13 03:14:58 +0200jespada(~jespada@90.254.245.194) (Ping timeout: 252 seconds)
2021-09-13 03:16:11 +0200 <dsal> I've used `asum` for "I have a collection of actions that might blow up and throw exceptions or something, but I'd really like the value of the first one that doesn't."
2021-09-13 03:16:22 +0200 <dsal> :t asum
2021-09-13 03:16:22 +0200 <lambdabot> (Foldable t, Alternative f) => t (f a) -> f a
2021-09-13 03:16:38 +0200 <dsal> I feel like that's a bit of a sketchy use of `asum`, but it's convenient.
2021-09-13 03:17:53 +0200amitnjha(~amit@024-216-124-116.res.spectrum.com) (Quit: amitnjha)
2021-09-13 03:18:06 +0200amitnjha(~amit@024-216-124-116.res.spectrum.com)
2021-09-13 03:18:07 +0200nctcf^(~nctcf@68.101.54.227)
2021-09-13 03:18:26 +0200jespada(~jespada@90.254.245.194)
2021-09-13 03:18:43 +0200xff0x(~xff0x@2001:1a81:5374:7800:9550:4329:f93b:bad7) (Ping timeout: 252 seconds)
2021-09-13 03:20:08 +0200euandreh(~euandreh@2804:14c:33:9fe5:465d:5cb1:ddd:5058)
2021-09-13 03:20:43 +0200xff0x(~xff0x@2001:1a81:53ae:3300:dc85:5fb:77a4:62d3)
2021-09-13 03:24:28 +0200daylily(~daylily@104.225.146.73.16clouds.com) (Remote host closed the connection)
2021-09-13 03:24:40 +0200daylily(~daylily@104.225.146.73.16clouds.com)
2021-09-13 03:28:55 +0200daylily(~daylily@104.225.146.73.16clouds.com) (Remote host closed the connection)
2021-09-13 03:29:16 +0200daylily(~daylily@104.225.146.73.16clouds.com)
2021-09-13 03:29:35 +0200dajoer(~david@user/gvx)
2021-09-13 03:29:51 +0200thyriaen(~thyriaen@dynamic-089-012-060-128.89.12.pool.telefonica.de) (Remote host closed the connection)
2021-09-13 03:33:45 +0200no-n(~ed@101.53.218.157) (WeeChat 2.8)
2021-09-13 03:36:58 +0200daylily(~daylily@104.225.146.73.16clouds.com) (Ping timeout: 252 seconds)
2021-09-13 03:37:42 +0200lavaman(~lavaman@98.38.249.169)
2021-09-13 03:38:00 +0200hyiltiz(~quassel@31.220.5.250) (Ping timeout: 265 seconds)
2021-09-13 03:41:55 +0200lavaman(~lavaman@98.38.249.169) (Ping timeout: 252 seconds)
2021-09-13 03:42:21 +0200hyiltiz(~quassel@31.220.5.250)
2021-09-13 03:43:20 +0200gabiruh(~gabiruh@vps19177.publiccloud.com.br) (Quit: ZNC 1.7.5 - https://znc.in)
2021-09-13 03:43:46 +0200gabiruh(~gabiruh@vps19177.publiccloud.com.br)
2021-09-13 03:58:12 +0200favonia(~favonia@user/favonia)
2021-09-13 04:01:19 +0200System123(~System123@203-134-35-213.sta.estpak.ee)
2021-09-13 04:03:13 +0200amitnjha(~amit@024-216-124-116.res.spectrum.com) (Quit: amitnjha)
2021-09-13 04:03:28 +0200amitnjha(~amit@024-216-124-116.res.spectrum.com)
2021-09-13 04:04:47 +0200lemonsnicks(~lemonsnic@cpc159519-perr18-2-0-cust114.19-1.cable.virginm.net) (Quit: ZNC 1.8.2 - https://znc.in)
2021-09-13 04:06:35 +0200System123(~System123@203-134-35-213.sta.estpak.ee) (Ping timeout: 260 seconds)
2021-09-13 04:06:35 +0200euandreh(~euandreh@2804:14c:33:9fe5:465d:5cb1:ddd:5058) (Ping timeout: 260 seconds)
2021-09-13 04:08:54 +0200machinedgod(~machinedg@135-23-192-217.cpe.pppoe.ca)
2021-09-13 04:11:21 +0200td_(~td@muedsl-82-207-238-026.citykom.de) (Ping timeout: 265 seconds)
2021-09-13 04:13:11 +0200td_(~td@94.134.91.246)
2021-09-13 04:16:08 +0200lemonsnicks(~lemonsnic@cpc159519-perr18-2-0-cust114.19-1.cable.virginm.net)
2021-09-13 04:18:24 +0200lavaman(~lavaman@98.38.249.169)
2021-09-13 04:19:04 +0200sneedsfeed(~sneedsfee@rrcs-173-95-122-169.midsouth.biz.rr.com)
2021-09-13 04:20:14 +0200 <sneedsfeed> I have this function "strIsIn s1 s2 = (>0) (on count pack s1 s2)" that tells if a string is contained in another string. And its just kind of bothering me that I can't figure out how to do it fully as a composition. Anyone have any ideas how I can take the s1 and s2 out and just make it a simple composition?
2021-09-13 04:20:21 +0200meinside(uid24933@id-24933.helmsley.irccloud.com)
2021-09-13 04:21:03 +0200Brumaire(~quassel@81-64-14-121.rev.numericable.fr)
2021-09-13 04:21:16 +0200parafactual(~celeste@2600:8803:9403:b600::b6f)
2021-09-13 04:22:49 +0200parafactual(~celeste@2600:8803:9403:b600::b6f) (Quit: Leaving)
2021-09-13 04:24:39 +0200 <awpr> > let (.:) = (.) . (.)
2021-09-13 04:24:40 +0200 <lambdabot> <no location info>: error:
2021-09-13 04:24:40 +0200 <lambdabot> not an expression: ‘let (.:) = (.) . (.)’
2021-09-13 04:25:02 +0200 <awpr> @let (.:) = (.) . (.)
2021-09-13 04:25:03 +0200 <lambdabot> Defined.
2021-09-13 04:25:08 +0200__celeste(~celeste@2600:8803:9403:b600::b6f)
2021-09-13 04:25:09 +0200eggplantade(~Eggplanta@2600:1700:bef1:5e10:2dc7:70f:65a6:fbdd) (Remote host closed the connection)
2021-09-13 04:25:13 +0200 <awpr> :t (>0) .: on count pack
2021-09-13 04:25:14 +0200 <lambdabot> error:
2021-09-13 04:25:14 +0200 <lambdabot> • Variable not in scope: count :: b0 -> b0 -> a0
2021-09-13 04:25:14 +0200 <lambdabot> • Perhaps you meant one of these:
2021-09-13 04:27:25 +0200benin03693230(~benin@183.82.24.227) (Ping timeout: 252 seconds)
2021-09-13 04:30:19 +0200myShoggoth(~myShoggot@97-120-70-214.ptld.qwest.net) (Ping timeout: 252 seconds)
2021-09-13 04:33:02 +0200 <sneedsfeed> its so hard to tell with haskell when i'm being dumb and when the problem is actually hard
2021-09-13 04:33:23 +0200justsomeguy(~justsomeg@user/justsomeguy)
2021-09-13 04:33:24 +0200 <sneedsfeed> I really dont know which one of those this is.
2021-09-13 04:34:36 +0200 <awpr> that `.:` operator is a relatively common trick for making point-free definitions, but it's definitely not obvious if you haven't seen it before
2021-09-13 04:37:34 +0200 <c_wraith> No one really is interested in putting it in base because... well... the standard position is that encouraging too many things to be done point-free is bad. liftA2 might even be going too far
2021-09-13 04:39:19 +0200 <sneedsfeed> what do you mean by point free?
2021-09-13 04:39:52 +0200 <awpr> just a term for exactly the thing you were trying to do: get rid of variable names and write functions by composition
2021-09-13 04:47:23 +0200daylily(~daylily@104.225.146.73.16clouds.com)
2021-09-13 04:48:35 +0200abhixec(~abhixec@c-67-169-139-16.hsd1.ca.comcast.net) (Ping timeout: 260 seconds)
2021-09-13 04:48:40 +0200 <shachaf> I certainly wouldn't encourage people to use (.:).
2021-09-13 04:49:43 +0200 <sneedsfeed> interesting. so if i'm inlining it just just a lambda would be more advised?
2021-09-13 04:49:46 +0200eggplantade(~Eggplanta@2600:1700:bef1:5e10:2dc7:70f:65a6:fbdd)
2021-09-13 04:49:58 +0200roboguy_(~roboguy_@cpe-98-156-4-161.kc.res.rr.com) (Remote host closed the connection)
2021-09-13 04:51:24 +0200 <shachaf> A lambda is simple and readable.
2021-09-13 04:52:20 +0200__celeste(~celeste@2600:8803:9403:b600::b6f) (Quit: Leaving)
2021-09-13 04:53:07 +0200ozzymcduff(~mathieu@81-234-151-21-no94.tbcn.telia.com) (Remote host closed the connection)
2021-09-13 04:53:53 +0200daylily(~daylily@104.225.146.73.16clouds.com) (Ping timeout: 265 seconds)
2021-09-13 04:54:47 +0200__celeste(~celeste@2600:8803:9403:b600::b6f)
2021-09-13 04:54:58 +0200ozzymcduff(~mathieu@81-234-151-21-no94.tbcn.telia.com)
2021-09-13 04:55:40 +0200roboguy_(~roboguy_@cpe-98-156-4-161.kc.res.rr.com)
2021-09-13 04:56:53 +0200roboguy_(~roboguy_@cpe-98-156-4-161.kc.res.rr.com) (Remote host closed the connection)
2021-09-13 05:00:00 +0200Taneb(~Taneb@runciman.hacksoc.org) (Quit: I seem to have stopped.)
2021-09-13 05:00:10 +0200FinnElija(~finn_elij@user/finn-elija/x-0085643) (Ping timeout: 265 seconds)
2021-09-13 05:00:36 +0200roboguy_(~roboguy_@cpe-98-156-4-161.kc.res.rr.com)
2021-09-13 05:01:07 +0200Taneb(~Taneb@runciman.hacksoc.org)
2021-09-13 05:01:07 +0200Cale(~cale@cpef48e38ee8583-cm0c473de9d680.cpe.net.cable.rogers.com) (Ping timeout: 252 seconds)
2021-09-13 05:01:59 +0200FinnElija(~finn_elij@user/finn-elija/x-0085643)
2021-09-13 05:03:34 +0200amitnjha(~amit@024-216-124-116.res.spectrum.com) (Quit: amitnjha)
2021-09-13 05:03:56 +0200amitnjha(~amit@024-216-124-116.res.spectrum.com)
2021-09-13 05:04:07 +0200 <dsal> sneedsfeed: I'm kind of dumb right now, but isn't that `strIsIn s1 s2 = on count pack s1 s2 > 0` which seems a bit more readable.
2021-09-13 05:04:54 +0200roboguy_(~roboguy_@cpe-98-156-4-161.kc.res.rr.com) (Ping timeout: 260 seconds)
2021-09-13 05:04:56 +0200 <awpr> also I think `on` is designed to be used in backquotes so the argument order makes sense: "count `on` pack"
2021-09-13 05:05:17 +0200 <dsal> :t isInfixOf
2021-09-13 05:05:17 +0200 <sneedsfeed> yea I was so hung up on making it pointfree that when I gave up and added the variables back in I didnt really think about optimizing that
2021-09-13 05:05:18 +0200 <lambdabot> Eq a => [a] -> [a] -> Bool
2021-09-13 05:05:23 +0200 <dsal> the description sounds like that ^
2021-09-13 05:05:46 +0200 <dsal> @src isInfixOf
2021-09-13 05:05:46 +0200 <lambdabot> isInfixOf needle haystack = any (isPrefixOf needle) (tails haystack)
2021-09-13 05:06:11 +0200 <dsal> @pl \needle haystack -> any (isPrefixOf needle) (tails haystack)
2021-09-13 05:06:11 +0200 <lambdabot> (. tails) . any . isPrefixOf
2021-09-13 05:06:21 +0200 <dsal> There. Perfectly readable.
2021-09-13 05:06:31 +0200raehik(~raehik@cpc95906-rdng25-2-0-cust156.15-3.cable.virginm.net) (Ping timeout: 252 seconds)
2021-09-13 05:08:51 +0200falafel(~falafel@2603-8000-d801-2d68-1d6d-bf72-eba2-a20e.res6.spectrum.com)
2021-09-13 05:09:15 +0200pony(~ed@101.53.218.157)
2021-09-13 05:09:48 +0200falafel_(~falafel@2603-8000-d801-2d68-d829-f87a-f631-a582.res6.spectrum.com)
2021-09-13 05:10:20 +0200Cale(~cale@cpef48e38ee8583-cm0c473de9d680.cpe.net.cable.rogers.com)
2021-09-13 05:11:39 +0200eggplantade(~Eggplanta@2600:1700:bef1:5e10:2dc7:70f:65a6:fbdd) (Remote host closed the connection)
2021-09-13 05:12:21 +0200jrm(~jrm@156.34.187.65) (Quit: ciao)
2021-09-13 05:12:44 +0200cheater(~Username@user/cheater) (Ping timeout: 265 seconds)
2021-09-13 05:13:46 +0200falafel(~falafel@2603-8000-d801-2d68-1d6d-bf72-eba2-a20e.res6.spectrum.com) (Ping timeout: 260 seconds)
2021-09-13 05:13:54 +0200jrm(~jrm@156.34.187.65)
2021-09-13 05:14:01 +0200amitnjha(~amit@024-216-124-116.res.spectrum.com) (Quit: amitnjha)
2021-09-13 05:14:05 +0200[itchyjunk](~itchyjunk@user/itchyjunk/x-7353470) (Quit: Leaving)
2021-09-13 05:14:22 +0200amitnjha(~amit@024-216-124-116.res.spectrum.com)
2021-09-13 05:17:27 +0200myShoggoth(~myShoggot@97-120-70-214.ptld.qwest.net)
2021-09-13 05:19:01 +0200lavaman(~lavaman@98.38.249.169) (Ping timeout: 265 seconds)
2021-09-13 05:21:42 +0200eggplantade(~Eggplanta@2600:1700:bef1:5e10:2dc7:70f:65a6:fbdd)
2021-09-13 05:22:20 +0200vk3wtf_(~doc@194-193-188-29.tpgi.com.au) (Quit: WeeChat 3.2)
2021-09-13 05:25:14 +0200 <justsomeguy> I honestly don't think I can desugar that off the top of my head.
2021-09-13 05:25:49 +0200 <justsomeguy> (I know you're joking though; It was just a good reminder for me to read (.)'s definition, again.)
2021-09-13 05:27:04 +0200 <lechner> Hi, could someone please help with Lucid once more? I had a similar issue last week with String (and was able to use fromString) but now with Text -> Html () Thanks! https://paste.tomsmeding.com/Fut2vfev#file-2
2021-09-13 05:27:53 +0200 <lechner> it somehew seems related to the logic here https://stackoverflow.com/questions/52019797/how-to-convert-scotty-parameter-as-string
2021-09-13 05:28:48 +0200cheater(~Username@user/cheater)
2021-09-13 05:29:10 +0200sm2n(~sm2n@user/sm2n) (Ping timeout: 265 seconds)
2021-09-13 05:29:16 +0200 <awpr> `toHtml` will have that type, since `Text` has a `ToHtml` instance
2021-09-13 05:31:15 +0200 <lechner> awpr: yay. thank you!
2021-09-13 05:31:46 +0200zebrag(~chris@user/zebrag) (Quit: Konversation terminated!)
2021-09-13 05:31:58 +0200sm2n(~sm2n@user/sm2n)
2021-09-13 05:32:41 +0200justsomeguy(~justsomeg@user/justsomeguy) (Quit: WeeChat 3.2)
2021-09-13 05:33:22 +0200jess(~jess@libera/staff/jess) (Quit: i'm going to start going to bed)
2021-09-13 05:33:30 +0200machinedgod(~machinedg@135-23-192-217.cpe.pppoe.ca) (Ping timeout: 260 seconds)
2021-09-13 05:34:28 +0200amitnjha(~amit@024-216-124-116.res.spectrum.com) (Quit: amitnjha)
2021-09-13 05:34:41 +0200amitnjha(~amit@024-216-124-116.res.spectrum.com)
2021-09-13 05:34:41 +0200amitnjha(~amit@024-216-124-116.res.spectrum.com) (Client Quit)
2021-09-13 05:34:51 +0200amitnjha(~amit@024-216-124-116.res.spectrum.com)
2021-09-13 05:39:42 +0200roboguy_(~roboguy_@cpe-98-156-4-161.kc.res.rr.com)
2021-09-13 05:43:28 +0200zmt01(~zmt00@user/zmt00) (Quit: Gone.)
2021-09-13 05:45:08 +0200zmt00(~zmt00@user/zmt00)
2021-09-13 05:57:11 +0200 <jle`> (\(_,_) -> True) undefined -- surprised me a bit
2021-09-13 05:57:45 +0200 <jle`> is there any difference between (\(x,y) -> ..) and (\t -> case t of (x,y) -> ...) ?
2021-09-13 06:02:15 +0200 <Cale> nope
2021-09-13 06:02:50 +0200theproffesor(~theproffe@2601:282:847f:8010:818b:10e4:707d:e026)
2021-09-13 06:02:50 +0200theproffesor(~theproffe@2601:282:847f:8010:818b:10e4:707d:e026) (Changing host)
2021-09-13 06:02:50 +0200theproffesor(~theproffe@user/theproffesor)
2021-09-13 06:03:17 +0200sneedsfeed(~sneedsfee@rrcs-173-95-122-169.midsouth.biz.rr.com) (Ping timeout: 256 seconds)
2021-09-13 06:03:30 +0200theproffesor(~theproffe@user/theproffesor) ()
2021-09-13 06:05:04 +0200 <pavonia> > (\(_,_) -> True) undefined
2021-09-13 06:05:06 +0200 <lambdabot> *Exception: Prelude.undefined
2021-09-13 06:05:19 +0200 <awpr> and yet:
2021-09-13 06:05:40 +0200 <awpr> > (\x -> let (_, _) = x in True) undefined
2021-09-13 06:05:42 +0200 <lambdabot> True
2021-09-13 06:06:03 +0200urdh(~urdh@user/urdh) (*.net *.split)
2021-09-13 06:06:03 +0200sky_lounge[m](~skylounge@2001:470:69fc:105::efa6) (*.net *.split)
2021-09-13 06:06:03 +0200pooryorick(~pooryoric@87-119-174-173.tll.elisa.ee) (*.net *.split)
2021-09-13 06:06:03 +0200perro(~user@072-191-245-069.res.spectrum.com) (*.net *.split)
2021-09-13 06:06:03 +0200conjunctive(sid433686@id-433686.helmsley.irccloud.com) (*.net *.split)
2021-09-13 06:06:03 +0200jackdk(sid373013@cssa/jackdk) (*.net *.split)
2021-09-13 06:06:04 +0200S11001001(sid42510@id-42510.ilkley.irccloud.com) (*.net *.split)
2021-09-13 06:06:04 +0200masaeedu[m](~masaeedum@2001:470:69fc:105::e256) (*.net *.split)
2021-09-13 06:06:04 +0200adamse(sid72084@user/adamse) (*.net *.split)
2021-09-13 06:06:04 +0200JSharp(sid4580@id-4580.lymington.irccloud.com) (*.net *.split)
2021-09-13 06:06:04 +0200erinvanderveen[m(~erinvande@2001:470:69fc:105::e8f3) (*.net *.split)
2021-09-13 06:06:04 +0200welterde(welterde@thinkbase.srv.welterde.de) (*.net *.split)
2021-09-13 06:06:04 +0200zzz(~yin@user/yin) (*.net *.split)
2021-09-13 06:06:04 +0200Xe(~cadey@tailscale/xe) (*.net *.split)
2021-09-13 06:06:04 +0200hubvu(sid495858@user/hubvu) (*.net *.split)
2021-09-13 06:06:04 +0200dpratt_(sid193493@id-193493.helmsley.irccloud.com) (*.net *.split)
2021-09-13 06:06:04 +0200soft(~soft-matr@2001:470:69fc:105::c75) (*.net *.split)
2021-09-13 06:06:04 +0200ru0mad[m](~ru0madmat@2001:470:69fc:105::9b2) (*.net *.split)
2021-09-13 06:06:04 +0200schuelermine[m](~schuelerm@user/schuelermine) (*.net *.split)
2021-09-13 06:06:04 +0200peddie(~peddie@2001:470:69fc:105::25d) (*.net *.split)
2021-09-13 06:06:04 +0200siraben(~siraben@user/siraben) (*.net *.split)
2021-09-13 06:06:04 +0200Raito_Bezarius(~Raito@wireguard/tunneler/raito-bezarius) (*.net *.split)
2021-09-13 06:06:04 +0200heath(~heath@user/heath) (*.net *.split)
2021-09-13 06:06:04 +0200oats(~thomas@user/oats) (*.net *.split)
2021-09-13 06:06:04 +0200nonzen(~nonzen@user/nonzen) (*.net *.split)
2021-09-13 06:06:04 +0200sajith(~sajith@user/sajith) (*.net *.split)
2021-09-13 06:06:04 +0200Ekho(~Ekho@user/ekho) (*.net *.split)
2021-09-13 06:06:04 +0200rookie101(~rookie@207.154.204.166) (*.net *.split)
2021-09-13 06:06:04 +0200jassob1(~jassob@korrob.vth.sgsnet.se) (*.net *.split)
2021-09-13 06:06:04 +0200Guest6153(~deni@mail.denibertovic.com) (*.net *.split)
2021-09-13 06:06:04 +0200anoe(~anoe@delanoe.org) (*.net *.split)
2021-09-13 06:06:04 +0200sshine(~simon@hubris.eta.solutions) (*.net *.split)
2021-09-13 06:06:04 +0200kaol(~kaol@178.62.241.234) (*.net *.split)
2021-09-13 06:06:04 +0200taktoa[c](sid282096@id-282096.tinside.irccloud.com) (*.net *.split)
2021-09-13 06:06:04 +0200ski(~ski@remote12.chalmers.se) (*.net *.split)
2021-09-13 06:06:04 +0200yorick(~yorick@user/yorick) (*.net *.split)
2021-09-13 06:06:04 +0200Jon(jon@dow.land) (*.net *.split)
2021-09-13 06:06:04 +0200rawles(~o@user/rawles) (*.net *.split)
2021-09-13 06:06:06 +0200 <awpr> which is to say, let/where bindings are different from those other two constructs
2021-09-13 06:06:12 +0200ski(~ski@remote12.chalmers.se)
2021-09-13 06:06:14 +0200Jon(jon@dow.land)
2021-09-13 06:06:15 +0200anoe(~anoe@delanoe.org)
2021-09-13 06:06:17 +0200perro(~user@072-191-245-069.res.spectrum.com)
2021-09-13 06:06:19 +0200Guest6153(~deni@mail.denibertovic.com)
2021-09-13 06:06:20 +0200 <pavonia> awpr: That never evaluates the pattern
2021-09-13 06:06:22 +0200kaol(~kaol@178.62.241.234)
2021-09-13 06:06:23 +0200jackdk(sid373013@cssa/jackdk)
2021-09-13 06:06:23 +0200dpratt_(sid193493@id-193493.helmsley.irccloud.com)
2021-09-13 06:06:25 +0200jassob1(~jassob@korrob.vth.sgsnet.se)
2021-09-13 06:06:33 +0200 <awpr> right, that's what I was showing
2021-09-13 06:06:37 +0200pooryorick(~pooryoric@87-119-174-173.tll.elisa.ee)
2021-09-13 06:06:40 +0200yorick(~yorick@pennyworth.yori.cc)
2021-09-13 06:06:41 +0200Xe(~cadey@lufta.cetacean.club)
2021-09-13 06:06:43 +0200 <Cale> I wish I could say it never evaluates the pattern, but now there are bang patters
2021-09-13 06:06:45 +0200Raito_Bezarius(~Raito@2a01:e0a:5f9:9681:58c:8b9f:30df:bb6b)
2021-09-13 06:06:45 +0200 <Cale> ns*
2021-09-13 06:06:47 +0200JSharp(sid4580@id-4580.lymington.irccloud.com)
2021-09-13 06:06:53 +0200S11001001(sid42510@2a03:5180:f:3::a60e)
2021-09-13 06:06:56 +0200welterde(welterde@thinkbase.srv.welterde.de)
2021-09-13 06:06:57 +0200Xe(~cadey@lufta.cetacean.club) (Changing host)
2021-09-13 06:06:57 +0200Xe(~cadey@tailscale/xe)
2021-09-13 06:06:57 +0200urdh(~urdh@user/urdh)
2021-09-13 06:07:01 +0200erinvanderveen[m(~erinvande@2001:470:69fc:105::e8f3)
2021-09-13 06:07:03 +0200oats_(~thomas@user/oats)
2021-09-13 06:07:05 +0200 <Cale> Which hold the mysterious power of transforming let into case
2021-09-13 06:07:09 +0200taktoa[c](sid282096@id-282096.tinside.irccloud.com)
2021-09-13 06:07:15 +0200conjunctive(sid433686@id-433686.helmsley.irccloud.com)
2021-09-13 06:07:17 +0200adamse(sid72084@id-72084.lymington.irccloud.com)
2021-09-13 06:07:18 +0200hubvu(sid495858@user/hubvu)
2021-09-13 06:07:19 +0200adamse(sid72084@id-72084.lymington.irccloud.com) (Changing host)
2021-09-13 06:07:19 +0200adamse(sid72084@user/adamse)
2021-09-13 06:07:26 +0200yorickGuest4308
2021-09-13 06:07:28 +0200sajith(~sajith@user/sajith)
2021-09-13 06:07:31 +0200zzz(~yin@user/yin)
2021-09-13 06:07:32 +0200nonzen(~nonzen@user/nonzen)
2021-09-13 06:07:50 +0200heath(~heath@user/heath)
2021-09-13 06:08:12 +0200sshine(~simon@hubris.eta.solutions)
2021-09-13 06:08:15 +0200soft(~soft-matr@2001:470:69fc:105::c75)
2021-09-13 06:08:15 +0200rookie101(~rookie@207.154.204.166)
2021-09-13 06:09:15 +0200 <pavonia> > (\x -> let !(_, _) = x in True) undefined
2021-09-13 06:09:16 +0200 <lambdabot> *Exception: Prelude.undefined
2021-09-13 06:09:31 +0200 <pavonia> Okay, this is surprising
2021-09-13 06:10:03 +0200masaeedu[m](~masaeedum@2001:470:69fc:105::e256)
2021-09-13 06:10:11 +0200peddie(~peddie@2001:470:69fc:105::25d)
2021-09-13 06:10:23 +0200 <awpr> I think it turns into something like `\x -> case x of x1 { _default -> True }` in core
2021-09-13 06:10:24 +0200Ekho(~Ekho@user/ekho)
2021-09-13 06:10:34 +0200siraben(~siraben@user/siraben)
2021-09-13 06:10:43 +0200 <Cale> It's a bit of perlish dwim-ism
2021-09-13 06:10:44 +0200ski(~ski@remote12.chalmers.se) (Ping timeout: 265 seconds)
2021-09-13 06:11:12 +0200ru0mad[m](~ru0madmat@2001:470:69fc:105::9b2)
2021-09-13 06:11:12 +0200schuelermine[m](~schuelerm@user/schuelermine)
2021-09-13 06:11:34 +0200 <Cale> Well, let's try this:
2021-09-13 06:11:43 +0200sky_lounge[m](~skylounge@2001:470:69fc:105::efa6)
2021-09-13 06:11:47 +0200 <Cale> > (\x -> let ~(!(_, _)) = x in True) undefined
2021-09-13 06:11:49 +0200 <lambdabot> True
2021-09-13 06:12:09 +0200 <pavonia> :)
2021-09-13 06:12:42 +0200 <Cale> Yep. So, even though all pattern bindings in let are supposed to implicitly be wrapped in ~ this doesn't happen for bang patterns at the top level only
2021-09-13 06:15:45 +0200the_proffesor(~theproffe@2601:282:847f:8010::bd6d)
2021-09-13 06:15:45 +0200the_proffesor(~theproffe@2601:282:847f:8010::bd6d) (Changing host)
2021-09-13 06:15:45 +0200the_proffesor(~theproffe@user/theproffesor)
2021-09-13 06:17:35 +0200the_proffesortheproffesor
2021-09-13 06:17:57 +0200oats_oats
2021-09-13 06:19:16 +0200nckx(~nckx@tobias.gr) (*.net *.split)
2021-09-13 06:19:16 +0200shailangsa(~shailangs@host86-186-132-44.range86-186.btcentralplus.com) (*.net *.split)
2021-09-13 06:19:16 +0200MidAutumnMoon(~MidAutumn@user/midautumnmoon) (*.net *.split)
2021-09-13 06:19:16 +0200Deewiant(~deewiant@2001:470:69fc:105::2fd3) (*.net *.split)
2021-09-13 06:19:16 +0200zfnmxt(~zfnmxtzfn@user/zfnmxt) (*.net *.split)
2021-09-13 06:19:16 +0200jaror[m](~jaror@2001:470:69fc:105::265) (*.net *.split)
2021-09-13 06:19:16 +0200kar1(~kar1@2001:470:69fc:105::c308) (*.net *.split)
2021-09-13 06:19:16 +0200oak-(~oakuniver@2001:470:69fc:105::fcd) (*.net *.split)
2021-09-13 06:19:16 +0200jesser[m](~jessermat@2001:470:69fc:105::d5ae) (*.net *.split)
2021-09-13 06:19:16 +0200wallymathieu[m](~wallymath@2001:470:69fc:105::16ae) (*.net *.split)
2021-09-13 06:19:16 +0200maralorn(~maralorn@2001:470:69fc:105::251) (*.net *.split)
2021-09-13 06:19:17 +0200Teohehim[m](~teocmatri@2001:470:69fc:105::d327) (*.net *.split)
2021-09-13 06:19:17 +0200monadfritz[m](~ahdytmatr@2001:470:69fc:105::e1f1) (*.net *.split)
2021-09-13 06:19:17 +0200afotgkmnzj7asv3r(~afotgkmnz@2001:470:69fc:105::c24b) (*.net *.split)
2021-09-13 06:19:17 +0200Ollie[m](~ollieocha@2001:470:69fc:105::41a5) (*.net *.split)
2021-09-13 06:19:17 +0200rednaZ[m](~r3dnazmat@2001:470:69fc:105::ba70) (*.net *.split)
2021-09-13 06:19:17 +0200SimonWeiss[m](~weiss-dma@2001:470:69fc:105::bebd) (*.net *.split)
2021-09-13 06:19:17 +0200taeaad(~taeaad@user/taeaad) (*.net *.split)
2021-09-13 06:19:17 +0200mrkajetanp(~mrkajetan@2a01:4b00:ea36:6c00:7994:941c:3f5d:2b88) (*.net *.split)
2021-09-13 06:19:17 +0200Papa(~papa@user/papa) (*.net *.split)
2021-09-13 06:19:17 +0200ddb(~ddb@2607:5300:61:c67::196) (*.net *.split)
2021-09-13 06:19:17 +0200mikko(~mikko@2a02:7b40:d418:6a61::1) (*.net *.split)
2021-09-13 06:19:17 +0200bollu(~bollu@139.59.46.74) (*.net *.split)
2021-09-13 06:19:17 +0200mmaruseacph2(~mihai@198.199.100.72) (*.net *.split)
2021-09-13 06:19:17 +0200duckonomy(~duckonomy@177.ip-144-217-84.net) (*.net *.split)
2021-09-13 06:19:17 +0200st(~ts@46.101.20.9) (*.net *.split)
2021-09-13 06:19:17 +0200w1gz(~do@159.89.11.133) (*.net *.split)
2021-09-13 06:19:17 +0200Putonlalla(~sapekiis@it-cyan.it.jyu.fi) (*.net *.split)
2021-09-13 06:19:17 +0200samebchase(~thelounge@51.15.68.182) (*.net *.split)
2021-09-13 06:19:17 +0200PigDude(~PigDude@159.203.16.199) (*.net *.split)
2021-09-13 06:19:17 +0200SIben(~SIben@ns3106586.ip-5-135-191.eu) (*.net *.split)
2021-09-13 06:19:17 +0200pie_(~pie_bnc@user/pie/x-2818909) (*.net *.split)
2021-09-13 06:19:17 +0200[exa](exa@user/exa/x-3587197) (*.net *.split)
2021-09-13 06:19:17 +0200dy(~dy@user/dy) (*.net *.split)
2021-09-13 06:19:17 +0200dibblego(~dibblego@haskell/developer/dibblego) (*.net *.split)
2021-09-13 06:19:17 +0200madnight_(~madnight@static.59.103.201.195.clients.your-server.de) (*.net *.split)
2021-09-13 06:19:17 +0200tinco(~tinco@tinco.nl) (*.net *.split)
2021-09-13 06:19:17 +0200dixie(~dixie@real.wilbury.sk) (*.net *.split)
2021-09-13 06:19:17 +0200absence(torgeihe@hildring.pvv.ntnu.no) (*.net *.split)
2021-09-13 06:19:17 +0200siers(~ij@user/ij) (*.net *.split)
2021-09-13 06:19:17 +0200pippijn(~pippijn@ra.xinutec.org) (*.net *.split)
2021-09-13 06:19:17 +0200djanatyn(~djanatyn@vps-7f49a6b0.vps.ovh.ca) (*.net *.split)
2021-09-13 06:19:17 +0200arkanoid(~arkanoid@2-238-151-49.ip244.fastwebnet.it) (*.net *.split)
2021-09-13 06:19:17 +0200aji(~alex@prickle.ajitek.net) (*.net *.split)
2021-09-13 06:19:17 +0200reda(~reda@user/reda) (*.net *.split)
2021-09-13 06:19:17 +0200bah(~bah@l1.tel) (*.net *.split)
2021-09-13 06:19:17 +0200Ankhers(~Ankhers@ec2-54-196-233-138.compute-1.amazonaws.com) (*.net *.split)
2021-09-13 06:19:20 +0200SIben_(~SIben@ns3106586.ip-5-135-191.eu)
2021-09-13 06:19:21 +0200dixie_(~dixie@real.wilbury.sk)
2021-09-13 06:19:22 +0200[exa]_(exa@srv3.blesmrt.net)
2021-09-13 06:19:23 +0200absence_(torgeihe@hildring.pvv.ntnu.no)
2021-09-13 06:19:23 +0200pippijn_(~pippijn@ra.xinutec.org)
2021-09-13 06:19:26 +0200dibblego(~dibblego@122-199-1-30.ip4.superloop.com)
2021-09-13 06:19:26 +0200reda_(~reda@user/reda)
2021-09-13 06:19:26 +0200bah_(~bah@l1.tel)
2021-09-13 06:19:28 +0200PigDude_(~PigDude@159.203.16.199)
2021-09-13 06:19:29 +0200samebchase(~thelounge@51.15.68.182)
2021-09-13 06:19:36 +0200djanatyn(~djanatyn@vps-7f49a6b0.vps.ovh.ca)
2021-09-13 06:19:36 +0200tinco(~tinco@tinco.nl)
2021-09-13 06:19:37 +0200MidAutumnMoon(~MidAutumn@user/midautumnmoon)
2021-09-13 06:19:37 +0200bollu(~bollu@139.59.46.74)
2021-09-13 06:19:37 +0200mikko(~mikko@2a02:7b40:d418:6a61::1)
2021-09-13 06:19:39 +0200dibblego(~dibblego@122-199-1-30.ip4.superloop.com) (Changing host)
2021-09-13 06:19:39 +0200dibblego(~dibblego@haskell/developer/dibblego)
2021-09-13 06:19:41 +0200mmaruseacph2(~mihai@198.199.100.72)
2021-09-13 06:19:47 +0200madnight(~madnight@static.59.103.201.195.clients.your-server.de)
2021-09-13 06:19:50 +0200Putonlalla(~sapekiis@it-cyan.it.jyu.fi)
2021-09-13 06:19:50 +0200ddb(~ddb@ipv6two.tilde.club)
2021-09-13 06:19:56 +0200pie_(~pie_bnc@user/pie/x-2818909)
2021-09-13 06:20:11 +0200pavonia(~user@user/siracusa) (Quit: Bye!)
2021-09-13 06:20:12 +0200mrkajetanp(~mrkajetan@2a01:4b00:ea36:6c00:7994:941c:3f5d:2b88)
2021-09-13 06:20:14 +0200siers(~ij@user/ij)
2021-09-13 06:20:14 +0200taeaad(~taeaad@user/taeaad)
2021-09-13 06:20:18 +0200dy(~dy@user/dy)
2021-09-13 06:20:18 +0200nckx_(~nckx@tobias.gr)
2021-09-13 06:20:19 +0200nckx_nckx
2021-09-13 06:20:20 +0200st(~ts@46.101.20.9)
2021-09-13 06:20:21 +0200w1gz(~do@159.89.11.133)
2021-09-13 06:20:21 +0200aji(~alex@prickle.ajitek.net)
2021-09-13 06:20:22 +0200Ankhers(~Ankhers@ec2-54-196-233-138.compute-1.amazonaws.com)
2021-09-13 06:20:35 +0200duckonomy(~duckonomy@177.ip-144-217-84.net)
2021-09-13 06:20:50 +0200Papa(~papa@user/papa)
2021-09-13 06:20:52 +0200Garbanzo(~Garbanzo@2602:304:6eac:dc10::46) (Read error: Connection reset by peer)
2021-09-13 06:20:52 +0200zfnmxt(~zfnmxtzfn@2001:470:69fc:105::2b32)
2021-09-13 06:21:00 +0200Deewiant(~deewiant@2001:470:69fc:105::2fd3)
2021-09-13 06:21:55 +0200Brumaire(~quassel@81-64-14-121.rev.numericable.fr) (Ping timeout: 260 seconds)
2021-09-13 06:22:33 +0200 <lechner> Hi, did the wiki always have such a weird, dark gray half-footer? https://wiki.haskell.org/Cookbook/Pattern_matching
2021-09-13 06:23:02 +0200 <__celeste> it doesn't look that weird to me
2021-09-13 06:23:19 +0200 <__celeste> i might be alone
2021-09-13 06:23:33 +0200theproffesor(~theproffe@user/theproffesor) (Leaving)
2021-09-13 06:23:38 +0200wallymathieu[m](~wallymath@2001:470:69fc:105::16ae)
2021-09-13 06:23:41 +0200arkanoid(~arkanoid@2-238-151-49.ip244.fastwebnet.it)
2021-09-13 06:23:47 +0200hyiltiz(~quassel@31.220.5.250) (Ping timeout: 245 seconds)
2021-09-13 06:23:49 +0200 <lechner> me too
2021-09-13 06:23:51 +0200jesser[m](~jessermat@2001:470:69fc:105::d5ae)
2021-09-13 06:24:04 +0200oak-(~oakuniver@2001:470:69fc:105::fcd)
2021-09-13 06:24:09 +0200kar1(~kar1@2001:470:69fc:105::c308)
2021-09-13 06:24:16 +0200jaror[m](~jaror@2001:470:69fc:105::265)
2021-09-13 06:24:34 +0200 <lechner> do you see a bright white square in the bottom left?
2021-09-13 06:24:44 +0200SimonWeiss[m](~weiss-dma@2001:470:69fc:105::bebd)
2021-09-13 06:25:18 +0200rednaZ[m](~r3dnazmat@2001:470:69fc:105::ba70)
2021-09-13 06:27:30 +0200benin03693230(~benin@183.82.24.227)
2021-09-13 06:27:37 +0200maralorn(~maralorn@2001:470:69fc:105::251)
2021-09-13 06:30:48 +0200afotgkmnzj7asv3r(~afotgkmnz@2001:470:69fc:105::c24b)
2021-09-13 06:31:17 +0200hyiltiz(~quassel@31.220.5.250)
2021-09-13 06:31:19 +0200Teohehim[m](~teocmatri@2001:470:69fc:105::d327)
2021-09-13 06:31:19 +0200Ollie[m](~ollieocha@2001:470:69fc:105::41a5)
2021-09-13 06:31:20 +0200monadfritz[m](~ahdytmatr@2001:470:69fc:105::e1f1)
2021-09-13 06:41:37 +0200System123(~System123@203-134-35-213.sta.estpak.ee)
2021-09-13 06:41:46 +0200benin03693230(~benin@183.82.24.227) (Ping timeout: 268 seconds)
2021-09-13 06:42:38 +0200wroathe(~wroathe@user/wroathe) (Ping timeout: 265 seconds)
2021-09-13 06:45:06 +0200nicbk(~nicbk@user/nicbk)
2021-09-13 06:45:11 +0200roboguy_(~roboguy_@cpe-98-156-4-161.kc.res.rr.com) ()
2021-09-13 06:46:01 +0200System123(~System123@203-134-35-213.sta.estpak.ee) (Ping timeout: 252 seconds)
2021-09-13 06:47:12 +0200mikoto-chan(~mikoto-ch@83.137.2.250)
2021-09-13 06:53:39 +0200shailangsa(~shailangs@host86-186-132-44.range86-186.btcentralplus.com)
2021-09-13 06:57:41 +0200ponylua
2021-09-13 07:02:55 +0200luapony
2021-09-13 07:04:52 +0200 <ldlework> Applicatives are weird
2021-09-13 07:05:21 +0200 <Axman6> Applicatives turn up everywhere in programming and are extremely useful
2021-09-13 07:06:24 +0200geekosaur(~geekosaur@xmonad/geekosaur) (Remote host closed the connection)
2021-09-13 07:06:25 +0200myShoggoth(~myShoggot@97-120-70-214.ptld.qwest.net) (Ping timeout: 252 seconds)
2021-09-13 07:09:25 +0200geekosaur(~geekosaur@xmonad/geekosaur)
2021-09-13 07:10:36 +0200 <Axman6> it's so common that we write code which is "Get this thing, then get this thing, then get this thing, then this next thing, and now put all of those into some constructor" Applicative just generalises that
2021-09-13 07:12:18 +0200__celeste(~celeste@2600:8803:9403:b600::b6f) (Ping timeout: 260 seconds)
2021-09-13 07:13:17 +0200 <Axman6> and, like, a lot of other things. for loops are just applicatives in many cases
2021-09-13 07:13:24 +0200 <Axman6> nested for loops*
2021-09-13 07:13:58 +0200 <Axman6> so is "gather all these maybe null values and if none of them are null, do something with them, otherwise return null"
2021-09-13 07:19:27 +0200 <dmj`> still weird tho
2021-09-13 07:20:20 +0200hyiltiz(~quassel@31.220.5.250) (Ping timeout: 265 seconds)
2021-09-13 07:27:44 +0200bitdex(~bitdex@gateway/tor-sasl/bitdex) (Remote host closed the connection)
2021-09-13 07:28:35 +0200bitdex(~bitdex@gateway/tor-sasl/bitdex)
2021-09-13 07:29:30 +0200slowButPresent(~slowButPr@user/slowbutpresent) (Quit: leaving)
2021-09-13 07:33:13 +0200 <dibblego> yeah but what about enterprise null
2021-09-13 07:34:19 +0200 <dmj`> enterprise null keeps us employed
2021-09-13 07:39:05 +0200Gurkenglas(~Gurkengla@dslb-002-207-014-195.002.207.pools.vodafone-ip.de)
2021-09-13 07:39:32 +0200 <dsal> Maybe
2021-09-13 07:39:40 +0200mikoto-chan(~mikoto-ch@83.137.2.250) (Ping timeout: 240 seconds)
2021-09-13 07:39:50 +0200 <Axman6> heh
2021-09-13 07:41:42 +0200mikoto-chan(~mikoto-ch@ip-83-134-2-136.dsl.scarlet.be)
2021-09-13 07:45:25 +0200myShoggoth(~myShoggot@97-120-70-214.ptld.qwest.net)
2021-09-13 07:46:02 +0200falafel_(~falafel@2603-8000-d801-2d68-d829-f87a-f631-a582.res6.spectrum.com) (Remote host closed the connection)
2021-09-13 07:46:17 +0200falafel_(~falafel@2603-8000-d801-2d68-d829-f87a-f631-a582.res6.spectrum.com)
2021-09-13 07:49:49 +0200 <nitrix> That what Haskell made sure to also have _|_.
2021-09-13 07:50:18 +0200Erutuon(~Erutuon@user/erutuon) (Ping timeout: 265 seconds)
2021-09-13 07:51:10 +0200falafel__(~falafel@cpe-76-168-195-162.socal.res.rr.com)
2021-09-13 07:54:45 +0200falafel_(~falafel@2603-8000-d801-2d68-d829-f87a-f631-a582.res6.spectrum.com) (Ping timeout: 268 seconds)
2021-09-13 07:54:55 +0200amitnjha(~amit@024-216-124-116.res.spectrum.com) (Quit: amitnjha)
2021-09-13 07:55:08 +0200amitnjha(~amit@024-216-124-116.res.spectrum.com)
2021-09-13 07:55:08 +0200amitnjha(~amit@024-216-124-116.res.spectrum.com) (Client Quit)
2021-09-13 07:55:14 +0200 <Axman6> "Avoid success at all costs, by learning from most of the mistakes of the past"
2021-09-13 07:55:18 +0200amitnjha(~amit@024-216-124-116.res.spectrum.com)
2021-09-13 07:55:21 +0200amitnjha(~amit@024-216-124-116.res.spectrum.com) (Client Quit)
2021-09-13 07:55:28 +0200daylily(~daylily@104.225.146.73.16clouds.com)
2021-09-13 07:55:35 +0200amitnjha(~amit@024-216-124-116.res.spectrum.com)
2021-09-13 07:57:40 +0200takuan(~takuan@178-116-218-225.access.telenet.be)
2021-09-13 08:00:56 +0200daylily(~daylily@104.225.146.73.16clouds.com) (Ping timeout: 265 seconds)
2021-09-13 08:02:29 +0200mikoto-chan(~mikoto-ch@ip-83-134-2-136.dsl.scarlet.be) (Quit: mikoto-chan)
2021-09-13 08:03:13 +0200fendor(~fendor@178.165.199.123.wireless.dyn.drei.com)
2021-09-13 08:03:29 +0200hyiltiz(~quassel@31.220.5.250)
2021-09-13 08:05:41 +0200Pickchea(~private@user/pickchea)
2021-09-13 08:10:52 +0200Akronymus(~Akronymus@85.31.8.180)
2021-09-13 08:10:54 +0200cjb(~cjbayliss@user/cjb) ()
2021-09-13 08:12:41 +0200michalz(~michalz@185.246.204.57)
2021-09-13 08:14:26 +0200jpds(~jpds@gateway/tor-sasl/jpds) (Remote host closed the connection)
2021-09-13 08:15:01 +0200jpds(~jpds@gateway/tor-sasl/jpds)
2021-09-13 08:18:57 +0200binape(~binape@154.197.27.149)
2021-09-13 08:25:57 +0200 <dmj`> Got a couple bottoms, but a couple ain't enough.
2021-09-13 08:26:49 +0200hyiltiz(~quassel@31.220.5.250) (Ping timeout: 268 seconds)
2021-09-13 08:26:56 +0200Erutuon(~Erutuon@user/erutuon)
2021-09-13 08:39:03 +0200welterde(welterde@thinkbase.srv.welterde.de) (Quit: WeeChat 3.0.1)
2021-09-13 08:39:09 +0200falafel__(~falafel@cpe-76-168-195-162.socal.res.rr.com) (Ping timeout: 268 seconds)
2021-09-13 08:39:11 +0200welterde(welterde@thinkbase.srv.welterde.de)
2021-09-13 08:40:50 +0200AndrewIRCAndrewYu
2021-09-13 08:41:24 +0200Erutuon(~Erutuon@user/erutuon) (Ping timeout: 268 seconds)
2021-09-13 08:41:41 +0200max22-(~maxime@2a01cb0883359800d694c3dbfe2877e7.ipv6.abo.wanadoo.fr)
2021-09-13 08:47:05 +0200dhouthoo(~dhouthoo@178-117-36-167.access.telenet.be)
2021-09-13 08:51:57 +0200sleblanc(~sleblanc@user/sleblanc) (Quit: Leaving)
2021-09-13 08:55:23 +0200peterhil(~peterhil@dsl-hkibng32-54fb52-57.dhcp.inet.fi) (Ping timeout: 252 seconds)
2021-09-13 09:02:20 +0200hyiltiz(~quassel@31.220.5.250)
2021-09-13 09:07:53 +0200[exa]_[exa]
2021-09-13 09:08:04 +0200[exa](exa@srv3.blesmrt.net) (Changing host)
2021-09-13 09:08:04 +0200[exa](exa@user/exa/x-3587197)
2021-09-13 09:11:59 +0200nctcf^(~nctcf@68.101.54.227) (Remote host closed the connection)
2021-09-13 09:14:08 +0200on^(~on@68.101.54.227)
2021-09-13 09:15:41 +0200chomwitt(~chomwitt@2a02:587:dc14:5d00:12c3:7bff:fe6d:d374)
2021-09-13 09:16:19 +0200lavaman(~lavaman@98.38.249.169)
2021-09-13 09:16:21 +0200nicbk(~nicbk@user/nicbk) (Ping timeout: 276 seconds)
2021-09-13 09:18:11 +0200acidjnk_new(~acidjnk@p200300d0c7203034c44d9fe177fb36b1.dip0.t-ipconnect.de)
2021-09-13 09:18:28 +0200Sgeo(~Sgeo@user/sgeo) (Read error: Connection reset by peer)
2021-09-13 09:21:05 +0200lavaman(~lavaman@98.38.249.169) (Ping timeout: 268 seconds)
2021-09-13 09:21:57 +0200binape(~binape@154.197.27.149) (Quit: Client closed)
2021-09-13 09:23:05 +0200cfricke(~cfricke@user/cfricke)
2021-09-13 09:25:24 +0200tromp(~textual@dhcp-077-249-230-040.chello.nl)
2021-09-13 09:29:29 +0200Guest4308(~yorick@pennyworth.yori.cc) (Changing host)
2021-09-13 09:29:29 +0200Guest4308(~yorick@user/yorick)
2021-09-13 09:29:34 +0200Guest4308yorick
2021-09-13 09:35:13 +0200merijn(~merijn@83-160-49-249.ip.xs4all.nl)
2021-09-13 09:35:34 +0200son0p(~ff@181.136.122.143) (Ping timeout: 260 seconds)
2021-09-13 09:39:36 +0200kimjetwav(~user@2607:fea8:235f:9730:2829:edb2:f2b7:f87c) (Remote host closed the connection)
2021-09-13 09:40:09 +0200hannessteffenhag(~hannesste@ip4d14ffd8.dynamic.kabel-deutschland.de)
2021-09-13 09:43:15 +0200benin03693230(~benin@183.82.24.227)
2021-09-13 09:45:54 +0200System123(~System123@203-134-35-213.sta.estpak.ee)
2021-09-13 09:52:01 +0200 <dminuoso> Axman6: Im not convinced this is truly an applicative thing.
2021-09-13 09:52:35 +0200Pickchea(~private@user/pickchea) (Quit: Leaving)
2021-09-13 09:53:20 +0200 <dminuoso> In your language you said "then get this thing", which already implies a kind of sequencing that's simply not part of the language of Applicative.
2021-09-13 09:54:11 +0200 <dminuoso> It's just that most Applicative instances for types that also have a Monad instance are required to have coherence with Monad, but then the sequencing behavior really comes from Monad.
2021-09-13 09:55:10 +0200shapr(~user@pool-100-36-247-68.washdc.fios.verizon.net) (Ping timeout: 260 seconds)
2021-09-13 09:55:44 +0200 <Axman6> it is part of the language of _some_ applicatives
2021-09-13 09:56:06 +0200 <dminuoso> Conceptually I think of Applicative rather as a diamond than sequencing, where the branches are - in principle - independent, and it's just that in case of instances that are coherent with Monad, that these branches are trivially sequenced after one another.
2021-09-13 09:58:24 +0200 <dminuoso> With some signature method `parallel :: Applicative f => f a -> f b -> f (a, b)`
2021-09-13 09:58:52 +0200 <dminuoso> And a trivial `unit :: Applicative f => f ()` that acts as unit wrt to parallel.
2021-09-13 09:59:31 +0200 <dminuoso> Axman6: Is this still matching the "first this, then that", if that thing trivially sequences the second after the first for some instances?
2021-09-13 09:59:48 +0200dminuosois not sure
2021-09-13 10:01:32 +0200__monty__(~toonn@user/toonn)
2021-09-13 10:04:47 +0200kayprish(~kayprish@46.240.130.158)
2021-09-13 10:06:18 +0200hendursa1(~weechat@user/hendursaga)
2021-09-13 10:06:50 +0200neurocyte(~neurocyte@92.119.10.38)
2021-09-13 10:06:50 +0200neurocyte(~neurocyte@92.119.10.38) (Changing host)
2021-09-13 10:06:50 +0200neurocyte(~neurocyte@user/neurocyte)
2021-09-13 10:08:31 +0200Chai-T-Rex(~ChaiTRex@user/chaitrex)
2021-09-13 10:09:00 +0200hendursaga(~weechat@user/hendursaga) (Ping timeout: 276 seconds)
2021-09-13 10:09:11 +0200ChaiTRex(~ChaiTRex@user/chaitrex) (Remote host closed the connection)
2021-09-13 10:11:48 +0200 <awpr> the operations of Applicative permit ordering but don't require it, in the same way the operations of Monoid permit ordering -- you can have `Monoid String` that's ordered, and `Monoid (Sum Int)` that's not ordered
2021-09-13 10:12:25 +0200 <awpr> and that's no coincidence, since `Applicative` is a (lax) monoidal functor
2021-09-13 10:13:31 +0200 <dminuoso> Sure.
2021-09-13 10:17:44 +0200geekosaur(~geekosaur@xmonad/geekosaur) (Killed (NickServ (GHOST command used by allbery_b)))
2021-09-13 10:17:44 +0200allbery_b(~geekosaur@xmonad/geekosaur)
2021-09-13 10:17:47 +0200allbery_bgeekosaur
2021-09-13 10:28:18 +0200azeem(~azeem@2a00:801:3c7:c672:c46:3e15:33ac:e08b) (Read error: Connection reset by peer)
2021-09-13 10:28:32 +0200azeem(~azeem@emp-91-123.eduroam.uu.se)
2021-09-13 10:30:25 +0200Lycurgus(~juan@98.4.112.204)
2021-09-13 10:30:45 +0200tzh(~tzh@c-24-21-73-154.hsd1.wa.comcast.net) (Quit: zzz)
2021-09-13 10:32:25 +0200on^(~on@68.101.54.227) (Remote host closed the connection)
2021-09-13 10:33:24 +0200jpds(~jpds@gateway/tor-sasl/jpds) (Remote host closed the connection)
2021-09-13 10:33:52 +0200jpds(~jpds@gateway/tor-sasl/jpds)
2021-09-13 10:36:17 +0200econo(uid147250@user/econo) (Quit: Connection closed for inactivity)
2021-09-13 10:37:22 +0200merijn(~merijn@83-160-49-249.ip.xs4all.nl) (Quit: Lost terminal)
2021-09-13 10:37:40 +0200eggplantade(~Eggplanta@2600:1700:bef1:5e10:2dc7:70f:65a6:fbdd) (Remote host closed the connection)
2021-09-13 10:39:35 +0200max22-(~maxime@2a01cb0883359800d694c3dbfe2877e7.ipv6.abo.wanadoo.fr) (Quit: Leaving)
2021-09-13 10:39:59 +0200hnOsmium0001(uid453710@id-453710.stonehaven.irccloud.com) (Quit: Connection closed for inactivity)
2021-09-13 10:40:29 +0200max22-(~maxime@2a01cb08833598005158d0acd05c15c9.ipv6.abo.wanadoo.fr)
2021-09-13 10:43:07 +0200 <mniip> Cale, that really made me think. Is abstraction (function introduction) an effect?
2021-09-13 10:44:43 +0200pretty_dumm_guy(trottel@gateway/vpn/protonvpn/prettydummguy/x-88029655)
2021-09-13 10:44:43 +0200merijn(~merijn@83-160-49-249.ip.xs4all.nl)
2021-09-13 10:45:10 +0200nctcf^(~nctcf@68.101.54.227)
2021-09-13 10:49:53 +0200System123(~System123@203-134-35-213.sta.estpak.ee) (Ping timeout: 268 seconds)
2021-09-13 10:50:40 +0200amitnjha(~amit@024-216-124-116.res.spectrum.com) (Quit: amitnjha)
2021-09-13 10:50:53 +0200amitnjha(~amit@024-216-124-116.res.spectrum.com)
2021-09-13 10:53:00 +0200pooryorick(~pooryoric@87-119-174-173.tll.elisa.ee) (Ping timeout: 265 seconds)
2021-09-13 10:53:13 +0200pooryorick(~pooryoric@87-119-174-173.tll.elisa.ee)
2021-09-13 10:55:31 +0200amahl(~amahl@dsl-jklbng12-54fbca-64.dhcp.inet.fi)
2021-09-13 10:56:37 +0200shailangsa(~shailangs@host86-186-132-44.range86-186.btcentralplus.com) ()
2021-09-13 11:00:08 +0200jkachmar(~jkachmar@2001:470:69fc:105::c72d) (Quit: You have been kicked for being idle)
2021-09-13 11:04:52 +0200Flow(~none@salem.informatik.uni-erlangen.de) (Quit: WeeChat 3.2)
2021-09-13 11:05:07 +0200Flow(~none@gentoo/developer/flow)
2021-09-13 11:09:22 +0200xff0x(~xff0x@2001:1a81:53ae:3300:dc85:5fb:77a4:62d3) (Ping timeout: 260 seconds)
2021-09-13 11:18:38 +0200xsperry(~as@user/xsperry) ()
2021-09-13 11:19:38 +0200favonia(~favonia@user/favonia) (Ping timeout: 260 seconds)
2021-09-13 11:21:32 +0200xsperry(~as@user/xsperry)
2021-09-13 11:23:53 +0200burnsidesLlama(~burnsides@dhcp168-010.wadham.ox.ac.uk)
2021-09-13 11:26:08 +0200gehmehgeh(~user@user/gehmehgeh)
2021-09-13 11:28:08 +0200tfeb(~tfb@host81-129-8-142.range81-129.btcentralplus.com)
2021-09-13 11:28:10 +0200burnsidesLlama(~burnsides@dhcp168-010.wadham.ox.ac.uk) (Ping timeout: 252 seconds)
2021-09-13 11:28:44 +0200zmt01(~zmt00@user/zmt00)
2021-09-13 11:29:02 +0200raehik(~raehik@cpc95906-rdng25-2-0-cust156.15-3.cable.virginm.net)
2021-09-13 11:29:05 +0200burnsidesLlama(~burnsides@dhcp168-010.wadham.ox.ac.uk)
2021-09-13 11:29:14 +0200sheddow(~sheddow@84-52-255.245.3p.ntebredband.no)
2021-09-13 11:30:50 +0200zmt00(~zmt00@user/zmt00) (Ping timeout: 260 seconds)
2021-09-13 11:30:54 +0200geekosaur(~geekosaur@xmonad/geekosaur) (Remote host closed the connection)
2021-09-13 11:31:09 +0200shailangsa(~shailangs@host86-186-132-44.range86-186.btcentralplus.com)
2021-09-13 11:32:11 +0200tfeb(~tfb@host81-129-8-142.range81-129.btcentralplus.com) (Read error: Connection reset by peer)
2021-09-13 11:32:37 +0200favonia(~favonia@user/favonia)
2021-09-13 11:33:40 +0200geekosaur(~geekosaur@xmonad/geekosaur)
2021-09-13 11:35:23 +0200phma(~phma@host-67-44-209-52.hnremote.net) (Read error: Connection reset by peer)
2021-09-13 11:36:58 +0200phma(~phma@host-67-44-208-7.hnremote.net)
2021-09-13 11:38:10 +0200eggplantade(~Eggplanta@2600:1700:bef1:5e10:2dc7:70f:65a6:fbdd)
2021-09-13 11:38:36 +0200raehik(~raehik@cpc95906-rdng25-2-0-cust156.15-3.cable.virginm.net) (Ping timeout: 268 seconds)
2021-09-13 11:39:25 +0200raehik(~raehik@cpc95906-rdng25-2-0-cust156.15-3.cable.virginm.net)
2021-09-13 11:41:21 +0200xff0x(~xff0x@2001:1a81:53ae:3300:dc85:5fb:77a4:62d3)
2021-09-13 11:42:42 +0200eggplantade(~Eggplanta@2600:1700:bef1:5e10:2dc7:70f:65a6:fbdd) (Ping timeout: 268 seconds)
2021-09-13 11:45:26 +0200badwoman(~badwoman@221.239.55.46)
2021-09-13 11:48:29 +0200burnsidesLlama(~burnsides@dhcp168-010.wadham.ox.ac.uk) (Remote host closed the connection)
2021-09-13 11:50:19 +0200raehik(~raehik@cpc95906-rdng25-2-0-cust156.15-3.cable.virginm.net) (Ping timeout: 268 seconds)
2021-09-13 11:50:43 +0200acidjnk_new(~acidjnk@p200300d0c7203034c44d9fe177fb36b1.dip0.t-ipconnect.de) (Ping timeout: 268 seconds)
2021-09-13 11:51:00 +0200amitnjha(~amit@024-216-124-116.res.spectrum.com) (Quit: amitnjha)
2021-09-13 11:51:13 +0200amitnjha(~amit@024-216-124-116.res.spectrum.com)
2021-09-13 11:52:44 +0200euandreh(~euandreh@2804:14c:33:9fe5:44da:bf98:4cf1:2d8d)
2021-09-13 12:07:02 +0200pmk(~user@2a02:587:9416:c4cd:a38a:dea2:e28e:646d)
2021-09-13 12:12:55 +0200azeem(~azeem@emp-91-123.eduroam.uu.se) (Ping timeout: 268 seconds)
2021-09-13 12:13:17 +0200azeem(~azeem@2a00:801:230:bf5f:d20c:8e6b:10b9:3ab2)
2021-09-13 12:13:32 +0200merijn(~merijn@83-160-49-249.ip.xs4all.nl) (Ping timeout: 268 seconds)
2021-09-13 12:15:00 +0200merijn(~merijn@83-160-49-249.ip.xs4all.nl)
2021-09-13 12:16:57 +0200raehik(~raehik@cpc95906-rdng25-2-0-cust156.15-3.cable.virginm.net)
2021-09-13 12:20:19 +0200azeem(~azeem@2a00:801:230:bf5f:d20c:8e6b:10b9:3ab2) (Read error: Connection reset by peer)
2021-09-13 12:20:45 +0200azeem(~azeem@emp-91-123.eduroam.uu.se)
2021-09-13 12:23:38 +0200davetapley(sid666@id-666.highgate.irccloud.com) ()
2021-09-13 12:23:53 +0200davetapley(sid666@id-666.uxbridge.irccloud.com)
2021-09-13 12:24:16 +0200etrepum(sid763@id-763.highgate.irccloud.com) ()
2021-09-13 12:24:32 +0200etrepum(sid763@id-763.uxbridge.irccloud.com)
2021-09-13 12:24:34 +0200burnsidesLlama(~burnsides@dhcp168-010.wadham.ox.ac.uk)
2021-09-13 12:24:47 +0200spruit11_(~quassel@2a02:a467:ccd6:1:bdee:99d8:9af:602f)
2021-09-13 12:25:52 +0200merijn(~merijn@83-160-49-249.ip.xs4all.nl) (Ping timeout: 268 seconds)
2021-09-13 12:26:39 +0200merijn(~merijn@83-160-49-249.ip.xs4all.nl)
2021-09-13 12:28:16 +0200spruit11(~quassel@2a02:a467:ccd6:1:a09c:5ae1:45f8:7ffe) (Ping timeout: 252 seconds)
2021-09-13 12:29:29 +0200vito(sid1962@user/vito) ()
2021-09-13 12:29:45 +0200vito(sid1962@user/vito)
2021-09-13 12:31:28 +0200waleee(~waleee@2001:9b0:216:8200:d457:9189:7843:1dbd) (Ping timeout: 252 seconds)
2021-09-13 12:31:38 +0200burnsidesLlama(~burnsides@dhcp168-010.wadham.ox.ac.uk) (Ping timeout: 268 seconds)
2021-09-13 12:32:02 +0200merijn(~merijn@83-160-49-249.ip.xs4all.nl) (Ping timeout: 268 seconds)
2021-09-13 12:32:27 +0200merijn(~merijn@83-160-49-249.ip.xs4all.nl)
2021-09-13 12:41:29 +0200SrPx(sid108780@id-108780.highgate.irccloud.com) ()
2021-09-13 12:41:43 +0200SrPx(sid108780@id-108780.uxbridge.irccloud.com)
2021-09-13 12:42:44 +0200alanz(sid110616@id-110616.highgate.irccloud.com) ()
2021-09-13 12:43:00 +0200alanz(sid110616@id-110616.uxbridge.irccloud.com)
2021-09-13 12:43:08 +0200merijn(~merijn@83-160-49-249.ip.xs4all.nl) (Ping timeout: 268 seconds)
2021-09-13 12:44:03 +0200merijn(~merijn@83-160-49-249.ip.xs4all.nl)
2021-09-13 12:47:29 +0200favonia(~favonia@user/favonia) (Remote host closed the connection)
2021-09-13 12:47:45 +0200b20n(sid115913@id-115913.highgate.irccloud.com) ()
2021-09-13 12:47:50 +0200favonia(~favonia@user/favonia)
2021-09-13 12:48:01 +0200b20n(sid115913@id-115913.uxbridge.irccloud.com)
2021-09-13 12:49:55 +0200merijn(~merijn@83-160-49-249.ip.xs4all.nl) (Ping timeout: 268 seconds)
2021-09-13 12:50:22 +0200merijn(~merijn@83-160-49-249.ip.xs4all.nl)
2021-09-13 12:55:04 +0200azeem(~azeem@emp-91-123.eduroam.uu.se) (Ping timeout: 252 seconds)
2021-09-13 12:55:41 +0200ubert(~Thunderbi@178.115.54.21.wireless.dyn.drei.com)
2021-09-13 12:56:10 +0200pretty_d1(trottel@gateway/vpn/protonvpn/prettydummguy/x-88029655)
2021-09-13 12:56:14 +0200merijn(~merijn@83-160-49-249.ip.xs4all.nl) (Ping timeout: 260 seconds)
2021-09-13 12:56:28 +0200merijn(~merijn@83-160-49-249.ip.xs4all.nl)
2021-09-13 12:56:41 +0200azeem(~azeem@2a00:801:230:bf5f:d20c:8e6b:10b9:3ab2)
2021-09-13 12:57:05 +0200pretty_dumm_guy(trottel@gateway/vpn/protonvpn/prettydummguy/x-88029655) (Remote host closed the connection)
2021-09-13 12:57:39 +0200azeem(~azeem@2a00:801:230:bf5f:d20c:8e6b:10b9:3ab2) (Read error: Connection reset by peer)
2021-09-13 12:58:11 +0200Lycurgus(~juan@98.4.112.204) (Quit: Exeunt)
2021-09-13 12:58:12 +0200azeem(~azeem@emp-91-123.eduroam.uu.se)
2021-09-13 13:00:55 +0200alx741(~alx741@181.196.69.212)
2021-09-13 13:01:14 +0200hyiltiz(~quassel@31.220.5.250) (Ping timeout: 268 seconds)
2021-09-13 13:07:51 +0200merijn(~merijn@83-160-49-249.ip.xs4all.nl) (Ping timeout: 265 seconds)
2021-09-13 13:08:28 +0200merijn(~merijn@83-160-49-249.ip.xs4all.nl)
2021-09-13 13:10:16 +0200azeem(~azeem@emp-91-123.eduroam.uu.se) (Read error: Connection reset by peer)
2021-09-13 13:10:33 +0200azeem(~azeem@emp-91-123.eduroam.uu.se)
2021-09-13 13:11:31 +0200hololeap_(~hololeap@user/hololeap)
2021-09-13 13:12:36 +0200pony(~ed@101.53.218.157) (Quit: WeeChat 2.8)
2021-09-13 13:13:36 +0200hololeap(~hololeap@user/hololeap) (Ping timeout: 276 seconds)
2021-09-13 13:13:59 +0200stevenxl(sid133530@id-133530.highgate.irccloud.com) ()
2021-09-13 13:14:14 +0200stevenxl(sid133530@id-133530.uxbridge.irccloud.com)
2021-09-13 13:14:54 +0200cheater(~Username@user/cheater) (Ping timeout: 260 seconds)
2021-09-13 13:15:14 +0200cheater(~Username@user/cheater)
2021-09-13 13:18:07 +0200lavaman(~lavaman@98.38.249.169)
2021-09-13 13:18:31 +0200Guest89(~Guest89@45.33.134.45)
2021-09-13 13:19:56 +0200ByronJohnson(~bairyn@mail.digitalkingdom.org) (Ping timeout: 265 seconds)
2021-09-13 13:20:24 +0200Guest89(~Guest89@45.33.134.45) (Client Quit)
2021-09-13 13:20:40 +0200ph88(~ph88@ip5f5af6fd.dynamic.kabel-deutschland.de)
2021-09-13 13:21:49 +0200ByronJohnson(~bairyn@mail.digitalkingdom.org)
2021-09-13 13:22:35 +0200machinedgod(~machinedg@135-23-192-217.cpe.pppoe.ca)
2021-09-13 13:22:50 +0200lavaman(~lavaman@98.38.249.169) (Ping timeout: 260 seconds)
2021-09-13 13:25:53 +0200fendor_(~fendor@178.165.201.14.wireless.dyn.drei.com)
2021-09-13 13:27:50 +0200kayprish(~kayprish@46.240.130.158) (Remote host closed the connection)
2021-09-13 13:28:59 +0200fendor(~fendor@178.165.199.123.wireless.dyn.drei.com) (Ping timeout: 268 seconds)
2021-09-13 13:31:09 +0200gehmehgeh(~user@user/gehmehgeh) (Remote host closed the connection)
2021-09-13 13:31:15 +0200[itchyjunk](~itchyjunk@user/itchyjunk/x-7353470)
2021-09-13 13:31:51 +0200gehmehgeh(~user@user/gehmehgeh)
2021-09-13 13:32:45 +0200hyiltiz(~quassel@31.220.5.250)
2021-09-13 13:34:05 +0200burnsidesLlama(~burnsides@dhcp168-010.wadham.ox.ac.uk)
2021-09-13 13:37:58 +0200fendor_fendor
2021-09-13 13:39:37 +0200burnsidesLlama(~burnsides@dhcp168-010.wadham.ox.ac.uk) (Ping timeout: 252 seconds)
2021-09-13 13:40:04 +0200 <badwoman> q
2021-09-13 13:40:10 +0200eggplantade(~Eggplanta@108-201-191-115.lightspeed.sntcca.sbcglobal.net)
2021-09-13 13:40:20 +0200badwoman(~badwoman@221.239.55.46) (Quit: leaving)
2021-09-13 13:41:45 +0200Pickchea(~private@user/pickchea)
2021-09-13 13:44:34 +0200eggplantade(~Eggplanta@108-201-191-115.lightspeed.sntcca.sbcglobal.net) (Ping timeout: 252 seconds)
2021-09-13 13:46:34 +0200 <Akronymus> ⪒ someone suggested that haskellers are bound to use this as a operator at some point.
2021-09-13 13:46:47 +0200 <Akronymus> I personally don't see how.
2021-09-13 13:47:20 +0200 <merijn> Easy
2021-09-13 13:47:37 +0200 <merijn> > let x ⪒ y = x^2 + y^2 in 3 ⪒ 5
2021-09-13 13:47:39 +0200 <lambdabot> 34
2021-09-13 13:47:43 +0200bah_bah
2021-09-13 13:47:48 +0200 <merijn> Like, how would that even be a challenge?
2021-09-13 13:48:30 +0200 <Akronymus> But that doesn't really make much sense to use that symbol specifically.
2021-09-13 13:48:42 +0200 <Akronymus> I meant it more as in where that is the most appropriate symbol.
2021-09-13 13:48:48 +0200 <int-e> let (⪒) = compare in ...
2021-09-13 13:49:00 +0200 <merijn> I mean any unicode symbol can be used as operator
2021-09-13 13:49:06 +0200 <Akronymus> Well, duh.
2021-09-13 13:49:11 +0200 <merijn> > generalCategory '⪒'
2021-09-13 13:49:13 +0200 <lambdabot> MathSymbol
2021-09-13 13:49:39 +0200 <merijn> Akronymus: arahael was just joking about the number of custom operators defined
2021-09-13 13:50:00 +0200 <arahael> Ha.
2021-09-13 13:50:01 +0200 <Akronymus> I just don't really see a use for `greater than above less than above equals` as an operator
2021-09-13 13:50:13 +0200 <Akronymus> arahael you are seemingly everywhere
2021-09-13 13:50:28 +0200 <int-e> > let ꙮ = 6 in ꙮ * (ꙮ + 1)
2021-09-13 13:50:29 +0200 <lambdabot> 42
2021-09-13 13:50:36 +0200 <arahael> Akronymus: And on 5 chat networks.
2021-09-13 13:50:42 +0200 <Akronymus> Oh, nice.
2021-09-13 13:50:52 +0200 <merijn> > generalCategory 'ꙮ'
2021-09-13 13:50:53 +0200 <Akronymus> Not on #fsharp though
2021-09-13 13:50:53 +0200 <lambdabot> OtherLetter
2021-09-13 13:50:55 +0200 <merijn> hah
2021-09-13 13:51:17 +0200 <Akronymus> > generalCategory '᠎'
2021-09-13 13:51:18 +0200 <lambdabot> <hint>:1:18: error:
2021-09-13 13:51:18 +0200 <lambdabot> lexical error in string/character literal at character '\6158'
2021-09-13 13:51:32 +0200 <Akronymus> > generalCategory ''
2021-09-13 13:51:33 +0200 <lambdabot> <hint>:1:17: error:
2021-09-13 13:51:33 +0200 <lambdabot> Parser error on `''`
2021-09-13 13:51:33 +0200 <lambdabot> Character literals may not be empty
2021-09-13 13:51:40 +0200 <Akronymus> HAHAHAHA
2021-09-13 13:51:46 +0200 <Akronymus> I broke it.
2021-09-13 13:51:49 +0200 <int-e> > generalCategory '\6158'
2021-09-13 13:51:50 +0200 <lambdabot> Format
2021-09-13 13:52:04 +0200 <Akronymus> Mongolian vowel separator
2021-09-13 13:52:17 +0200 <arahael> Akronymus: I got tired of that language years ago.
2021-09-13 13:52:24 +0200 <arahael> Got fed up with .NET in general.
2021-09-13 13:52:32 +0200 <Akronymus> Fair nuff
2021-09-13 13:52:37 +0200 <merijn> F# <- you mispelled "Business OCaml" ;)
2021-09-13 13:52:49 +0200Akronymusgoes back to lithping
2021-09-13 13:53:16 +0200 <Akronymus> Which I somehow like
2021-09-13 13:54:58 +0200 <arahael> To be fair, I started with F# back when they were still figuring out this "null" detail.
2021-09-13 13:55:20 +0200 <arahael> You could explicitly check for nulls, and the compiler would elide it since they're "never nulls" - unless you call it from C#, which can pass a null.
2021-09-13 13:55:21 +0200 <Akronymus> Ewww, naked nulls.
2021-09-13 13:58:07 +0200shapr(~user@pool-100-36-247-68.washdc.fios.verizon.net)
2021-09-13 13:59:36 +0200bitdex(~bitdex@gateway/tor-sasl/bitdex) (Quit: = "")
2021-09-13 14:00:21 +0200arjun(~Srain@user/arjun)
2021-09-13 14:00:36 +0200 <arjun> i can't (x:xs) pattern match on Text values right?
2021-09-13 14:00:37 +0200max22-(~maxime@2a01cb08833598005158d0acd05c15c9.ipv6.abo.wanadoo.fr) (Remote host closed the connection)
2021-09-13 14:00:43 +0200 <arjun> like i can on String
2021-09-13 14:01:03 +0200nckx(~nckx@tobias.gr) (Quit: Updating my Guix System <https://guix.gnu.org>)
2021-09-13 14:01:17 +0200 <arjun> how do we do that for Text, if we have to?
2021-09-13 14:01:51 +0200 <Hecate> arjun: uncosn
2021-09-13 14:01:54 +0200 <Hecate> *uncons sorry
2021-09-13 14:02:23 +0200 <merijn> That's the technically correct, but probably also wrong answer >.>
2021-09-13 14:02:33 +0200 <merijn> What kinda matching do you want to do?
2021-09-13 14:03:04 +0200 <arjun> 1. if it's empty, i can probably do a null check there
2021-09-13 14:03:11 +0200nckx(~nckx@tobias.gr)
2021-09-13 14:03:16 +0200 <arjun> 2. get the first letter of a Text string
2021-09-13 14:03:20 +0200 <merijn> If you wanna check for empty, use T.null yes
2021-09-13 14:03:22 +0200 <arjun> in a variable
2021-09-13 14:03:43 +0200 <arjun> basically a safe `head` for Text
2021-09-13 14:04:09 +0200 <merijn> If you want longer prefix than 1 character you'll want stripPrefix. You can use uncons for the first character, but wanting the first character seems like it has rather limited use, tbh
2021-09-13 14:04:55 +0200dschrempf(~dominik@070-207.dynamic.dsl.fonira.net)
2021-09-13 14:05:07 +0200 <arjun> there's a head for Text, i just saw, is it infamous like the list head?
2021-09-13 14:06:22 +0200 <arjun> Hecate: huh, seems that way, i didn't knew about uncons
2021-09-13 14:06:28 +0200bradparker(sid262931@id-262931.highgate.irccloud.com) ()
2021-09-13 14:06:44 +0200bradparker(sid262931@id-262931.uxbridge.irccloud.com)
2021-09-13 14:07:03 +0200nckx(~nckx@tobias.gr) (Quit: Updating my Guix System <https://guix.gnu.org>)
2021-09-13 14:07:13 +0200systemfault(sid267009@id-267009.highgate.irccloud.com) ()
2021-09-13 14:07:29 +0200systemfault(sid267009@id-267009.uxbridge.irccloud.com)
2021-09-13 14:08:41 +0200max22-(~maxime@2a01cb08833598008d61d5f6a7875e9a.ipv6.abo.wanadoo.fr)
2021-09-13 14:09:43 +0200td_(~td@94.134.91.246) (Ping timeout: 265 seconds)
2021-09-13 14:11:00 +0200yaroot(~yaroot@125.30.3.6) (Quit: The Lounge - https://thelounge.chat)
2021-09-13 14:11:13 +0200nckx(~nckx@tobias.gr)
2021-09-13 14:11:46 +0200yaroot(~yaroot@6.3.30.125.dy.iij4u.or.jp)
2021-09-13 14:13:59 +0200dyeplexer(~dyeplexer@user/dyeplexer)
2021-09-13 14:21:51 +0200nckx(~nckx@tobias.gr) (Quit: Updating my Guix System <https://guix.gnu.org>)
2021-09-13 14:26:44 +0200ByronJohnson(~bairyn@mail.digitalkingdom.org) (Ping timeout: 268 seconds)
2021-09-13 14:27:56 +0200fendor(~fendor@178.165.201.14.wireless.dyn.drei.com) (Remote host closed the connection)
2021-09-13 14:29:30 +0200ByronJohnson(~bairyn@mail.digitalkingdom.org)
2021-09-13 14:30:26 +0200arjun(~Srain@user/arjun) (Ping timeout: 268 seconds)
2021-09-13 14:31:13 +0200TranquilEcho(~grom@user/tranquilecho)
2021-09-13 14:34:18 +0200m5zs7k(aquares@web10.mydevil.net) (Remote host closed the connection)
2021-09-13 14:34:54 +0200m5zs7k(aquares@web10.mydevil.net)
2021-09-13 14:35:19 +0200nckx(~nckx@tobias.gr)
2021-09-13 14:38:21 +0200arjun(~Srain@user/arjun)
2021-09-13 14:38:41 +0200maxime_(~maxime@lfbn-ren-1-762-224.w81-53.abo.wanadoo.fr)
2021-09-13 14:40:04 +0200 <sshine> arjun, Text don't have the (:) constructor, no.
2021-09-13 14:40:18 +0200max22-(~maxime@2a01cb08833598008d61d5f6a7875e9a.ipv6.abo.wanadoo.fr) (Ping timeout: 268 seconds)
2021-09-13 14:40:52 +0200eggplantade(~Eggplanta@2600:1700:bef1:5e10:a93a:cbb6:2e75:4a2)
2021-09-13 14:45:32 +0200ystael(~ystael@user/ystael)
2021-09-13 14:45:51 +0200eggplantade(~Eggplanta@2600:1700:bef1:5e10:a93a:cbb6:2e75:4a2) (Ping timeout: 268 seconds)
2021-09-13 14:46:47 +0200System123(~System123@203-134-35-213.sta.estpak.ee)
2021-09-13 14:47:20 +0200 <Hecate> arjun: maybe use of the offered folds in Text if you feel like your manual recursion can be implemented as a fold :)
2021-09-13 14:48:00 +0200 <arjun> im just writing a simple parser by hand (for the first time)
2021-09-13 14:48:01 +0200azeem(~azeem@emp-91-123.eduroam.uu.se) (Read error: Connection reset by peer)
2021-09-13 14:48:10 +0200 <Hecate> :)
2021-09-13 14:48:12 +0200 <Hecate> congratulations
2021-09-13 14:48:14 +0200cheater(~Username@user/cheater) (Ping timeout: 260 seconds)
2021-09-13 14:48:27 +0200cheater(~Username@user/cheater)
2021-09-13 14:48:39 +0200azeem(~azeem@emp-91-123.eduroam.uu.se)
2021-09-13 14:48:52 +0200 <arjun> learn haskell the `idk how this works, but how hard can it be` way
2021-09-13 14:48:59 +0200 <Hecate> :D
2021-09-13 14:50:06 +0200slowButPresent(~slowButPr@user/slowbutpresent)
2021-09-13 14:51:17 +0200System123(~System123@203-134-35-213.sta.estpak.ee) (Ping timeout: 265 seconds)
2021-09-13 14:54:42 +0200totbwf__(sid402332@highgate.irccloud.com) ()
2021-09-13 14:54:51 +0200pbrisbin(~patrick@pool-173-49-147-250.phlapa.fios.verizon.net)
2021-09-13 14:54:57 +0200totbwf__(sid402332@id-402332.uxbridge.irccloud.com)
2021-09-13 14:55:09 +0200pretty_d1(trottel@gateway/vpn/protonvpn/prettydummguy/x-88029655) (Ping timeout: 265 seconds)
2021-09-13 14:55:42 +0200betelgeuse(~betelgeus@94-225-47-8.access.telenet.be) (Ping timeout: 260 seconds)
2021-09-13 14:55:52 +0200pretty_d1(trottel@gateway/vpn/protonvpn/prettydummguy/x-88029655)
2021-09-13 14:57:10 +0200 <maerwald> arjun: you can use patternsynonyms
2021-09-13 14:57:15 +0200betelgeuse(~betelgeus@94-225-47-8.access.telenet.be)
2021-09-13 14:57:42 +0200 <arjun> oh, hey maerwald \o
2021-09-13 14:57:54 +0200 <arjun> hang on, let me google that
2021-09-13 14:58:11 +0200 <maerwald> https://stackoverflow.com/a/66162066
2021-09-13 14:59:29 +0200 <arjun> maerwald: those would fit right in
2021-09-13 14:59:34 +0200 <arjun> lovely
2021-09-13 15:01:16 +0200hyiltiz(~quassel@31.220.5.250) (Ping timeout: 268 seconds)
2021-09-13 15:01:50 +0200burnsidesLlama(~burnsides@client-8-90.eduroam.oxuni.org.uk)
2021-09-13 15:02:45 +0200peterhil(~peterhil@dsl-hkibng32-54fb52-57.dhcp.inet.fi)
2021-09-13 15:02:51 +0200burnsidesLlama(~burnsides@client-8-90.eduroam.oxuni.org.uk) (Read error: Connection reset by peer)
2021-09-13 15:03:17 +0200burnsidesLlama(~burnsides@client-8-90.eduroam.oxuni.org.uk)
2021-09-13 15:03:20 +0200favonia(~favonia@user/favonia) (Ping timeout: 268 seconds)
2021-09-13 15:05:37 +0200obviyus(sid415299@user/obviyus) ()
2021-09-13 15:05:53 +0200obviyus(sid415299@user/obviyus)
2021-09-13 15:06:39 +0200Pickchea(~private@user/pickchea) (Quit: Leaving)
2021-09-13 15:06:57 +0200aman(~aman@user/aman)
2021-09-13 15:20:05 +0200lavaman(~lavaman@98.38.249.169)
2021-09-13 15:21:19 +0200td_(~td@94.134.91.92)
2021-09-13 15:23:32 +0200nicbk(~nicbk@user/nicbk)
2021-09-13 15:24:42 +0200lavaman(~lavaman@98.38.249.169) (Ping timeout: 268 seconds)
2021-09-13 15:25:43 +0200hyiltiz(~quassel@31.220.5.250)
2021-09-13 15:28:17 +0200acidjnk_new(~acidjnk@p200300d0c7203034c44d9fe177fb36b1.dip0.t-ipconnect.de)
2021-09-13 15:28:48 +0200nicbk(~nicbk@user/nicbk) (Ping timeout: 276 seconds)
2021-09-13 15:29:49 +0200aman(~aman@user/aman) (Quit: aman)
2021-09-13 15:36:19 +0200aarchi(sid486183@id-486183.highgate.irccloud.com) ()
2021-09-13 15:36:35 +0200aarchi(sid486183@id-486183.uxbridge.irccloud.com)
2021-09-13 15:37:58 +0200Pickchea(~private@user/pickchea)
2021-09-13 15:40:03 +0200wroathe(~wroathe@c-68-54-25-135.hsd1.mn.comcast.net)
2021-09-13 15:40:03 +0200wroathe(~wroathe@c-68-54-25-135.hsd1.mn.comcast.net) (Changing host)
2021-09-13 15:40:03 +0200wroathe(~wroathe@user/wroathe)
2021-09-13 15:40:24 +0200slack1256(~slack1256@static-132-147-34-179.fl.cpe.atlanticbb.net)
2021-09-13 15:41:20 +0200amitnjha(~amit@024-216-124-116.res.spectrum.com) (Quit: amitnjha)
2021-09-13 15:41:33 +0200amitnjha(~amit@024-216-124-116.res.spectrum.com)
2021-09-13 15:49:23 +0200dschrempf(~dominik@070-207.dynamic.dsl.fonira.net) (Quit: WeeChat 3.2.1)
2021-09-13 15:49:46 +0200ubert(~Thunderbi@178.115.54.21.wireless.dyn.drei.com) (Ping timeout: 265 seconds)
2021-09-13 16:00:55 +0200ubert(~Thunderbi@77.119.166.250.wireless.dyn.drei.com)
2021-09-13 16:01:45 +0200rekahsoft(~rekahsoft@52.129.35.150)
2021-09-13 16:02:49 +0200rekahsoft(~rekahsoft@52.129.35.150) (Remote host closed the connection)
2021-09-13 16:03:31 +0200rekahsoft(~rekahsoft@52.129.35.150)
2021-09-13 16:05:43 +0200rekahsoft(~rekahsoft@52.129.35.150) (Remote host closed the connection)
2021-09-13 16:07:54 +0200ubert(~Thunderbi@77.119.166.250.wireless.dyn.drei.com) (Remote host closed the connection)
2021-09-13 16:08:11 +0200rekahsoft(~rekahsoft@cpe0008a20f982f-cm64777d666260.cpe.net.cable.rogers.com)
2021-09-13 16:08:12 +0200ubert(~Thunderbi@77.119.166.250.wireless.dyn.drei.com)
2021-09-13 16:13:56 +0200hyiltiz(~quassel@31.220.5.250) (Ping timeout: 265 seconds)
2021-09-13 16:14:06 +0200justsomeguy(~justsomeg@user/justsomeguy)
2021-09-13 16:15:30 +0200Sgeo(~Sgeo@user/sgeo)
2021-09-13 16:19:10 +0200bin_(~bin@user/bin/x-1583188)
2021-09-13 16:19:43 +0200_bin(~bin@user/bin/x-1583188) (Ping timeout: 252 seconds)
2021-09-13 16:20:28 +0200qbt(~edun@user/edun) (Quit: WeeChat 3.2)
2021-09-13 16:21:16 +0200kilolympus(~kilolympu@31.205.200.235)
2021-09-13 16:22:08 +0200ec_(~ec@gateway/tor-sasl/ec)
2021-09-13 16:29:42 +0200T_S_(sid501726@id-501726.highgate.irccloud.com) ()
2021-09-13 16:30:01 +0200T_S_(sid501726@id-501726.uxbridge.irccloud.com)
2021-09-13 16:30:53 +0200jcat(~jeicher@102.132.229.54)
2021-09-13 16:31:17 +0200Akronymus(~Akronymus@85.31.8.180) (Quit: getting ready for night school.)
2021-09-13 16:31:32 +0200jcat(~jeicher@102.132.229.54) ()
2021-09-13 16:36:40 +0200amitnjha(~amit@024-216-124-116.res.spectrum.com) (Quit: amitnjha)
2021-09-13 16:36:54 +0200amitnjha(~amit@024-216-124-116.res.spectrum.com)
2021-09-13 16:42:17 +0200nctcf^(~nctcf@68.101.54.227) (Remote host closed the connection)
2021-09-13 16:42:42 +0200Ariakenom(~Ariakenom@h-81-170-208-30.A163.corp.bahnhof.se)
2021-09-13 16:45:27 +0200tromp(~textual@dhcp-077-249-230-040.chello.nl) (Quit: My iMac has gone to sleep. ZZZzzz…)
2021-09-13 16:45:33 +0200hyiltiz(~quassel@31.220.5.250)
2021-09-13 16:47:00 +0200amitnjha(~amit@024-216-124-116.res.spectrum.com) (Quit: amitnjha)
2021-09-13 16:47:03 +0200nvmd(~nvmd@user/nvmd)
2021-09-13 16:47:16 +0200amitnjha(~amit@024-216-124-116.res.spectrum.com)
2021-09-13 16:47:28 +0200System123(~System123@203-134-35-213.sta.estpak.ee)
2021-09-13 16:48:40 +0200 <adamCS> Megaparsec question: I have a string which could be anything ascii and then, at the end will have "(XXX)" where XXX could be any letters. The part preceding the "(XXX)" could also have things in parentheses so "someTill_" isn't working. I need something like "someTill_" but where the end parser only matches if the parenthetical thing is at the end of the input. I tried "parseAtEnd p = p >>= \res -> do { eof; return res}"
2021-09-13 16:48:40 +0200 <adamCS> with someTill_ but that didn't work either.
2021-09-13 16:50:27 +0200 <adamCS> The parseAtEnd thing fails the same way, "unexpected space, expecting end of input" after any parenthesized thing before the final one.
2021-09-13 16:51:15 +0200favonia(~favonia@user/favonia)
2021-09-13 16:52:16 +0200System123(~System123@203-134-35-213.sta.estpak.ee) (Ping timeout: 268 seconds)
2021-09-13 16:55:14 +0200[itchyjunk](~itchyjunk@user/itchyjunk/x-7353470) (Remote host closed the connection)
2021-09-13 16:55:24 +0200Ariakenom(~Ariakenom@h-81-170-208-30.A163.corp.bahnhof.se) (Read error: Connection reset by peer)
2021-09-13 16:55:55 +0200burnsidesLlama(~burnsides@client-8-90.eduroam.oxuni.org.uk) (Remote host closed the connection)
2021-09-13 16:57:00 +0200ubert(~Thunderbi@77.119.166.250.wireless.dyn.drei.com) (Quit: ubert)
2021-09-13 16:57:14 +0200ubert(~Thunderbi@77.119.166.250.wireless.dyn.drei.com)
2021-09-13 16:57:54 +0200hnOsmium0001(uid453710@id-453710.stonehaven.irccloud.com)
2021-09-13 16:58:27 +0200justsomeguy(~justsomeg@user/justsomeguy) (Quit: WeeChat 3.2)
2021-09-13 17:00:05 +0200 <dminuoso> adamCS: The only option I can see is to simply parse until the end of the line, and then take the string apart at the end and manually call parseError conditionally.
2021-09-13 17:00:46 +0200wroathe(~wroathe@user/wroathe) (Ping timeout: 260 seconds)
2021-09-13 17:00:53 +0200 <adamCS> dminuoso: Huh. I think I just got it to work by adding "try" to "parseAtEnd p" but now you have me worried...
2021-09-13 17:00:54 +0200 <dminuoso> Or you try and do an earlier lexing pass that split along that line
2021-09-13 17:01:12 +0200 <merijn> tbh it just sounds like incorrect backtracking?
2021-09-13 17:01:36 +0200 <adamCS> What do you mean? I am new to parsing so I am guessing a lot...
2021-09-13 17:02:20 +0200ubert(~Thunderbi@77.119.166.250.wireless.dyn.drei.com) (Read error: Connection reset by peer)
2021-09-13 17:02:20 +0200 <dminuoso> If you try the naive approach, this will cause high amounts of backtracking
2021-09-13 17:02:33 +0200 <merijn> adamCS: Well, the "correct" final parens are followed by a newline, yes?
2021-09-13 17:02:37 +0200ubert(~Thunderbi@77.119.166.250.wireless.dyn.drei.com)
2021-09-13 17:02:49 +0200 <merijn> And presumably newlines are not allowed in the preceding part?
2021-09-13 17:02:53 +0200 <adamCS> merijn: end of input, but yes.
2021-09-13 17:03:07 +0200 <dminuoso> If its eof, that might be even worse.
2021-09-13 17:03:23 +0200 <adamCS> I'm only parsing "YYYYYYYYYYYYYYYYY (XXX)" where the Y can each be anything as can the X
2021-09-13 17:03:24 +0200 <merijn> actually, rewind
2021-09-13 17:03:36 +0200 <merijn> pastebin minimal parser + input + error
2021-09-13 17:03:48 +0200 <dminuoso> I would simply strip off 4 characters at the end, and deal with it separately. :p
2021-09-13 17:04:02 +0200 <dminuoso> rather than backtracking the hell out of this
2021-09-13 17:04:53 +0200 <adamCS> dminuoso, merijn: Fair enough. If my solution with "try" works, is the only issue performance? Because this is more or less a one-off. I am parsing a badly formatted csv and then caching the result once parsed as something nicer.
2021-09-13 17:05:31 +0200tromp(~textual@dhcp-077-249-230-040.chello.nl)
2021-09-13 17:06:10 +0200 <sshine> adamCS, if this were regex, would /^.* \(.*\)$/ match your string?
2021-09-13 17:06:46 +0200 <adamCS> sshine: yes
2021-09-13 17:07:41 +0200ubert(~Thunderbi@77.119.166.250.wireless.dyn.drei.com) (Ping timeout: 268 seconds)
2021-09-13 17:08:48 +0200pfurla_(~pfurla@ool-182ed2e2.dyn.optonline.net)
2021-09-13 17:09:24 +0200 <sshine> adamCS, parser combinators are really neat for LL(k) languages, meaning if you can decide by looking k characters ahead if you should parse one thing or the other. an efficient regex would use non-greedy matching. not sure how that translates into megaparsec.
2021-09-13 17:09:26 +0200 <myShoggoth> HF Office Hours in 50 minutes: https://www.twitch.tv/myshoggoth
2021-09-13 17:10:12 +0200fendor(~fendor@178.165.201.14.wireless.dyn.drei.com)
2021-09-13 17:10:26 +0200 <adamCS> merijn: https://pastebin.com/cKUgZ1qj
2021-09-13 17:11:10 +0200pfurla(~pfurla@ool-182ed2e2.dyn.optonline.net) (Ping timeout: 240 seconds)
2021-09-13 17:12:02 +0200 <adamCS> sshine: Yeah. I don't need this to be efficient and I was originally just making do with things in Data.Text but that got out of hand. I'm using cassava to parse most of it and then using megaparsec to handle the messy fields.
2021-09-13 17:12:28 +0200 <sshine> adamCS, it'd be "everything until the '(', then either a last "(YYY)" or a '(' and a recursive call to one-self"... or something.
2021-09-13 17:15:50 +0200 <raehik> Troubleshooting a C FFI bug that only shows up on Windows. Thinking it's down to integer type sizing differences
2021-09-13 17:16:07 +0200 <raehik> %sizeOf @CLong undefined
2021-09-13 17:16:33 +0200 <raehik> > sizeOf @CLong undefined
2021-09-13 17:16:35 +0200 <lambdabot> error:
2021-09-13 17:16:35 +0200 <lambdabot> Pattern syntax in expression context: sizeOf@CLong
2021-09-13 17:16:35 +0200 <lambdabot> Did you mean to enable TypeApplications?
2021-09-13 17:16:47 +0200 <raehik> > sizeOf (undefined :: CLong)
2021-09-13 17:16:48 +0200 <lambdabot> error:
2021-09-13 17:16:48 +0200 <lambdabot> Not in scope: type constructor or class ‘CLong’
2021-09-13 17:16:56 +0200 <merijn> Querying CLong in lambdabot isn't gonna do much useful, tbh
2021-09-13 17:17:04 +0200 <merijn> raehik: Are you using the right foreign calling convention?
2021-09-13 17:17:12 +0200 <raehik> agh I don't know how to use the bots here. That returns 8 on Linux, but 4 on my Windows platforms (VM, hardware)
2021-09-13 17:17:12 +0200 <merijn> Windows has, like, 3 doesn't it?
2021-09-13 17:17:16 +0200wroathe(~wroathe@c-68-54-25-135.hsd1.mn.comcast.net)
2021-09-13 17:17:16 +0200wroathe(~wroathe@c-68-54-25-135.hsd1.mn.comcast.net) (Changing host)
2021-09-13 17:17:16 +0200wroathe(~wroathe@user/wroathe)
2021-09-13 17:17:48 +0200 <raehik> merijn: is that not something the GHC runtime handles? it's the same C library on both Windows and Linux
2021-09-13 17:18:10 +0200 <merijn> raehik: foreign imports specify calling convention
2021-09-13 17:18:37 +0200 <merijn> raehik: GHC can't magically handle that for you, because it's not psychic
2021-09-13 17:18:48 +0200 <merijn> Can you link to the relevant foreign imports?
2021-09-13 17:20:27 +0200 <raehik> of course ty for help https://github.com/camfort/camfort/blob/f7241ebcc6ab9c8721ebdb6c283a3fea0ea08940/src/Camfort/Speci…
2021-09-13 17:20:54 +0200 <raehik> I've only ever seen `foreign import ccall unsafe` (and successfully used it in crossplatform libs)
2021-09-13 17:21:13 +0200 <merijn> ok, first off
2021-09-13 17:21:21 +0200 <merijn> Find out whoever added "unsafe" and hit them for me
2021-09-13 17:21:38 +0200 <raehik> hahaha dang he's not in the channel xD
2021-09-13 17:22:05 +0200wroathe(~wroathe@user/wroathe) (Ping timeout: 268 seconds)
2021-09-13 17:22:11 +0200waleee(~waleee@student-223-182.eduroam.uu.se)
2021-09-13 17:22:23 +0200 <merijn> I continuously see people adding unsafe to foreign imports and 90% of the time the person doing so doesn't realise how ridiculously dangerous that is
2021-09-13 17:22:45 +0200 <merijn> Also, pretty sure ccall is always wrong on windows
2021-09-13 17:23:27 +0200 <raehik> ooer. well, it compiles and successfully calls the linked lib. but runtime errors
2021-09-13 17:23:38 +0200proofofkeags_(~proofofke@205.209.28.54)
2021-09-13 17:24:09 +0200 <raehik> I wanted to get some insight on GHC on Window, specifically if it's a 32-bit platform and how that impacts the FFI
2021-09-13 17:24:59 +0200sheddow(~sheddow@84-52-255.245.3p.ntebredband.no) (Ping timeout: 256 seconds)
2021-09-13 17:25:00 +0200 <raehik> Since the linking lib is definitely built with MinGW 64-bit and uses 8-byte longs. but CLong is apparently 4-bytes in GHC?
2021-09-13 17:25:25 +0200 <merijn> Well, is your GHC built with MinGW?
2021-09-13 17:25:45 +0200 <merijn> Using a different toolchain for GHC and C code is a recipe for sadness
2021-09-13 17:25:51 +0200 <raehik> tentative yes -- I used ghcup
2021-09-13 17:26:18 +0200 <raehik> I think its installation process for Windows is a bit messy, and I think I remember seeing the path mingw32 somewhere which set off alarm bells
2021-09-13 17:26:19 +0200eggplantade(~Eggplanta@2600:1700:bef1:5e10:a93a:cbb6:2e75:4a2)
2021-09-13 17:26:22 +0200 <merijn> Then there's also the difference between stdcall and ccall on Windows
2021-09-13 17:27:36 +0200 <merijn> raehik: GHC determines sizes of CLong, etc. at compile time and pretty sure that depends on the C toolchain used during GHC build
2021-09-13 17:28:05 +0200asivitz(uid178348@id-178348.tinside.irccloud.com)
2021-09-13 17:28:06 +0200 <sshine> adamCS, could X and Y be parentheses?
2021-09-13 17:28:36 +0200dajoer(~david@user/gvx) (Quit: leaving)
2021-09-13 17:28:50 +0200 <raehik> merijn: great, that helps a lot
2021-09-13 17:31:46 +0200 <raehik> ah there's a ghcup channel. I'll check in with them, because it defo looks like ghcup is 32-bit on Windows and that is a probable cause
2021-09-13 17:32:21 +0200cheater(~Username@user/cheater) (Ping timeout: 268 seconds)
2021-09-13 17:32:21 +0200amitnjha(~amit@024-216-124-116.res.spectrum.com) (Quit: amitnjha)
2021-09-13 17:32:25 +0200cheater1__(~Username@user/cheater)
2021-09-13 17:32:29 +0200cheater1__cheater
2021-09-13 17:32:34 +0200amitnjha(~amit@024-216-124-116.res.spectrum.com)
2021-09-13 17:37:59 +0200 <sshine> adamCS, I'm probably missing some detail: https://gist.github.com/sshine/1a62e4225dc9df9612ffb908b1898310
2021-09-13 17:42:03 +0200Chai-T-Rex(~ChaiTRex@user/chaitrex) (Ping timeout: 276 seconds)
2021-09-13 17:42:46 +0200waleee(~waleee@student-223-182.eduroam.uu.se) (Ping timeout: 260 seconds)
2021-09-13 17:42:52 +0200ph88^(~ph88@ip5f5af6fd.dynamic.kabel-deutschland.de)
2021-09-13 17:43:48 +0200Chai-T-Rex(~ChaiTRex@user/chaitrex)
2021-09-13 17:44:48 +0200waleee(~waleee@student-223-182.eduroam.uu.se)
2021-09-13 17:46:08 +0200ph88(~ph88@ip5f5af6fd.dynamic.kabel-deutschland.de) (Ping timeout: 268 seconds)
2021-09-13 17:48:53 +0200doyougnu(~user@c-73-25-202-122.hsd1.or.comcast.net)
2021-09-13 17:49:20 +0200jespada(~jespada@90.254.245.194) (Quit: Textual IRC Client: www.textualapp.com)
2021-09-13 17:49:46 +0200rekahsoft(~rekahsoft@cpe0008a20f982f-cm64777d666260.cpe.net.cable.rogers.com) (Ping timeout: 260 seconds)
2021-09-13 17:50:35 +0200ehamberg(sid18208@stonehaven.irccloud.com) ()
2021-09-13 17:50:51 +0200ehamberg(sid18208@id-18208.hampstead.irccloud.com)
2021-09-13 17:53:32 +0200Pickchea(~private@user/pickchea) (Ping timeout: 268 seconds)
2021-09-13 17:54:07 +0200amir(sid22336@user/amir) ()
2021-09-13 17:54:23 +0200amir(sid22336@user/amir)
2021-09-13 17:55:11 +0200pzanco(~pzanco@2804:14c:3ba1:42d:2204:fff:feff:44a0)
2021-09-13 17:57:30 +0200pzanco(~pzanco@2804:14c:3ba1:42d:2204:fff:feff:44a0) (Client Quit)
2021-09-13 18:00:11 +0200boxscape(~boxscape@user/boxscape) (Quit: You have been kicked for being idle)
2021-09-13 18:00:53 +0200_ht(~quassel@82-169-194-8.biz.kpn.net)
2021-09-13 18:02:08 +0200jakesyl(sid56879@id-56879.stonehaven.irccloud.com) ()
2021-09-13 18:02:31 +0200oatsgermaneZed
2021-09-13 18:02:41 +0200amitnjha(~amit@024-216-124-116.res.spectrum.com) (Quit: amitnjha)
2021-09-13 18:02:42 +0200jakesyl(sid56879@id-56879.hampstead.irccloud.com)
2021-09-13 18:02:54 +0200amitnjha(~amit@024-216-124-116.res.spectrum.com)
2021-09-13 18:03:02 +0200germaneZedoats
2021-09-13 18:03:19 +0200tritlo(sid58727@user/tritlo) ()
2021-09-13 18:03:34 +0200tritlo(sid58727@user/tritlo)
2021-09-13 18:05:55 +0200fresheyeball(~fresheyeb@c-71-237-105-37.hsd1.co.comcast.net)
2021-09-13 18:07:47 +0200eggplantade(~Eggplanta@2600:1700:bef1:5e10:a93a:cbb6:2e75:4a2) (Remote host closed the connection)
2021-09-13 18:08:03 +0200Brumaire(~quassel@81-64-14-121.rev.numericable.fr)
2021-09-13 18:09:17 +0200tzh(~tzh@c-24-21-73-154.hsd1.wa.comcast.net)
2021-09-13 18:09:25 +0200arjun(~Srain@user/arjun) (Remote host closed the connection)
2021-09-13 18:09:44 +0200dmj`(sid72307@stonehaven.irccloud.com) ()
2021-09-13 18:09:59 +0200dmj`(sid72307@id-72307.hampstead.irccloud.com)
2021-09-13 18:23:06 +0200fendor(~fendor@178.165.201.14.wireless.dyn.drei.com) (Read error: Connection reset by peer)
2021-09-13 18:25:55 +0200cfricke(~cfricke@user/cfricke) (Quit: WeeChat 3.2)
2021-09-13 18:27:27 +0200merijn(~merijn@83-160-49-249.ip.xs4all.nl) (Ping timeout: 268 seconds)
2021-09-13 18:28:53 +0200merijn(~merijn@83-160-49-249.ip.xs4all.nl)
2021-09-13 18:30:44 +0200tromp(~textual@dhcp-077-249-230-040.chello.nl) (Quit: My iMac has gone to sleep. ZZZzzz…)
2021-09-13 18:31:09 +0200waleee(~waleee@student-223-182.eduroam.uu.se) (Ping timeout: 268 seconds)
2021-09-13 18:31:53 +0200fendor(~fendor@178.165.201.14.wireless.dyn.drei.com)
2021-09-13 18:34:38 +0200merijn(~merijn@83-160-49-249.ip.xs4all.nl) (Ping timeout: 268 seconds)
2021-09-13 18:34:48 +0200merijn(~merijn@83-160-49-249.ip.xs4all.nl)
2021-09-13 18:35:28 +0200xff0x(~xff0x@2001:1a81:53ae:3300:dc85:5fb:77a4:62d3) (Ping timeout: 268 seconds)
2021-09-13 18:35:55 +0200xff0x(~xff0x@2001:1a81:53ae:3300:c6aa:b7ee:2ee7:d7f8)
2021-09-13 18:40:23 +0200merijn(~merijn@83-160-49-249.ip.xs4all.nl) (Ping timeout: 265 seconds)
2021-09-13 18:41:00 +0200merijn(~merijn@83-160-49-249.ip.xs4all.nl)
2021-09-13 18:45:56 +0200abrar_(~abrar@static-108-2-152-54.phlapa.fios.verizon.net) (Quit: WeeChat 2.9)
2021-09-13 18:46:23 +0200abrar(~abrar@static-108-2-152-54.phlapa.fios.verizon.net)
2021-09-13 18:46:34 +0200merijn(~merijn@83-160-49-249.ip.xs4all.nl) (Ping timeout: 268 seconds)
2021-09-13 18:47:03 +0200merijn(~merijn@83-160-49-249.ip.xs4all.nl)
2021-09-13 18:48:21 +0200System123(~System123@203-134-35-213.sta.estpak.ee)
2021-09-13 18:52:31 +0200merijn(~merijn@83-160-49-249.ip.xs4all.nl) (Ping timeout: 268 seconds)
2021-09-13 18:52:48 +0200merijn(~merijn@83-160-49-249.ip.xs4all.nl)
2021-09-13 18:52:52 +0200maxime__(~maxime@2a01cb0883359800e03cdee15bbb1cbf.ipv6.abo.wanadoo.fr)
2021-09-13 18:53:21 +0200System123(~System123@203-134-35-213.sta.estpak.ee) (Ping timeout: 268 seconds)
2021-09-13 18:54:47 +0200tromp(~textual@dhcp-077-249-230-040.chello.nl)
2021-09-13 18:55:51 +0200maxime_(~maxime@lfbn-ren-1-762-224.w81-53.abo.wanadoo.fr) (Ping timeout: 265 seconds)
2021-09-13 18:57:13 +0200econo(uid147250@user/econo)
2021-09-13 18:58:17 +0200merijn(~merijn@83-160-49-249.ip.xs4all.nl) (Ping timeout: 268 seconds)
2021-09-13 18:59:06 +0200merijn(~merijn@83-160-49-249.ip.xs4all.nl)
2021-09-13 19:00:30 +0200eggplantade(~Eggplanta@2600:1700:bef1:5e10:a93a:cbb6:2e75:4a2)
2021-09-13 19:03:14 +0200nicbk(~nicbk@user/nicbk)
2021-09-13 19:04:27 +0200merijn(~merijn@83-160-49-249.ip.xs4all.nl) (Ping timeout: 268 seconds)
2021-09-13 19:05:00 +0200merijn(~merijn@83-160-49-249.ip.xs4all.nl)
2021-09-13 19:08:01 +0200amitnjha(~amit@024-216-124-116.res.spectrum.com) (Quit: amitnjha)
2021-09-13 19:08:15 +0200amitnjha(~amit@024-216-124-116.res.spectrum.com)
2021-09-13 19:10:30 +0200merijn(~merijn@83-160-49-249.ip.xs4all.nl) (Ping timeout: 260 seconds)
2021-09-13 19:10:57 +0200merijn(~merijn@83-160-49-249.ip.xs4all.nl)
2021-09-13 19:11:18 +0200pavonia(~user@user/siracusa)
2021-09-13 19:11:35 +0200tromp(~textual@dhcp-077-249-230-040.chello.nl) (Quit: My iMac has gone to sleep. ZZZzzz…)
2021-09-13 19:11:51 +0200acidjnk_new(~acidjnk@p200300d0c7203034c44d9fe177fb36b1.dip0.t-ipconnect.de) (Ping timeout: 268 seconds)
2021-09-13 19:13:30 +0200Erutuon(~Erutuon@user/erutuon)
2021-09-13 19:15:35 +0200ubert(~Thunderbi@178.165.189.117.wireless.dyn.drei.com)
2021-09-13 19:16:47 +0200merijn(~merijn@83-160-49-249.ip.xs4all.nl) (Ping timeout: 268 seconds)
2021-09-13 19:16:57 +0200merijn(~merijn@83-160-49-249.ip.xs4all.nl)
2021-09-13 19:19:02 +0200geekosaur(~geekosaur@xmonad/geekosaur) (Ping timeout: 268 seconds)
2021-09-13 19:19:33 +0200geekosaur(~geekosaur@xmonad/geekosaur)
2021-09-13 19:22:20 +0200merijn(~merijn@83-160-49-249.ip.xs4all.nl) (Ping timeout: 268 seconds)
2021-09-13 19:22:39 +0200merijn(~merijn@83-160-49-249.ip.xs4all.nl)
2021-09-13 19:24:06 +0200nicbk(~nicbk@user/nicbk) (Ping timeout: 276 seconds)
2021-09-13 19:24:41 +0200Brumaire(~quassel@81-64-14-121.rev.numericable.fr) (Quit: ran away)
2021-09-13 19:27:11 +0200 <adamCS> sshine: Yes, X could be parentheses.
2021-09-13 19:27:31 +0200mikoto-chan(~mikoto-ch@83.137.2.243)
2021-09-13 19:28:22 +0200amitnjha(~amit@024-216-124-116.res.spectrum.com) (Quit: amitnjha)
2021-09-13 19:28:35 +0200amitnjha(~amit@024-216-124-116.res.spectrum.com)
2021-09-13 19:28:35 +0200amitnjha(~amit@024-216-124-116.res.spectrum.com) (Client Quit)
2021-09-13 19:28:38 +0200 <adamCS> sshine: I think my version works, but I can see that it will have to backtrack (if that's the right term here) on the cases where there are parentheses among the Xs. But that's okay, I think.
2021-09-13 19:28:42 +0200amitnjha(~amit@024-216-124-116.res.spectrum.com)
2021-09-13 19:28:57 +0200 <adamCS> (Not the version I pasted, but that with "try" before "atEnd")
2021-09-13 19:31:59 +0200lavaman(~lavaman@98.38.249.169)
2021-09-13 19:32:43 +0200eggplantade(~Eggplanta@2600:1700:bef1:5e10:a93a:cbb6:2e75:4a2) (Remote host closed the connection)
2021-09-13 19:33:00 +0200wroathe(~wroathe@c-68-54-25-135.hsd1.mn.comcast.net)
2021-09-13 19:33:00 +0200wroathe(~wroathe@c-68-54-25-135.hsd1.mn.comcast.net) (Changing host)
2021-09-13 19:33:00 +0200wroathe(~wroathe@user/wroathe)
2021-09-13 19:33:13 +0200merijn(~merijn@83-160-49-249.ip.xs4all.nl) (Ping timeout: 268 seconds)
2021-09-13 19:34:03 +0200merijn(~merijn@83-160-49-249.ip.xs4all.nl)
2021-09-13 19:35:38 +0200Pickchea(~private@user/pickchea)
2021-09-13 19:36:41 +0200nctcf^(~nctcf@68.101.54.227)
2021-09-13 19:39:24 +0200ikex(ash@user/ikex) (Quit: ZNC - https://znc.in)
2021-09-13 19:39:44 +0200ikex(~ash@user/ikex)
2021-09-13 19:40:33 +0200 <Franciman> how can I enable the Strict pragma?
2021-09-13 19:40:38 +0200 <Franciman> it does not seem to work
2021-09-13 19:40:47 +0200 <Franciman> because when I mark {-# UNPACK #-} the fields of my record
2021-09-13 19:40:51 +0200 <Franciman> ghc cries
2021-09-13 19:40:54 +0200 <Franciman> saying it is unusable
2021-09-13 19:41:00 +0200 <Franciman> what am I doing wrong, ziocan?
2021-09-13 19:41:17 +0200arahael(~arahael@203.221.121.242) (Ping timeout: 245 seconds)
2021-09-13 19:41:32 +0200 <Franciman> https://bpa.st/XK3A
2021-09-13 19:41:34 +0200 <Franciman> here is my code
2021-09-13 19:41:37 +0200pony(~ed@101.53.218.157)
2021-09-13 19:44:32 +0200merijn(~merijn@83-160-49-249.ip.xs4all.nl) (Ping timeout: 268 seconds)
2021-09-13 19:44:49 +0200nctcf^(~nctcf@68.101.54.227) (Remote host closed the connection)
2021-09-13 19:45:09 +0200merijn(~merijn@83-160-49-249.ip.xs4all.nl)
2021-09-13 19:46:55 +0200Cajun(~Cajun@user/cajun) (Quit: Client closed)
2021-09-13 19:48:07 +0200mikoto-chan(~mikoto-ch@83.137.2.243) (Ping timeout: 252 seconds)
2021-09-13 19:48:49 +0200amitnjha(~amit@024-216-124-116.res.spectrum.com) (Quit: amitnjha)
2021-09-13 19:49:00 +0200pjlsergeant(sid143467@id-143467.stonehaven.irccloud.com) ()
2021-09-13 19:49:03 +0200amitnjha(~amit@024-216-124-116.res.spectrum.com)
2021-09-13 19:49:16 +0200pjlsergeant(sid143467@id-143467.hampstead.irccloud.com)
2021-09-13 19:50:29 +0200merijn(~merijn@83-160-49-249.ip.xs4all.nl) (Ping timeout: 268 seconds)
2021-09-13 19:50:50 +0200merijn(~merijn@83-160-49-249.ip.xs4all.nl)
2021-09-13 19:52:03 +0200cemerick(sid54985@id-54985.uxbridge.irccloud.com)
2021-09-13 19:52:14 +0200cemerick(sid54985@id-54985.uxbridge.irccloud.com) ()
2021-09-13 19:53:47 +0200wroathe(~wroathe@user/wroathe) (Ping timeout: 268 seconds)
2021-09-13 19:54:09 +0200amitnjha(~amit@024-216-124-116.res.spectrum.com) (Quit: amitnjha)
2021-09-13 19:54:26 +0200amitnjha(~amit@024-216-124-116.res.spectrum.com)
2021-09-13 19:55:01 +0200bin_(~bin@user/bin/x-1583188) (Ping timeout: 268 seconds)
2021-09-13 19:56:44 +0200eggplantade(~Eggplanta@2600:1700:bef1:5e10:a93a:cbb6:2e75:4a2)
2021-09-13 20:00:08 +0200hyiltiz(~quassel@31.220.5.250) (Ping timeout: 265 seconds)
2021-09-13 20:01:07 +0200merijn(~merijn@83-160-49-249.ip.xs4all.nl) (Ping timeout: 265 seconds)
2021-09-13 20:02:03 +0200merijn(~merijn@83-160-49-249.ip.xs4all.nl)
2021-09-13 20:03:53 +0200 <geekosaur> IIRC you cannot UNPACK an ADT with multiple alternatives like that
2021-09-13 20:04:26 +0200 <geekosaur> also I think LANGUAGE Strict is going to make you very unhappy with that Y combinator
2021-09-13 20:04:53 +0200azeem(~azeem@emp-91-123.eduroam.uu.se) (Ping timeout: 268 seconds)
2021-09-13 20:05:29 +0200 <Franciman> geekosaur: i don't care
2021-09-13 20:05:32 +0200 <Franciman> I don't use it
2021-09-13 20:06:05 +0200 <Franciman> if I could get a more understandable performance, I'd be happy
2021-09-13 20:06:14 +0200 <Franciman> probably haskell is not the right language for my task I know
2021-09-13 20:06:20 +0200 <Franciman> but it makes for excellent prototyping ^^
2021-09-13 20:07:42 +0200rubin55(sid175221@id-175221.stonehaven.irccloud.com) ()
2021-09-13 20:07:58 +0200rubin55(sid175221@id-175221.hampstead.irccloud.com)
2021-09-13 20:08:45 +0200arahael(~arahael@203.221.121.242)
2021-09-13 20:09:16 +0200eggplantade(~Eggplanta@2600:1700:bef1:5e10:a93a:cbb6:2e75:4a2) (Remote host closed the connection)
2021-09-13 20:12:17 +0200merijn(~merijn@83-160-49-249.ip.xs4all.nl) (Ping timeout: 268 seconds)
2021-09-13 20:12:51 +0200sheddow(~sheddow@84-52-255.245.3p.ntebredband.no)
2021-09-13 20:13:18 +0200merijn(~merijn@83-160-49-249.ip.xs4all.nl)
2021-09-13 20:13:43 +0200azeem(~azeem@2a00:801:3c7:fe55:ef64:2dcc:d00c:3ee5)
2021-09-13 20:16:27 +0200awschnap(~lavaman@98.38.249.169)
2021-09-13 20:16:27 +0200lavaman(~lavaman@98.38.249.169) (Read error: Connection reset by peer)
2021-09-13 20:17:09 +0200nicbk(~nicbk@user/nicbk)
2021-09-13 20:18:59 +0200merijn(~merijn@83-160-49-249.ip.xs4all.nl) (Ping timeout: 265 seconds)
2021-09-13 20:19:13 +0200merijn(~merijn@83-160-49-249.ip.xs4all.nl)
2021-09-13 20:20:50 +0200amk(~amk@109.255.169.126) (Remote host closed the connection)
2021-09-13 20:21:50 +0200bjobjo(~bjobjo@user/bjobjo) (Quit: moar hardware)
2021-09-13 20:22:12 +0200 <Franciman> help
2021-09-13 20:22:16 +0200 <Franciman> cabal is trying to kill me
2021-09-13 20:22:31 +0200 <Franciman> it says that my .cabal file says base >=^4.14.2.0
2021-09-13 20:22:32 +0200 <Franciman> but it is false
2021-09-13 20:22:35 +0200 <Franciman> it won't compile
2021-09-13 20:22:42 +0200 <Franciman> what di I do?
2021-09-13 20:22:48 +0200 <Franciman> I just tried enable profiling
2021-09-13 20:22:52 +0200 <Franciman> and it got crazy
2021-09-13 20:22:59 +0200 <Franciman> https://bpa.st/D7JQ
2021-09-13 20:23:01 +0200 <Franciman> first this
2021-09-13 20:23:08 +0200 <Franciman> now the
2021-09-13 20:26:14 +0200dyeplexer(~dyeplexer@user/dyeplexer) (Ping timeout: 265 seconds)
2021-09-13 20:28:24 +0200geekosaur(~geekosaur@xmonad/geekosaur) (Remote host closed the connection)
2021-09-13 20:28:44 +0200geekosaur(~geekosaur@xmonad/geekosaur)
2021-09-13 20:29:22 +0200merijn(~merijn@83-160-49-249.ip.xs4all.nl) (Ping timeout: 260 seconds)
2021-09-13 20:30:24 +0200merijn(~merijn@83-160-49-249.ip.xs4all.nl)
2021-09-13 20:32:23 +0200amk(~amk@109.255.169.126)
2021-09-13 20:33:58 +0200awschnap(~lavaman@98.38.249.169) (Ping timeout: 265 seconds)
2021-09-13 20:34:17 +0200eggplantade(~Eggplanta@2600:1700:bef1:5e10:a93a:cbb6:2e75:4a2)
2021-09-13 20:35:43 +0200merijn(~merijn@83-160-49-249.ip.xs4all.nl) (Ping timeout: 268 seconds)
2021-09-13 20:36:20 +0200merijn(~merijn@83-160-49-249.ip.xs4all.nl)
2021-09-13 20:38:23 +0200kenran(~kenran@200116b82bd65b0032a5b04a485f27fe.dip.versatel-1u1.de)
2021-09-13 20:40:31 +0200mikoto-chan(~mikoto-ch@ip-83-134-2-136.dsl.scarlet.be)
2021-09-13 20:41:10 +0200hexfive(~eric@50.35.83.177)
2021-09-13 20:41:28 +0200merijn(~merijn@83-160-49-249.ip.xs4all.nl) (Ping timeout: 252 seconds)
2021-09-13 20:41:54 +0200hexfive(~eric@50.35.83.177) (Client Quit)
2021-09-13 20:42:02 +0200merijn(~merijn@83-160-49-249.ip.xs4all.nl)
2021-09-13 20:42:51 +0200astra`(sid289983@user/amish) ()
2021-09-13 20:43:10 +0200astra`(sid289983@user/amish)
2021-09-13 20:46:19 +0200renzhi(~xp@2607:fa49:6500:b100::5845)
2021-09-13 20:47:30 +0200merijn(~merijn@83-160-49-249.ip.xs4all.nl) (Ping timeout: 265 seconds)
2021-09-13 20:47:42 +0200merijn(~merijn@83-160-49-249.ip.xs4all.nl)
2021-09-13 20:48:36 +0200nicbk(~nicbk@user/nicbk) (Ping timeout: 276 seconds)
2021-09-13 20:49:23 +0200System123(~System123@203-134-35-213.sta.estpak.ee)
2021-09-13 20:50:49 +0200mikoto-chan(~mikoto-ch@ip-83-134-2-136.dsl.scarlet.be) (Ping timeout: 252 seconds)
2021-09-13 20:54:00 +0200System123(~System123@203-134-35-213.sta.estpak.ee) (Ping timeout: 268 seconds)
2021-09-13 20:56:49 +0200Firedancer(sid336191@id-336191.stonehaven.irccloud.com) ()
2021-09-13 20:57:04 +0200Firedancer(sid336191@id-336191.hampstead.irccloud.com)
2021-09-13 20:57:39 +0200merijn(~merijn@83-160-49-249.ip.xs4all.nl) (Ping timeout: 265 seconds)
2021-09-13 20:58:16 +0200 <adamse> Franciman: p_dyn isn't supported (either not at all or no base with that combination distributed, can't remember which), you'll want to do a static link
2021-09-13 20:59:06 +0200merijn(~merijn@83-160-49-249.ip.xs4all.nl)
2021-09-13 21:00:35 +0200sneedsfeed(~sneedsfee@rrcs-173-95-122-169.midsouth.biz.rr.com)
2021-09-13 21:01:10 +0200retroid_(~retro@176.255.22.194) (Read error: Connection reset by peer)
2021-09-13 21:02:54 +0200mikoto-chan(~mikoto-ch@83.137.2.243)
2021-09-13 21:03:19 +0200hyiltiz(~quassel@31.220.5.250)
2021-09-13 21:05:41 +0200mikoto-chan(~mikoto-ch@83.137.2.243) (Client Quit)
2021-09-13 21:06:37 +0200bitmapper(uid464869@id-464869.lymington.irccloud.com)
2021-09-13 21:09:38 +0200merijn(~merijn@83-160-49-249.ip.xs4all.nl) (Ping timeout: 268 seconds)
2021-09-13 21:10:19 +0200merijn(~merijn@83-160-49-249.ip.xs4all.nl)
2021-09-13 21:11:32 +0200fresheyeball(~fresheyeb@c-71-237-105-37.hsd1.co.comcast.net) (Quit: WeeChat 2.9)
2021-09-13 21:15:31 +0200eggplantade(~Eggplanta@2600:1700:bef1:5e10:a93a:cbb6:2e75:4a2) (Remote host closed the connection)
2021-09-13 21:15:34 +0200merijn(~merijn@83-160-49-249.ip.xs4all.nl) (Ping timeout: 252 seconds)
2021-09-13 21:16:02 +0200merijn(~merijn@83-160-49-249.ip.xs4all.nl)
2021-09-13 21:17:36 +0200waleee(~waleee@2001:9b0:216:8200:d457:9189:7843:1dbd)
2021-09-13 21:18:51 +0200 <sneedsfeed> Is there a way to pattern match literals in a lambda?
2021-09-13 21:19:18 +0200 <maerwald> You mean LambdaCase?
2021-09-13 21:19:24 +0200 <sneedsfeed> yea
2021-09-13 21:19:29 +0200 <sneedsfeed> that sounds right
2021-09-13 21:19:32 +0200 <maerwald> https://ghc.gitlab.haskell.org/ghc/doc/users_guide/exts/lambda_case.html
2021-09-13 21:20:05 +0200 <sneedsfeed> neat
2021-09-13 21:21:04 +0200merijn(~merijn@83-160-49-249.ip.xs4all.nl) (Ping timeout: 252 seconds)
2021-09-13 21:21:33 +0200abhixec(~abhixec@c-67-169-139-16.hsd1.ca.comcast.net)
2021-09-13 21:21:57 +0200merijn(~merijn@83-160-49-249.ip.xs4all.nl)
2021-09-13 21:22:09 +0200hamishmack(sid389057@stonehaven.irccloud.com) ()
2021-09-13 21:22:24 +0200hamishmack(sid389057@id-389057.hampstead.irccloud.com)
2021-09-13 21:29:26 +0200wroathe(~wroathe@c-68-54-25-135.hsd1.mn.comcast.net)
2021-09-13 21:29:27 +0200wroathe(~wroathe@c-68-54-25-135.hsd1.mn.comcast.net) (Changing host)
2021-09-13 21:29:27 +0200wroathe(~wroathe@user/wroathe)
2021-09-13 21:31:58 +0200merijn(~merijn@83-160-49-249.ip.xs4all.nl) (Ping timeout: 265 seconds)
2021-09-13 21:33:34 +0200merijn(~merijn@83-160-49-249.ip.xs4all.nl)
2021-09-13 21:41:25 +0200hnOsmium0001(uid453710@id-453710.stonehaven.irccloud.com) ()
2021-09-13 21:41:49 +0200hnOsmium0001(uid453710@id-453710.hampstead.irccloud.com)
2021-09-13 21:43:34 +0200merijn(~merijn@83-160-49-249.ip.xs4all.nl) (Ping timeout: 265 seconds)
2021-09-13 21:45:11 +0200merijn(~merijn@83-160-49-249.ip.xs4all.nl)
2021-09-13 21:49:06 +0200fendor(~fendor@178.165.201.14.wireless.dyn.drei.com) (Remote host closed the connection)
2021-09-13 21:50:46 +0200merijn(~merijn@83-160-49-249.ip.xs4all.nl) (Ping timeout: 252 seconds)
2021-09-13 21:51:00 +0200merijn(~merijn@83-160-49-249.ip.xs4all.nl)
2021-09-13 21:51:44 +0200justsomeguy(~justsomeg@user/justsomeguy)
2021-09-13 21:52:28 +0200System123(~System123@203-134-35-213.sta.estpak.ee)
2021-09-13 21:53:49 +0200nvmd(~nvmd@user/nvmd) (Ping timeout: 268 seconds)
2021-09-13 21:55:33 +0200nvmd(~nvmd@user/nvmd)
2021-09-13 21:56:06 +0200wrengr_awaywrengr
2021-09-13 21:56:17 +0200merijn(~merijn@83-160-49-249.ip.xs4all.nl) (Ping timeout: 268 seconds)
2021-09-13 21:56:48 +0200merijn(~merijn@83-160-49-249.ip.xs4all.nl)
2021-09-13 21:57:35 +0200acertain(sid470584@id-470584.stonehaven.irccloud.com) ()
2021-09-13 21:57:50 +0200acertain(sid470584@id-470584.hampstead.irccloud.com)
2021-09-13 21:59:15 +0200_ht(~quassel@82-169-194-8.biz.kpn.net) (Remote host closed the connection)
2021-09-13 21:59:22 +0200abhixec(~abhixec@c-67-169-139-16.hsd1.ca.comcast.net) (Ping timeout: 268 seconds)
2021-09-13 22:00:46 +0200tromp(~textual@dhcp-077-249-230-040.chello.nl)
2021-09-13 22:02:24 +0200SanchayanMaity(sid478177@id-478177.stonehaven.irccloud.com) ()
2021-09-13 22:02:25 +0200merijn(~merijn@83-160-49-249.ip.xs4all.nl) (Ping timeout: 265 seconds)
2021-09-13 22:02:35 +0200merijn(~merijn@83-160-49-249.ip.xs4all.nl)
2021-09-13 22:02:39 +0200SanchayanMaity(sid478177@id-478177.hampstead.irccloud.com)
2021-09-13 22:02:47 +0200eggplantade(~Eggplanta@2600:1700:bef1:5e10:a93a:cbb6:2e75:4a2)
2021-09-13 22:05:02 +0200juhp(~juhp@128.106.188.220) (Ping timeout: 260 seconds)
2021-09-13 22:05:22 +0200acidjnk_new(~acidjnk@p200300d0c720309498f6e7a7a92d4c02.dip0.t-ipconnect.de)
2021-09-13 22:06:47 +0200juhp(~juhp@128.106.188.220)
2021-09-13 22:08:27 +0200System12_(~System123@ec2-52-61-197-79.us-gov-west-1.compute.amazonaws.com)
2021-09-13 22:11:05 +0200merijn(~merijn@83-160-49-249.ip.xs4all.nl) (Ping timeout: 268 seconds)
2021-09-13 22:11:35 +0200pmk(~user@2a02:587:9416:c4cd:a38a:dea2:e28e:646d) (Remote host closed the connection)
2021-09-13 22:11:40 +0200merijn(~merijn@83-160-49-249.ip.xs4all.nl)
2021-09-13 22:12:19 +0200System123(~System123@203-134-35-213.sta.estpak.ee) (Ping timeout: 268 seconds)
2021-09-13 22:14:37 +0200tromp(~textual@dhcp-077-249-230-040.chello.nl) (Quit: My iMac has gone to sleep. ZZZzzz…)
2021-09-13 22:21:16 +0200mustafa(sid502723@rockylinux/releng/mustafa) ()
2021-09-13 22:21:32 +0200mustafa(sid502723@rockylinux/releng/mustafa)
2021-09-13 22:27:37 +0200tromp(~textual@dhcp-077-249-230-040.chello.nl)
2021-09-13 22:30:46 +0200maxime__(~maxime@2a01cb0883359800e03cdee15bbb1cbf.ipv6.abo.wanadoo.fr) (Remote host closed the connection)
2021-09-13 22:30:55 +0200chomwitt(~chomwitt@2a02:587:dc14:5d00:12c3:7bff:fe6d:d374) (Remote host closed the connection)
2021-09-13 22:31:54 +0200wroathe(~wroathe@user/wroathe) (Ping timeout: 265 seconds)
2021-09-13 22:33:04 +0200wroathe(~wroathe@c-68-54-25-135.hsd1.mn.comcast.net)
2021-09-13 22:33:05 +0200wroathe(~wroathe@c-68-54-25-135.hsd1.mn.comcast.net) (Changing host)
2021-09-13 22:33:05 +0200wroathe(~wroathe@user/wroathe)
2021-09-13 22:33:53 +0200zebrag(~chris@user/zebrag)
2021-09-13 22:34:32 +0200amitnjha(~amit@024-216-124-116.res.spectrum.com) (Quit: amitnjha)
2021-09-13 22:34:45 +0200amitnjha(~amit@024-216-124-116.res.spectrum.com)
2021-09-13 22:35:13 +0200Cajun(~Cajun@user/cajun)
2021-09-13 22:38:12 +0200tromp(~textual@dhcp-077-249-230-040.chello.nl) (Quit: My iMac has gone to sleep. ZZZzzz…)
2021-09-13 22:38:18 +0200max22-(~maxime@2a01cb0883359800c3e0f756754ec9b4.ipv6.abo.wanadoo.fr)
2021-09-13 22:39:01 +0200eggplantade(~Eggplanta@2600:1700:bef1:5e10:a93a:cbb6:2e75:4a2) (Remote host closed the connection)
2021-09-13 22:42:52 +0200 <ldlework> Am I thinking about applicatives correctly? The way that <$> and <*> work together, is when you are fmapping a binary function, because the fmap ends up replacing the lhs of <*> with a partially applied function, which <*> then applies?
2021-09-13 22:43:21 +0200 <ldlework> In otherwords, by combining <$> and <*> you can lift a binary function
2021-09-13 22:43:22 +0200doyougnu(~user@c-73-25-202-122.hsd1.or.comcast.net) (Ping timeout: 268 seconds)
2021-09-13 22:43:46 +0200peterhil(~peterhil@dsl-hkibng32-54fb52-57.dhcp.inet.fi) (Ping timeout: 260 seconds)
2021-09-13 22:45:05 +0200eggplantade(~Eggplanta@2600:1700:bef1:5e10:a93a:cbb6:2e75:4a2)
2021-09-13 22:45:27 +0200 <dibblego> pretty much right; just remember that all functions take one argument, always
2021-09-13 22:46:32 +0200 <ldlework> dibblego: your point is that any function on the lhs of <*> will do, the way it comfortably works out when fmapping "binary" functions, is just coincidentally useful?
2021-09-13 22:47:02 +0200 <awpr> yep, that sounds about right. `<*>` wants the function in the Applicative, and if you have a pure function, it has to end up in the Applicative somehow. `pure f <*> x <*> y` is potentially a first attempt at doing that, but using `<$>` nicely fuses the `pure` and first `<$>` into one step
2021-09-13 22:47:22 +0200 <awpr> re the initial question, that is
2021-09-13 22:47:55 +0200 <dibblego> if you take function f :: a -> b -> c, whose argument has type a, and fmap it across x :: f a, then you will have a value :: f (b -> c)
2021-09-13 22:47:58 +0200 <awpr> IMO if "multi argument functions" aren't a thing that exists formally, then there's no harm in using it as a consistent shorthand for "function that returns a function"
2021-09-13 22:48:48 +0200 <ldlework> that's what i was thinking at the time, i haven't forgotten what actually happens
2021-09-13 22:48:56 +0200lavaman(~lavaman@98.38.249.169)
2021-09-13 22:49:01 +0200 <ldlework> i figured maybe others would be reminded though
2021-09-13 22:49:12 +0200 <dibblego> in fp-course, we don't use it as a shorthand until it is fully understood, by exactly this exercise
2021-09-13 22:50:56 +0200 <awpr> a bit of a tangent, but I wonder if it's more misleading that we use the same pseudo-syntax for "some particular type" as we use for implicitly quantified variables
2021-09-13 22:51:31 +0200 <awpr> `f :: a -> b -> c` in the above is intended to mean something very different from `f :: forall a b c. a -> b -> c`, which is what it means in Haskell syntax
2021-09-13 22:52:06 +0200 <ldlework> understanding `f` as "Maybe" (in cases where it's Maybe, and friends) has been confusing.
2021-09-13 22:52:09 +0200 <dibblego> yes, I agree this can cause issues in explanation
2021-09-13 22:52:32 +0200 <ldlework> "Provided the 𝑓 is a type with a Monoid instance.."
2021-09-13 22:52:33 +0200 <awpr> sadly I don't know of a better syntax. sometimes I use uppercased standin type names
2021-09-13 22:52:55 +0200takuan(~takuan@178-116-218-225.access.telenet.be) (Remote host closed the connection)
2021-09-13 22:52:56 +0200 <ldlework> It took me a while to realize they meant `Maybe`
2021-09-13 22:53:00 +0200 <ldlework> And not some function
2021-09-13 22:53:14 +0200 <ldlework> But to HFFP's credit this is all explained in meticulous detail in previous chapters
2021-09-13 22:53:18 +0200tabemann(~tabemann@172-13-49-137.lightspeed.milwwi.sbcglobal.net) (Read error: Connection reset by peer)
2021-09-13 22:53:32 +0200 <ldlework> It's just that at some point you move on in a book not having perfectly internalized every notion along the way
2021-09-13 22:53:51 +0200lavaman(~lavaman@98.38.249.169) (Ping timeout: 268 seconds)
2021-09-13 22:53:54 +0200tabemann(~tabemann@172-13-49-137.lightspeed.milwwi.sbcglobal.net)
2021-09-13 22:54:46 +0200 <ldlework> `f a` really means, "some wrapped value" rather than, "the result of some function f applied to a"
2021-09-13 22:57:20 +0200merijn(~merijn@83-160-49-249.ip.xs4all.nl) (Ping timeout: 268 seconds)
2021-09-13 22:58:34 +0200tabemann(~tabemann@172-13-49-137.lightspeed.milwwi.sbcglobal.net) (Ping timeout: 268 seconds)
2021-09-13 22:58:59 +0200 <geekosaur> so you don't like type level using the syntax as term level
2021-09-13 22:59:06 +0200psilospore(uid517704@id-517704.stonehaven.irccloud.com) ()
2021-09-13 22:59:20 +0200 <geekosaur> where `f a` means a type level function applied to the type a
2021-09-13 22:59:26 +0200psilospore(uid517704@id-517704.hampstead.irccloud.com)
2021-09-13 22:59:33 +0200 <geekosaur> (`Maybe` being such a function)
2021-09-13 23:00:24 +0200burnsidesLlama(~burnsides@client-8-86.eduroam.oxuni.org.uk)
2021-09-13 23:00:59 +0200Lord_of_Life_(~Lord@user/lord-of-life/x-2819915)
2021-09-13 23:01:46 +0200Lord_of_Life(~Lord@user/lord-of-life/x-2819915) (Ping timeout: 252 seconds)
2021-09-13 23:03:42 +0200Lord_of_Life_Lord_of_Life
2021-09-13 23:03:54 +0200 <ldlework> geekosaur: I get it now just conveying my confusion along the way :P
2021-09-13 23:05:11 +0200 <awpr> hmm, just throwing ideas out there, maybe learning materials would benefit from annotating syntax examples as type-level or value-level syntax (or module-level)
2021-09-13 23:05:36 +0200 <dibblego> we do that in fp-course
2021-09-13 23:05:45 +0200 <awpr> awesome
2021-09-13 23:06:45 +0200kenran(~kenran@200116b82bd65b0032a5b04a485f27fe.dip.versatel-1u1.de) (Quit: WeeChat info:version)
2021-09-13 23:09:03 +0200burnsidesLlama(~burnsides@client-8-86.eduroam.oxuni.org.uk) (Ping timeout: 268 seconds)
2021-09-13 23:10:12 +0200tromp(~textual@dhcp-077-249-230-040.chello.nl)
2021-09-13 23:12:30 +0200michalz(~michalz@185.246.204.57) (Remote host closed the connection)
2021-09-13 23:24:52 +0200amitnjha(~amit@024-216-124-116.res.spectrum.com) (Quit: amitnjha)
2021-09-13 23:25:07 +0200amitnjha(~amit@024-216-124-116.res.spectrum.com)
2021-09-13 23:25:42 +0200dhouthoo(~dhouthoo@178-117-36-167.access.telenet.be) (Quit: WeeChat 3.2)
2021-09-13 23:26:00 +0200 <ldlework> Another benefit to this applicative stuff, is that it can shortcircuit right?
2021-09-13 23:26:08 +0200merijn(~merijn@83-160-49-249.ip.xs4all.nl)
2021-09-13 23:26:20 +0200 <ldlework> Like you might have a bunch of applicative operations chained together, and if any of them go wrong, you get back a Nothing, Left, etc
2021-09-13 23:27:30 +0200 <dibblego> for Maybe yeah
2021-09-13 23:27:38 +0200 <ldlework> It reminds me of when I ported the examples from Reppy's Concurrent Programming in ML to F# using Hopac. It had all of these crazy channel operators which could short circuit in various ways.
2021-09-13 23:27:46 +0200xff0x(~xff0x@2001:1a81:53ae:3300:c6aa:b7ee:2ee7:d7f8) (Ping timeout: 268 seconds)
2021-09-13 23:28:06 +0200xff0x(~xff0x@2001:1a81:53ae:3300:503:d23a:62d3:e8da)
2021-09-13 23:28:47 +0200 <janus> infinity0: why do you suggest using IO to seed the hash function for unordered-containers? why can't it be RandomGen?
2021-09-13 23:29:10 +0200ldleworktakes a guess
2021-09-13 23:29:22 +0200 <ldlework> Because it wont really be random unless you use some actual randomness from outside the program?
2021-09-13 23:29:31 +0200 <ldlework> "really be random" you know what I mean
2021-09-13 23:30:11 +0200 <c_wraith> does it need to be?
2021-09-13 23:30:46 +0200 <ldlework> dunno. i thought it was actually pretty cool that graphics program always did the same thing
2021-09-13 23:30:58 +0200 <ldlework> but I could see for a game or something you might want a random seed
2021-09-13 23:31:11 +0200 <ldlework> that graphics program I made*
2021-09-13 23:31:13 +0200 <sshine> RandomGen is a class, so I suppose the instance decides where the (pseudo-/actual) randomness comes from?
2021-09-13 23:31:15 +0200merijn(~merijn@83-160-49-249.ip.xs4all.nl) (Ping timeout: 268 seconds)
2021-09-13 23:31:50 +0200 <c_wraith> even with StdGen, for a lot of use cases you only need to use IO to get the seed. You don't need it for anything after that.
2021-09-13 23:32:24 +0200Tuplanolla(~Tuplanoll@91-159-69-50.elisa-laajakaista.fi)
2021-09-13 23:32:37 +0200gehmehgeh(~user@user/gehmehgeh) (Quit: Leaving)
2021-09-13 23:33:19 +0200Erutuon(~Erutuon@user/erutuon) (Ping timeout: 268 seconds)
2021-09-13 23:35:34 +0200slack1256(~slack1256@static-132-147-34-179.fl.cpe.atlanticbb.net) (Ping timeout: 268 seconds)
2021-09-13 23:35:39 +0200 <ldlework> Why does <*> produce a product?
2021-09-13 23:36:19 +0200 <dibblego> it doesn't though
2021-09-13 23:37:23 +0200 <ldlework> > (,) <$> [1, 2] <*> [10, 20]
2021-09-13 23:37:24 +0200 <lambdabot> [(1,10),(1,20),(2,10),(2,20)]
2021-09-13 23:37:45 +0200 <dibblego> that is (,) producing a product
2021-09-13 23:37:59 +0200 <dibblego> or maybe you mean the [] Applicative producing a product
2021-09-13 23:38:07 +0200 <ldlework> So it's the instance's implementation
2021-09-13 23:38:19 +0200 <ldlework> that decides the behavior
2021-09-13 23:38:25 +0200 <ldlework> because of course it is
2021-09-13 23:38:26 +0200 <dibblego> Yes.
2021-09-13 23:38:27 +0200 <ldlework> ok
2021-09-13 23:38:57 +0200 <sshine> > [(+1), (+2)] <*> [0, 5, 10]
2021-09-13 23:38:59 +0200 <lambdabot> [1,6,11,2,7,12]
2021-09-13 23:39:23 +0200 <ldlework> ok that's confusing
2021-09-13 23:39:27 +0200 <ldlework> wait no it's not
2021-09-13 23:39:29 +0200 <ldlework> ok
2021-09-13 23:39:33 +0200 <sshine> kinda looks like a product
2021-09-13 23:39:35 +0200 <dibblego> yeah it is
2021-09-13 23:39:48 +0200 <ldlework> it's still the [] Applicative at play
2021-09-13 23:40:12 +0200 <dibblego> you may approximately think of the [] Applicative as "loops within loops" where the total number of loops is the number of (<*>) + 1
2021-09-13 23:40:20 +0200 <ldlework> soon i will be able to mold my brain into an arm chair and recline upon it
2021-09-13 23:40:36 +0200 <dibblego> (,) means: "make a tuple within the inner loop"
2021-09-13 23:40:40 +0200 <janus> sshine: exactly, i feel like people are throwing out the baby with the bathwater by suggesting IO. because a pure hashable with no seeding is exploitable, now suddently everything has to be impure? no! we can have both, that is the point of haskell, we have type classes, not everything needs to be in IO. we have RandomGen to provide randomness , of course you'd need IO to get the StdGen if that's what you
2021-09-13 23:40:46 +0200System123(~System123@203-134-35-213.sta.estpak.ee)
2021-09-13 23:40:46 +0200 <janus> wanna use
2021-09-13 23:40:49 +0200jonatan(~nate@h85-8-60-194.cust.a3fiber.se) (Ping timeout: 252 seconds)
2021-09-13 23:41:04 +0200 <sshine> ldlework, your brain already did that to itself; it's called a spine :-D
2021-09-13 23:42:05 +0200 <janus> i was wondering, is it maybe some dependency graph problem? can't unordered containers depend on the 'random' package?
2021-09-13 23:42:34 +0200xff0x(~xff0x@2001:1a81:53ae:3300:503:d23a:62d3:e8da) (Ping timeout: 268 seconds)
2021-09-13 23:43:06 +0200 <awpr> seems like one of the bigger factors is that it's nearly insurmountable to update all users of aeson to plumb either an explicit random seed or IO into all JSON deserialization sites
2021-09-13 23:43:16 +0200xff0x(~xff0x@2001:1a81:53ae:3300:d2cc:9d43:abd1:db1a)
2021-09-13 23:43:59 +0200 <janus> phadej's solution was to make Aeson opaque in how it stores the object, that will be a breaking change, i think it sounds reasonable. i don't really see a way around it
2021-09-13 23:44:05 +0200 <awpr> likewise with unordered-containers. I guess the existing API could stay in place unchanged and a salted API could be added alongside it
2021-09-13 23:44:25 +0200System12_(~System123@ec2-52-61-197-79.us-gov-west-1.compute.amazonaws.com) (Ping timeout: 268 seconds)
2021-09-13 23:44:45 +0200 <janus> awpr: right, but if aeson becomes opaque and defaults to Map instead of HashMap, then the unordered-containers problem is separate, which is fine
2021-09-13 23:44:48 +0200 <awpr> but that doesn't fix anyone, and would result in most users still using the vulnerable version by default
2021-09-13 23:44:53 +0200wroathe(~wroathe@user/wroathe) (Ping timeout: 265 seconds)
2021-09-13 23:44:54 +0200 <awpr> I mean my suggestion
2021-09-13 23:45:39 +0200System123(~System123@203-134-35-213.sta.estpak.ee) (Ping timeout: 268 seconds)
2021-09-13 23:45:46 +0200 <awpr> yeah, if we're allowed to break backwards compat, there are lots of ways to avoid it
2021-09-13 23:46:25 +0200 <janus> i really hope we won't give up on values like referential transparency just because people can't be bothered to upgrade
2021-09-13 23:47:27 +0200 <janus> but i guess that everybody can decide for themselves, libraries will show their values. i just hope we won't be reading the random seed from an envrionment variable like an engineer from leapyear is actually suggesting!
2021-09-13 23:47:32 +0200 <awpr> I doubt anyone's willing to break referential transparency.
2021-09-13 23:47:59 +0200 <janus> awpr: wouldn't it be amounting to that if you read the seed from the unix env?
2021-09-13 23:48:14 +0200 <sshine> :t System.IO.Unsafe.unsafePerformIO
2021-09-13 23:48:15 +0200 <lambdabot> IO a -> a
2021-09-13 23:48:29 +0200 <awpr> if the program explicitly reads in in `main` and plumbs it around, no
2021-09-13 23:48:42 +0200 <sshine> I think that's perfectly agreeable, if we just prefix every combinator with 'unsafe'. :-D
2021-09-13 23:48:50 +0200 <awpr> if it's implicitly read by a pure function inside unsafePerformIO, then yes, mostly
2021-09-13 23:49:38 +0200 <awpr> if it's in a global that's evaluated once and shared by all hash maps, ... maybe, still seems sketchy, but I'm not sure it's strictly breaking referential transparency
2021-09-13 23:51:12 +0200 <janus> awpr: hashable has a function called "hash :: a -> Int". the function will give you a different number based on the environment variable, right?
2021-09-13 23:51:19 +0200 <sshine> awpr, you'd have programs that behave differently depending on the iteration in which you run them.
2021-09-13 23:51:27 +0200_bin(~bin@user/bin/x-1583188)
2021-09-13 23:51:31 +0200 <awpr> without thinking about it too deeply, I'd be inclined to have hash-based containers take their salt as an extra parameter, and have "legacy" apis that take no salt
2021-09-13 23:51:46 +0200 <awpr> janus: no, there should be a hashWithSalt function (there is, isn't there?)
2021-09-13 23:52:05 +0200 <awpr> sshine: yes, that seems like a bad thing, but I'm not sure referential transparency is exactly what it breaks
2021-09-13 23:54:41 +0200hyiltiz(~quassel@31.220.5.250) (Ping timeout: 268 seconds)
2021-09-13 23:54:41 +0200 <janus> awpr: ok, so i guess you want only the HashMap itself to use the env variable? what if i call toList on it? won't it have a different order based on the salt used?
2021-09-13 23:54:50 +0200 <awpr> I didn't propose using an environment variable.
2021-09-13 23:55:31 +0200 <janus> well, you said "i doubt anyone's willing to break referential transparency" and i see on the github that somebody suggested using the environment variable
2021-09-13 23:55:36 +0200 <[exa]> there should be a general guideline that people either use the maps in insertion/deletion-efficient mode or hash-stuff-eficient-mode, and explicitly switch between the modes
2021-09-13 23:55:43 +0200 <janus> so i am just trying to understand how it would not constitute breaking referential transparency
2021-09-13 23:56:31 +0200 <sshine> janus, I'm not so afraid they'll pick an unsafe solution. I am a little concerned they'll pick a "they should've read the disclaimer" solution. :)
2021-09-13 23:57:22 +0200 <awpr> sort of depends on your definition of referential transparency. certainly invocation-varying "values" are sketchy, and I'd rather not have them. but they're much less of a violation than e.g. putting mutable state behind a "pure" value
2021-09-13 23:58:10 +0200 <awpr> anyway maybe I just have too much faith in the general public. sounds like some people are willing to break referential transparency for convenience. at least I doubt that will win out
2021-09-13 23:58:37 +0200 <janus> ok, i guess sshine is right
2021-09-13 23:59:42 +0200 <janus> sounds like we may be moving to wargonaut anyway, which seemed like the nuclear solution. but hey, sounds exciting to try out a new json library, why not, i am not complaining :)