Home liberachat/#haskell: Logs Calendar

Logs on 2024-01-25 (liberachat/#haskell)

00:00:17 Unicorn_Princess joins (~Unicorn_P@user/Unicorn-Princess/x-3540542)
00:02:19 × peterbecich quits (~Thunderbi@047-229-123-186.res.spectrum.com) (Ping timeout: 268 seconds)
00:17:06 × alexherbo2 quits (~alexherbo@195.14.23.93.rev.sfr.net) (Ping timeout: 250 seconds)
00:18:55 × mmhat quits (~mmh@p200300f1c73bf455ee086bfffe095315.dip0.t-ipconnect.de) (Quit: WeeChat 4.2.1)
00:21:23 pointlessslippe1 joins (~pointless@212.82.82.3)
00:25:07 × dorin quits (~dorin@user/dorin) (Quit: Client closed)
00:27:54 Square2 joins (~Square4@user/square)
00:29:49 × Square quits (~Square@user/square) (Ping timeout: 264 seconds)
00:33:52 × euleritian quits (~euleritia@ip4d16fc38.dynamic.kabel-deutschland.de) (Ping timeout: 246 seconds)
00:34:26 euleritian joins (~euleritia@dynamic-176-006-178-120.176.6.pool.telefonica.de)
00:37:01 × rvalue quits (~rvalue@user/rvalue) (Ping timeout: 264 seconds)
00:38:44 × TonyStone quits (~TonyStone@074-076-057-186.res.spectrum.com) (Quit: Leaving)
00:42:37 × pavonia quits (~user@user/siracusa) (Quit: Bye!)
00:47:45 rvalue joins (~rvalue@user/rvalue)
00:48:58 × Tuplanolla quits (~Tuplanoll@91-159-68-95.elisa-laajakaista.fi) (Quit: Leaving.)
00:56:46 × myxos quits (~myxos@065-028-251-121.inf.spectrum.com) (Quit: myxos)
01:05:08 myxos joins (~myxos@065-028-251-121.inf.spectrum.com)
01:10:51 ddellacosta joins (~ddellacos@ool-44c73d16.dyn.optonline.net)
01:12:59 × ddellacosta quits (~ddellacos@ool-44c73d16.dyn.optonline.net) (Client Quit)
01:13:08 ddellacosta joins (~ddellacos@ool-44c73d16.dyn.optonline.net)
01:14:07 anpad joins (~pandeyan@user/anpad)
01:14:49 × pandeyan quits (~pandeyan@192-184-249-55.fiber.dynamic.sonic.net) (Ping timeout: 264 seconds)
01:15:37 × mima quits (~mmh@aftr-62-216-211-11.dynamic.mnet-online.de) (Ping timeout: 260 seconds)
01:16:25 <Axman6> Today in Axman's adventures in programming Python: Doing it all in C and doing FP in the C preprocessor so he doesn't have to write Python
01:18:59 <yushyin> interesting
01:20:24 tri joins (~tri@ool-18bc2e74.dyn.optonline.net)
01:27:34 peterbecich joins (~Thunderbi@047-229-123-186.res.spectrum.com)
01:34:01 × Lord_of_Life quits (~Lord@user/lord-of-life/x-2819915) (Ping timeout: 264 seconds)
01:34:03 Lord_of_Life_ joins (~Lord@user/lord-of-life/x-2819915)
01:34:11 × peterbecich quits (~Thunderbi@047-229-123-186.res.spectrum.com) (Ping timeout: 252 seconds)
01:35:24 Lord_of_Life_ is now known as Lord_of_Life
01:40:01 × xff0x quits (~xff0x@ai085147.d.east.v6connect.net) (Ping timeout: 264 seconds)
01:40:42 Lycurgus joins (~georg@user/Lycurgus)
01:49:07 tt1231 joins (~tt123@2603-6010-8700-4a81-219f-50d3-618a-a6ee.res6.spectrum.com)
01:50:57 szkl joins (uid110435@id-110435.uxbridge.irccloud.com)
02:06:53 × tri quits (~tri@ool-18bc2e74.dyn.optonline.net) (Remote host closed the connection)
02:18:48 TonyStone joins (~TonyStone@074-076-057-186.res.spectrum.com)
02:19:53 × [_] quits (~itchyjunk@user/itchyjunk/x-7353470) (Remote host closed the connection)
02:21:35 × pointlessslippe1 quits (~pointless@212.82.82.3) (Ping timeout: 264 seconds)
02:27:53 xff0x joins (~xff0x@125x103x176x34.ap125.ftth.ucom.ne.jp)
02:31:14 pointlessslippe1 joins (~pointless@212.82.82.3)
02:43:34 peterbecich joins (~Thunderbi@047-229-123-186.res.spectrum.com)
02:45:08 × krei-se quits (~krei-se@p508747fd.dip0.t-ipconnect.de) (Ping timeout: 252 seconds)
02:45:56 × Lycurgus quits (~georg@user/Lycurgus) (Quit: leaving)
02:53:05 tri joins (~tri@ool-18bc2e74.dyn.optonline.net)
02:56:17 causal joins (~eric@50.35.85.7)
02:57:47 × mxs quits (~mxs@user/mxs) (Remote host closed the connection)
03:06:20 <jackdk> Axman6: compile to wasm, wrap wasm in python module
03:07:44 <jackdk> IIRC you sent me the video link
03:08:26 <Axman6> well since this will run on a very specific piece of hardware, there's no needc to make it cross platform in any way
03:20:22 × mobivme quits (~mobivme@112.201.111.217) (Ping timeout: 256 seconds)
03:21:55 × eggplantade quits (~Eggplanta@2600:1700:38c5:d800:d9f4:da25:bff2:5432) (Remote host closed the connection)
03:22:16 eggplantade joins (~Eggplanta@2600:1700:38c5:d800:d9f4:da25:bff2:5432)
03:33:25 × pastly quits (~pastly@gateway/tor-sasl/pastly) (Remote host closed the connection)
03:36:56 × FinnElija quits (~finn_elij@user/finn-elija/x-0085643) (Remote host closed the connection)
03:38:31 FinnElija joins (~finn_elij@user/finn-elija/x-0085643)
03:40:52 tri parts (~tri@ool-18bc2e74.dyn.optonline.net) (Leaving...)
03:40:53 tri joins (~tri@ool-18bc2e74.dyn.optonline.net)
03:41:21 × FinnElija quits (~finn_elij@user/finn-elija/x-0085643) (Remote host closed the connection)
03:41:31 × pointlessslippe1 quits (~pointless@212.82.82.3) (Ping timeout: 260 seconds)
03:41:48 FinnElija joins (~finn_elij@user/finn-elija/x-0085643)
03:45:40 tri_ joins (~tri@ool-18bc2e74.dyn.optonline.net)
03:48:07 × tri quits (~tri@ool-18bc2e74.dyn.optonline.net) (Ping timeout: 246 seconds)
03:48:07 × euleritian quits (~euleritia@dynamic-176-006-178-120.176.6.pool.telefonica.de) (Read error: Connection reset by peer)
03:48:37 euleritian joins (~euleritia@ip4d16fc38.dynamic.kabel-deutschland.de)
03:48:37 × FinnElija quits (~finn_elij@user/finn-elija/x-0085643) (Remote host closed the connection)
03:48:51 FinnElija joins (~finn_elij@user/finn-elija/x-0085643)
03:51:35 × td_ quits (~td@i5387090C.versanet.de) (Ping timeout: 264 seconds)
03:53:24 td_ joins (~td@i53870927.versanet.de)
03:53:35 <tri_> hi, im reading about foldable, and I cannot grasp the intuition for the Foldable Maybe yet
03:54:01 <tri_> can anyone tell me an easy reason why i would want to fold a maybe?
03:54:43 <tri_> I do understand, and can physically imagine folding a list, like fold an origami of multiple value into 1 final value for, say, a sum, an average, a min, a max
03:54:58 <tri_> but i haven't developed an intuition for folding a maybe yet
03:56:59 <jackdk> tri_: I find it helps to consider `Maybe` as a list of zero or one elements
03:57:56 <tri_> oh that helps a quite a bit! I need to think a bit more to get used to it
03:59:06 <tri_> so the whole point of Foldable is to 1) get rid of the structure, e.g. List or Maybe, to expose a summarised value 2) apply a monoidal operation to get to that summarised value
03:59:25 <tri_> it's like gutting out the inner value
03:59:33 mxs joins (~mxs@user/mxs)
04:01:06 × _xor quits (~xor@ip-208-102-243-175.dynamic.fuse.net) (Quit: brb/bbiab)
04:03:13 <jackdk> Axman6 has a take that `toList :: Foldable a => t a -> [a]` is the fundamental operation but I don't know if he's got links about it
04:05:45 <tri_> that's an interesting function, but what's your point when you bring it up?
04:05:52 <tri_> i dont get it
04:09:26 <tri_> that's a question, sorry if that sounds like im mocking you
04:17:24 <jackdk> tri_: Nah, no offence taken. I bring it up in case it helps you see the "essence" of `Foldable`, where in the `Maybe` instance, `toList = maybeToList`
04:20:14 <tri_> i actually have a better understanding now, Im treating Either, Maybe, Tuple as a list of 1 item. And folding will destroy the structure to apply the monoidal opeartion to the item inside
04:20:19 × peterbecich quits (~Thunderbi@047-229-123-186.res.spectrum.com) (Ping timeout: 246 seconds)
04:20:43 <tri_> thank you
04:23:33 <tri_> for these "one-item" list, fold is kinda useless, as it only destroys the structure, exposing the inner value
04:24:17 <tri_> where as foldr and foldl and foldMap will be more useful, because i can specify a function to apply to the inner item, after destroying the structure
04:31:24 Lycurgus joins (~georg@user/Lycurgus)
04:36:34 aforemny joins (~aforemny@2001:9e8:6cf6:d000:dd64:8ab1:7668:b8d6)
04:36:45 × aforemny_ quits (~aforemny@2001:9e8:6cd9:9100:ac0d:f435:5523:64b3) (Ping timeout: 260 seconds)
04:44:23 <EvanR> :t fold
04:44:24 <lambdabot> (Foldable t, Monoid m) => t m -> m
04:44:50 <EvanR> > fold (Just "ok")
04:44:51 <lambdabot> "ok"
04:44:54 <EvanR> > fold Nothing
04:44:55 <lambdabot> ()
04:45:07 <EvanR> > fold Nothing :: Maybe String
04:45:09 <lambdabot> Nothing
04:45:11 <probie> jackdk: I'd almost agree with Axman6 I think I've mentioned before that I think `Foldable` should be called `ListLike`. However, I'd still call `foldr` the fundamental operation
04:45:17 <probie> > fold (Nothing :: Maybe String)
04:45:19 <lambdabot> ""
04:45:56 <EvanR> sanity restored
04:47:32 <EvanR> if you think of data values as being a possibly infinite-in-some-direction tree, then the various foldl, foldr, and monoid based order independent folds may work when toList may not
04:47:55 <probie> Why wouldn't `toList` work on an infinite structure?
04:47:57 <EvanR> because list is a special case of those trees
04:48:54 pointlessslippe1 joins (~pointless@212.82.82.3)
04:49:11 <EvanR> toList can work on an infinite structure but not in the right order for those folds to work right, in general
04:50:48 <probie> Isn't `toList` either going to be `foldr (:) []` or something specialised for the data structure (in which case I'd be surprised if it wasn't at least as productive as `foldr`)
04:51:03 <EvanR> if the idea is that "you can make do with only toList if you wanted to fold"
04:52:17 <EvanR> if toList is the fundamental operation, you can't define it as foldr (:) [], then foldr is fundamental (and won't work on left-infinite tree, for the same reason foldl won't work on right infinite tree)
04:54:28 <probie> I think I'm missing something here. Given an arbitrary tree that has values at nodes, I can _always_ write a productive `toList` function without knowing what parts of it may or may not be infinite
04:54:47 <EvanR> and then implement the rest of Foldable with it?
04:54:54 <EvanR> with the list
04:56:05 <hololeap> (foldMap . toList) checks out
04:56:49 <EvanR> it seems redundant to require foldMap and toList be fundamental
04:56:51 <hololeap> well... more or less anyway
04:57:17 <EvanR> you could implement toList (if you don't care about order) with foldMap
04:57:31 <[Leary]> probie: You /can/ in principle, but that's a different instance than the one you usually want, which ascribes a different order to the elements and produces different folded summaries (monoids not being commutative in general).
04:58:34 <hololeap> foldr and foldMap are the fundamental Foldable methods. toList can be defined by foldr or foldMap
04:59:11 <EvanR> I argue that foldr, foldl, and fold are on equal footing and can't always be defined in terms of each other
04:59:33 <EvanR> foldr is pretty fundamental for list only
04:59:55 <EvanR> having a class for this is good because there are other data structures
05:00:13 peterbecich joins (~Thunderbi@047-229-123-186.res.spectrum.com)
05:00:40 <probie> _but_ `toList` can be used to define `foldr`. If `foldr` was definable, surely you can manually write whatever `foldr (:) []` would have been as your `toList` definition, at which point you can recover `foldr` with `foldr f z t = List.foldr f z (toList t)`
05:00:56 <hololeap> I would like to see a data structure where it has a Foldable and doesn't have a valid toList
05:01:23 <EvanR> you can by fiat say that whatever foldr using toList does is correct. How about foldl
05:01:51 <EvanR> no one was arguing that you can't define toList somehow
05:03:07 <hololeap> foldl implies a non-infinite type. if you test foldl on an infinite stream you just ... wait
05:03:24 <monochrom> data SnocList a = Nil | Snoc (SnocList a) a. SnocList is like [] but friendly to being infinite on the left. If you can an infinite SnocList, toList will have some trouble.
05:03:37 <EvanR> no, it just sounds like you're affirming the idea that Foldable to really a ToList class
05:03:48 <probie> monochrom: will it? just have `foldr` go from right to left
05:03:57 _ht joins (~Thunderbi@28-52-174-82.ftth.glasoperator.nl)
05:04:09 <hololeap> EvanR: I just haven't seen a counter-example
05:04:25 <EvanR> I can only continue to point out that it's called Foldable, and folding over different structures is not always compatible with list
05:04:49 <probie> It's not a useful interface if you can a priori know which is going to be the productive function. If the "direction" matters, then surely at this point you know the concrete type
05:05:06 <probie> s/can/can't/
05:05:06 <EvanR> you can argue that foldl and foldr are pointless parts of the interface I guess
05:05:31 <EvanR> and pretend this is a ToList class
05:05:58 <monochrom> What is even the answer to `head (toList (an infinite SnocList))` ?
05:06:16 <hololeap> bottom?
05:06:23 <EvanR> right
05:06:31 <EvanR> but you can foldl the infinite snoc list
05:06:51 <hololeap> do you mean foldl'
05:06:54 <EvanR> no
05:07:03 <EvanR> you're still stuck on regular list being god
05:07:12 <monochrom> Whereas if you accept fold or foldMap as fundamental, then every instance can tailor-make fold/foldMap's bias to suit the instance.
05:07:14 <EvanR> generally your data looks like a tree
05:07:31 <EvanR> Foldable is alluding to tree reductions, not list reductions
05:07:56 <[Leary]> A Foldable instance encodes an order structure that can involve arbitrary nested successive left and right infinite sequences. List just isn't anywhere near rich enough.
05:08:22 <hololeap> how is that different? a tree with no secondary nodes is a list
05:08:34 <probie> EvanR: Is it? Then why does it have `foldr` and `foldl`. Those are unambiguously list reductions
05:08:42 <hololeap> you can always collapse a tree to a list
05:08:48 <EvanR> "a tree is a list" is getting absurd
05:09:01 <EvanR> probie, no
05:09:08 <hololeap> it's not isomorphic
05:09:20 <hololeap> but you can always turn a tree into a list
05:09:25 trev joins (~trev@user/trev)
05:10:14 <probie> EvanR: What would you call `forall b . (a -> b -> b) -> b -> b`?
05:10:45 <hololeap> :t Cont
05:10:46 <lambdabot> error:
05:10:46 <lambdabot> • Data constructor not in scope: Cont
05:10:46 <lambdabot> • Perhaps you meant one of these:
05:10:48 <EvanR> look up left reductions, right reductions, other reductions, and monoid-based reductions of a tree
05:11:09 <EvanR> I submit that foldl and foldr allude to that
05:11:29 <monochrom> `forall b . (a -> b -> b) -> b -> b` is ConsList a.
05:12:19 <probie> `fold` or `foldMap` might do a nice tree reduction, but `foldr` and `foldl` necessarily linearize your structure
05:12:37 × mxs quits (~mxs@user/mxs) (Quit: The Lounge - https://thelounge.chat)
05:12:45 <EvanR> I think by linearize, you mean order
05:13:07 <hololeap> foldl and foldr also give a direction
05:13:09 <probie> Turn into a line, that you must walk down
05:14:04 <EvanR> there are many ways to make a list of nodes of a tree, and then there are many ways to reduce a list, even an infinite one
05:14:18 <monochrom> I need to have a stronger opinion and conviction and stubbornnes than all of you.
05:14:22 <EvanR> because of that you might not even care about the intermediate list
05:14:31 <monochrom> foldMap is map-reduce, that is why it is more fundamental.
05:15:10 <monochrom> You simply don't hear Google map-reduce people say "this is toList technology!".
05:15:57 <monochrom> In fact toList is how you ruin map-reduce performance.
05:15:58 <EvanR> that the reduce has to happen in serial might be another red herring
05:16:16 <EvanR> specifically if it's a monoid reduction
05:16:24 <probie> monochrom: to be honest, my stake in this is that I want to reclaim the name `Foldable` for catamorphisms
05:16:53 <monochrom> You can use Catamorphism right now right here.
05:17:11 <EvanR> also ToList to be a class containing only toList
05:17:18 <EvanR> if that's all you need
05:17:28 <hololeap> EvanR: what is something that has a terminating foldl but has a non-terminating foldr?
05:17:28 <monochrom> And it is much less ambiguous and vague than those "Foldable" "Mappable" "Bindable" shite.
05:17:42 <EvanR> hololeap, a trivial example was given above by monochrom
05:18:35 <EvanR> how you argue your way out of that I can't predict, but I know it's coming xD
05:19:13 <hololeap> I'm just going to say that data types aren't usually constructed like that
05:19:27 <monochrom> Hutton has a paper on exactly a type class for F-algebras and catamorphisms. The type class is called Algebra.
05:19:37 <probie> The Foldable class represents data structures that can be reduced to a summary value one element at a time. Strict left-associative folds are a good fit for space-efficient reduction, while lazy right-associative folds are a good fit for corecursive iteration, or for folds that short-circuit after processing an initial subsequence of the structure's elements.
05:19:50 <probie> (that the docs for `Foldable`)
05:20:34 <monochrom> It is not good doc and no one bothers to fix it.
05:20:39 <EvanR> for a while I think people were confused on why Foldable should even exist, because there was a feeling that it was "just a glorified toList" and no one could even identify laws
05:21:01 <monochrom> Its comment on strict left has ConsList in mind. Obviously.
05:21:02 <EvanR> but that was a while back
05:21:04 <probie> I can actually get a decent fold over a tree with `foldMap Sum`, but it doesn't seem to be the intent
05:21:17 <EvanR> addition is commutative
05:21:23 <EvanR> so that's not surprising
05:21:28 <monochrom> Talk to me again after you optimize summing a finger tree.
05:21:55 <monochrom> In fact, talk to me again after you optimize summing a finger tree on parallel hardware.
05:25:03 <hololeap> monochrom: which direction?
05:25:19 <hololeap> lol
05:25:38 <monochrom> If you have a nonlinear data structure, you can cite Monoid associativity and choose a strategy for fold/foldMap that best fits the data structure and/or most actual use cases. foldl vs foldr is a false dichotomoy. There is always a third, better choice.
05:26:32 × Lycurgus quits (~georg@user/Lycurgus) (Quit: leaving)
05:26:41 <monochrom> I don't understand how it even needs explanation. It's self-evident.
05:27:34 <EvanR> if your tree leans heavily to the left, and you want to strictly reduce, there's even foldr' in this class admitting that this might be a situation
05:27:53 <EvanR> strictly right reduce
05:28:16 <EvanR> an operation which makes no sense for list
05:28:24 <probie> Finally, in some less common structures (e.g. snoc lists) right to left iterations are cheaper than left to right. Such structures are poor candidates for a Foldable instance, and are perhaps best handled via their type-specific interfaces.
05:28:26 <probie> If nevertheless a Foldable instance is provided, the material in the sections that follow applies to these also, by replacing each method with one with the opposite associativity (when available) and switching the order of arguments in the fold's operator.
05:28:52 <hololeap> monochrom: Monoids are not commutative, so the direction is relevant
05:29:16 <EvanR> parallel sum is supported because of the associativity
05:29:22 <monochrom> I'll take that as a joke and not give a serious rebuttal.
05:29:32 <EvanR> so it doesn't even need to be a commutative operation here
05:30:07 <monochrom> But perhaps consider how "order" may refer to one of two orthogonal things and therefore "order is important" is ambiguous.
05:30:36 <probie> ugh; why couldn't the docs just tell people to make `foldr` go right to left over snoc lists
05:30:50 <monochrom> This is why I don't even use that word. I say "associative" if I mean it. I say "commutative" if I mean it. I don't know which one "order" refers to.
05:30:55 <EvanR> not every Foldable is a one dimensional thing
05:31:22 <EvanR> I tried to be diplomatic by saying "in general it's a tree"
05:31:33 <EvanR> but that might not even be the most general
05:31:53 <hololeap> (-) is a monoid, but it's not commutative
05:32:18 <monochrom> > (4-5)-6 == 4-(5-6)
05:32:20 <lambdabot> False
05:32:23 <EvanR> yeah no
05:32:28 <monochrom> Are you on drugs?!
05:32:41 <hololeap> yes, but I think I meant associative
05:33:02 <monochrom> Like I had wine during dinner but I haven't lost my knowledge of associativity.
05:33:03 <probie> A monoid is associative
05:33:07 × myme1 quits (~myme@2a01:799:d5e:2e00:abf6:2f60:4488:2041) (Ping timeout: 246 seconds)
05:33:17 <EvanR> dissociative monoid syndrome
05:33:57 <monochrom> Associativity is exact what I tested. (x `op` y) `op` z = x `op` (y `op` z)
05:34:03 <hololeap> wtf am I looking at then
05:34:18 <hololeap> commutative /kŏm′yə-tā″tĭv, kə-myoo͞′tə-tĭv/
05:34:18 <hololeap> adjective
05:34:18 <hololeap> Relating to, involving, or characterized by substitution, interchange, or exchange. Independent of order. Used of a logical or mathematical operation that combines objects or sets of objects two at a time. If a × b = b × a, the operation indicated by × is commutative.
05:34:24 myme joins (~myme@2a01:799:d5e:2e00:5a9e:1be4:ba7e:eb44)
05:34:40 <monochrom> That one is commutativity.
05:35:31 <hololeap> <hololeap> (-) is a monoid, but it's not commutative
05:35:32 <monochrom> [A] is a monoid because (xs++ys)++zs = xs++(ys++zs). Also, no one claims or needs commutativity for the [A] monoid.
05:35:43 <EvanR> a x b = b x a, "order doesn't matter". a x (b x c) = (a x b) x c, "order doesn't matter". Cool this phrase sucks
05:35:54 <monochrom> Yeah that's what I said.
05:35:57 <probie> `-` is both associative and commutative in `Z mod 1` :p
05:36:12 <monochrom> I guess also mod 2.
05:36:13 <probie> s/mod 1/mod 2/
05:36:32 <monochrom> Well mod 1 also works >:)
05:36:58 <probie> Every binary operation is associative and commutative in `Z mod 1`
05:37:39 <monochrom> You know the joke about a PhD thesis about a new kind of rings that got busted? :)
05:38:15 <monochrom> A math PhD student thought up a new kind of rings, i.e., adding some new axioms to the ring axioms.
05:38:29 <monochrom> He proved that this kind of rings all have super-nice properties.
05:38:40 <probie> and it turned out it only had one element?
05:38:58 <monochrom> At the oral exam, an examiner asks, "can you give an example of this kind of rings?". He said no, he hadn't tried.
05:39:25 <monochrom> Yeah, the examiner than went to the blackboard and proved that they can only be {0}.
05:39:35 <jackdk> I've heard a variant of this story where the only example of the "new structure with nice properties" was the unit circle
05:40:23 <EvanR> that's supposed to be a joke? Sounds like a totally valid paper xd
05:40:47 <EvanR> if the punchline were included at the end
05:41:03 <monochrom> Naw, in a PhD program, the supervisor would have caught this much earlier on and not let it get to the point of the oral exam.
05:41:21 <monochrom> Then again maybe you can point out that some supervisors are dysfunctional...
05:41:23 <EvanR> on what grounds xD
05:42:09 <monochrom> Well it's the job of the supervisor to ask "do you have an example?" and it's a pretty simple job.
05:42:36 <EvanR> I mean if the answer is sure, the singleton ring
05:42:58 <monochrom> Well a supervisor also has harder jobs, but sanity checks like "do you have an example?" is easy and automatic.
05:43:01 <EvanR> ok, so we have gone on in here at length about types which are both Functor and Contravariant
05:43:44 <EvanR> but admittedly at some point someone says "they're not very interesting"
05:44:25 <EvanR> or Comonoids are not very interesting. I guess none of this rises to the level of phd paper xD
05:44:37 <monochrom> :)
05:50:57 <monochrom> BTW, that is why () is a Monoid instance. >:)
05:56:28 × benjaminl quits (~benjaminl@user/benjaminl) (Remote host closed the connection)
05:57:48 benjaminl joins (~benjaminl@user/benjaminl)
05:59:57 <EvanR> because in haskell people learned to put the gut reasoning "no one is ever going to need this instance" through a NOT gate
06:00:57 <c_wraith> Eh. there are still plenty of people upset by ((,) a) having a Foldable instance
06:01:29 <EvanR> that's the NOT gate in action!
06:01:42 <c_wraith> > length (3,4) -- this upsets so many people
06:01:44 <lambdabot> 1
06:02:16 <tri_> c_wraith: why length (3,4,5) not working?
06:02:22 <tri_> > length (3,4,5)
06:02:24 <lambdabot> error:
06:02:24 <lambdabot> • No instance for (Foldable ((,,) Integer Integer))
06:02:24 <lambdabot> arising from a use of ‘length’
06:02:33 <EvanR> treating tuples as a list upsets me
06:02:36 <c_wraith> apparently *that* instance doesn't exist!
06:02:47 <EvanR> as is done in the typed-elixir paper
06:02:51 <monochrom> We need to fix that!
06:02:58 <c_wraith> ... If we're going to make tuples foldable, make them foldable up to 63!
06:03:08 <EvanR> > length (3,(4,5))
06:03:09 <lambdabot> 1
06:03:41 <tri_> c_wraith: oh i see! I forgot that we can't have infinite items in a tuple, only 7 or 8. And each is a separate type
06:04:29 <EvanR> not without infinite types
06:04:32 <c_wraith> I believe GHC supports up to 63 elements in a tuple. But most classes that have tuple instances don't go all the way up that high
06:07:13 <c_wraith> heck. There don't even appear to be Show instances above 15 elements
06:07:42 <monochrom> Control.Applicative stops at liftA3.
06:09:25 × Square2 quits (~Square4@user/square) (Ping timeout: 264 seconds)
06:09:42 aforemny_ joins (~aforemny@2001:9e8:6cf9:7200:33bd:fab4:6c7b:ec3c)
06:09:44 × euleritian quits (~euleritia@ip4d16fc38.dynamic.kabel-deutschland.de) (Read error: Connection reset by peer)
06:10:44 zetef joins (~quassel@95.77.17.251)
06:11:13 euleritian joins (~euleritia@ip4d16fc38.dynamic.kabel-deutschland.de)
06:11:13 × aforemny quits (~aforemny@2001:9e8:6cf6:d000:dd64:8ab1:7668:b8d6) (Ping timeout: 264 seconds)
06:17:29 takuan joins (~takuan@178-116-218-225.access.telenet.be)
06:17:42 × zetef quits (~quassel@95.77.17.251) (Remote host closed the connection)
06:18:00 aforemny joins (~aforemny@2001:9e8:6cf9:7c00:859e:282d:f5c:ea1a)
06:18:22 × euleritian quits (~euleritia@ip4d16fc38.dynamic.kabel-deutschland.de) (Ping timeout: 276 seconds)
06:18:42 euleritian joins (~euleritia@dynamic-176-001-246-220.176.1.pool.telefonica.de)
06:19:01 × aforemny_ quits (~aforemny@2001:9e8:6cf9:7200:33bd:fab4:6c7b:ec3c) (Ping timeout: 264 seconds)
06:27:19 × aforemny quits (~aforemny@2001:9e8:6cf9:7c00:859e:282d:f5c:ea1a) (Ping timeout: 256 seconds)
06:30:35 hackyhacker joins (~user@212.71.9.113)
06:30:41 aforemny joins (~aforemny@2001:9e8:6cf9:8500:981b:1c32:9029:341)
06:35:05 × _ht quits (~Thunderbi@28-52-174-82.ftth.glasoperator.nl) (Remote host closed the connection)
06:35:17 × aforemny quits (~aforemny@2001:9e8:6cf9:8500:981b:1c32:9029:341) (Ping timeout: 260 seconds)
06:35:33 <hackyhacker> Hello is anyone here going to Fosdem next week? It's an open source conference in Brussels Belgium. Last year they had a Haskell dev room.
06:38:59 × tri_ quits (~tri@ool-18bc2e74.dyn.optonline.net) (Remote host closed the connection)
06:41:55 michalz joins (~michalz@185.246.207.222)
06:45:08 aforemny joins (~aforemny@2001:9e8:6cf9:9a00:4bfc:c9f0:6a8:dc47)
06:45:35 igemnace joins (~ian@user/igemnace)
06:49:08 yeahitsme joins (~bob@user/yeahitsme)
06:49:19 × FinnElija quits (~finn_elij@user/finn-elija/x-0085643) (Ping timeout: 240 seconds)
06:51:32 FinnElija joins (~finn_elij@user/finn-elija/x-0085643)
06:54:43 × michalz quits (~michalz@185.246.207.222) (Quit: ZNC 1.8.2 - https://znc.in)
06:57:40 michalz joins (~michalz@185.246.207.197)
06:59:11 qqq joins (~qqq@92.43.167.61)
07:01:07 mikoto-chan joins (~mikoto-ch@ip-83-134-169-166.dsl.scarlet.be)
07:04:54 coot joins (~coot@89-69-206-216.dynamic.chello.pl)
07:08:39 × FinnElija quits (~finn_elij@user/finn-elija/x-0085643) (Remote host closed the connection)
07:09:12 FinnElija joins (~finn_elij@user/finn-elija/x-0085643)
07:15:20 Kuttenbrunzer joins (~Kuttenbru@2a02:8108:8b80:1d48::cc15)
07:19:10 × peterbecich quits (~Thunderbi@047-229-123-186.res.spectrum.com) (Ping timeout: 264 seconds)
07:20:10 × coot quits (~coot@89-69-206-216.dynamic.chello.pl) (Remote host closed the connection)
07:20:37 coot joins (~coot@89-69-206-216.dynamic.chello.pl)
07:22:37 × shriekingnoise quits (~shrieking@186.137.175.87) (Ping timeout: 268 seconds)
07:24:56 <haskellbridge> 15<J​ade> Using tuples bigger than `Tuple4` is an antpattern anyways ^^
07:25:13 <haskellbridge> 15<J​ade> s/ant/anti
07:26:05 <dminuoso_> Not quite sure why it would be an antipattern.
07:26:41 <dminuoso_> Conjuring up a data type for a one time usage might be overkill, and sometimes its more convenient to pass something as a single argument.
07:28:04 <dminuoso_> Id say they are a code smell, but not an outright antipattern.
07:30:03 krei-se joins (~krei-se@p508747fd.dip0.t-ipconnect.de)
07:30:05 × Kuttenbrunzer quits (~Kuttenbru@2a02:8108:8b80:1d48::cc15) (Quit: Where is it)
07:44:05 <haskellbridge> 15<J​ade> okay, yeah, that's fair
07:49:21 CiaoSen joins (~Jura@2a05:5800:289:df00:ca4b:d6ff:fec1:99da)
07:50:33 lortabac joins (~lortabac@2a01:e0a:541:b8f0:55ab:e185:7f81:54a4)
07:50:55 tromp joins (~textual@92-110-219-57.cable.dynamic.v4.ziggo.nl)
07:54:53 × euleritian quits (~euleritia@dynamic-176-001-246-220.176.1.pool.telefonica.de) (Read error: Connection reset by peer)
07:55:11 euleritian joins (~euleritia@ip4d16fc38.dynamic.kabel-deutschland.de)
07:55:28 fendor joins (~fendor@2a02:8388:1605:d100:267b:1353:13d7:4f0c)
08:00:01 × tt1231 quits (~tt123@2603-6010-8700-4a81-219f-50d3-618a-a6ee.res6.spectrum.com) (Quit: The Lounge - https://thelounge.chat)
08:01:17 × kimiamania464 quits (~65804703@user/kimiamania) (Quit: PegeLinux)
08:01:59 kimiamania4648 joins (~65804703@user/kimiamania)
08:02:31 tt1231 joins (~tt123@2603-6010-8700-4a81-219f-50d3-618a-a6ee.res6.spectrum.com)
08:03:06 × tt1231 quits (~tt123@2603-6010-8700-4a81-219f-50d3-618a-a6ee.res6.spectrum.com) (Client Quit)
08:07:01 × euleritian quits (~euleritia@ip4d16fc38.dynamic.kabel-deutschland.de) (Ping timeout: 264 seconds)
08:07:27 tt1231 joins (~tt123@2603-6010-8700-4a81-219f-50d3-618a-a6ee.res6.spectrum.com)
08:07:32 × benjaminl quits (~benjaminl@user/benjaminl) (Remote host closed the connection)
08:08:07 × tt1231 quits (~tt123@2603-6010-8700-4a81-219f-50d3-618a-a6ee.res6.spectrum.com) (Client Quit)
08:08:12 euleritian joins (~euleritia@dynamic-176-001-246-220.176.1.pool.telefonica.de)
08:08:20 benjaminl joins (~benjaminl@user/benjaminl)
08:09:25 tt1231 joins (~tt123@2603-6010-8700-4a81-219f-50d3-618a-a6ee.res6.spectrum.com)
08:10:02 × tt1231 quits (~tt123@2603-6010-8700-4a81-219f-50d3-618a-a6ee.res6.spectrum.com) (Client Quit)
08:12:33 tt1231 joins (~tt123@2603-6010-8700-4a81-219f-50d3-618a-a6ee.res6.spectrum.com)
08:13:06 × tt1231 quits (~tt123@2603-6010-8700-4a81-219f-50d3-618a-a6ee.res6.spectrum.com) (Client Quit)
08:13:49 × qqq quits (~qqq@92.43.167.61) (Remote host closed the connection)
08:15:37 tt1231 joins (~tt123@2603-6010-8700-4a81-219f-50d3-618a-a6ee.res6.spectrum.com)
08:16:01 × tt1231 quits (~tt123@2603-6010-8700-4a81-219f-50d3-618a-a6ee.res6.spectrum.com) (Client Quit)
08:17:32 tt1231 joins (~tt123@2603-6010-8700-4a81-219f-50d3-618a-a6ee.res6.spectrum.com)
08:18:07 × tt1231 quits (~tt123@2603-6010-8700-4a81-219f-50d3-618a-a6ee.res6.spectrum.com) (Client Quit)
08:19:34 tt1231 joins (~tt123@2603-6010-8700-4a81-219f-50d3-618a-a6ee.res6.spectrum.com)
08:20:06 × tt1231 quits (~tt123@2603-6010-8700-4a81-219f-50d3-618a-a6ee.res6.spectrum.com) (Client Quit)
08:21:32 tt1231 joins (~tt123@2603-6010-8700-4a81-219f-50d3-618a-a6ee.res6.spectrum.com)
08:22:06 × tt1231 quits (~tt123@2603-6010-8700-4a81-219f-50d3-618a-a6ee.res6.spectrum.com) (Client Quit)
08:22:33 tt1231 joins (~tt123@2603-6010-8700-4a81-219f-50d3-618a-a6ee.res6.spectrum.com)
08:23:02 × tt1231 quits (~tt123@2603-6010-8700-4a81-219f-50d3-618a-a6ee.res6.spectrum.com) (Client Quit)
08:23:32 tt1231 joins (~tt123@2603-6010-8700-4a81-219f-50d3-618a-a6ee.res6.spectrum.com)
08:24:07 × tt1231 quits (~tt123@2603-6010-8700-4a81-219f-50d3-618a-a6ee.res6.spectrum.com) (Client Quit)
08:27:33 mobivme joins (~mobivme@112.201.111.217)
08:28:17 mima joins (~mmh@aftr-62-216-211-75.dynamic.mnet-online.de)
08:29:23 × ph88 quits (~ph88@ip5b403f30.dynamic.kabel-deutschland.de) (Ping timeout: 264 seconds)
08:34:55 × azimut quits (~azimut@gateway/tor-sasl/azimut) (Ping timeout: 240 seconds)
08:45:50 waleee joins (~waleee@h-176-10-144-38.NA.cust.bahnhof.se)
08:46:26 × tzh quits (~tzh@c-71-193-181-0.hsd1.or.comcast.net) (Quit: zzz)
08:47:04 mmhat joins (~mmh@p200300f1c73bf455ee086bfffe095315.dip0.t-ipconnect.de)
08:47:40 × mmhat quits (~mmh@p200300f1c73bf455ee086bfffe095315.dip0.t-ipconnect.de) (Client Quit)
08:57:29 whatsupdoc joins (uid509081@id-509081.hampstead.irccloud.com)
09:01:20 Ashkan joins (~Ashkan@147.161.173.72)
09:06:22 danse-nr3 joins (~danse@151.47.4.131)
09:12:13 × tromp quits (~textual@92-110-219-57.cable.dynamic.v4.ziggo.nl) (Quit: My iMac has gone to sleep. ZZZzzz…)
09:12:58 × eggplantade quits (~Eggplanta@2600:1700:38c5:d800:d9f4:da25:bff2:5432) (Remote host closed the connection)
09:13:26 __monty__ joins (~toonn@user/toonn)
09:14:04 × euleritian quits (~euleritia@dynamic-176-001-246-220.176.1.pool.telefonica.de) (Read error: Connection reset by peer)
09:14:23 euleritian joins (~euleritia@77.22.252.56)
09:17:21 × econo_ quits (uid147250@id-147250.tinside.irccloud.com) (Quit: Connection closed for inactivity)
09:19:42 nschoe joins (nschoe@gateway/vpn/protonvpn/nschoe)
09:24:54 × euleritian quits (~euleritia@77.22.252.56) (Read error: Connection reset by peer)
09:26:02 euleritian joins (~euleritia@77.22.252.56)
09:45:08 × mikoto-chan quits (~mikoto-ch@ip-83-134-169-166.dsl.scarlet.be) (Ping timeout: 256 seconds)
09:45:33 × Sgeo quits (~Sgeo@user/sgeo) (Read error: Connection reset by peer)
09:46:45 rosco joins (~rosco@175.136.156.77)
09:47:28 × ft quits (~ft@p508dbda4.dip0.t-ipconnect.de) (Quit: leaving)
09:47:32 eggplantade joins (~Eggplanta@2600:1700:38c5:d800:d9f4:da25:bff2:5432)
09:50:02 × CrunchyFlakes quits (~CrunchyFl@ip92348280.dynamic.kabel-deutschland.de) (Read error: Connection reset by peer)
09:50:34 CrunchyFlakes joins (~CrunchyFl@ip92348280.dynamic.kabel-deutschland.de)
09:55:24 <jackdk> even Elm gives you six-wide tuples
09:57:20 <sshine> god gave us five fingers, six-tuples are an abomination!
09:57:32 <jackdk> nah it's fine, you start counting from zero, right?
09:57:44 <sshine> I always forget my 0th finger.
09:59:11 <sshine> it's in the cloud, so that's why.
09:59:41 <int-e> count between the fingers... and before and after
10:03:26 jespada joins (~jespada@cpc121308-nmal25-2-0-cust15.19-2.cable.virginm.net)
10:04:02 × euleritian quits (~euleritia@77.22.252.56) (Ping timeout: 252 seconds)
10:04:59 euleritian joins (~euleritia@dynamic-176-001-246-220.176.1.pool.telefonica.de)
10:10:38 × xff0x quits (~xff0x@125x103x176x34.ap125.ftth.ucom.ne.jp) (Ping timeout: 256 seconds)
10:11:26 × euleritian quits (~euleritia@dynamic-176-001-246-220.176.1.pool.telefonica.de) (Read error: Connection reset by peer)
10:11:44 euleritian joins (~euleritia@77.22.252.56)
10:12:30 mesaoptimizer joins (~mesaoptim@user/PapuaHardyNet)
10:17:00 cfricke joins (~cfricke@user/cfricke)
10:17:00 johnw_ joins (~johnw@69.62.242.138)
10:19:05 × johnw quits (~johnw@69.62.242.138) (Ping timeout: 256 seconds)
10:22:13 <__monty__> You can't count to 12 on the fingers of a single hand?
10:24:09 <c_wraith> I can, but it has some problems with quick recognition and tracking.
10:24:48 <darkling> monochrom: That PhD joke sounds a bit like my thesis viva. I'd put in a conjecture, but hadn't been able to prove it by the time I submitted.
10:25:27 <darkling> Fast forward six months to the viva, and the internal examiner said "Aah, yes, section 5.3. I've got a counter-example." He pulled out a piece of paper.
10:25:40 <darkling> I said, "So have I", and pulled out my piece of paper. :)
10:25:57 <darkling> His was smaller, dammit.
10:25:58 <__monty__> c_wraith: Just live and breathe the duodecimal system : )
10:26:14 × lortabac quits (~lortabac@2a01:e0a:541:b8f0:55ab:e185:7f81:54a4) (Ping timeout: 260 seconds)
10:27:11 <__monty__> darkling: Morale of the story, don't get into counter-example measuring contests.
10:28:04 zetef joins (~quassel@95.77.17.251)
10:28:05 <darkling> I was just pleased that I'd found one the week before.
10:29:12 <c_wraith> heck, if I'm willing to deal with awkward tracking and recognition, I can count to 1023 with both hands.
10:32:17 <__monty__> Please tell me how. (Maybe in -offtopic.)
10:32:41 <c_wraith> oh, it's just binary. 10 fingers, 2^10-1
10:35:26 <danse-nr3> haha that's fun to practice
10:35:34 <darkling> Some numbers are harder to represent than others, because some fingers want to bend together.
10:36:09 <danse-nr3> well you practice binary counting then you can become a piano player
10:36:46 <int-e> or make the step to ternary
10:37:53 yae joins (~yae@102.190.180.98)
10:39:05 pavonia joins (~user@user/siracusa)
10:39:32 <ncf> yes, odd time signatures are important
10:41:13 × Erutuon quits (~Erutuon@user/erutuon) (Ping timeout: 264 seconds)
10:44:02 × dsrt^ quits (~cd@c-98-242-74-66.hsd1.ga.comcast.net) (Ping timeout: 260 seconds)
10:46:10 × danse-nr3 quits (~danse@151.47.4.131) (Read error: Connection reset by peer)
10:46:18 danse-nr3 joins (~danse@rm-19-47-252.service.infuturo.it)
10:48:52 mreh joins (~mreh@2a00:23c7:2803:ef01:4860:7737:fc69:542b)
10:49:20 noumenon joins (~noumenon@113.51-175-156.customer.lyse.net)
10:50:49 × Ashkan quits (~Ashkan@147.161.173.72) (Quit: Client closed)
10:50:59 Silver_X joins (~Silver_X@182.178.242.82)
10:54:35 tromp joins (~textual@92-110-219-57.cable.dynamic.v4.ziggo.nl)
10:56:36 <danse-nr3> do time signatures have to do with fingers bending together? I thought having independent fingers would be needed for general playing
10:57:37 <probie> but are fingers `Foldable`?
10:57:51 xff0x joins (~xff0x@ai085147.d.east.v6connect.net)
10:58:06 <danse-nr3> just injectively
11:01:13 × zetef quits (~quassel@95.77.17.251) (Remote host closed the connection)
11:06:30 × agander_m quits (sid407952@id-407952.tinside.irccloud.com) (Quit: Connection closed for inactivity)
11:07:37 lortabac joins (~lortabac@2a01:e0a:541:b8f0:55ab:e185:7f81:54a4)
11:08:23 × Silver_X quits (~Silver_X@182.178.242.82) (Quit: Leaving)
11:09:51 ubert joins (~Thunderbi@2a02:8109:ab8a:5a00:e51c:5224:763d:eb0f)
11:11:28 Maxdamantus has used binary counting as his primary way of finger counting for years.
11:11:32 <Maxdamantus> https://drive.google.com/file/d/15eyfRPhuUU-z3cPU64IK-ybP54SZrgxa/view
11:13:01 <danse-nr3> haha, thumb being the smaller slot seems important...
11:14:49 × CiaoSen quits (~Jura@2a05:5800:289:df00:ca4b:d6ff:fec1:99da) (Ping timeout: 264 seconds)
11:15:26 zetef joins (~quassel@95.77.17.251)
11:16:24 <Maxdamantus> I started doing it in school (about 16 years ago), don't think I tried doing it the other way. The thumb movements in that video get a bit imprecise at around 23, but I suspect it would be harder using the pinky as 1.
11:16:53 × jmdaemon quits (~jmdaemon@user/jmdaemon) (Ping timeout: 256 seconds)
11:18:45 <mreh> is anyone familiar with Reflex outside of reflex-dom?
11:22:48 <danse-nr3> nope. I can only help by mentioning that for non-web applications there is also monomer, as when i tried to use reflex i did not find it super convenient
11:22:53 × lortabac quits (~lortabac@2a01:e0a:541:b8f0:55ab:e185:7f81:54a4) (Ping timeout: 240 seconds)
11:24:27 × nschoe quits (nschoe@gateway/vpn/protonvpn/nschoe) (Ping timeout: 260 seconds)
11:28:55 qqq joins (~qqq@92.43.167.61)
11:36:04 nschoe joins (nschoe@gateway/vpn/protonvpn/nschoe)
11:36:47 <jackdk> mreh: I've played with it a bit: https://git.sr.ht/~jack/reflex-libtelnet
11:38:57 CiaoSen joins (~Jura@2a05:5800:289:df00:ca4b:d6ff:fec1:99da)
11:39:01 <mreh> Cool. Looks like you've managed to avoid using the impure combinators.
11:39:21 <danse-nr3> hmm reflex is a reactive framework, not an app framework. Sorry i recalled the level of abstraction wrong
11:40:12 <mreh> reflex-dom introduces dyn and widgetHold for when you have types like Dynamic (m a) or Event (m a)
11:40:42 <mreh> I can't find any way of working with similar types outside of the dom though
11:42:17 <danse-nr3> maybe their logic is not too complex and can be rewritten for your case?
11:43:02 <danse-nr3> that is sometimes the cause for some abstractions not being available
11:43:38 <mreh> I'm trying to avoid reinventing the wheel, but I think it's just something I'm missing.
11:44:19 × zetef quits (~quassel@95.77.17.251) (Remote host closed the connection)
11:44:33 <mreh> There's this module: https://hackage.haskell.org/package/reflex-0.9.3.0/docs/Reflex-Host-Headless.html
11:44:34 <mreh> - which implies you can use those combinators (through the Adjustable type class)
11:45:10 <jackdk> What do you mean "the impure combinators"?
11:46:31 <mreh> jackdk: the functions in `Reflex.Network`
11:46:43 <mreh> https://hackage.haskell.org/package/reflex-0.9.3.0/docs/Reflex-Network.html
11:52:09 × danse-nr3 quits (~danse@rm-19-47-252.service.infuturo.it) (Ping timeout: 260 seconds)
11:52:33 <jackdk> mreh: I use `list`, which needs `Adjustable`: https://git.sr.ht/~jack/reflex-libtelnet/tree/master/item/reflex-libtelnet-example/src/Main.hs#L77
11:53:51 <mreh> ah, so you do
11:54:51 <jackdk> I also traced the typeclass instances in #reflex-frp in case that helps
11:55:28 lortabac joins (~lortabac@2a01:e0a:541:b8f0:55ab:e185:7f81:54a4)
12:03:14 <mreh> thanks
12:07:19 <jackdk> mreh: what are you trying to do? My gut feeling is that you probably don't want to call into Reflex.Spider directly and instead use Reflex.Host.Headless, which should set everything up correctly (including Adjustable)
12:08:22 <mreh> I was using some example code how to setup your own event loop using runSpiderHost etc
12:10:21 <jackdk> Ah. Old code? runHeadlessApp has been around for a while, and qfpl's reflex-host-basic before that. But these days I'd just runHeadlessApp
12:10:46 <lyxia> how to convert between bytestring and bytearray?
12:15:37 Zmzi joins (~rscastilh@user/Zmzi)
12:16:09 <mreh> jackdk: Okay. Looks like it'll work for me. Thanks
12:16:18 × Zmzi quits (~rscastilh@user/Zmzi) (Remote host closed the connection)
12:16:32 <mreh> lyxia: I think ByteArray is a typeclass that ByteString already implements
12:17:37 <lyxia> mreh: no it's not https://hackage.haskell.org/package/base-4.19.0.0/docs/Data-Array-Byte.html
12:19:14 <lyxia> You were thinking of the third party library memory
12:19:44 <xerox> lyxia: https://www.stackage.org/haddock/lts-22.7/cborg-0.2.10.0/src/Codec.CBOR.ByteArray.html#fromByteString
12:23:30 <lyxia> thanks xerox. so the solution is to go through ShortByteString, which is a wrapper around ByteArray
12:25:38 <xerox> at least it is one way, I guess it does make sense, since you do need to compact it into something before it can be just 1 bytearray in general
12:56:02 × AlexZenon quits (~alzenon@94.233.241.143) (Ping timeout: 260 seconds)
12:57:04 danse-nr3 joins (~danse@151.47.78.152)
12:58:42 × euleritian quits (~euleritia@77.22.252.56) (Read error: Connection reset by peer)
12:58:54 euleritian joins (~euleritia@ip4d16fc38.dynamic.kabel-deutschland.de)
13:00:33 AlexZenon joins (~alzenon@94.233.241.143)
13:01:27 Feuermagier joins (~Feuermagi@user/feuermagier)
13:03:50 × szkl quits (uid110435@id-110435.uxbridge.irccloud.com) (Quit: Connection closed for inactivity)
13:05:25 × AlexZenon quits (~alzenon@94.233.241.143) (Ping timeout: 260 seconds)
13:12:25 AlexZenon joins (~alzenon@94.233.241.143)
13:13:30 L29Ah joins (~L29Ah@wikipedia/L29Ah)
13:22:04 × picnoir quits (~picnoir@about/aquilenet/vodoo/NinjaTrappeur) (Quit: WeeChat 4.1.2)
13:29:14 kuribas joins (~user@ip-188-118-57-242.reverse.destiny.be)
13:30:46 Guest68 joins (~Guest68@104.193.8.144)
13:35:16 picnoir joins (~picnoir@about/aquilenet/vodoo/NinjaTrappeur)
13:36:10 <cheater> anyone know what an autogen Paths_* module is, in a cabal file?
13:37:29 <ncf> https://cabal.readthedocs.io/en/stable/cabal-package.html#accessing-data-files-from-package-code
13:37:32 <cheater> right
13:37:34 <cheater> https://downloads.haskell.org/~ghc/7.0.3/docs/html/Cabal/authors.html#paths-module
13:37:36 Guest68 is now known as chenggong7788
13:37:42 <cheater> that's what i stumbled upon
13:37:45 <cheater> but yours is better!
13:43:49 mxs joins (~mxs@user/mxs)
13:47:28 chenggong7788 is now known as nil78
13:51:00 shriekingnoise joins (~shrieking@186.137.175.87)
13:51:37 × ddellacosta quits (~ddellacos@ool-44c73d16.dyn.optonline.net) (Ping timeout: 260 seconds)
14:00:09 × nil78 quits (~Guest68@104.193.8.144) (Quit: Client closed)
14:12:42 × phma quits (~phma@2001:5b0:211c:bbb8:1d29:ba48:4236:ecbf) (Read error: Connection reset by peer)
14:13:06 phma joins (~phma@host-67-44-208-13.hnremote.net)
14:16:47 × yae quits (~yae@102.190.180.98) (Ping timeout: 264 seconds)
14:22:29 potato44 joins (uid421314@id-421314.lymington.irccloud.com)
14:25:47 × igemnace quits (~ian@user/igemnace) (Read error: Connection reset by peer)
14:27:48 × kuribas quits (~user@ip-188-118-57-242.reverse.destiny.be) (Remote host closed the connection)
14:30:16 kuribas joins (~user@ip-188-118-57-242.reverse.destiny.be)
14:41:45 × stefan-__ quits (~m-yh2rcc@42dots.de) (Remote host closed the connection)
14:43:07 stefan-__ joins (~m-yh2rcc@42dots.de)
14:43:56 igemnace joins (~ian@user/igemnace)
14:50:37 × ubert quits (~Thunderbi@2a02:8109:ab8a:5a00:e51c:5224:763d:eb0f) (Remote host closed the connection)
14:50:51 ubert joins (~Thunderbi@2a02:8109:ab8a:5a00:e51c:5224:763d:eb0f)
14:54:14 × tromp quits (~textual@92-110-219-57.cable.dynamic.v4.ziggo.nl) (Quit: My iMac has gone to sleep. ZZZzzz…)
14:54:38 × td_ quits (~td@i53870927.versanet.de) (Quit: waking up from the american dream ...)
14:56:55 × FinnElija quits (~finn_elij@user/finn-elija/x-0085643) (Ping timeout: 240 seconds)
14:57:19 × ChaiTRex quits (~ChaiTRex@user/chaitrex) (Ping timeout: 240 seconds)
14:57:56 × cfricke quits (~cfricke@user/cfricke) (Quit: WeeChat 4.1.2)
14:58:32 td_ joins (~td@i53870927.versanet.de)
15:06:29 tromp joins (~textual@92-110-219-57.cable.dynamic.v4.ziggo.nl)
15:06:44 _xor joins (~xor@ip-208-102-243-175.dynamic.fuse.net)
15:08:25 tri joins (~tri@ool-18bbef1a.static.optonline.net)
15:18:44 × lortabac quits (~lortabac@2a01:e0a:541:b8f0:55ab:e185:7f81:54a4) (Quit: WeeChat 4.1.1)
15:20:05 Sgeo joins (~Sgeo@user/sgeo)
15:21:02 × mreh quits (~mreh@2a00:23c7:2803:ef01:4860:7737:fc69:542b) (Ping timeout: 250 seconds)
15:23:35 × nschoe quits (nschoe@gateway/vpn/protonvpn/nschoe) (Ping timeout: 252 seconds)
15:24:47 × euleritian quits (~euleritia@ip4d16fc38.dynamic.kabel-deutschland.de) (Ping timeout: 260 seconds)
15:25:19 euleritian joins (~euleritia@dynamic-176-006-180-040.176.6.pool.telefonica.de)
15:25:22 × CiaoSen quits (~Jura@2a05:5800:289:df00:ca4b:d6ff:fec1:99da) (Ping timeout: 260 seconds)
15:31:19 zetef joins (~quassel@95.77.17.251)
15:37:02 × qqq quits (~qqq@92.43.167.61) (Remote host closed the connection)
15:37:11 × waleee quits (~waleee@h-176-10-144-38.NA.cust.bahnhof.se) (Ping timeout: 268 seconds)
15:39:18 Square joins (~Square@user/square)
15:42:42 dsrt^ joins (~cd@c-98-242-74-66.hsd1.ga.comcast.net)
15:52:00 nschoe joins (nschoe@gateway/vpn/protonvpn/nschoe)
15:55:22 mei joins (~mei@user/mei)
15:58:36 siw5ohs0 joins (~aiw5ohs0@user/aiw5ohs0)
15:58:46 siw5ohs0 parts (~aiw5ohs0@user/aiw5ohs0) ()
16:13:52 × tromp quits (~textual@92-110-219-57.cable.dynamic.v4.ziggo.nl) (Quit: My iMac has gone to sleep. ZZZzzz…)
16:14:33 tt1231 joins (~tt123@2603-6010-8700-4a81-219f-50d3-618a-a6ee.res6.spectrum.com)
16:22:37 × euleritian quits (~euleritia@dynamic-176-006-180-040.176.6.pool.telefonica.de) (Ping timeout: 264 seconds)
16:22:47 euleritian joins (~euleritia@dynamic-176-006-189-183.176.6.pool.telefonica.de)
16:26:22 × __monty__ quits (~toonn@user/toonn) (Quit: leaving)
16:27:11 × euleritian quits (~euleritia@dynamic-176-006-189-183.176.6.pool.telefonica.de) (Read error: Connection reset by peer)
16:28:04 euleritian joins (~euleritia@ip4d16fc38.dynamic.kabel-deutschland.de)
16:35:39 tromp joins (~textual@92-110-219-57.cable.dynamic.v4.ziggo.nl)
16:43:31 × eggplantade quits (~Eggplanta@2600:1700:38c5:d800:d9f4:da25:bff2:5432) (Remote host closed the connection)
16:43:52 eggplantade joins (~Eggplanta@2600:1700:38c5:d800:c1cf:e14:7781:abcb)
16:49:57 × igemnace quits (~ian@user/igemnace) (Quit: WeeChat 4.2.1)
16:52:08 × euleritian quits (~euleritia@ip4d16fc38.dynamic.kabel-deutschland.de) (Ping timeout: 252 seconds)
16:52:21 × zetef quits (~quassel@95.77.17.251) (Ping timeout: 256 seconds)
16:52:37 euleritian joins (~euleritia@ip4d16fc38.dynamic.kabel-deutschland.de)
16:54:10 × euleritian quits (~euleritia@ip4d16fc38.dynamic.kabel-deutschland.de) (Read error: Connection reset by peer)
16:54:45 euleritian joins (~euleritia@ip4d16fc38.dynamic.kabel-deutschland.de)
16:54:51 × danse-nr3 quits (~danse@151.47.78.152) (Ping timeout: 260 seconds)
16:55:36 L29Ah parts (~L29Ah@wikipedia/L29Ah) ()
16:59:35 × ubert quits (~Thunderbi@2a02:8109:ab8a:5a00:e51c:5224:763d:eb0f) (Remote host closed the connection)
17:00:13 econo_ joins (uid147250@id-147250.tinside.irccloud.com)
17:00:52 × euleritian quits (~euleritia@ip4d16fc38.dynamic.kabel-deutschland.de) (Ping timeout: 246 seconds)
17:01:22 euleritian joins (~euleritia@ip4d16fc38.dynamic.kabel-deutschland.de)
17:04:04 _ht joins (~Thunderbi@28-52-174-82.ftth.glasoperator.nl)
17:04:04 danse-nr3 joins (~danse@151.37.152.59)
17:08:42 × tri quits (~tri@ool-18bbef1a.static.optonline.net) (Remote host closed the connection)
17:14:14 tri joins (~tri@ool-18bbef1a.static.optonline.net)
17:16:20 × nschoe quits (nschoe@gateway/vpn/protonvpn/nschoe) (Ping timeout: 252 seconds)
17:18:29 × tri quits (~tri@ool-18bbef1a.static.optonline.net) (Ping timeout: 240 seconds)
17:25:35 × causal quits (~eric@50.35.85.7) (Quit: WeeChat 4.1.1)
17:27:21 tri joins (~tri@ool-18bbef1a.static.optonline.net)
17:29:02 tri_ joins (~tri@ool-18bbef1a.static.optonline.net)
17:29:02 × tri quits (~tri@ool-18bbef1a.static.optonline.net) (Read error: Connection reset by peer)
17:33:46 × tri_ quits (~tri@ool-18bbef1a.static.optonline.net) (Ping timeout: 256 seconds)
17:36:48 × fendor quits (~fendor@2a02:8388:1605:d100:267b:1353:13d7:4f0c) (Remote host closed the connection)
17:38:16 × tromp quits (~textual@92-110-219-57.cable.dynamic.v4.ziggo.nl) (Quit: My iMac has gone to sleep. ZZZzzz…)
17:43:55 × mqlnv quits (~tripod@47.154.25.27) (Ping timeout: 268 seconds)
17:44:23 tzh joins (~tzh@c-71-193-181-0.hsd1.or.comcast.net)
17:45:21 mqlnv joins (~tripod@47.154.25.27)
17:49:31 × euleritian quits (~euleritia@ip4d16fc38.dynamic.kabel-deutschland.de) (Ping timeout: 246 seconds)
17:49:56 euleritian joins (~euleritia@dynamic-176-006-189-183.176.6.pool.telefonica.de)
17:53:22 Tuplanolla joins (~Tuplanoll@91-159-68-95.elisa-laajakaista.fi)
17:59:06 tri joins (~tri@ool-18bbef1a.static.optonline.net)
18:01:08 jmdaemon joins (~jmdaemon@user/jmdaemon)
18:02:49 × danse-nr3 quits (~danse@151.37.152.59) (Ping timeout: 246 seconds)
18:06:13 × tri quits (~tri@ool-18bbef1a.static.optonline.net) (Ping timeout: 276 seconds)
18:14:36 tri joins (~tri@ool-18bbef1a.static.optonline.net)
18:17:09 × wlhn quits (~wenzel@dl5nxl8j-r4kxslv6t5kt-3.rev.dnainternet.fi) (Quit: Leaving)
18:17:54 × euleritian quits (~euleritia@dynamic-176-006-189-183.176.6.pool.telefonica.de) (Read error: Connection reset by peer)
18:17:55 Erutuon joins (~Erutuon@user/erutuon)
18:18:12 euleritian joins (~euleritia@ip4d16fc38.dynamic.kabel-deutschland.de)
18:21:27 peterbecich joins (~Thunderbi@047-229-123-186.res.spectrum.com)
18:22:43 tromp joins (~textual@92-110-219-57.cable.dynamic.v4.ziggo.nl)
18:22:46 × euleritian quits (~euleritia@ip4d16fc38.dynamic.kabel-deutschland.de) (Ping timeout: 264 seconds)
18:23:32 euleritian joins (~euleritia@dynamic-176-006-189-183.176.6.pool.telefonica.de)
18:26:23 × euleritian quits (~euleritia@dynamic-176-006-189-183.176.6.pool.telefonica.de) (Read error: Connection reset by peer)
18:26:40 euleritian joins (~euleritia@ip4d16fc38.dynamic.kabel-deutschland.de)
18:27:50 × peterbecich quits (~Thunderbi@047-229-123-186.res.spectrum.com) (Ping timeout: 252 seconds)
18:28:39 × mqlnv quits (~tripod@47.154.25.27) (Ping timeout: 260 seconds)
18:29:49 × megaTherion quits (~therion@unix.io) (Quit: ZNC 1.8.2 - https://znc.in)
18:30:02 × irrgit_ quits (~irrgit@89.47.234.26) (Remote host closed the connection)
18:30:05 mqlnv joins (~tripod@47.154.25.27)
18:30:45 irrgit_ joins (~irrgit@146.70.27.218)
18:31:01 megaTherion joins (~therion@unix.io)
18:31:30 johnw_ is now known as johnw
18:33:01 × mima quits (~mmh@aftr-62-216-211-75.dynamic.mnet-online.de) (Ping timeout: 260 seconds)
18:42:08 × euleritian quits (~euleritia@ip4d16fc38.dynamic.kabel-deutschland.de) (Ping timeout: 252 seconds)
18:42:48 euleritian joins (~euleritia@ip4d16fc38.dynamic.kabel-deutschland.de)
18:49:51 × rosco quits (~rosco@175.136.156.77) (Quit: Lost terminal)
19:01:30 × megaTherion quits (~therion@unix.io) (Quit: ZNC 1.8.2 - https://znc.in)
19:03:19 megaTherion joins (~therion@unix.io)
19:07:31 × megaTherion quits (~therion@unix.io) (Client Quit)
19:08:36 megaTherion joins (~therion@unix.io)
19:13:32 nschoe joins (nschoe@gateway/vpn/protonvpn/nschoe)
19:14:01 × kuribas quits (~user@ip-188-118-57-242.reverse.destiny.be) (Remote host closed the connection)
19:18:52 thegeekinside joins (~thegeekin@189.180.65.186)
19:30:39 × chiselfuse quits (~chiselfus@user/chiselfuse) (Remote host closed the connection)
19:30:39 × chexum quits (~quassel@gateway/tor-sasl/chexum) (Remote host closed the connection)
19:30:39 × ec quits (~ec@gateway/tor-sasl/ec) (Remote host closed the connection)
19:30:39 × adanwan quits (~adanwan@gateway/tor-sasl/adanwan) (Remote host closed the connection)
19:30:39 × stiell quits (~stiell@gateway/tor-sasl/stiell) (Remote host closed the connection)
19:30:39 × califax quits (~califax@user/califx) (Remote host closed the connection)
19:31:43 × nschoe quits (nschoe@gateway/vpn/protonvpn/nschoe) (Ping timeout: 256 seconds)
19:33:02 ft joins (~ft@p508dbda4.dip0.t-ipconnect.de)
19:36:01 × dsrt^ quits (~cd@c-98-242-74-66.hsd1.ga.comcast.net) (Ping timeout: 260 seconds)
19:39:26 × tri quits (~tri@ool-18bbef1a.static.optonline.net) (Remote host closed the connection)
19:42:13 × haskellbridge quits (~haskellbr@069-135-003-034.biz.spectrum.com) (Remote host closed the connection)
19:43:56 × Unicorn_Princess quits (~Unicorn_P@user/Unicorn-Princess/x-3540542) (Quit: Leaving)
19:45:47 chexum joins (~quassel@gateway/tor-sasl/chexum)
19:46:17 azimut joins (~azimut@gateway/tor-sasl/azimut)
19:46:18 califax joins (~califax@user/califx)
19:46:47 adanwan joins (~adanwan@gateway/tor-sasl/adanwan)
19:48:19 ChaiTRex joins (~ChaiTRex@user/chaitrex)
19:50:03 Lycurgus joins (~georg@user/Lycurgus)
19:52:00 haskellbridge joins (~haskellbr@069-135-003-034.biz.spectrum.com)
19:52:00 ChanServ sets mode +v haskellbridge
19:53:01 ec joins (~ec@gateway/tor-sasl/ec)
19:53:19 × ChaiTRex quits (~ChaiTRex@user/chaitrex) (Remote host closed the connection)
19:53:26 stiell joins (~stiell@gateway/tor-sasl/stiell)
19:53:31 dsrt^ joins (~cd@c-98-242-74-66.hsd1.ga.comcast.net)
19:53:46 ChaiTRex joins (~ChaiTRex@user/chaitrex)
19:55:03 pastly joins (~pastly@gateway/tor-sasl/pastly)
19:55:23 FinnElija joins (~finn_elij@user/finn-elija/x-0085643)
19:58:18 × jmdaemon quits (~jmdaemon@user/jmdaemon) (Quit: ZNC 1.8.2 - https://znc.in)
19:58:25 × euleritian quits (~euleritia@ip4d16fc38.dynamic.kabel-deutschland.de) (Ping timeout: 260 seconds)
19:59:14 euleritian joins (~euleritia@ip4d16fc38.dynamic.kabel-deutschland.de)
20:03:56 waleee joins (~waleee@h-176-10-144-38.NA.cust.bahnhof.se)
20:05:40 jmdaemon joins (~jmdaemon@user/jmdaemon)
20:11:33 L29Ah joins (~L29Ah@wikipedia/L29Ah)
20:14:30 × Lycurgus quits (~georg@user/Lycurgus) (Quit: leaving)
20:16:35 chiselfuse joins (~chiselfus@user/chiselfuse)
20:19:44 EvanR_ joins (~EvanR@user/evanr)
20:19:53 × eggplantade quits (~Eggplanta@2600:1700:38c5:d800:c1cf:e14:7781:abcb) (Remote host closed the connection)
20:19:59 × adanwan quits (~adanwan@gateway/tor-sasl/adanwan) (Remote host closed the connection)
20:20:46 × FinnElija quits (~finn_elij@user/finn-elija/x-0085643) (Remote host closed the connection)
20:20:51 × EvanR quits (~EvanR@user/evanr) (Ping timeout: 268 seconds)
20:21:13 FinnElija joins (~finn_elij@user/finn-elija/x-0085643)
20:24:35 × mikko quits (~mikko@user/mikko) (Ping timeout: 264 seconds)
20:37:30 × jmdaemon quits (~jmdaemon@user/jmdaemon) (Ping timeout: 268 seconds)
20:37:57 mikko joins (~mikko@user/mikko)
20:41:00 peterbecich joins (~Thunderbi@047-229-123-186.res.spectrum.com)
20:45:15 × peterbecich quits (~Thunderbi@047-229-123-186.res.spectrum.com) (Ping timeout: 256 seconds)
20:47:24 × ChaiTRex quits (~ChaiTRex@user/chaitrex) (Remote host closed the connection)
20:47:55 ChaiTRex joins (~ChaiTRex@user/chaitrex)
20:54:42 wootehfoot joins (~wootehfoo@user/wootehfoot)
20:54:46 eggplantade joins (~Eggplanta@2600:1700:38c5:d800:c1cf:e14:7781:abcb)
21:01:53 tri joins (~tri@ool-18bbef1a.static.optonline.net)
21:06:55 × tri quits (~tri@ool-18bbef1a.static.optonline.net) (Ping timeout: 276 seconds)
21:10:02 × _ht quits (~Thunderbi@28-52-174-82.ftth.glasoperator.nl) (Remote host closed the connection)
21:15:17 × dsrt^ quits (~cd@c-98-242-74-66.hsd1.ga.comcast.net) (Ping timeout: 256 seconds)
21:24:08 jmdaemon joins (~jmdaemon@user/jmdaemon)
21:36:36 × takuan quits (~takuan@178-116-218-225.access.telenet.be) (Remote host closed the connection)
21:37:48 × TonyStone quits (~TonyStone@074-076-057-186.res.spectrum.com) (Quit: Leaving)
21:37:56 dsrt^ joins (~cd@c-98-242-74-66.hsd1.ga.comcast.net)
21:41:36 tri joins (~tri@ool-18bbef1a.static.optonline.net)
21:49:23 × chexum quits (~quassel@gateway/tor-sasl/chexum) (Remote host closed the connection)
21:51:19 chexum joins (~quassel@gateway/tor-sasl/chexum)
21:56:37 × irrgit_ quits (~irrgit@146.70.27.218) (Quit: Leaving)
21:57:34 × innegatives_ quits (sid621315@id-621315.tinside.irccloud.com) (Quit: Connection closed for inactivity)
22:00:04 EvanR_ is now known as EvanR
22:06:35 × noumenon quits (~noumenon@113.51-175-156.customer.lyse.net) (Quit: Leaving)
22:10:33 × trev quits (~trev@user/trev) (Quit: trev)
22:20:57 × coot quits (~coot@89-69-206-216.dynamic.chello.pl) (Quit: coot)
22:24:04 Guest86 joins (~Guest86@2603-6081-7b00-a800-0000-0000-0000-0002.res6.spectrum.com)
22:25:48 × mei quits (~mei@user/mei) (Remote host closed the connection)
22:27:41 × Guest86 quits (~Guest86@2603-6081-7b00-a800-0000-0000-0000-0002.res6.spectrum.com) (Client Quit)
22:28:12 mei joins (~mei@user/mei)
22:33:22 × wootehfoot quits (~wootehfoo@user/wootehfoot) (Read error: Connection reset by peer)
22:38:37 julie_pilgrim joins (~julie_pil@user/julie-pilgrim/x-1240752)
22:41:12 adanwan joins (~adanwan@gateway/tor-sasl/adanwan)
22:43:58 peterbecich joins (~Thunderbi@047-229-123-186.res.spectrum.com)
22:47:26 innegatives_ joins (uid621315@id-621315.tinside.irccloud.com)
22:49:44 × a51 quits (a51@gateway/vpn/protonvpn/a51) (Quit: WeeChat 4.2.0)
22:51:38 × adanwan quits (~adanwan@gateway/tor-sasl/adanwan) (Ping timeout: 255 seconds)
22:51:59 adanwan joins (~adanwan@gateway/tor-sasl/adanwan)
22:53:22 × peterbecich quits (~Thunderbi@047-229-123-186.res.spectrum.com) (Ping timeout: 264 seconds)
23:00:34 × adanwan quits (~adanwan@gateway/tor-sasl/adanwan) (Remote host closed the connection)
23:01:54 mima joins (~mmh@aftr-62-216-211-209.dynamic.mnet-online.de)
23:05:20 adanwan joins (~adanwan@gateway/tor-sasl/adanwan)
23:08:00 × tri quits (~tri@ool-18bbef1a.static.optonline.net) (Remote host closed the connection)
23:09:26 × dsrt^ quits (~cd@c-98-242-74-66.hsd1.ga.comcast.net) (Ping timeout: 252 seconds)
23:15:15 × adanwan quits (~adanwan@gateway/tor-sasl/adanwan) (Remote host closed the connection)
23:15:39 wlhn joins (~wenzel@dl5rzs8hfxtxc2s075t2y-3.rev.dnainternet.fi)
23:15:51 adanwan joins (~adanwan@gateway/tor-sasl/adanwan)
23:22:52 × tromp quits (~textual@92-110-219-57.cable.dynamic.v4.ziggo.nl) (Quit: My iMac has gone to sleep. ZZZzzz…)
23:23:57 tri joins (~tri@ool-18bbef1a.static.optonline.net)
23:26:45 dsrt^ joins (~cd@c-98-242-74-66.hsd1.ga.comcast.net)
23:26:56 peterbecich joins (~Thunderbi@047-229-123-186.res.spectrum.com)
23:27:56 × acidjnk_new quits (~acidjnk@p200300d6e737e7109cde0c014502dbcd.dip0.t-ipconnect.de) (Ping timeout: 256 seconds)
23:28:41 × tri quits (~tri@ool-18bbef1a.static.optonline.net) (Ping timeout: 252 seconds)
23:29:44 × michalz quits (~michalz@185.246.207.197) (Quit: ZNC 1.8.2 - https://znc.in)
23:32:23 × julie_pilgrim quits (~julie_pil@user/julie-pilgrim/x-1240752) (Remote host closed the connection)
23:33:38 × peterbecich quits (~Thunderbi@047-229-123-186.res.spectrum.com) (Ping timeout: 252 seconds)
23:42:01 × Adran quits (~adran@botters/adran) (Quit: Este é o fim.)
23:42:22 × mei quits (~mei@user/mei) (Remote host closed the connection)
23:44:45 mei joins (~mei@user/mei)
23:45:19 Square2 joins (~Square4@user/square)
23:48:37 × xff0x quits (~xff0x@ai085147.d.east.v6connect.net) (Ping timeout: 246 seconds)
23:48:57 × Square quits (~Square@user/square) (Ping timeout: 260 seconds)
23:49:06 Square2 is now known as Square
23:49:41 × azimut quits (~azimut@gateway/tor-sasl/azimut) (Ping timeout: 255 seconds)
23:49:59 azimut_ joins (~azimut@gateway/tor-sasl/azimut)
23:50:42 xff0x joins (~xff0x@178.255.149.135)
23:59:49 × xff0x quits (~xff0x@178.255.149.135) (Ping timeout: 246 seconds)

All times are in UTC on 2024-01-25.