2025/12/16

Newest at the top

2025-12-16 11:09:19 +0100merijn(~merijn@77.242.116.146) (Ping timeout: 240 seconds)
2025-12-16 11:09:18 +0100humasect_(~humasect@dyn-192-249-132-90.nexicom.net) (Ping timeout: 260 seconds)
2025-12-16 11:06:28 +0100mangoiv(~mangoiv@user/mangoiv) mangoiv
2025-12-16 11:04:52 +0100merijn(~merijn@77.242.116.146) merijn
2025-12-16 11:04:41 +0100humasect_(~humasect@dyn-192-249-132-90.nexicom.net) humasect
2025-12-16 11:00:10 +0100poscat(~poscat@user/poscat) poscat
2025-12-16 10:58:07 +0100fp1(~Thunderbi@wireless-86-50-140-165.open.aalto.fi) (Ping timeout: 240 seconds)
2025-12-16 10:58:05 +0100fp(~Thunderbi@130.233.70.102) (Ping timeout: 250 seconds)
2025-12-16 10:57:49 +0100 <dminuoso> This.
2025-12-16 10:57:47 +0100 <dminuoso> `bindEither :: (Enum a, Selective f) => f (Either a b) -> (a -> f b) -> f b`
2025-12-16 10:57:08 +0100 <dminuoso> Ah no, not quite.
2025-12-16 10:57:03 +0100poscat0x04(~poscat@user/poscat) (Remote host closed the connection)
2025-12-16 10:56:30 +0100chromoblob✌️ ski
2025-12-16 10:56:30 +0100 <dminuoso> I think you should be able to write `>>= :: (Enum a, Selective f) => f a -> (a -> f b) -> f b`
2025-12-16 10:55:30 +0100tzh(~tzh@c-76-115-131-146.hsd1.or.comcast.net) (Quit: zzz)
2025-12-16 10:55:07 +0100 <dminuoso> This should be a fun excercise, let me try this.
2025-12-16 10:54:07 +0100fp1(~Thunderbi@wireless-86-50-140-165.open.aalto.fi) fp
2025-12-16 10:53:41 +0100 <gentauro> makes sense
2025-12-16 10:53:38 +0100fp(~Thunderbi@130.233.70.102) fp
2025-12-16 10:53:20 +0100 <dminuoso> But it would result in downright silly performance.
2025-12-16 10:53:09 +0100 <dminuoso> gentauro: I think you could do a kind of recursion trick parsing it with `select` perhaps.
2025-12-16 10:52:59 +0100 <gentauro> ex: list of strings
2025-12-16 10:52:30 +0100 <gentauro> if you parse, lets say encoded bytes over the wire, where the length is encoded in varInt/zigZag/…, you MUST use `>>=` to parse length to ensure correct boundries with upcoming bytes?
2025-12-16 10:51:49 +0100merijn(~merijn@77.242.116.146) (Ping timeout: 260 seconds)
2025-12-16 10:50:45 +0100 <dminuoso> I'll leave the decision up to you whether you should do that. :-)
2025-12-16 10:50:26 +0100 <dminuoso> [exa]: *If* your Int is bounded, in theory you could also describe it with Selective of course if you enumerate every possible number in your program.
2025-12-16 10:48:51 +0100 <dminuoso> This describes precisely an effect that depends on the result of a previous effect.
2025-12-16 10:48:17 +0100 <yahb2> (>>=) :: Monad m => m a -> (a -> m b) -> m b
2025-12-16 10:48:17 +0100 <dminuoso> % :t (>>=)
2025-12-16 10:48:12 +0100 <yahb2> <interactive>:1:1: error: [GHC-88464] ; Variable not in scope: >>=> ; Suggested fix: Perhaps use ‘>>=’ (imported from Prelude)
2025-12-16 10:48:12 +0100 <dminuoso> % :t (>>=>)
2025-12-16 10:47:49 +0100 <dminuoso> [exa]: No, that's precisely the upgrade you get from Monad over Applicative or Selective.
2025-12-16 10:46:19 +0100humasect(~humasect@dyn-192-249-132-90.nexicom.net)
2025-12-16 10:45:56 +0100trickard_trickard
2025-12-16 10:45:05 +0100 <gentauro> but truth to be told, I'm building from GIT (scratch), so I'm not really impacted by that issue. (they have made a simplex-chat-desktop heavy on the UI, but not the simplex-chat-cli, which is what I'm trying to do, but, if I can't build locally, pretty diff to make a pkg)
2025-12-16 10:44:54 +0100 <dminuoso> s/AMPD/AMP/
2025-12-16 10:44:49 +0100 <dminuoso> gentauro: I favour `pure` only, but I learned Haskell post AMPD.
2025-12-16 10:42:22 +0100 <gentauro> tomsmeding: jep xD
2025-12-16 10:34:33 +0100fp(~Thunderbi@2001:708:20:1406::1370) (Ping timeout: 256 seconds)
2025-12-16 10:30:48 +0100kuribas(~user@2a02:1808:41:7270:9839:ee7c:6379:63a8) (Ping timeout: 260 seconds)
2025-12-16 10:28:36 +0100sp1ff(~user@2601:1c2:4c00:6820::c593) sp1ff
2025-12-16 10:24:01 +0100sp1ff(~user@2601:1c2:4c00:6820::c593) (Ping timeout: 246 seconds)
2025-12-16 10:18:40 +0100Googulator18Googulator
2025-12-16 10:18:18 +0100Sgeo(~Sgeo@user/sgeo) (Read error: Connection reset by peer)
2025-12-16 10:16:28 +0100chele(~chele@user/chele) chele
2025-12-16 10:16:14 +0100fp1fp
2025-12-16 10:16:14 +0100fp(~Thunderbi@dhcp-86-128.eduroam.aalto.fi) (Ping timeout: 260 seconds)
2025-12-16 10:15:43 +0100Googulator18(~Googulato@2a01-036d-0106-01cb-3c18-a4bd-1bda-7c8b.pool6.digikabel.hu)
2025-12-16 10:15:42 +0100Googulator(~Googulato@2a01-036d-0106-01cb-3c18-a4bd-1bda-7c8b.pool6.digikabel.hu) (Quit: Client closed)
2025-12-16 10:15:38 +0100fp1(~Thunderbi@2001:708:20:1406::1370) fp