Newest at the top
| 2025-12-28 10:20:03 +0100 | merijn | (~merijn@host-cl.cgnat-g.v4.dfn.nl) merijn |
| 2025-12-28 10:10:06 +0100 | CiaoSen | (~Jura@2a02:8071:64e1:da0:5a47:caff:fe78:33db) (Ping timeout: 256 seconds) |
| 2025-12-28 10:08:53 +0100 | merijn | (~merijn@host-cl.cgnat-g.v4.dfn.nl) (Ping timeout: 244 seconds) |
| 2025-12-28 10:04:17 +0100 | merijn | (~merijn@host-cl.cgnat-g.v4.dfn.nl) merijn |
| 2025-12-28 10:03:44 +0100 | CiaoSen | (~Jura@2a02:8071:64e1:da0:5a47:caff:fe78:33db) CiaoSen |
| 2025-12-28 10:03:36 +0100 | califax | (~califax@user/califx) califx |
| 2025-12-28 10:02:39 +0100 | califax | (~califax@user/califx) (Remote host closed the connection) |
| 2025-12-28 09:57:38 +0100 | merijn | (~merijn@host-cl.cgnat-g.v4.dfn.nl) (Ping timeout: 256 seconds) |
| 2025-12-28 09:52:55 +0100 | <[exa]> | I'll think about it. :D |
| 2025-12-28 09:52:41 +0100 | <[exa]> | still that ain't gonna typecheck the functions there for Apply |
| 2025-12-28 09:52:32 +0100 | merijn | (~merijn@host-cl.cgnat-g.v4.dfn.nl) merijn |
| 2025-12-28 09:52:14 +0100 | <hololeap> | there's some in the monoidal-containers package if you mean making (<>) = Map.unionWith (<>) |
| 2025-12-28 09:50:49 +0100 | <[exa]> | hololeap: kinda wondering if there could be a monoid adaptor for this case, like we have with Sum... could be Keyed or so |
| 2025-12-28 09:41:24 +0100 | merijn | (~merijn@host-cl.cgnat-g.v4.dfn.nl) (Ping timeout: 244 seconds) |
| 2025-12-28 09:37:04 +0100 | merijn | (~merijn@host-cl.cgnat-g.v4.dfn.nl) merijn |
| 2025-12-28 09:25:49 +0100 | merijn | (~merijn@host-cl.cgnat-g.v4.dfn.nl) (Ping timeout: 264 seconds) |
| 2025-12-28 09:19:04 +0100 | merijn | (~merijn@host-cl.cgnat-g.v4.dfn.nl) merijn |
| 2025-12-28 09:08:07 +0100 | merijn | (~merijn@host-cl.cgnat-g.v4.dfn.nl) (Ping timeout: 240 seconds) |
| 2025-12-28 09:05:33 +0100 | tt1231607 | (~tt1231@75.185.104.199) tt1231 |
| 2025-12-28 09:03:17 +0100 | merijn | (~merijn@host-cl.cgnat-g.v4.dfn.nl) merijn |
| 2025-12-28 09:00:01 +0100 | tt1231607 | (~tt1231@75.185.104.199) (Quit: The Lounge - https://thelounge.chat) |
| 2025-12-28 08:58:58 +0100 | <lambdabot> | https://hackage.haskell.org/package/quickcheck-classes -- makes it easy to verify the Apply laws |
| 2025-12-28 08:58:58 +0100 | <hololeap> | @hackage quickcheck-classes -- makes it easy to verify the Apply laws |
| 2025-12-28 08:57:06 +0100 | <hololeap> | anyway, this wasn't really a problem I needed to solve, just an exploration of ideas |
| 2025-12-28 08:56:47 +0100 | ystael | (~ystael@user/ystael) ystael |
| 2025-12-28 08:55:50 +0100 | <[exa]> | no in this case even `ap` would require the defaults |
| 2025-12-28 08:55:47 +0100 | <hololeap> | just the <*> part of Applicative |
| 2025-12-28 08:55:30 +0100 | <[exa]> | so yeah that would be a (specialized) semigroup |
| 2025-12-28 08:55:26 +0100 | <hololeap> | right, Apply is Applicative sans `pure`, |
| 2025-12-28 08:55:04 +0100 | <[exa]> | hololeap: that can't do applicative though, right? (you'd need a default function and default parameter) |
| 2025-12-28 08:54:39 +0100 | ystael | (~ystael@user/ystael) (Ping timeout: 260 seconds) |
| 2025-12-28 08:53:58 +0100 | merijn | (~merijn@host-cl.cgnat-g.v4.dfn.nl) (Ping timeout: 244 seconds) |
| 2025-12-28 08:53:47 +0100 | <Leary> | That sounds like `Semigroup` instance instead. |
| 2025-12-28 08:53:39 +0100 | <hololeap> | though not exactly that |
| 2025-12-28 08:53:26 +0100 | <hololeap> | I was looking into an instance that would use something like Map.unionWith (<>) |
| 2025-12-28 08:51:15 +0100 | <hololeap> | mostly just out of curiosity. the current Apply instance feels very niche since it uses Map.intersectionWith under the hood |
| 2025-12-28 08:50:19 +0100 | <[exa]> | hololeap: why though (kinda curious, and also usually this has been a common instance of xyz issues) |
| 2025-12-28 08:50:04 +0100 | <hololeap> | but Apply is a class for Type -> Type |
| 2025-12-28 08:49:19 +0100 | merijn | (~merijn@host-cl.cgnat-g.v4.dfn.nl) merijn |
| 2025-12-28 08:49:15 +0100 | <hololeap> | hm, ok. I was looking into a different instance of Apply for Map (different than the one defined in semigroupoids) and ultimately it requires (Ord k, Semigroup a) => Map k a |
| 2025-12-28 08:49:02 +0100 | <[exa]> | decide you want to infer which backend to use where. |
| 2025-12-28 08:49:00 +0100 | <[exa]> | iqubic: people usually have these "operation records" for various backend implementations for whatever, e.g. here: https://hackage-content.haskell.org/package/tls-2.1.13/docs/Network-TLS.html#t:Backend or here: https://hackage.haskell.org/package/selda-0.5.2.0/docs/Database-Selda-Backend.html#t:SeldaBackend . TBH quite easy to go that way, and very easy to slap on a typeclass later, in case you |
| 2025-12-28 08:45:32 +0100 | <[exa]> | hololeap: you can wrap the set in a newtype that imposes the constraint, with similar tradeoffs like with other newtype wraps (inconvenient but coerces well) and typeclass constraints on data types (generally hated) |
| 2025-12-28 08:38:22 +0100 | merijn | (~merijn@host-cl.cgnat-g.v4.dfn.nl) (Ping timeout: 244 seconds) |
| 2025-12-28 08:33:52 +0100 | merijn | (~merijn@host-cl.cgnat-g.v4.dfn.nl) merijn |
| 2025-12-28 08:31:12 +0100 | sroso | (~sroso@user/SrOso) (Quit: Leaving :)) |
| 2025-12-28 08:29:18 +0100 | euphores | (~SASL_euph@user/euphores) euphores |
| 2025-12-28 08:23:15 +0100 | merijn | (~merijn@host-cl.cgnat-g.v4.dfn.nl) (Ping timeout: 252 seconds) |
| 2025-12-28 08:18:05 +0100 | merijn | (~merijn@host-cl.cgnat-g.v4.dfn.nl) merijn |
| 2025-12-28 08:13:20 +0100 | euphores | (~SASL_euph@user/euphores) (Quit: Leaving.) |