Newest at the top
2025-03-28 05:55:35 +0100 | <jackdk> | thirdofmay18081814goya: Hughes does this for a game tree by generating the infinite tree and then pruning it to N levels, which works because laziness |
2025-03-28 05:55:23 +0100 | xff0x | (~xff0x@fsb6a9491c.tkyc517.ap.nuro.jp) (Ping timeout: 245 seconds) |
2025-03-28 05:55:18 +0100 | merijn | (~merijn@host-vr.cgnat-g.v4.dfn.nl) merijn |
2025-03-28 05:54:24 +0100 | ChanServ | +v haskellbridge |
2025-03-28 05:54:24 +0100 | haskellbridge | (~hackager@syn-024-093-192-219.res.spectrum.com) hackager |
2025-03-28 05:54:07 +0100 | Digit | (~user@user/digit) (Ping timeout: 252 seconds) |
2025-03-28 05:53:05 +0100 | Digitteknohippie | (~user@user/digit) Digit |
2025-03-28 05:51:33 +0100 | haskellbridge | (~hackager@syn-024-093-192-219.res.spectrum.com) (Ping timeout: 252 seconds) |
2025-03-28 05:44:37 +0100 | merijn | (~merijn@host-vr.cgnat-g.v4.dfn.nl) (Ping timeout: 248 seconds) |
2025-03-28 05:40:52 +0100 | Digitteknohippie | Digit |
2025-03-28 05:39:30 +0100 | merijn | (~merijn@host-vr.cgnat-g.v4.dfn.nl) merijn |
2025-03-28 05:38:54 +0100 | peterbecich | (~Thunderbi@syn-047-229-123-186.res.spectrum.com) peterbecich |
2025-03-28 05:36:07 +0100 | bitdex | (~bitdex@gateway/tor-sasl/bitdex) bitdex |
2025-03-28 05:36:06 +0100 | LainExperiments | (~LainExper@user/LainExperiments) (Ping timeout: 240 seconds) |
2025-03-28 05:34:47 +0100 | LainExperiments4 | (~LainExper@user/LainExperiments) LainExperiments |
2025-03-28 05:33:14 +0100 | aetepe | (~aetepe@188.119.58.34) (Ping timeout: 260 seconds) |
2025-03-28 05:31:30 +0100 | <haskellbridge> | <thirdofmay18081814goya> i'll check out the partiality monad, thanks! |
2025-03-28 05:31:23 +0100 | aforemny | (~aforemny@i577B139C.versanet.de) aforemny |
2025-03-28 05:30:48 +0100 | aforemny_ | (~aforemny@2001:9e8:6cdb:6d00:dc2e:87c9:d5a9:a75) (Ping timeout: 245 seconds) |
2025-03-28 05:30:10 +0100 | <EvanR> | well, now it's nearly the partiality monad |
2025-03-28 05:29:55 +0100 | LainExperiments | (~LainExper@user/LainExperiments) LainExperiments |
2025-03-28 05:29:53 +0100 | <Leary> | `fixMaxDepth :: Int -> (a -> Either a b) -> Maybe b`? |
2025-03-28 05:29:24 +0100 | <Leary> | Err, maybe not. |
2025-03-28 05:29:04 +0100 | <Leary> | I would write `fixMaxDepth :: Int -> (a -> a) -> Maybe a`. |
2025-03-28 05:28:46 +0100 | <EvanR> | this isn't doesn't "monkey patch" the way you want, but the partiality monad will let you decide elsewhere how long a recursive algorithm gets to terminate |
2025-03-28 05:28:21 +0100 | merijn | (~merijn@host-vr.cgnat-g.v4.dfn.nl) (Ping timeout: 246 seconds) |
2025-03-28 05:28:06 +0100 | aetepe | (~aetepe@188.119.58.34) aetepe |
2025-03-28 05:27:26 +0100 | <haskellbridge> | <thirdofmay18081814goya> trivially a catamorphism whose algebra returns a pair can do this, any other ideas? |
2025-03-28 05:26:36 +0100 | <haskellbridge> | <thirdofmay18081814goya> so that you can also use it without enforcing the max recursive call |
2025-03-28 05:26:19 +0100 | <haskellbridge> | <thirdofmay18081814goya> the idea would be to have a recursive function whose specification is separate from the requirement that it terminates after n calls |
2025-03-28 05:24:57 +0100 | <haskellbridge> | <thirdofmay18081814goya> i guess necessarily some method with recursion-schemes right |
2025-03-28 05:24:38 +0100 | <haskellbridge> | <thirdofmay18081814goya> does anyone know if there's a way to embed a max number of recursive calls in an arbitrary recursive function? |
2025-03-28 05:23:43 +0100 | merijn | (~merijn@host-vr.cgnat-g.v4.dfn.nl) merijn |
2025-03-28 05:23:23 +0100 | michalz | (~michalz@185.246.207.205) |
2025-03-28 05:19:49 +0100 | <EvanR> | Ur/Web |
2025-03-28 05:19:40 +0100 | <EvanR> | it's not linearly typed but it does do the thing everyone thinks linear types are for http://www.impredicative.com/ur/ |
2025-03-28 05:18:36 +0100 | LainExperiments3 | (LainExperi@user/LainExperiments) (Quit: Client closed) |
2025-03-28 05:17:03 +0100 | aetepe | (~aetepe@188.119.58.34) (Ping timeout: 245 seconds) |
2025-03-28 05:16:54 +0100 | <haskellbridge> | <Liamzee> by bodigrim |
2025-03-28 05:16:50 +0100 | <haskellbridge> | <Liamzee> https://hackage.haskell.org/package/text-builder-linear |
2025-03-28 05:16:49 +0100 | <haskellbridge> | <Liamzee> fun recent linear types: |
2025-03-28 05:14:05 +0100 | <haskellbridge> | <Liamzee> but no one has built a linearly typed webserver and put it on hackage? |
2025-03-28 05:13:01 +0100 | merijn | (~merijn@host-vr.cgnat-g.v4.dfn.nl) (Ping timeout: 244 seconds) |
2025-03-28 05:12:21 +0100 | aetepe | (~aetepe@188.119.58.34) aetepe |
2025-03-28 05:10:43 +0100 | <Leary> | thirdofmay: Err, I guess that should have been `data Catch e m a where Catch :: m x -> (Either e x -> a) -> Catch e m a`, which probably clarifies the rest of what I said. |
2025-03-28 05:10:00 +0100 | <EvanR> | there is also a destination array thing in there |
2025-03-28 05:09:10 +0100 | <haskellbridge> | <Liamzee> oh, i never realized that linear base had dynamic vectors, only mutable ones |
2025-03-28 05:07:56 +0100 | merijn | (~merijn@host-vr.cgnat-g.v4.dfn.nl) merijn |
2025-03-28 05:06:28 +0100 | <jackdk> | https://hackage.haskell.org/package/linear-base-0.4.0/docs/Control-Functor-Linear.html#g:4 Not the module I would've expected |
2025-03-28 05:03:00 +0100 | <Axman6> | Is there a linear state monad or something that can make passing around linear values a little nicer? |