2026/04/21

Newest at the top

2026-04-21 19:44:46 +0000polykernel(~polykerne@user/polykernel) (Ping timeout: 244 seconds)
2026-04-21 19:42:07 +0000Googulator(~Googulato@84-236-65-56.pool.digikabel.hu)
2026-04-21 19:41:49 +0000Googulator(~Googulato@84-236-65-56.pool.digikabel.hu) (Quit: Client closed)
2026-04-21 19:40:44 +0000merijn(~merijn@host-cl.cgnat-g.v4.dfn.nl) (Ping timeout: 252 seconds)
2026-04-21 19:37:39 +0000 <lambdabot> Monad m => (t -> m (Maybe b)) -> (t -> m (Maybe b)) -> (t -> m b) -> t -> m b
2026-04-21 19:37:38 +0000 <Leary> :t let (|||) = liftA2 $ \x y -> MaybeT x <|> MaybeT y; (||>) = liftA2 $ \x y -> runMaybeT x >>= maybe y pure in \f g h x -> (f ||| g ||> h) x
2026-04-21 19:36:25 +0000gmg(~user@user/gehmehgeh) gehmehgeh
2026-04-21 19:36:00 +0000merijn(~merijn@host-cl.cgnat-g.v4.dfn.nl) merijn
2026-04-21 19:33:49 +0000Fijxu(~Fijxu@user/fijxu) fijxu
2026-04-21 19:33:33 +0000Fijxu(~Fijxu@user/fijxu) (Quit: XD!!)
2026-04-21 19:26:27 +0000lisbeths(uid135845@id-135845.lymington.irccloud.com) lisbeths
2026-04-21 19:25:50 +0000 <Leary> dutchie: This won't run `g` if it doesn't have to, though I guess it will still run `h`. Meh.
2026-04-21 19:25:08 +0000merijn(~merijn@host-cl.cgnat-g.v4.dfn.nl) (Ping timeout: 256 seconds)
2026-04-21 19:24:41 +0000 <lambdabot> Monad f => (t -> f (Maybe c)) -> (t -> f (Maybe c)) -> (t -> f c) -> t -> f c
2026-04-21 19:24:40 +0000 <Leary> :t let (|>) = flip fromMaybe; (|||) = liftA2 $ \x y -> runMaybeT (MaybeT x <|> MaybeT y); (||>) = liftA2 (liftA2 (|>)) in \f g h x -> (f ||| g ||> h) x
2026-04-21 19:22:27 +0000misterfish(~misterfis@84.53.85.146) (Ping timeout: 246 seconds)
2026-04-21 19:22:18 +0000gmg(~user@user/gehmehgeh) (Quit: Leaving)
2026-04-21 19:20:32 +0000weary-traveler(~user@user/user363627) (Remote host closed the connection)
2026-04-21 19:18:05 +0000gehmehgeh(~user@user/gehmehgeh) (Ping timeout: 265 seconds)
2026-04-21 19:18:01 +0000bggd__(~bgg@2a01:e0a:fd5:f510:e4aa:967c:baaa:6501) (Remote host closed the connection)
2026-04-21 19:17:58 +0000merijn(~merijn@host-cl.cgnat-g.v4.dfn.nl) merijn
2026-04-21 19:15:56 +0000target_i(~target_i@user/target-i/x-6023099) target_i
2026-04-21 19:15:42 +0000gmg(~user@user/gehmehgeh) gehmehgeh
2026-04-21 19:15:22 +0000gmg(~user@user/gehmehgeh) (Remote host closed the connection)
2026-04-21 19:13:05 +0000misterfish(~misterfis@84.53.85.146) misterfish
2026-04-21 19:12:52 +0000 <haskellbridge> <ijouw> The bridge is doing weird things because someone named m exists...
2026-04-21 19:12:23 +0000gehmehgeh(~user@user/gehmehgeh) gehmehgeh
2026-04-21 19:11:28 +0000 <haskellbridge> <ijouw> Oh yes, I thought the Maybe was the outside m
2026-04-21 19:10:33 +0000 <dutchie> but that prints hi and there for me before getting Just 'c'
2026-04-21 19:10:16 +0000 <dutchie> boo
2026-04-21 19:10:11 +0000 <lambdabot> Variable not in scope: ($>) :: IO () -> Maybe Char -> f1 (f2 a)Variable not ...
2026-04-21 19:10:09 +0000 <dutchie> > asum <$> sequence [putStrLn "hi" $> Just 'c', putStrLn "there" $> Just 'a']
2026-04-21 19:09:02 +0000 <haskellbridge> <ijouw> In my understanding that should not matter for lists.
2026-04-21 19:08:05 +0000kupi(uid212005@id-212005.hampstead.irccloud.com) kupi
2026-04-21 19:06:24 +0000 <dutchie> hmm, is sequence running all the actions even when there is a Just though
2026-04-21 19:00:20 +0000karenw(~karenw@user/karenw) (Ping timeout: 244 seconds)
2026-04-21 18:59:57 +0000 <dutchie> I often end up writing `maybe action pure` and feeling like I'm missing something there as well
2026-04-21 18:58:45 +0000 <dutchie> `fromMaybe (h x) . asum =<< sequence [f x, g x]` spreads the xs around enough that it's not offending me too much
2026-04-21 18:58:05 +0000 <dutchie> so `f, g :: Foo -> m (Maybe Bar)`
2026-04-21 18:57:41 +0000 <dutchie> I have now further complicated matters by realising that f and g are actually in my effect monad
2026-04-21 18:57:19 +0000polykernel(~polykerne@user/polykernel) polykernel
2026-04-21 18:57:19 +0000 <dutchie> ah right of course
2026-04-21 18:53:06 +0000 <Leary> dutchie: The instance you're thinking of does exist, but under `ReaderT`.
2026-04-21 18:52:54 +0000 <lambdabot> (t1 -> Maybe t2) -> (t1 -> Maybe t2) -> (t1 -> t2) -> t1 -> t2
2026-04-21 18:52:53 +0000 <Leary> :t let (|>) = flip fromMaybe; (<<|>>) = liftA2 (<|>); (|>>) = liftA2 (|>) in \f g h x -> (f <<|>> g |>> h) x
2026-04-21 18:52:00 +0000Googulator(~Googulato@84-236-65-56.pool.digikabel.hu)
2026-04-21 18:51:47 +0000Googulator(~Googulato@84-236-65-56.pool.digikabel.hu) (Quit: Client closed)
2026-04-21 18:50:23 +0000chele(~chele@user/chele) (Remote host closed the connection)
2026-04-21 18:48:58 +0000polykernel(~polykerne@user/polykernel) (Ping timeout: 244 seconds)
2026-04-21 18:41:23 +0000Googulator(~Googulato@84-236-65-56.pool.digikabel.hu)