Home liberachat/#haskell: Logs Calendar

Logs on 2025-03-27 (liberachat/#haskell)

00:00:02 <yin> syntactic sugar allergy
00:00:20 Γ— L29Ah quits (~L29Ah@wikipedia/L29Ah) (Read error: Connection reset by peer)
00:04:21 <geekosaur> you're going to have to delete most of Haskell if you don't like syntactic sugar. even standard Haskell is full of it
00:04:39 <yin> True
00:05:28 <jackdk> yin: you mean `\a b -> a`
00:05:57 Γ— weary-traveler quits (~user@user/user363627) (Remote host closed the connection)
00:06:41 <yin> jackdk: const?
00:07:14 <yin> or "anonymous lambdas" in general?
00:07:18 <jackdk> Desugaring `True` into a Church-encoded boolean, and making the tongue-in-cheek claim that even algebraic data types are syntactic sugar
00:07:27 <yin> ah i see
00:08:14 β†’ merijn joins (~merijn@host-vr.cgnat-g.v4.dfn.nl)
00:09:09 <jackdk> At which point you can get rid of `if..then..else` expressions by directly applying the "then" and the "else" directly to your Church boolean and letting it pick which one to return
00:09:29 Γ— aetepe quits (~aetepe@46.154.235.16) (Read error: Connection reset by peer)
00:09:35 <yin> jackdk: if you go down that route you'll have interesting discussions with the type system when you get into things like the Y combinator
00:10:16 <geekosaur> you're going to have interesting discussions with it about the Y combinator anyway πŸ™‚
00:10:20 β†’ aetepe joins (~aetepe@46.154.235.16)
00:11:30 <yin> jackdk: if = id -- ;)
00:11:52 <yin> geekosaur: not False
00:12:03 jackdk adds `if` to the pile of things that are secretly `id`
00:13:02 Γ— merijn quits (~merijn@host-vr.cgnat-g.v4.dfn.nl) (Ping timeout: 244 seconds)
00:15:13 Γ— sprotte24 quits (~sprotte24@p200300d16f097d007520d57df2b917ec.dip0.t-ipconnect.de) (Read error: Connection reset by peer)
00:16:06 <yin> newtype Mu a = Mu (Mu a -> a)
00:16:26 <yin> is this right?
00:17:12 <yin> y f = (\x -> f (x (Mu x))) (\(Mu x) -> f (x (Mu x)))
00:17:57 <yin> > let y f = (\x -> f (x (Mu x))) (\(Mu x) -> f (x (Mu x))) in take 10 $ y (1:)
00:17:58 <lambdabot> error:
00:17:58 <lambdabot> Not in scope: data constructor β€˜Mu’
00:17:58 <lambdabot> Perhaps you meant one of these:
00:18:22 <yin> > newtype Mu a = Mu (Mu a -> a); let y f = (\x -> f (x (Mu x))) (\(Mu x) -> f (x (Mu x))) in take 10 $ y (1:)
00:18:23 <lambdabot> <hint>:1:1: error: parse error on input β€˜newtype’
00:18:33 yin shrugs
00:18:34 <geekosaur> use @let for the newtype
00:18:51 <geekosaur> (and for let in general)
00:18:56 Axman6 would argue that in Haskell, the proper church encoding of True would be \a b -> b given the order of Bool's constructors
00:19:25 <yin> :t bool
00:19:26 <lambdabot> a -> a -> Bool -> a
00:19:40 <Axman6> > bool "a" "b" True
00:19:41 <lambdabot> "b"
00:20:16 <yin> geekosaur: can you show me how to do that?
00:20:29 <Axman6> @let newtype Mu a = Mu (Mu a -> a)
00:20:30 <lambdabot> Defined.
00:20:40 <Axman6> > let y f = (\x -> f (x (Mu x))) (\(Mu x) -> f (x (Mu x))) in take 10 $ y (1:)
00:20:41 <lambdabot> [1,1,1,1,1,1,1,1,1,1]
00:21:14 <yin> nice. didn't know we could pollute lambdabot
00:22:24 <geekosaur> "@undefine" clears it
00:22:31 <geekosaur> (but it's all or nothing)
00:23:48 yin @let if = id
00:24:00 β†’ merijn joins (~merijn@host-vr.cgnat-g.v4.dfn.nl)
00:24:39 <Axman6> denied
00:25:06 Γ— Googulator quits (~Googulato@2a01-036d-0106-01d5-c415-995d-99e3-7810.pool6.digikabel.hu) (Quit: Client closed)
00:25:15 <yin> i remember one of my first questions in #haskell-beginners being about some mess i got into because i had overloaded (+) in ghci
00:25:19 <yin> fun times
00:25:20 β†’ Googulator joins (~Googulato@2a01-036d-0106-01d5-c415-995d-99e3-7810.pool6.digikabel.hu)
00:27:56 <jackdk> Axman6: what else is on the `id` list? I can think of `($)` and lens's `traversal`, `(%%~)`, `simply`, `simple`, `equality Refl Refl` and `equality' Refl`
00:28:19 <yin> i also cherish the first time someone answered me a (simple, i thought) question with a link to a white paper
00:28:43 Γ— merijn quits (~merijn@host-vr.cgnat-g.v4.dfn.nl) (Ping timeout: 245 seconds)
00:29:03 <Axman6> You'd probably find two dozen foo = id in lens
00:29:12 <Axman6> how good are types
00:29:31 β†’ L29Ah joins (~L29Ah@wikipedia/L29Ah)
00:30:30 Γ— acidjnk quits (~acidjnk@p200300d6e71c4f691c99ba8b65f3988d.dip0.t-ipconnect.de) (Ping timeout: 260 seconds)
00:30:52 Γ— aetepe quits (~aetepe@46.154.235.16) (Read error: Connection reset by peer)
00:31:27 <yin> :t flip
00:31:28 <lambdabot> (a -> b -> c) -> b -> a -> c
00:31:29 <yin> :t flip flip
00:31:30 <lambdabot> b -> (a -> b -> c) -> a -> c
00:31:34 <yin> :t flip flip flip
00:31:35 <lambdabot> (a1 -> ((a2 -> b -> c1) -> b -> a2 -> c1) -> c2) -> a1 -> c2
00:31:36 <yin> :t flip flip flip flip
00:31:37 <lambdabot> (a1 -> ((a2 -> b -> c1) -> b -> a2 -> c1) -> c2) -> a1 -> c2
00:31:40 <yin> :t flip flip flip flip flip
00:31:41 <lambdabot> (a1 -> ((a2 -> b -> c1) -> b -> a2 -> c1) -> c2) -> a1 -> c2
00:31:45 β†’ peterbecich joins (~Thunderbi@syn-047-229-123-186.res.spectrum.com)
00:31:53 <yin> one of my favourites
00:32:50 β†’ emmanuelux joins (~emmanuelu@user/emmanuelux)
00:33:05 <yin> took me half an afternoon to understand this back in the day
00:34:50 <Axman6> this one surprises me, I guess I'd need to sit down and figure it out too
00:37:16 <yin> the function type always trips me up
00:38:46 <yin> type level fixed point
00:39:47 β†’ merijn joins (~merijn@host-vr.cgnat-g.v4.dfn.nl)
00:43:51 β†’ malte joins (~malte@mal.tc)
00:44:53 Γ— simplystuart quits (~simplystu@c-75-75-152-164.hsd1.pa.comcast.net) (Remote host closed the connection)
00:45:16 β†’ simplystuart joins (~simplystu@c-75-75-152-164.hsd1.pa.comcast.net)
00:45:25 β†’ ljdarj1 joins (~Thunderbi@user/ljdarj)
00:46:33 Γ— merijn quits (~merijn@host-vr.cgnat-g.v4.dfn.nl) (Ping timeout: 246 seconds)
00:48:17 β†’ merijn joins (~merijn@host-vr.cgnat-g.v4.dfn.nl)
00:48:26 Γ— ljdarj quits (~Thunderbi@user/ljdarj) (Ping timeout: 265 seconds)
00:48:26 ljdarj1 is now known as ljdarj
00:53:07 Γ— merijn quits (~merijn@host-vr.cgnat-g.v4.dfn.nl) (Ping timeout: 244 seconds)
01:04:04 β†’ merijn joins (~merijn@host-vr.cgnat-g.v4.dfn.nl)
01:07:54 Γ— xff0x quits (~xff0x@2405:6580:b080:900:d2df:bcfa:d5c3:4ebd) (Ping timeout: 268 seconds)
01:09:06 Γ— merijn quits (~merijn@host-vr.cgnat-g.v4.dfn.nl) (Ping timeout: 252 seconds)
01:12:01 β†’ werneta joins (~werneta@syn-071-083-160-242.res.spectrum.com)
01:14:32 Γ— otto_s quits (~user@p4ff27de5.dip0.t-ipconnect.de) (Ping timeout: 265 seconds)
01:16:14 β†’ otto_s joins (~user@p5de2f7cc.dip0.t-ipconnect.de)
01:19:49 β†’ merijn joins (~merijn@host-vr.cgnat-g.v4.dfn.nl)
01:24:33 Γ— merijn quits (~merijn@host-vr.cgnat-g.v4.dfn.nl) (Ping timeout: 245 seconds)
01:32:16 Γ— califax quits (~califax@user/califx) (Remote host closed the connection)
01:33:24 β†’ califax joins (~califax@user/califx)
01:33:51 Γ— Tuplanolla quits (~Tuplanoll@91-159-69-59.elisa-laajakaista.fi) (Quit: Leaving.)
01:35:38 β†’ merijn joins (~merijn@host-vr.cgnat-g.v4.dfn.nl)
01:40:21 Γ— merijn quits (~merijn@host-vr.cgnat-g.v4.dfn.nl) (Ping timeout: 244 seconds)
01:41:44 Γ— peterbecich quits (~Thunderbi@syn-047-229-123-186.res.spectrum.com) (Ping timeout: 252 seconds)
01:47:24 Γ— ljdarj quits (~Thunderbi@user/ljdarj) (Quit: ljdarj)
01:51:25 β†’ merijn joins (~merijn@host-vr.cgnat-g.v4.dfn.nl)
01:55:45 β†’ weary-traveler joins (~user@user/user363627)
01:56:24 Γ— merijn quits (~merijn@host-vr.cgnat-g.v4.dfn.nl) (Ping timeout: 252 seconds)
02:03:03 Γ— hattckory quits (~hattckory@bras-base-toroon4524w-grc-30-70-27-118-207.dsl.bell.ca) (Ping timeout: 276 seconds)
02:07:15 β†’ merijn joins (~merijn@host-vr.cgnat-g.v4.dfn.nl)
02:12:03 Γ— merijn quits (~merijn@host-vr.cgnat-g.v4.dfn.nl) (Ping timeout: 245 seconds)
02:17:09 Γ— notdabs quits (~Owner@2600:1700:69cf:9000:586:19c0:87cb:b0ff) (Read error: Connection reset by peer)
02:22:42 Γ— weary-traveler quits (~user@user/user363627) (Quit: Konversation terminated!)
02:22:59 β†’ merijn joins (~merijn@host-vr.cgnat-g.v4.dfn.nl)
02:22:59 β†’ weary-traveler joins (~user@user/user363627)
02:28:54 Γ— kaskal- quits (~kaskal@2a02:8388:15bf:c200:a121:d904:3721:b9c6) (Ping timeout: 260 seconds)
02:29:33 Γ— Ranhir quits (~Ranhir@157.97.53.139) (Quit: KVIrc 5.0.0 Aria http://www.kvirc.net/)
02:29:38 β†’ xff0x joins (~xff0x@fsb6a9491c.tkyc517.ap.nuro.jp)
02:29:39 β†’ kaskal joins (~kaskal@84-115-231-2.cable.dynamic.surfer.at)
02:29:45 β†’ aetepe joins (~aetepe@188.119.58.34)
02:30:04 Γ— merijn quits (~merijn@host-vr.cgnat-g.v4.dfn.nl) (Ping timeout: 260 seconds)
02:32:06 β†’ Ranhir joins (~Ranhir@157.97.53.139)
02:34:43 <monochrom> If you replace algebraic data types by encoding, you will need RankNTypes. Furthermore, if you pass a value of such a type to a polymorphic function, so for example you pass x :: forall r. r -> (Int -> r) -> r to id :: forall a. a -> a, you also need Impredicativity.
02:34:44 Γ— aetepe quits (~aetepe@188.119.58.34) (Ping timeout: 260 seconds)
02:38:33 <haskellbridge> <Liamzee> is there a way to use the libraries one of your libraries depend on?
02:39:37 <haskellbridge> <Liamzee> let's see
02:40:04 Γ— xff0x quits (~xff0x@fsb6a9491c.tkyc517.ap.nuro.jp) (Ping timeout: 244 seconds)
02:41:03 β†’ merijn joins (~merijn@host-vr.cgnat-g.v4.dfn.nl)
02:45:54 Γ— merijn quits (~merijn@host-vr.cgnat-g.v4.dfn.nl) (Ping timeout: 252 seconds)
02:50:02 <haskellbridge> <Liamzee> this is weird
02:50:03 <haskellbridge> <Liamzee> (a1 -> ((a2 -> b -> c1) -> b -> a2 -> c1) -> c2) -> a1 -> c2
02:50:07 <haskellbridge> <Liamzee> flip flip flip?
02:50:19 β†’ xff0x joins (~xff0x@fsb6a9491c.tkyc517.ap.nuro.jp)
02:50:37 <haskellbridge> <Liamzee> ah, i understand
02:50:55 <haskellbridge> <Liamzee> (flip flip) flip, not flip (flip flip)
02:55:21 Γ— xff0x quits (~xff0x@fsb6a9491c.tkyc517.ap.nuro.jp) (Ping timeout: 246 seconds)
02:56:52 β†’ merijn joins (~merijn@host-vr.cgnat-g.v4.dfn.nl)
02:58:52 <monochrom> Yes, you add one more dependency.
02:59:30 <monochrom> No, there is no other way.
02:59:55 β†’ xff0x joins (~xff0x@fsb6a9491c.tkyc517.ap.nuro.jp)
03:00:11 <monochrom> I guess s/one more dependency/moar dependencies/
03:01:37 Γ— merijn quits (~merijn@host-vr.cgnat-g.v4.dfn.nl) (Ping timeout: 248 seconds)
03:04:14 <haskellbridge> <Liamzee> curious, monochrom, have you ever tossed flip flip flip flip into your problem sets?
03:04:54 <monochrom> No, it's too long even for homework.
03:05:22 <monochrom> Also, I only mean too long for my TAs to mark.
03:06:15 <haskellbridge> <Liamzee> i still haven't figured out how it unifies
03:06:29 <monochrom> Maybe (.) (.) is reasonably long and short.
03:07:18 <monochrom> But I give (\x -> x x) so students see occurs check in action.
03:12:37 β†’ merijn joins (~merijn@host-vr.cgnat-g.v4.dfn.nl)
03:17:54 Γ— merijn quits (~merijn@host-vr.cgnat-g.v4.dfn.nl) (Ping timeout: 260 seconds)
03:23:39 <haskellbridge> <Liamzee> thanks, so newtype Mu a = Mu (Mu a -> a), but not type Mu a = (Mu a -> a)
03:25:32 <monochrom> You need a newtype wrapper because it's a recursive type. Type alias doesn't support recursive alias.
03:28:25 β†’ merijn joins (~merijn@host-vr.cgnat-g.v4.dfn.nl)
03:28:44 <haskellbridge> <Liamzee> and wait, that type has a cardinality of 1?
03:30:49 <monochrom> No.
03:33:12 Γ— merijn quits (~merijn@host-vr.cgnat-g.v4.dfn.nl) (Ping timeout: 252 seconds)
03:38:31 <EvanR> types aren't sets so no cardinality at all
03:39:19 <haskellbridge> <Liamzee> blame Sandy Maguire's thinking with types
03:39:26 <EvanR> (in hott, some types are (h-)sets)
03:39:33 <EvanR> (but not others)
03:40:23 <haskellbridge> <Liamzee> forall Mu a... cardinality is 0 if you consider the bottom triggered by non-termination not to count
03:40:43 <EvanR> squint
03:40:49 <haskellbridge> <Liamzee> forall a
03:41:25 <haskellbridge> <Liamzee> i was really asking about whether the only non-trivial value is (\u@(Mu a) -> a u), which is still a bottom
03:41:45 <EvanR> a lambda is not a bottom
03:42:24 <haskellbridge> <Liamzee> okay, it's not a bottom
03:42:39 <haskellbridge> <Liamzee> but is this the only implementable lambda?
03:42:50 <EvanR> what is the type of that lambdas body
03:42:54 <monochrom> Since recursion is involved, you should use denotational domains (rather than any type theory) for types. A denotational domain is a partially ordered set, but you can forget the partial order part and ask about the cardinality of the set part. The cardinality for the set for Mu is going to be infinite.
03:43:05 <haskellbridge> <Liamzee> (Mu a -> a)
03:43:20 <EvanR> to construct a lambda...
03:43:22 <EvanR> oops
03:43:24 <EvanR> gave it away
03:43:42 <EvanR> to construct a inhabitant of function type...
03:44:14 β†’ merijn joins (~merijn@host-vr.cgnat-g.v4.dfn.nl)
03:44:55 <EvanR> the domains tend to have a lot more that you'd expect from a naive set interpretation
03:45:35 <haskellbridge> <Liamzee> so implicitly, there is another function that exists in the type (forall a. Mu a -> a),
03:46:19 <EvanR> I think you can explicitly show at least 2
03:46:27 <EvanR> the one above is explicitly 1
03:46:28 Γ— jmcantrell quits (~weechat@user/jmcantrell) (Quit: WeeChat 4.6.0)
03:47:05 <monochrom> Mu Int has more than Int, namely, Mu (const i) for each i :: Int.
03:47:24 <EvanR> yes I'm not sure if quantifying makes it easier or harder
03:48:45 <monochrom> Oh, parametricity always collapses the space. But that's a disgression.
03:49:08 Γ— merijn quits (~merijn@host-vr.cgnat-g.v4.dfn.nl) (Ping timeout: 245 seconds)
03:49:11 <EvanR> Liamzee, if in someplace you need something of function type, and you don't have any other options, you can always say "lambda such and such"
03:50:28 <EvanR> kind of like if you need a Nat, you can always say Z
03:51:08 <haskellbridge> <Liamzee> it feels like pretending id.id is distinct from id and then claiming that a -> a has multiple inhabitants
03:51:55 <EvanR> id . id is different from id as terms, but are equal by function extensionality
03:52:14 <haskellbridge> <Liamzee> but for all intents and purposes, i guess, (Mu a -> a) given parametricity has either 0 or 1 inhabitants, because it's always (Mu a -> bottom)
03:52:57 <EvanR> Mu a is a type and bottom is a value... so Mu a -> bottom is causing the computer to self destruct now
03:53:30 <EvanR> you could have used a non-bottom value in the body of your function earlier
03:53:31 <haskellbridge> <Liamzee> or rather the typechecker
03:53:46 <haskellbridge> <Liamzee> yes, but how would you manufacture a non-bottom value of type a?
03:54:01 <EvanR> where exactly, since I asked what the type needed to be and you said "function"
03:56:10 <EvanR> newtype Mu a = Mu (Mu a -> a)
03:56:22 <haskellbridge> <Liamzee> sorry, my mistake for not being specific
03:56:44 <haskellbridge> <Liamzee> so in that case, the only inhabitant is a value that produces bottom, which i guess is 1
03:56:53 β†’ JuanDaugherty joins (~juan@user/JuanDaugherty)
03:58:53 <EvanR> if you use domains, for Nat you'd have βŠ₯, Z, S βŠ₯, S Z, S (S βŠ₯), S (S Z), ...
03:59:16 <EvanR> for () -> () you'd have
04:00:01 β†’ merijn joins (~merijn@host-vr.cgnat-g.v4.dfn.nl)
04:00:05 <EvanR> βŠ₯, \x -> x, \x -> βŠ₯,
04:00:33 <EvanR> \() -> βŠ₯
04:00:35 <EvanR> ?
04:00:43 <EvanR> \x -> ()
04:00:54 <haskellbridge> <Bowuigi> \x -> ()
04:00:57 <haskellbridge> <Bowuigi> Yeah
04:01:00 <haskellbridge> <Liamzee> i mean if you restrict a, instead of newtyping, it's equal to the cardinality of all types
04:01:17 <EvanR> "the cardinality of all types" wwwwwwwwhwhhhhhaaaaaaaat
04:01:38 <EvanR> at the very least, use a universe
04:01:46 <haskellbridge> <Liamzee> i wish i could delete my imprecise blather
04:02:13 <monochrom> Oh you can always proofread and edit before pressing enter.
04:02:50 <haskellbridge> <Bowuigi> \x -> bottom and _ -> bottom are the same thing, () -> bottom is \x -> case x of () -> bottom which already returns bottom on every case
04:03:22 <haskellbridge> <Bowuigi> Sorry, \x -> bottom and \() -> bottom
04:03:37 <haskellbridge> <Bowuigi> Matrix might have eaten some parens
04:03:56 <haskellbridge> <Bowuigi> Backslashes*
04:03:57 <EvanR> βŠ₯, \x -> x, \x -> βŠ₯, \x -> ()
04:04:15 <haskellbridge> <Bowuigi> Yes
04:04:59 <monochrom> I have trouble distinguishing βŠ₯ from \x -> βŠ₯
04:05:06 Γ— merijn quits (~merijn@host-vr.cgnat-g.v4.dfn.nl) (Ping timeout: 252 seconds)
04:05:14 <EvanR> one is more defined than the other, obviously
04:06:09 <monochrom> I know Haskell's seq can distinguish them. But I also know that the Haskell Report confesses that this is why seq deviates from denotational semantics.
04:06:11 <EvanR> but you might be right there's no way to observe the difference
04:06:13 <haskellbridge> <Liamzee> also (\x -> bottom) can be evaluated without triggering bottom?
04:06:22 <haskellbridge> <Liamzee> ah
04:06:25 <haskellbridge> <Bowuigi> They are equal under function extensionality
04:06:57 <haskellbridge> <Bowuigi> (Assuming the usual 'bottom x = bottom')
04:07:23 <EvanR> so maybe domains didn't help clear up "how to count" as much as you hoped
04:08:24 <haskellbridge> <Bowuigi> Assuming totality and equating using funext/homotopies is an easy way to get most of the useful terms
04:08:46 <monochrom> Oh domains are difficult, it never "helps" to get them involved. But I was going for clarifying *what* to count.
04:09:03 <EvanR> assuming totality, that seems to call for a whole different semantics
04:09:10 <haskellbridge> <Bowuigi> But in this case you wanted to get the members of a fixpoint function so assuming totality would be dumb lol
04:10:07 <haskellbridge> <Bowuigi> EvanR it gets you the "lowest common denominator" of the members of all the semantics. On a lot of cases these are the most useful
04:10:25 <haskellbridge> <Bowuigi> Unless you want to play around with bottoms, which is ok I guess
04:10:43 <EvanR> an ultrafinitist interpretation might get you lower than the lowest common denominator
04:11:01 <haskellbridge> <Bowuigi> A what
04:11:14 <EvanR> for incredibly small values of infinity, such and such
04:11:55 β†’ Square joins (~Square@user/square)
04:12:37 <haskellbridge> <Bowuigi> Doesn't totality forbid infinitely large values (excluding codata, which can still be encoded, tho not evaluated on its entirety) via Church-Rosser?
04:12:51 <haskellbridge> <Bowuigi> Why do you need to constraint infinities?
04:13:20 <EvanR> ultrafinitism would forbid infinite and most of the finite values
04:13:58 <haskellbridge> <Bowuigi> Oh you sort of set a limit on how large your data can be?
04:14:27 <haskellbridge> <Bowuigi> Like, "forbid all terms of size > 800"?
04:14:29 <EvanR> yes, without giving an explicit limit, because someone might say "that plus one"
04:14:45 <monochrom> May I invent ultraultrafinitism? It means since it doesn't believe in infinite values, it can't even forbid them. >:)
04:14:56 <haskellbridge> <Bowuigi> Oh that's why you use infinities
04:15:10 <EvanR> no you may not, because then you can't even invent ultraultrafinitism
04:15:26 <EvanR> since you would be referring to things you're trying to forbid
04:15:26 <haskellbridge> <Bowuigi> Just forbid codata and done
04:15:48 β†’ merijn joins (~merijn@host-vr.cgnat-g.v4.dfn.nl)
04:16:05 <haskellbridge> <Bowuigi> I present ultrainfinitism, everything must be infinitely large, at least as large as the smallest infinity
04:16:25 <EvanR> I usually force that now a days
04:16:36 <EvanR> editing an image? the data is on an infinite plane thanks
04:16:42 <haskellbridge> <Liamzee> finally
04:16:44 <monochrom> I like ultrainfinitism.
04:16:45 <haskellbridge> <Liamzee> ugh, 2 hours
04:16:48 <haskellbridge> <Liamzee> didn't beat yin
04:17:19 <EvanR> malloc never fails, infinite memory
04:17:36 <EvanR> amazon delivers in 1/infinity days
04:17:40 <haskellbridge> <Liamzee> (u -> ( (a -> b -> c) -> b -> a -> c) -> v) -> (u -> v)
04:18:03 <haskellbridge> <Liamzee> so the answer is at flip flip flip, hmmm, not sure if anyone else is doing it and i'd spoil anyone?
04:18:16 <EvanR> is this a djinn question
04:18:41 <haskellbridge> <Liamzee> scroll up, yin posted the puzzle and their time "one afternoon"
04:19:36 <EvanR> @djinn (u -> ( (a -> b -> c) -> b -> a -> c) -> v) -> (u -> v)
04:19:36 <lambdabot> f a b = a b (\ c d e -> c e d)
04:19:57 <EvanR> that's so much more useful than pointless
04:20:19 <haskellbridge> <Bowuigi> It says half an afternoon for 'flip flip' to 'flip flip flip flip flip'
04:20:29 <haskellbridge> <Liamzee> ack
04:20:46 <haskellbridge> <Bowuigi> You need to flip it two more times in half the time
04:20:53 <EvanR> :t fmap fmap fmap fmap fmap
04:20:53 <lambdabot> Functor f => (a1 -> b) -> (a2 -> a1) -> f a2 -> f b
04:20:55 Γ— merijn quits (~merijn@host-vr.cgnat-g.v4.dfn.nl) (Ping timeout: 268 seconds)
04:22:15 <haskellbridge> <Bowuigi> It became contravariant at some point
04:22:22 <monochrom> [exa]: We now have a new dreaded example for your minihm! flip flip flip flip flip ...
04:22:24 <haskellbridge> <Liamzee> once you figure out the trick at 3 layers to 4, you don't need to do anything more
04:22:39 <haskellbridge> <Bowuigi> Nvm I can't read
04:22:53 <haskellbridge> <Liamzee> since it's (a -> (...) -> c) -> (a -> c)
04:23:24 <haskellbridge> <Liamzee> in terms of types, the (...) is unused but propagates
04:24:20 <haskellbridge> <Liamzee> flip is, let u = (a -> b -> c), v = b, w = (a -> c)
04:25:17 <haskellbridge> <Liamzee> in u -> v -> w
04:26:00 <haskellbridge> <Liamzee> plug in, (a -> (old b) -> c) -> (a -> c), with a unifying with u on the older form and c unifying with v on the older form
04:26:09 <haskellbridge> <Liamzee> the actual challenge in the exercise tbh is explaining what's happening concisely
04:28:21 <EvanR> and this is how derivation trees were invented
04:30:01 <monochrom> No! This is how indentation was invented!
04:30:44 <EvanR> indentation...
04:31:12 β†’ merijn joins (~merijn@host-vr.cgnat-g.v4.dfn.nl)
04:31:38 β†’ aforemny_ joins (~aforemny@2001:9e8:6cdb:6d00:dc2e:87c9:d5a9:a75)
04:32:25 β†’ tabaqui joins (~tabaqui@167.71.80.236)
04:33:14 Γ— aforemny quits (~aforemny@2001:9e8:6cc1:be00:edce:fe13:a80e:d4b5) (Ping timeout: 272 seconds)
04:35:02 Γ— JuanDaugherty quits (~juan@user/JuanDaugherty) (Quit: praxis.meansofproduction.biz (juan@acm.org))
04:35:25 <EvanR> I can't indent in hexchat because tab changes widget focus
04:36:05 Γ— merijn quits (~merijn@host-vr.cgnat-g.v4.dfn.nl) (Ping timeout: 248 seconds)
04:42:13 β†’ michalz joins (~michalz@185.246.207.197)
04:45:08 β†’ merijn joins (~merijn@host-vr.cgnat-g.v4.dfn.nl)
04:46:12 <haskellbridge> <Bowuigi> That's why some people prefer spaces over tabs
04:46:54 <haskellbridge> <Liamzee> ctrl shift u 0009 on gnome
04:48:39 <haskellbridge> <Liamzee> no idea what it is in kde
04:49:52 <haskellbridge> <Liamzee> do you still remember alt 0233 on windows?
04:50:12 Γ— merijn quits (~merijn@host-vr.cgnat-g.v4.dfn.nl) (Ping timeout: 252 seconds)
04:52:35 β†’ Square2 joins (~Square4@user/square)
04:55:55 Γ— chiselfuse quits (~chiselfus@user/chiselfuse) (Remote host closed the connection)
04:55:57 Γ— Square quits (~Square@user/square) (Ping timeout: 244 seconds)
04:56:30 β†’ chiselfuse joins (~chiselfus@user/chiselfuse)
05:00:15 Γ— chiselfuse quits (~chiselfus@user/chiselfuse) (Read error: Connection reset by peer)
05:00:15 Γ— califax quits (~califax@user/califx) (Remote host closed the connection)
05:00:15 Γ— bitdex quits (~bitdex@gateway/tor-sasl/bitdex) (Read error: Connection reset by peer)
05:00:29 β†’ califax joins (~califax@user/califx)
05:00:39 β†’ bitdex joins (~bitdex@gateway/tor-sasl/bitdex)
05:00:56 β†’ merijn joins (~merijn@host-vr.cgnat-g.v4.dfn.nl)
05:01:30 β†’ chiselfuse joins (~chiselfus@user/chiselfuse)
05:05:36 Γ— zungi quits (~tory@user/andrewchawk) (Ping timeout: 264 seconds)
05:05:56 Γ— merijn quits (~merijn@host-vr.cgnat-g.v4.dfn.nl) (Ping timeout: 268 seconds)
05:08:57 <EvanR> lol yeah
05:10:27 Γ— simplystuart quits (~simplystu@c-75-75-152-164.hsd1.pa.comcast.net) (Remote host closed the connection)
05:13:13 <haskellbridge> <Liamzee> For some reason, I also remember typing a lot of 0252, but I can't remember why I'd use umlauted u
05:16:42 β†’ merijn joins (~merijn@host-vr.cgnat-g.v4.dfn.nl)
05:21:19 β†’ peterbecich joins (~Thunderbi@syn-047-229-123-186.res.spectrum.com)
05:22:00 Γ— merijn quits (~merijn@host-vr.cgnat-g.v4.dfn.nl) (Ping timeout: 272 seconds)
05:22:36 <jackdk> The one I remember most s C-S-u 03bb
05:23:59 <EvanR> cool, though it doesn't work in hexchat :(
05:32:31 β†’ merijn joins (~merijn@host-vr.cgnat-g.v4.dfn.nl)
05:34:25 Γ— weary-traveler quits (~user@user/user363627) (Remote host closed the connection)
05:37:28 Γ— merijn quits (~merijn@host-vr.cgnat-g.v4.dfn.nl) (Ping timeout: 245 seconds)
05:40:01 β†’ merijn joins (~merijn@host-vr.cgnat-g.v4.dfn.nl)
05:44:50 Γ— merijn quits (~merijn@host-vr.cgnat-g.v4.dfn.nl) (Ping timeout: 252 seconds)
05:45:25 <monochrom> :)
05:53:12 Γ— chexum quits (~quassel@gateway/tor-sasl/chexum) (Remote host closed the connection)
05:53:12 Γ— gmg quits (~user@user/gehmehgeh) (Remote host closed the connection)
05:53:12 Γ— ChaiTRex quits (~ChaiTRex@user/chaitrex) (Read error: Connection reset by peer)
05:53:41 β†’ ChaiTRex joins (~ChaiTRex@user/chaitrex)
05:53:42 β†’ chexum joins (~quassel@gateway/tor-sasl/chexum)
05:53:57 β†’ gmg joins (~user@user/gehmehgeh)
05:55:38 β†’ zungi joins (~tory@user/andrewchawk)
05:55:47 β†’ merijn joins (~merijn@host-vr.cgnat-g.v4.dfn.nl)
06:00:57 Γ— merijn quits (~merijn@host-vr.cgnat-g.v4.dfn.nl) (Ping timeout: 276 seconds)
06:08:37 Γ— Unicorn_Princess quits (~Unicorn_P@user/Unicorn-Princess/x-3540542) (Remote host closed the connection)
06:09:25 Γ— bitdex quits (~bitdex@gateway/tor-sasl/bitdex) (Remote host closed the connection)
06:09:53 β†’ bitdex joins (~bitdex@gateway/tor-sasl/bitdex)
06:11:22 β†’ ensyde joins (~ensyde@2601:5c6:c200:6dc0::7f7c)
06:11:30 β†’ merijn joins (~merijn@host-vr.cgnat-g.v4.dfn.nl)
06:13:07 β†’ takuan joins (~takuan@d8D86B601.access.telenet.be)
06:16:02 Γ— merijn quits (~merijn@host-vr.cgnat-g.v4.dfn.nl) (Ping timeout: 244 seconds)
06:21:12 Γ— zungi quits (~tory@user/andrewchawk) (Ping timeout: 264 seconds)
06:24:34 Γ— machinedgod quits (~machinedg@d108-173-18-100.abhsia.telus.net) (Ping timeout: 260 seconds)
06:27:01 β†’ merijn joins (~merijn@host-vr.cgnat-g.v4.dfn.nl)
06:31:46 Γ— merijn quits (~merijn@host-vr.cgnat-g.v4.dfn.nl) (Ping timeout: 252 seconds)
06:33:50 β†’ aetepe joins (~aetepe@188.119.58.34)
06:38:34 Γ— aetepe quits (~aetepe@188.119.58.34) (Ping timeout: 260 seconds)
06:42:46 β†’ merijn joins (~merijn@host-vr.cgnat-g.v4.dfn.nl)
06:49:32 β†’ aetepe joins (~aetepe@188.119.58.34)
06:50:08 Γ— merijn quits (~merijn@host-vr.cgnat-g.v4.dfn.nl) (Ping timeout: 244 seconds)
06:54:08 Γ— aetepe quits (~aetepe@188.119.58.34) (Ping timeout: 245 seconds)
06:57:07 Γ— chexum quits (~quassel@gateway/tor-sasl/chexum) (Remote host closed the connection)
06:57:20 β†’ chexum joins (~quassel@gateway/tor-sasl/chexum)
06:58:47 Γ— peterbecich quits (~Thunderbi@syn-047-229-123-186.res.spectrum.com) (Ping timeout: 268 seconds)
07:00:03 Γ— caconym quits (~caconym@user/caconym) (Quit: bye)
07:00:51 β†’ caconym joins (~caconym@user/caconym)
07:16:07 Γ— Lord_of_Life quits (~Lord@user/lord-of-life/x-2819915) (Ping timeout: 252 seconds)
07:17:50 β†’ Lord_of_Life joins (~Lord@user/lord-of-life/x-2819915)
07:19:32 <haskellbridge> <Liamzee> in the early days of Haskell, before people figured out what a terrible idea abusing overloaded literals were
07:19:54 <haskellbridge> <Liamzee> did anyone literally have a (Foo -> Bar) IsString?
07:24:48 <Athas> Orphan instances are such a bad idea, but they are so easy and convenient.
07:28:32 <haskellbridge> <Liamzee> it wouldn't be an orphan instance
07:28:50 <haskellbridge> <Liamzee> it'd actually be more of an overlapping instances problem, tbh
07:28:52 β†’ CiaoSen joins (~Jura@2a02:8071:64e1:da0:5a47:caff:fe78:33db)
07:29:51 β†’ acidjnk joins (~acidjnk@p200300d6e71c4f64d1428787ad85de6c.dip0.t-ipconnect.de)
07:30:20 <haskellbridge> <Liamzee> you can design an interface based around just, umm, building with overloaded strings and overlapping instances
07:33:15 <haskellbridge> <Liamzee> i'm looking at Tomjaguarpaw's Opaleye, and...
07:33:17 <haskellbridge> <Liamzee> https://github.com/tomjaguarpaw/haskell-opaleye/blob/master/Doc/Tutorial/TutorialBasic.lhs
07:35:40 β†’ aetepe joins (~aetepe@188.119.58.34)
07:36:04 <haskellbridge> <Liamzee> the idea is so bad, i'm actually sort of surprised no one tried publishing "Acme-BreakTypeInferences" as a joke yet
07:36:10 <haskellbridge> <Liamzee> erm, refering to my "let's make everything an overloaded string" idea
07:37:24 <jackdk> Liamzee: https://hackage.haskell.org/package/acme-smuggler
07:38:38 <haskellbridge> <Liamzee> no, i mean, I forget which version added it, but apparently you can now write your own custom type errors
07:39:29 <haskellbridge> <Liamzee> i'm actually surprised no one tried treating that facility as a joke programming technique, i.e, your program is encoded via custom type errors
07:41:03 Γ— aetepe quits (~aetepe@188.119.58.34) (Ping timeout: 276 seconds)
07:43:53 <haskellbridge> <Liamzee> https://ghc.gitlab.haskell.org/ghc/doc/users_guide/exts/type_errors.html
07:43:56 <haskellbridge> <Liamzee> since 9.4
07:45:32 <haskellbridge> <Liamzee> jackdk: thanks, it's a pretty cool lib
07:49:39 Γ— ft quits (~ft@p508db463.dip0.t-ipconnect.de) (Quit: leaving)
07:49:43 β†’ aetepe joins (~aetepe@188.119.58.34)
07:57:31 Axman6 wants a (IsString a, Semigroup a) => IsString (a -> a) instance so we can write C style strings "Hello, " "world!"
07:58:45 <Axman6> hmmmm, would that give simple multi-line strings too?
07:59:58 <jackdk> Axman6: how about `instance FromJSON a => IsString a`?
08:00:37 Γ— tzh quits (~tzh@c-76-115-131-146.hsd1.or.comcast.net) (Quit: zzz)
08:03:49 Γ— Sgeo quits (~Sgeo@user/sgeo) (Read error: Connection reset by peer)
08:09:12 β†’ vpan joins (~vpan@212.117.1.172)
08:09:58 Γ— tabaqui quits (~tabaqui@167.71.80.236) (Ping timeout: 245 seconds)
08:20:39 Γ— ensyde quits (~ensyde@2601:5c6:c200:6dc0::7f7c) (Ping timeout: 252 seconds)
08:24:01 β†’ merijn joins (~merijn@77.242.116.146)
08:34:56 Γ— econo_ quits (uid147250@id-147250.tinside.irccloud.com) (Quit: Connection closed for inactivity)
08:45:42 Γ— emmanuelux quits (~emmanuelu@user/emmanuelux) (Read error: Connection reset by peer)
08:46:47 Γ— califax quits (~califax@user/califx) (Remote host closed the connection)
08:47:02 β†’ califax joins (~califax@user/califx)
08:51:17 Γ— aetepe quits (~aetepe@188.119.58.34) (Ping timeout: 265 seconds)
08:54:06 β†’ lortabac joins (~lortabac@2a01:e0a:541:b8f0:55ab:e185:7f81:54a4)
08:57:19 β†’ lxsameer joins (~lxsameer@Serene/lxsameer)
09:00:23 β†’ zungi joins (~tory@user/andrewchawk)
09:10:53 Γ— merijn quits (~merijn@77.242.116.146) (Ping timeout: 244 seconds)
09:15:34 β†’ merijn joins (~merijn@77.242.116.146)
09:30:52 β†’ ash3en joins (~Thunderbi@ip1f10cbd6.dynamic.kabel-deutschland.de)
09:37:08 β†’ tromp joins (~textual@2001:1c00:3487:1b00:898e:46d:9552:7305)
09:41:35 β†’ fp joins (~Thunderbi@130.233.70.95)
09:41:38 Γ— infinity0 quits (~infinity0@pwned.gg) (Ping timeout: 245 seconds)
09:49:57 β†’ aetepe joins (~aetepe@188.119.58.34)
09:54:18 Γ— merijn quits (~merijn@77.242.116.146) (Ping timeout: 276 seconds)
09:54:35 Γ— aetepe quits (~aetepe@188.119.58.34) (Ping timeout: 244 seconds)
09:55:19 β†’ merijn joins (~merijn@77.242.116.146)
09:55:38 Γ— ash3en quits (~Thunderbi@ip1f10cbd6.dynamic.kabel-deutschland.de) (Quit: ash3en)
10:01:56 β†’ aetepe joins (~aetepe@188.119.58.34)
10:02:09 β†’ infinity0 joins (~infinity0@pwned.gg)
10:05:06 β†’ dhil joins (~dhil@2a0c:b381:52e:3600:a6cc:884a:a5c6:c7fd)
10:06:33 Γ— aetepe quits (~aetepe@188.119.58.34) (Ping timeout: 246 seconds)
10:08:25 β†’ __monty__ joins (~toonn@user/toonn)
10:18:10 β†’ chele joins (~chele@user/chele)
10:28:33 Γ— xff0x quits (~xff0x@fsb6a9491c.tkyc517.ap.nuro.jp) (Ping timeout: 248 seconds)
10:29:37 β†’ toby-bro joins (~toby-bro@user/toby-bro)
10:34:48 β†’ j1n37 joins (~j1n37@user/j1n37)
10:36:05 Γ— j1n37- quits (~j1n37@user/j1n37) (Ping timeout: 248 seconds)
10:50:38 kitties is now known as catties
11:00:04 Γ— caconym quits (~caconym@user/caconym) (Quit: bye)
11:02:17 β†’ caconym joins (~caconym@user/caconym)
11:02:53 β†’ aetepe joins (~aetepe@188.119.58.34)
11:04:15 β†’ vanishingideal joins (~vanishing@user/vanishingideal)
11:05:13 β†’ ljdarj joins (~Thunderbi@user/ljdarj)
11:08:24 Γ— aetepe quits (~aetepe@188.119.58.34) (Ping timeout: 276 seconds)
11:09:30 Γ— merijn quits (~merijn@77.242.116.146) (Ping timeout: 244 seconds)
11:11:48 Γ— vpan quits (~vpan@212.117.1.172) (Quit: Leaving.)
11:18:36 β†’ aetepe joins (~aetepe@188.119.58.34)
11:19:33 Γ— saimazoon quits (~hrtz@user/haritz) (Quit: ZNC 1.8.2+deb3.1+deb12u1 - https://znc.in)
11:19:43 β†’ haritz joins (~hrtz@2a02:8010:65b5:1:162c:ba0f:3731:3adf)
11:19:45 Γ— haritz quits (~hrtz@2a02:8010:65b5:1:162c:ba0f:3731:3adf) (Changing host)
11:19:45 β†’ haritz joins (~hrtz@user/haritz)
11:20:51 β†’ hattckory joins (~hattckory@70.27.118.207)
11:21:54 Γ— ljdarj quits (~Thunderbi@user/ljdarj) (Quit: ljdarj)
11:22:13 β†’ ljdarj joins (~Thunderbi@user/ljdarj)
11:22:15 Γ— pavonia quits (~user@user/siracusa) (Quit: Bye!)
11:22:53 β†’ merijn joins (~merijn@77.242.116.146)
11:23:33 β†’ JuanDaugherty joins (~juan@user/JuanDaugherty)
11:23:49 Γ— aetepe quits (~aetepe@188.119.58.34) (Ping timeout: 260 seconds)
11:25:27 Γ— lortabac quits (~lortabac@2a01:e0a:541:b8f0:55ab:e185:7f81:54a4) (Ping timeout: 252 seconds)
11:25:59 Γ— hattckory quits (~hattckory@70.27.118.207) (Ping timeout: 260 seconds)
11:26:45 Γ— ljdarj quits (~Thunderbi@user/ljdarj) (Ping timeout: 248 seconds)
11:29:53 β†’ hattckory joins (~hattckory@bras-base-toroon4524w-grc-30-70-27-118-207.dsl.bell.ca)
11:31:49 β†’ xff0x joins (~xff0x@2405:6580:b080:900:f892:db2e:189e:8035)
11:32:33 β†’ juri_ joins (~juri@implicitcad.org)
11:40:01 <yin> Liamzee: *half an afternoon
11:40:11 <yin> :)
11:40:51 Γ— merijn quits (~merijn@77.242.116.146) (Ping timeout: 252 seconds)
11:41:41 <yin> Axman6: I don't like this conversation
11:44:59 β†’ ash3en joins (~Thunderbi@149.222.151.209)
11:50:21 β†’ lortabac joins (~lortabac@2a01:e0a:541:b8f0:55ab:e185:7f81:54a4)
11:51:52 Γ— vanishingideal quits (~vanishing@user/vanishingideal) (Ping timeout: 244 seconds)
11:53:00 β†’ merijn joins (~merijn@77.242.116.146)
11:53:46 β†’ vanishingideal joins (~vanishing@user/vanishingideal)
12:01:41 Γ— merijn quits (~merijn@77.242.116.146) (Ping timeout: 244 seconds)
12:03:37 β†’ merijn joins (~merijn@77.242.116.146)
12:05:02 β†’ aetepe joins (~aetepe@188.119.58.34)
12:05:06 Γ— JuanDaugherty quits (~juan@user/JuanDaugherty) (Quit: praxis.meansofproduction.biz (juan@acm.org))
12:07:30 β†’ bitterx joins (~bitterx@cpe-90-157-164-165.static.amis.net)
12:07:30 Γ— bitterx quits (~bitterx@cpe-90-157-164-165.static.amis.net) (Changing host)
12:07:30 β†’ bitterx joins (~bitterx@user/bitterx)
12:13:23 β†’ Shsl-Junko-POSER joins (~Shsl-Junk@50.235.208.178)
12:19:30 β†’ sprotte24 joins (~sprotte24@p200300d16f0a8000c4c51c198475fb5a.dip0.t-ipconnect.de)
12:23:06 β†’ jespada joins (~jespada@2800:a4:2324:4800:f983:ab5a:a206:fc6)
12:23:18 Γ— fp quits (~Thunderbi@130.233.70.95) (Ping timeout: 245 seconds)
12:30:35 Γ— xff0x quits (~xff0x@2405:6580:b080:900:f892:db2e:189e:8035) (Quit: xff0x)
12:32:29 β†’ xff0x joins (~xff0x@2405:6580:b080:900:879:4ff2:52d5:5929)
12:33:20 Γ— Shsl-Junko-POSER quits (~Shsl-Junk@50.235.208.178) (Quit: Client closed)
12:35:14 β†’ fp joins (~Thunderbi@130.233.70.95)
12:35:52 ← L29Ah parts (~L29Ah@wikipedia/L29Ah) ()
12:36:47 β†’ L29Ah joins (~L29Ah@wikipedia/L29Ah)
12:42:36 Γ— haritz quits (~hrtz@user/haritz) (Remote host closed the connection)
12:42:47 β†’ haritz joins (~hrtz@82-69-11-11.dsl.in-addr.zen.co.uk)
12:43:08 ← L29Ah parts (~L29Ah@wikipedia/L29Ah) ()
12:44:37 Γ— haritz quits (~hrtz@82-69-11-11.dsl.in-addr.zen.co.uk) (Changing host)
12:44:37 β†’ haritz joins (~hrtz@user/haritz)
12:44:43 β†’ tabaqui joins (~tabaqui@167.71.80.236)
12:44:46 β†’ L29Ah joins (~L29Ah@wikipedia/L29Ah)
12:46:24 Γ— zungi quits (~tory@user/andrewchawk) (Ping timeout: 264 seconds)
12:49:05 β†’ weary-traveler joins (~user@user/user363627)
12:51:07 β†’ zungi joins (~tory@user/andrewchawk)
13:00:55 ← L29Ah parts (~L29Ah@wikipedia/L29Ah) ()
13:01:29 β†’ L29Ah joins (~L29Ah@wikipedia/L29Ah)
13:03:30 β†’ comerijn joins (~merijn@77.242.116.146)
13:05:21 Γ— Googulator quits (~Googulato@2a01-036d-0106-01d5-c415-995d-99e3-7810.pool6.digikabel.hu) (Quit: Client closed)
13:05:39 β†’ Googulator joins (~Googulato@2a01-036d-0106-01d5-c415-995d-99e3-7810.pool6.digikabel.hu)
13:06:29 Γ— merijn quits (~merijn@77.242.116.146) (Ping timeout: 265 seconds)
13:12:45 Γ— ash3en quits (~Thunderbi@149.222.151.209) (Ping timeout: 246 seconds)
13:23:26 β†’ JV joins (~JV@cpc151911-cove17-2-0-cust105.3-1.cable.virginm.net)
13:23:29 JV is now known as jacopovalanzano
13:23:37 <jacopovalanzano> hi everyone :D
13:23:54 <jacopovalanzano> i hope this is the right place; im new to haskell made a small Haskell framework to learn the language. its only a couple of hundred lines of software. am i doing well? https://github.com/jacopovalanzano/moon
13:24:58 β†’ AgSpades joins (~AgSpades@61.0.30.152)
13:26:40 Γ— tabemann quits (~tabemann@172-13-49-137.lightspeed.milwwi.sbcglobal.net) (Ping timeout: 268 seconds)
13:27:03 Γ— CiaoSen quits (~Jura@2a02:8071:64e1:da0:5a47:caff:fe78:33db) (Ping timeout: 245 seconds)
13:27:33 β†’ ash3en joins (~Thunderbi@149.222.151.209)
13:28:15 β†’ Shsl-Junko-POSER joins (~Shsl-Junk@50.235.208.178)
13:30:07 Γ— tromp quits (~textual@2001:1c00:3487:1b00:898e:46d:9552:7305) (Ping timeout: 252 seconds)
13:30:14 Γ— Shsl-Junko-POSER quits (~Shsl-Junk@50.235.208.178) (Client Quit)
13:32:43 β†’ tabemann joins (~tabemann@2600:1700:7990:24e0:5768:9309:1e8f:df4b)
13:33:35 <mauke> is that HTML injection I see?
13:34:10 Γ— sprotte24 quits (~sprotte24@p200300d16f0a8000c4c51c198475fb5a.dip0.t-ipconnect.de) (Quit: Leaving)
13:34:15 <int-e> <blink>yes</blink>
13:36:35 Γ— bitdex quits (~bitdex@gateway/tor-sasl/bitdex) (Quit: = "")
13:36:52 <mauke> oh, it's full of HTML injection. love me some XSS in the basic sample app
13:37:23 <mauke> and hardcoded credentials
13:39:33 Γ— comerijn quits (~merijn@77.242.116.146) (Ping timeout: 245 seconds)
13:42:14 β†’ merijn joins (~merijn@77.242.116.146)
13:42:19 <mauke> I was about to mention the unsynchronized file writes in the session driver, but then I saw how it generates session ids
13:43:25 <mauke> remoteIP <> userAgent is totally unique, right? there are no multi-user systems or NAT
13:45:28 ← AgSpades parts (~AgSpades@61.0.30.152) ()
13:55:27 Γ— merijn quits (~merijn@77.242.116.146) (Ping timeout: 276 seconds)
13:56:09 Γ— jespada quits (~jespada@2800:a4:2324:4800:f983:ab5a:a206:fc6) (Quit: My Mac has gone to sleep. ZZZzzz…)
13:58:14 β†’ jespada joins (~jespada@2800:a4:2324:4800:f983:ab5a:a206:fc6)
14:01:02 Γ— ash3en quits (~Thunderbi@149.222.151.209) (Ping timeout: 244 seconds)
14:04:53 Γ— jacopovalanzano quits (~JV@cpc151911-cove17-2-0-cust105.3-1.cable.virginm.net) (Quit: Client closed)
14:05:41 β†’ tromp joins (~textual@2001:1c00:3487:1b00:f8c0:4558:f838:6f52)
14:06:33 β†’ merijn joins (~merijn@77.242.116.146)
14:19:04 β†’ cipherrot joins (~znc-user@user/petrichor)
14:19:05 Γ— petrichor quits (~znc-user@user/petrichor) (Ping timeout: 268 seconds)
14:19:23 β†’ ash3en joins (~Thunderbi@149.222.151.209)
14:22:48 Γ— cipherrot quits (~znc-user@user/petrichor) (Client Quit)
14:23:10 β†’ Digitteknohippie joins (~user@user/digit)
14:23:55 β†’ machinedgod joins (~machinedg@d108-173-18-100.abhsia.telus.net)
14:24:24 Γ— Digit quits (~user@user/digit) (Ping timeout: 252 seconds)
14:25:25 Γ— acidjnk quits (~acidjnk@p200300d6e71c4f64d1428787ad85de6c.dip0.t-ipconnect.de) (Ping timeout: 248 seconds)
14:27:23 β†’ petrichor joins (~znc-user@user/petrichor)
14:35:50 Γ— petrichor quits (~znc-user@user/petrichor) (Quit: ZNC 1.8.2 - https://znc.in)
14:37:04 β†’ jmcantrell joins (~weechat@user/jmcantrell)
14:37:17 Γ— jmcantrell quits (~weechat@user/jmcantrell) (Client Quit)
14:37:41 Γ— fp quits (~Thunderbi@130.233.70.95) (Ping timeout: 248 seconds)
14:39:50 β†’ notdabs joins (~Owner@2600:1700:69cf:9000:9c7c:26a2:e9ed:cf3a)
14:40:58 β†’ acidjnk joins (~acidjnk@p200300d6e71c4f64d1428787ad85de6c.dip0.t-ipconnect.de)
14:40:59 Γ— jespada quits (~jespada@2800:a4:2324:4800:f983:ab5a:a206:fc6) (Ping timeout: 260 seconds)
14:41:28 β†’ petrichor joins (~znc-user@user/petrichor)
14:42:53 β†’ jespada joins (~jespada@2800:a4:2237:6300:8815:6267:f581:49c2)
14:43:06 <EvanR> fully qualified everything, I guess that's status quo in web
14:44:32 <EvanR> unencoded html is unencoded
14:56:50 Γ— ash3en quits (~Thunderbi@149.222.151.209) (Ping timeout: 244 seconds)
15:00:45 β†’ ash3en joins (~Thunderbi@149.222.151.209)
15:05:55 Digitteknohippie is now known as Digit
15:13:33 <haskellbridge> <Liamzee> yin: hey, i got distracted for at least 30 minutes on implications of (.\f->f f), newtype Mu a = Mu (Mu a -> a)
15:29:04 Γ— ash3en quits (~Thunderbi@149.222.151.209) (Quit: ash3en)
15:30:46 Γ— merijn quits (~merijn@77.242.116.146) (Ping timeout: 252 seconds)
15:38:57 Γ— jespada quits (~jespada@2800:a4:2237:6300:8815:6267:f581:49c2) (Quit: My Mac has gone to sleep. ZZZzzz…)
15:43:43 β†’ merijn joins (~merijn@77.242.116.146)
15:49:44 Γ— acidjnk quits (~acidjnk@p200300d6e71c4f64d1428787ad85de6c.dip0.t-ipconnect.de) (Ping timeout: 268 seconds)
15:50:18 <yin> something something loop unroling and inlining
15:56:48 Γ— werneta quits (~werneta@syn-071-083-160-242.res.spectrum.com) (Ping timeout: 252 seconds)
15:58:19 Γ— lortabac quits (~lortabac@2a01:e0a:541:b8f0:55ab:e185:7f81:54a4) (Quit: WeeChat 4.5.2)
16:08:57 Γ— bitterx quits (~bitterx@user/bitterx) (Quit: bitterx)
16:13:33 β†’ Sgeo joins (~Sgeo@user/sgeo)
16:45:35 <haskellbridge> <Morj> Following our yesterday's discussion about texinfo, I found a project that is 80% of the way to my vision of the docs: https://devdocs.io/haskell~9/ - the C++ docs are good, the haskell docs are completely useless
16:45:48 <haskellbridge> <Morj> And there is no type seach a-lΓ  hoogle
16:48:20 <haskellbridge> <Morj> I also found zealdocs, but they just show you an html page, so not interesting from doc format standpoint
16:56:07 β†’ ellemcc joins (~ellemcc@24.21.208.196)
16:59:00 <ellemcc> hello! I was interested in possibly applying to work on Haskell for the GSoC, but I'm *very* new to the language and wasn't sure where to go to find out who to talk to get a better sense of whether I should or not
17:05:18 Γ— ellemcc quits (~ellemcc@24.21.208.196) (Ping timeout: 240 seconds)
17:05:44 β†’ ellemcc joins (~ellemcc@24.21.208.196)
17:07:08 <geekosaur> I think the GSoC stuff is on https://summer.haskell.org. Beyond that, I would probably ask on the DIscourse (discourse.haskell.org)
17:08:13 <ellemcc> Ah, thank you! I came here from the first link, but I'll go ask on the discourse too
17:12:11 β†’ acidjnk joins (~acidjnk@p200300d6e71c4f64e0b826361c3e438a.dip0.t-ipconnect.de)
17:13:53 Γ— tabaqui1 quits (~root@167.71.80.236) (Quit: WeeChat 4.5.1)
17:14:04 Γ— euphores quits (~SASL_euph@user/euphores) (Quit: Leaving.)
17:16:15 β†’ tabaqui1 joins (~tabaqui@167.71.80.236)
17:17:43 β†’ tzh joins (~tzh@c-76-115-131-146.hsd1.or.comcast.net)
17:19:04 Γ— merijn quits (~merijn@77.242.116.146) (Ping timeout: 260 seconds)
17:22:25 β†’ ellemcc41 joins (~ellemcc@24.21.208.196)
17:24:06 Γ— ellemcc quits (~ellemcc@24.21.208.196) (Ping timeout: 240 seconds)
17:24:12 β†’ HelloImSteven joins (~HelloImSt@user/HelloImSteven)
17:27:28 β†’ ft joins (~ft@p508db463.dip0.t-ipconnect.de)
17:28:13 Γ— developer_ quits (~developer@85.50.149.196) (Ping timeout: 244 seconds)
17:28:58 β†’ jmcantrell joins (~weechat@user/jmcantrell)
17:28:58 Γ— jmcantrell quits (~weechat@user/jmcantrell) (Client Quit)
17:31:11 β†’ jespada joins (~jespada@2800:a4:2237:6300:8815:6267:f581:49c2)
17:31:18 β†’ euphores joins (~SASL_euph@user/euphores)
17:31:22 β†’ jmcantrell joins (~weechat@user/jmcantrell)
17:37:33 β†’ ellemcc joins (~ellemcc@24.21.208.196)
17:38:02 Γ— ellemcc quits (~ellemcc@24.21.208.196) (Client Quit)
17:38:17 Γ— chele quits (~chele@user/chele) (Remote host closed the connection)
17:38:54 Γ— ellemcc41 quits (~ellemcc@24.21.208.196) (Ping timeout: 240 seconds)
17:42:38 β†’ Digitteknohippie joins (~user@user/digit)
17:43:08 β†’ ash3en joins (~Thunderbi@149.222.151.209)
17:44:45 Γ— Digit quits (~user@user/digit) (Ping timeout: 244 seconds)
17:45:50 β†’ JuanDaugherty joins (~juan@user/JuanDaugherty)
17:46:24 Digitteknohippie is now known as Digit
17:57:52 β†’ peterbecich joins (~Thunderbi@syn-047-229-123-186.res.spectrum.com)
18:00:39 β†’ Square joins (~Square@user/square)
18:04:02 Γ— Square2 quits (~Square4@user/square) (Ping timeout: 252 seconds)
18:04:13 Γ— ash3en quits (~Thunderbi@149.222.151.209) (Ping timeout: 265 seconds)
18:06:32 β†’ nckx joins (nckx@libera/staff/owl/nckx)
18:08:57 Γ— manwithluck quits (~manwithlu@2a09:bac1:5ba0:20::38a:2b) (Ping timeout: 276 seconds)
18:11:24 Γ— jmcantrell quits (~weechat@user/jmcantrell) (Quit: WeeChat 4.6.0)
18:13:24 β†’ Digitteknohippie joins (~user@user/digit)
18:14:02 β†’ econo_ joins (uid147250@id-147250.tinside.irccloud.com)
18:15:10 β†’ ljdarj joins (~Thunderbi@user/ljdarj)
18:15:45 Γ— Digit quits (~user@user/digit) (Ping timeout: 244 seconds)
18:17:50 Γ— acidjnk quits (~acidjnk@p200300d6e71c4f64e0b826361c3e438a.dip0.t-ipconnect.de) (Ping timeout: 272 seconds)
18:18:43 Γ— Digitteknohippie quits (~user@user/digit) (Ping timeout: 245 seconds)
18:20:36 Γ— zungi quits (~tory@user/andrewchawk) (Ping timeout: 264 seconds)
18:21:13 Γ— aetepe quits (~aetepe@188.119.58.34) (Ping timeout: 245 seconds)
18:21:57 Γ— tomku quits (~tomku@user/tomku) (Ping timeout: 244 seconds)
18:22:22 β†’ tomku joins (~tomku@user/tomku)
18:31:15 β†’ jacopovalanzano joins (~jacopoval@cpc151911-cove17-2-0-cust105.3-1.cable.virginm.net)
18:41:05 β†’ Tuplanolla joins (~Tuplanoll@91-159-69-59.elisa-laajakaista.fi)
18:42:07 Γ— jespada quits (~jespada@2800:a4:2237:6300:8815:6267:f581:49c2) (Quit: My Mac has gone to sleep. ZZZzzz…)
18:42:55 β†’ wootehfoot joins (~wootehfoo@user/wootehfoot)
18:43:51 Γ— JuanDaugherty quits (~juan@user/JuanDaugherty) (Quit: praxis.meansofproduction.biz (juan@acm.org))
18:45:08 β†’ Digit joins (~user@user/digit)
18:47:11 β†’ jmcantrell joins (~weechat@user/jmcantrell)
18:48:27 β†’ merijn joins (~merijn@host-vr.cgnat-g.v4.dfn.nl)
18:49:35 β†’ vavakado joins (~vavakado@user/Vavakado)
18:49:44 Digit is now known as digitteknohippie
18:49:50 digitteknohippie is now known as Digit
18:54:02 Γ— weary-traveler quits (~user@user/user363627) (Remote host closed the connection)
18:55:40 β†’ aetepe joins (~aetepe@188.119.58.34)
18:56:56 Γ— todi1 quits (~todi@p57803331.dip0.t-ipconnect.de) (Remote host closed the connection)
18:59:40 Γ— prasad quits (~Thunderbi@c-73-246-138-70.hsd1.in.comcast.net) (Ping timeout: 244 seconds)
18:59:50 β†’ prasad joins (~Thunderbi@c-73-246-138-70.hsd1.in.comcast.net)
19:00:01 Γ— caconym quits (~caconym@user/caconym) (Quit: bye)
19:00:45 β†’ caconym joins (~caconym@user/caconym)
19:06:32 β†’ jespada joins (~jespada@2800:a4:2237:6300:8815:6267:f581:49c2)
19:07:27 Γ— peterbecich quits (~Thunderbi@syn-047-229-123-186.res.spectrum.com) (Ping timeout: 276 seconds)
19:07:29 Γ— merijn quits (~merijn@host-vr.cgnat-g.v4.dfn.nl) (Ping timeout: 248 seconds)
19:08:43 Γ— son0p quits (~ff@2800:e6:4000:d723:c181:4205:f2b1:437a) (Ping timeout: 245 seconds)
19:10:35 β†’ zungi joins (~tory@user/andrewchawk)
19:11:24 β†’ sprotte24 joins (~sprotte24@p200300d16f0a80004582713a1a0df846.dip0.t-ipconnect.de)
19:12:18 Γ— Square quits (~Square@user/square) (Ping timeout: 272 seconds)
19:16:15 β†’ peterbecich joins (~Thunderbi@syn-047-229-123-186.res.spectrum.com)
19:18:53 β†’ merijn joins (~merijn@host-vr.cgnat-g.v4.dfn.nl)
19:22:23 β†’ ash3en joins (~Thunderbi@ip1f10cbd6.dynamic.kabel-deutschland.de)
19:24:59 Γ— jacopovalanzano quits (~jacopoval@cpc151911-cove17-2-0-cust105.3-1.cable.virginm.net) (Quit: Client closed)
19:25:39 Γ— merijn quits (~merijn@host-vr.cgnat-g.v4.dfn.nl) (Ping timeout: 260 seconds)
19:26:01 β†’ pavonia joins (~user@user/siracusa)
19:26:14 Γ— peterbecich quits (~Thunderbi@syn-047-229-123-186.res.spectrum.com) (Ping timeout: 272 seconds)
19:31:31 β†’ acidjnk joins (~acidjnk@p200300d6e71c4f64e0b826361c3e438a.dip0.t-ipconnect.de)
19:31:44 Γ— ash3en quits (~Thunderbi@ip1f10cbd6.dynamic.kabel-deutschland.de) (Ping timeout: 268 seconds)
19:36:04 Γ— prasad quits (~Thunderbi@c-73-246-138-70.hsd1.in.comcast.net) (Read error: Connection reset by peer)
19:36:06 β†’ ash3en joins (~Thunderbi@ip1f10cbd6.dynamic.kabel-deutschland.de)
19:36:54 β†’ merijn joins (~merijn@host-vr.cgnat-g.v4.dfn.nl)
19:38:19 β†’ ljdarj1 joins (~Thunderbi@user/ljdarj)
19:41:36 Γ— ljdarj quits (~Thunderbi@user/ljdarj) (Ping timeout: 268 seconds)
19:41:37 ljdarj1 is now known as ljdarj
19:41:38 Γ— merijn quits (~merijn@host-vr.cgnat-g.v4.dfn.nl) (Ping timeout: 245 seconds)
19:52:45 β†’ merijn joins (~merijn@host-vr.cgnat-g.v4.dfn.nl)
19:57:37 Γ— merijn quits (~merijn@host-vr.cgnat-g.v4.dfn.nl) (Ping timeout: 248 seconds)
20:04:10 Γ— jespada quits (~jespada@2800:a4:2237:6300:8815:6267:f581:49c2) (Quit: My Mac has gone to sleep. ZZZzzz…)
20:07:36 β†’ jacopovalanzano joins (~jacopoval@cpc151911-cove17-2-0-cust105.3-1.cable.virginm.net)
20:07:59 <[exa]> so, are there any new best helpful/automatic tools in 2025 to do a scan for possible dependency bounds extensions?
20:08:30 β†’ merijn joins (~merijn@host-vr.cgnat-g.v4.dfn.nl)
20:08:44 <[exa]> (e.g. to basically answer "which is the first `base` where the testsuite here fails?")
20:09:21 <[exa]> I could say download old dockers and try that manually but see, automation would be helpful
20:09:56 <geekosaur> there really isn't a good way other than trying to build it, sadly
20:12:18 <[exa]> ok I see
20:12:43 <[exa]> like, it's probably not very hard even manually, just takes the extra effort of kicking myself to start the dockers
20:13:25 <[exa]> btw is there any reason why this shouldn't be automated or is it more like no one simply really decided to materialize this yet?
20:13:27 Γ— merijn quits (~merijn@host-vr.cgnat-g.v4.dfn.nl) (Ping timeout: 246 seconds)
20:14:45 <geekosaur> probably the latter
20:15:14 <geekosaur> it might be easier with ghcup these days but it'd still be a fair amount of work
20:23:31 Γ— EvanR quits (~EvanR@user/evanr) (Quit: Leaving)
20:24:19 β†’ merijn joins (~merijn@host-vr.cgnat-g.v4.dfn.nl)
20:26:22 β†’ EvanR joins (~EvanR@user/evanr)
20:29:09 Γ— merijn quits (~merijn@host-vr.cgnat-g.v4.dfn.nl) (Ping timeout: 248 seconds)
20:39:49 β†’ Unicorn_Princess joins (~Unicorn_P@user/Unicorn-Princess/x-3540542)
20:40:06 β†’ merijn joins (~merijn@host-vr.cgnat-g.v4.dfn.nl)
20:40:50 Γ— L29Ah quits (~L29Ah@wikipedia/L29Ah) (Read error: Connection timed out)
20:42:34 Γ— wootehfoot quits (~wootehfoo@user/wootehfoot) (Read error: Connection reset by peer)
20:45:24 Γ— merijn quits (~merijn@host-vr.cgnat-g.v4.dfn.nl) (Ping timeout: 260 seconds)
20:50:53 β†’ Digitteknohippie joins (~user@user/digit)
20:52:01 Γ— Digit quits (~user@user/digit) (Ping timeout: 248 seconds)
20:55:16 Γ— ystael quits (~ystael@user/ystael) (Ping timeout: 252 seconds)
20:55:57 β†’ merijn joins (~merijn@host-vr.cgnat-g.v4.dfn.nl)
21:02:38 Γ— merijn quits (~merijn@host-vr.cgnat-g.v4.dfn.nl) (Ping timeout: 244 seconds)
21:04:30 β†’ merijn joins (~merijn@host-vr.cgnat-g.v4.dfn.nl)
21:04:58 Γ— petrichor quits (~znc-user@user/petrichor) (Read error: Connection reset by peer)
21:05:43 β†’ L29Ah joins (~L29Ah@wikipedia/L29Ah)
21:06:04 β†’ todi joins (~todi@p57803331.dip0.t-ipconnect.de)
21:07:06 β†’ petrichor joins (~znc-user@user/petrichor)
21:08:14 Γ— AlexZenon quits (~alzenon@178.34.150.194) (Read error: Connection reset by peer)
21:08:33 Γ— tomku quits (~tomku@user/tomku) (Ping timeout: 268 seconds)
21:09:29 Γ— merijn quits (~merijn@host-vr.cgnat-g.v4.dfn.nl) (Ping timeout: 260 seconds)
21:10:19 β†’ tomku joins (~tomku@user/tomku)
21:11:50 β†’ cipherrot joins (~znc-user@user/petrichor)
21:15:08 β†’ AlexZenon joins (~alzenon@178.34.150.194)
21:15:19 Γ— petrichor quits (~znc-user@user/petrichor) (Ping timeout: 260 seconds)
21:18:45 Γ— malte quits (~malte@mal.tc) (Ping timeout: 276 seconds)
21:19:25 Γ— ash3en quits (~Thunderbi@ip1f10cbd6.dynamic.kabel-deutschland.de) (Quit: ash3en)
21:21:02 β†’ driib318 joins (~driib@vmi931078.contaboserver.net)
21:21:08 β†’ OlzhasYergali joins (~OlzhasYer@188.130.156.6)
21:23:03 β†’ merijn joins (~merijn@host-vr.cgnat-g.v4.dfn.nl)
21:26:38 β†’ son0p joins (~ff@190.249.196.199)
21:27:32 Γ— merijn quits (~merijn@host-vr.cgnat-g.v4.dfn.nl) (Ping timeout: 252 seconds)
21:29:13 β†’ malte joins (~malte@mal.tc)
21:38:36 β†’ merijn joins (~merijn@host-vr.cgnat-g.v4.dfn.nl)
21:42:45 Γ— dhil quits (~dhil@2a0c:b381:52e:3600:a6cc:884a:a5c6:c7fd) (Ping timeout: 248 seconds)
21:43:40 Γ— merijn quits (~merijn@host-vr.cgnat-g.v4.dfn.nl) (Ping timeout: 272 seconds)
21:48:33 Γ— myme quits (~myme@2a01:799:d5e:5f00:69c6:1b0c:ff6d:bdea) (Ping timeout: 248 seconds)
21:49:21 β†’ myme joins (~myme@2a01:799:d5e:5f00:ece1:5fda:8ec3:3560)
21:50:42 <tomsmeding> geekosaur: this channel is indeed linked on the haskell summer of code website, there was someone before too
21:51:01 <tomsmeding> if haskell SoC people hang around on discourse instead, perhaps the pointer can be re-pointed?
21:51:09 β†’ j1n37- joins (~j1n37@user/j1n37)
21:51:54 Γ— j1n37 quits (~j1n37@user/j1n37) (Ping timeout: 260 seconds)
21:53:01 <EvanR> members only
21:54:24 β†’ merijn joins (~merijn@host-vr.cgnat-g.v4.dfn.nl)
21:55:40 <OlzhasYergali> https://imgur.com/a/VcFL6v7
21:56:14 <OlzhasYergali> To be fair this channel is mentioned on the top of the page, but I instinctively looked at the top row of the table and it fit me, so I first went there
21:56:45 <OlzhasYergali> Even though I saw this channel tag, I still thought it would be best to go to the beginners channel
21:59:17 Γ— merijn quits (~merijn@host-vr.cgnat-g.v4.dfn.nl) (Ping timeout: 248 seconds)
22:03:28 Γ— lxsameer quits (~lxsameer@Serene/lxsameer) (Ping timeout: 252 seconds)
22:04:23 Γ— michalz quits (~michalz@185.246.207.197) (Remote host closed the connection)
22:05:15 <geekosaur> yeh, pretty sure the /topic in there says you're more likely to get a response here
22:05:31 β†’ merijn joins (~merijn@host-vr.cgnat-g.v4.dfn.nl)
22:06:08 Γ— takuan quits (~takuan@d8D86B601.access.telenet.be) (Remote host closed the connection)
22:07:26 Γ— plitter quits (~plitter@user/plitter) (Ping timeout: 244 seconds)
22:07:45 Γ— myme quits (~myme@2a01:799:d5e:5f00:ece1:5fda:8ec3:3560) (Ping timeout: 248 seconds)
22:08:10 β†’ myme joins (~myme@2a01:799:d5e:5f00:ece1:5fda:8ec3:3560)
22:09:17 Γ— tabaqui quits (~tabaqui@167.71.80.236) (Ping timeout: 244 seconds)
22:09:30 β†’ plitter joins (~plitter@2a01:799:b93:2400:a236:bcff:febb:db81)
22:09:30 Γ— plitter quits (~plitter@2a01:799:b93:2400:a236:bcff:febb:db81) (Changing host)
22:09:30 β†’ plitter joins (~plitter@user/plitter)
22:10:54 Γ— merijn quits (~merijn@host-vr.cgnat-g.v4.dfn.nl) (Ping timeout: 272 seconds)
22:14:54 Γ— OlzhasYergali quits (~OlzhasYer@188.130.156.6) (Quit: Client closed)
22:18:22 <tomsmeding> this channels is rather prominently mentioned here though https://summer.haskell.org/contact.html
22:21:18 β†’ merijn joins (~merijn@host-vr.cgnat-g.v4.dfn.nl)
22:25:21 β†’ emmanuelux joins (~emmanuelu@user/emmanuelux)
22:26:20 Γ— merijn quits (~merijn@host-vr.cgnat-g.v4.dfn.nl) (Ping timeout: 244 seconds)
22:37:07 β†’ merijn joins (~merijn@host-vr.cgnat-g.v4.dfn.nl)
22:39:46 Γ— malte quits (~malte@mal.tc) (Ping timeout: 244 seconds)
22:42:03 Γ— merijn quits (~merijn@host-vr.cgnat-g.v4.dfn.nl) (Ping timeout: 245 seconds)
22:52:53 β†’ merijn joins (~merijn@host-vr.cgnat-g.v4.dfn.nl)
22:59:30 Γ— merijn quits (~merijn@host-vr.cgnat-g.v4.dfn.nl) (Ping timeout: 248 seconds)
23:04:09 Γ— j1n37- quits (~j1n37@user/j1n37) (Read error: Connection reset by peer)
23:06:31 β†’ merijn joins (~merijn@host-vr.cgnat-g.v4.dfn.nl)
23:07:12 β†’ j1n37 joins (~j1n37@user/j1n37)
23:08:06 Γ— machinedgod quits (~machinedg@d108-173-18-100.abhsia.telus.net) (Ping timeout: 246 seconds)
23:11:17 Γ— merijn quits (~merijn@host-vr.cgnat-g.v4.dfn.nl) (Ping timeout: 244 seconds)
23:15:31 Γ— HelloImSteven quits (~HelloImSt@user/HelloImSteven) (Quit: HelloImSteven)
23:22:17 β†’ merijn joins (~merijn@host-vr.cgnat-g.v4.dfn.nl)
23:24:01 β†’ malte joins (~malte@mal.tc)
23:24:10 Γ— __monty__ quits (~toonn@user/toonn) (Quit: leaving)
23:29:16 Γ— merijn quits (~merijn@host-vr.cgnat-g.v4.dfn.nl) (Ping timeout: 252 seconds)
23:36:43 Γ— vavakado quits (~vavakado@user/Vavakado) (Quit: Lost terminal)
23:40:49 β†’ merijn joins (~merijn@host-vr.cgnat-g.v4.dfn.nl)
23:43:56 Γ— malte quits (~malte@mal.tc) (Ping timeout: 252 seconds)
23:45:54 Γ— merijn quits (~merijn@host-vr.cgnat-g.v4.dfn.nl) (Ping timeout: 244 seconds)
23:46:01 β†’ malte joins (~malte@mal.tc)
23:48:29 Γ— xff0x quits (~xff0x@2405:6580:b080:900:879:4ff2:52d5:5929) (Quit: xff0x)
23:52:44 Γ— malte quits (~malte@mal.tc) (Ping timeout: 252 seconds)
23:56:35 β†’ merijn joins (~merijn@host-vr.cgnat-g.v4.dfn.nl)

All times are in UTC on 2025-03-27.