2025/11/14

Newest at the top

2025-11-14 17:01:14 +0100 <comerijn> What geekosaur said :p
2025-11-14 17:01:01 +0100 <geekosaur> I see the point (better composition of effects ability to e.g. have two state effects and select by type) but I still am concerned that some effects aren't algebraic and pretending they are will just caause possibly subtle or corner-case breakage
2025-11-14 17:01:00 +0100 <kuribas> if possible just "myFunction :: UTCTime -> ... -> Result"
2025-11-14 17:00:18 +0100 <kuribas> I could do "myFunction :: Monad m => (m UTCTime) -> ... -> m Result", I am now abstracted over currentTime.
2025-11-14 16:58:54 +0100 <kuribas> I still don't see the point of algebraic effects.
2025-11-14 16:58:20 +0100 <dolio> mtl is like algebraic effects.
2025-11-14 16:58:09 +0100 <[exa]> lucabtz: you might like heftia
2025-11-14 16:57:54 +0100 <[exa]> the only thing more vast than the number of effect libraries in hackage is their accumulated time since last upload
2025-11-14 16:57:15 +0100 <kuribas> lol
2025-11-14 16:54:29 +0100 <lucabtz> cool
2025-11-14 16:54:23 +0100 <comerijn> lucabtz: Only about a gazillion libraries
2025-11-14 16:53:45 +0100 <lucabtz> is there a way to have something similar to algebraic effects in haskell?
2025-11-14 16:53:31 +0100 <dolio> However, I think the vast majority of the time, people actually do define the 'deep' handler which does correspond to shift/reset.
2025-11-14 16:52:54 +0100 <dolio> jreicher: In unison, we have a sort of algebraic effects that shift/reset is not enough to (easily) support. The difference is that you can have 'shallow' handlers that don't handle all the occurrences of an effect in the scope they're installed onto. That sort of corresponds to a single `reset` not guarding all the `shift` occurrences in its scope....
2025-11-14 16:50:49 +0100megeve(sid727922@id-727922.lymington.irccloud.com) megeve
2025-11-14 16:48:38 +0100L29Ah(~L29Ah@wikipedia/L29Ah) ()
2025-11-14 16:48:18 +0100ubert(~Thunderbi@178.165.175.248.wireless.dyn.drei.com) (Ping timeout: 244 seconds)
2025-11-14 16:37:57 +0100pterobul(~Thunderbi@user/pterobul) pterobul
2025-11-14 16:37:57 +0100pterobul(~Thunderbi@S0106f8790a53b594.cg.shawcable.net) (Changing host)
2025-11-14 16:32:00 +0100weary-traveler(~user@user/user363627) (Remote host closed the connection)
2025-11-14 16:30:09 +0100spew(~spew@user/spew) spew
2025-11-14 16:29:36 +0100YoungFrog(~youngfrog@2a02:a03f:ca07:f900:5e58:dbf4:c0b:fbb3) youngfrog
2025-11-14 16:29:16 +0100YoungFrog(~youngfrog@2a02:a03f:ca07:f900:9f50:13f1:779b:4aa6) (Quit: ZNC 1.7.x-git-3-96481995 - https://znc.in)
2025-11-14 16:25:18 +0100spew(~spew@user/spew) (Client Quit)
2025-11-14 16:23:42 +0100Taneb(~username@host-95-251-57-201.retail.telecomitalia.it) (Ping timeout: 256 seconds)
2025-11-14 16:20:41 +0100spew(~spew@user/spew) spew
2025-11-14 16:15:18 +0100merijn(~merijn@host-vr.cgnat-g.v4.dfn.nl) (Read error: Connection reset by peer)
2025-11-14 16:15:12 +0100comerijn(~merijn@77.242.116.146) merijn
2025-11-14 16:13:50 +0100pterobul(~Thunderbi@S0106f8790a53b594.cg.shawcable.net)
2025-11-14 16:11:35 +0100pterobull(~Thunderbi@S0106f8790a53b594.cg.shawcable.net) (Quit: pterobull)
2025-11-14 16:10:56 +0100trickard_trickard
2025-11-14 16:07:46 +0100fp(~Thunderbi@wireless-86-50-140-45.open.aalto.fi) (Ping timeout: 246 seconds)
2025-11-14 16:07:07 +0100pterobull(~Thunderbi@S0106f8790a53b594.cg.shawcable.net)
2025-11-14 16:04:03 +0100CiaoSen(~Jura@2a02:8071:64e1:da0:5a47:caff:fe78:33db) (Ping timeout: 260 seconds)
2025-11-14 16:02:43 +0100acarrico1(~acarrico@pppoe-209-99-223-51.greenmountainaccess.net) (Ping timeout: 256 seconds)
2025-11-14 15:54:19 +0100pterobull1(~Thunderbi@S0106f8790a53b594.cg.shawcable.net) (Client Quit)
2025-11-14 15:52:49 +0100pterobull1(~Thunderbi@S0106f8790a53b594.cg.shawcable.net)
2025-11-14 15:49:48 +0100trickard_(~trickard@cpe-53-98-47-163.wireline.com.au)
2025-11-14 15:49:33 +0100trickard(~trickard@cpe-53-98-47-163.wireline.com.au) (Read error: Connection reset by peer)
2025-11-14 15:46:03 +0100machinedgod(~machinedg@d75-159-126-101.abhsia.telus.net) machinedgod
2025-11-14 15:45:39 +0100 <merijn> Well, I guess `Text -> Either e (a, Text)`, but you get the idea
2025-11-14 15:45:15 +0100 <merijn> bwe: If you think about `Parsec Void Text e a` being approximately `Text -> Either e a` it's fairly self-explanatory why Eq does not exist.
2025-11-14 15:40:17 +0100 <merijn> There we go
2025-11-14 15:40:14 +0100 <lambdabot> seuss.html>
2025-11-14 15:40:14 +0100 <lambdabot> Dr._Seuss says: `type Parser a = String -> [(a,String)]' -- "A Parser for Things / is a function from Strings / to Lists of Pairs / of Things and Strings!" -- <https://willamette.edu/~fruehr/haskell/
2025-11-14 15:40:14 +0100 <merijn> @quote parser.for.things
2025-11-14 15:38:24 +0100 <merijn> lambdabot, quit failing me
2025-11-14 15:38:19 +0100 <merijn> aww
2025-11-14 15:38:18 +0100 <lambdabot> No quotes match. Maybe you made a typo?
2025-11-14 15:38:17 +0100 <merijn> @quote string.to.things