2025/11/24

Newest at the top

2025-11-24 17:19:23 +0100hakutaku(~textual@chen.yukari.eu.org) (Client Quit)
2025-11-24 17:18:45 +0100dolio(~dolio@130.44.140.168) (Quit: ZNC 1.10.1 - https://znc.in)
2025-11-24 17:18:39 +0100gehmehgehgmg
2025-11-24 17:18:00 +0100hakutaku(~textual@chen.yukari.eu.org)
2025-11-24 17:16:32 +0100hakutaku(~textual@chen.yukari.eu.org) (Quit: My MacBook has gone to sleep. ZZZzzz…)
2025-11-24 17:16:26 +0100cattieskitties
2025-11-24 17:14:06 +0100fp(~Thunderbi@2001:708:20:1406::1370) (Ping timeout: 252 seconds)
2025-11-24 17:10:47 +0100Googulator40(~Googulato@2a01-036d-0106-01f1-f56c-45b8-e3c8-fdbd.pool6.digikabel.hu)
2025-11-24 17:10:42 +0100Googulator(~Googulato@2a01-036d-0106-01f1-f56c-45b8-e3c8-fdbd.pool6.digikabel.hu) (Quit: Client closed)
2025-11-24 17:02:35 +0100humasect(~humasect@dyn-192-249-132-90.nexicom.net) (Ping timeout: 240 seconds)
2025-11-24 16:58:11 +0100humasect(~humasect@dyn-192-249-132-90.nexicom.net)
2025-11-24 16:56:47 +0100annamalai(~annamalai@157.32.136.68) annamalai
2025-11-24 16:56:27 +0100annamalai(~annamalai@157.32.136.68) (Read error: Connection reset by peer)
2025-11-24 16:56:04 +0100weary-traveler(~user@user/user363627) (Remote host closed the connection)
2025-11-24 16:55:06 +0100hakutaku(~textual@chen.yukari.eu.org)
2025-11-24 16:53:56 +0100infinity0(~infinity0@pwned.gg) infinity0
2025-11-24 16:48:37 +0100infinity0(~infinity0@pwned.gg) (Remote host closed the connection)
2025-11-24 16:37:38 +0100gmg(~user@user/gehmehgeh) (Ping timeout: 272 seconds)
2025-11-24 16:36:14 +0100gehmehgeh(~user@user/gehmehgeh) gehmehgeh
2025-11-24 16:32:17 +0100 <monochrom> Ah, that.
2025-11-24 16:31:58 +0100 <Leary> No, it collects elements related to the first following each break.
2025-11-24 16:31:30 +0100 <monochrom> I think it already does that.
2025-11-24 16:30:30 +0100 <Leary> One of the reasons for `*By` functions is because you don't always want to be restricted by the laws associated with `Eq`/`Ord`. Ideally `groupBy` would be rewritten to group /related chains/, then it would make perfect sense regardless of transitivity.
2025-11-24 16:30:26 +0100Frostillicus(~Frostilli@pool-71-174-119-69.bstnma.fios.verizon.net)
2025-11-24 16:30:10 +0100fp(~Thunderbi@2001:708:20:1406::1370) fp
2025-11-24 16:28:08 +0100 <kuribas> Even in idris Eq doesn't come with proofs...
2025-11-24 16:27:23 +0100 <monochrom> Nice.
2025-11-24 16:27:11 +0100 <kuribas> ah, that's groupWith...
2025-11-24 16:26:43 +0100Frostillicus(~Frostilli@pool-71-174-119-69.bstnma.fios.verizon.net) (Ping timeout: 246 seconds)
2025-11-24 16:26:28 +0100 <kuribas> I usually use groupBy ((==) `on` f) ...
2025-11-24 16:24:53 +0100 <monochrom> "But this is how groupBy should really have ended: Foldable f => (r :: a -> a -> Bool) -> (proof that r is really an equivalence relation) -> f a -> [NonEmpty a]" >:)
2025-11-24 16:24:05 +0100 <monochrom> "How groupBy Should Have Ended"
2025-11-24 16:21:57 +0100fp(~Thunderbi@2001:708:20:1406::1370) (Quit: fp)
2025-11-24 16:20:56 +0100 <monochrom> Since the input is any Foldable, you can still give it a normal list.
2025-11-24 16:20:44 +0100 <kuribas> right :)
2025-11-24 16:20:21 +0100 <monochrom> Data.List.Nonempty exports a groupBy :: Foldable f => (a -> a -> Bool) -> f a -> [NonEmpty a]
2025-11-24 16:13:48 +0100Frostillicus(~Frostilli@pool-71-174-119-69.bstnma.fios.verizon.net)
2025-11-24 16:11:38 +0100 <kuribas> Maybe a bit less heavy on dependencies.
2025-11-24 16:11:24 +0100 <kuribas> ah, that's basically NonEmpty...
2025-11-24 16:10:36 +0100 <kuribas> groupBy should have been forall a. (a -> a -> a) -> [a] -> [(a, [a])]
2025-11-24 16:10:31 +0100fp(~Thunderbi@2001:708:20:1406::1370) fp
2025-11-24 16:09:34 +0100gustrb(~gustrb@user/gustrb) gustrb
2025-11-24 16:08:55 +0100Frostillicus(~Frostilli@pool-71-174-119-69.bstnma.fios.verizon.net) (Ping timeout: 255 seconds)
2025-11-24 16:08:44 +0100gustrb(~gustrb@user/gustrb) (Read error: Connection reset by peer)
2025-11-24 16:06:14 +0100 <geekosaur> and is so core that pretty much everything in both core and contrib would have to be modified
2025-11-24 16:05:36 +0100 <geekosaur> well, there's also that the case where I personally run into this "correctly" should be solved in xmonad core… by breaking the API of a central structure that's been fixed since at least 0.2
2025-11-24 16:04:50 +0100CiaoSen(~Jura@2a02:8071:64e1:da0:5a47:caff:fe78:33db) (Ping timeout: 256 seconds)
2025-11-24 16:03:46 +0100 <kuribas> groupBy in idris uses List1
2025-11-24 16:03:34 +0100 <haskellbridge> <Morj> I find that NonEmpty is fine when you're inside the ecosystem that's more abstract over it's data types. A lot of functions take a list instead of a traversable. I find the pain slightly smaller with mono-traversable and everything that uses it
2025-11-24 16:02:44 +0100fp(~Thunderbi@130.233.70.108) (Read error: Connection reset by peer)