Newest at the top
2025-03-28 21:39:21 +0100 | <haskellbridge> | <Liamzee> i mean linear types imply that a value is consumed, meaning that its allocation can be cleared |
2025-03-28 21:37:30 +0100 | <EvanR> | free what |
2025-03-28 21:36:31 +0100 | <EvanR> | what do you mean |
2025-03-28 21:35:58 +0100 | <haskellbridge> | <Liamzee> EvanR: but while doing the computation, you could potentially do free after use, but i'm not sure if the allocator works that way |
2025-03-28 21:32:56 +0100 | <haskellbridge> | <Liamzee> https://hackage.haskell.org/package/linear-base-0.4.0/docs/src/Data.Unrestricted.Linear.Internal.U… |
2025-03-28 21:32:13 +0100 | weary-traveler | (~user@user/user363627) user363627 |
2025-03-28 21:32:04 +0100 | <haskellbridge> | <Liamzee> it's up to 0.4.0, and maybe 0.5.0 :) |
2025-03-28 21:31:56 +0100 | <haskellbridge> | <Liamzee> oh, i realize the problem now |
2025-03-28 21:31:51 +0100 | weary-traveler | (~user@user/user363627) (Quit: Konversation terminated!) |
2025-03-28 21:31:42 +0100 | <haskellbridge> | <Liamzee> https://hackage.haskell.org/package/linear-base-0.1.0/docs/Control-Functor-Linear.html |
2025-03-28 21:31:16 +0100 | <EvanR> | disabling of the GC when using linear haskell doesn't sound like a thing |
2025-03-28 21:30:45 +0100 | <EvanR> | which seems to be plainly false |
2025-03-28 21:30:34 +0100 | <EvanR> | I'm concerned about your premise that Ur is not a moand |
2025-03-28 21:28:24 +0100 | <haskellbridge> | <Liamzee> "Rust as a monadic eDSL" ;) |
2025-03-28 21:28:14 +0100 | <haskellbridge> | <Liamzee> having Ur being a monad would be useful for LInear Haskell, so it's interesting to ask why it's not |
2025-03-28 21:27:49 +0100 | <haskellbridge> | <Liamzee> but we talked about the possibility of Linear Haskell simply being a concern for library writers, but you called LH for better memory usage or a disabled GC |
2025-03-28 21:27:30 +0100 | <haskellbridge> | <Liamzee> i'm not sure what the technical term is, i spoke to a friend who did stuff with Linear Haskell |
2025-03-28 21:25:55 +0100 | polyphem | (~rod@p3ee3f49b.dip0.t-ipconnect.de) (Ping timeout: 268 seconds) |
2025-03-28 21:21:26 +0100 | <EvanR> | Ur a >>= f = f a |
2025-03-28 21:21:16 +0100 | <EvanR> | instance Prelude.Monad Ur where |
2025-03-28 21:18:13 +0100 | <haskellbridge> | <Liamzee> Ur isn't a monad? |
2025-03-28 21:18:12 +0100 | <haskellbridge> | <Liamzee> hmmm, that's interesting |
2025-03-28 21:13:18 +0100 | CiaoSen | (~Jura@2a02:8071:64e1:da0:5a47:caff:fe78:33db) (Ping timeout: 272 seconds) |
2025-03-28 21:12:48 +0100 | zungi | (~tory@user/andrewchawk) (Ping timeout: 264 seconds) |
2025-03-28 21:11:29 +0100 | dhil | (~dhil@2a0c:b381:52e:3600:cbb4:807:319f:c7af) (Ping timeout: 248 seconds) |
2025-03-28 21:10:48 +0100 | aetepe | (~aetepe@188.119.58.34) (Remote host closed the connection) |
2025-03-28 21:10:14 +0100 | j1n37 | (~j1n37@user/j1n37) (Ping timeout: 260 seconds) |
2025-03-28 21:09:29 +0100 | j1n37- | (~j1n37@user/j1n37) j1n37 |
2025-03-28 21:08:55 +0100 | machinedgod | (~machinedg@d108-173-18-100.abhsia.telus.net) machinedgod |
2025-03-28 21:07:38 +0100 | slack1256 | (~slack1256@2803:c600:5111:9ab8:84f4:ae24:2907:edab) (Remote host closed the connection) |
2025-03-28 21:00:36 +0100 | AlexZenon | (~alzenon@178.34.150.194) |
2025-03-28 20:59:21 +0100 | CiaoSen | (~Jura@2a02:8071:64e1:da0:5a47:caff:fe78:33db) CiaoSen |
2025-03-28 20:58:10 +0100 | <absence> | tomsmeding: So I've heard, it just feels extra weird when it's inside a functor. But I guess there's no other way? |
2025-03-28 20:57:57 +0100 | AlexZenon | (~alzenon@178.34.150.194) (Ping timeout: 252 seconds) |
2025-03-28 20:57:17 +0100 | <[exa]> | ok thanks guys for consultation again! :) |
2025-03-28 20:57:01 +0100 | <tomsmeding> | the standard fix for simplified subsumption breaking your code is indeed eta-expansion |
2025-03-28 20:56:52 +0100 | Square | (~Square@user/square) (Ping timeout: 252 seconds) |
2025-03-28 20:56:52 +0100 | Square2 | (~Square@user/square) (Ping timeout: 252 seconds) |
2025-03-28 20:56:50 +0100 | <[exa]> | merijn: yeah I think that will be it |
2025-03-28 20:56:41 +0100 | ljdarj1 | ljdarj |
2025-03-28 20:56:41 +0100 | ljdarj | (~Thunderbi@user/ljdarj) (Ping timeout: 265 seconds) |
2025-03-28 20:56:39 +0100 | <absence> | What's the best way to deal with forall mismatches after simplified subsumption? I just made some code compile by writing "fmap (\f x -> f x)", which looks a bit silly, and isn't very intuitive... |
2025-03-28 20:56:27 +0100 | <[exa]> | ok this actually at least proves that my idea with writer is off |
2025-03-28 20:56:21 +0100 | <merijn> | [exa]: conduit works really well with the various parsecs where you just write a parser for one record and emit as you finish them |
2025-03-28 20:56:11 +0100 | <[exa]> | tomsmeding: good point, it should hold until it's clear that it won't backtrack |
2025-03-28 20:55:54 +0100 | <merijn> | [exa]: You probably want streaming libraries then, yeah |
2025-03-28 20:55:41 +0100 | <tomsmeding> | [exa]: what if the Parser backtracks? Do you keep your writer state? (Flashback to a few days ago) |
2025-03-28 20:55:20 +0100 | <[exa]> | sounds kinda like I want the actual streamy libraries, right. |
2025-03-28 20:55:02 +0100 | <[exa]> | yeah this is for something like RDF turtle, I was thinking about emitting the triples directly without structure. |
2025-03-28 20:54:38 +0100 | <tomsmeding> | wanting to output the parsed values via `tell` sounds like you want a non-Parser that optionally uses Parser inside to parse little chunks |