Logs: liberachat/#haskell
| 2025-10-27 01:15:44 | → | Dhark8 joins (~Shark8@c-174-56-102-109.hsd1.nm.comcast.net) |
| 2025-10-27 01:16:18 | → | ChaiTRex joins (~ChaiTRex@user/chaitrex) |
| 2025-10-27 01:18:53 | × | Shark8 quits (~Shark8@c-174-56-102-109.hsd1.nm.comcast.net) (Ping timeout: 256 seconds) |
| 2025-10-27 01:20:46 | → | dtman34 joins (~dtman34@2601:447:d182:6512:c2f9:c3a:b83d:6490) |
| 2025-10-27 01:23:18 | → | merijn joins (~merijn@host-vr.cgnat-g.v4.dfn.nl) |
| 2025-10-27 01:24:02 | × | otto_s quits (~user@p5de2fe86.dip0.t-ipconnect.de) (Ping timeout: 240 seconds) |
| 2025-10-27 01:26:07 | → | otto_s joins (~user@p5b0443f3.dip0.t-ipconnect.de) |
| 2025-10-27 01:27:42 | × | merijn quits (~merijn@host-vr.cgnat-g.v4.dfn.nl) (Ping timeout: 240 seconds) |
| 2025-10-27 01:28:22 | × | ttybitnik quits (~ttybitnik@user/wolper) (Quit: Fading out...) |
| 2025-10-27 01:34:13 | × | ft quits (~ft@mue-88-130-105-028.dsl.tropolys.de) (Ping timeout: 264 seconds) |
| 2025-10-27 01:35:52 | → | ft joins (~ft@mue-88-130-104-115.dsl.tropolys.de) |
| 2025-10-27 01:38:42 | → | pr1sm joins (~pr1sm@24.91.163.31) |
| 2025-10-27 01:38:46 | → | merijn joins (~merijn@host-vr.cgnat-g.v4.dfn.nl) |
| 2025-10-27 01:42:05 | × | dtman34 quits (~dtman34@2601:447:d182:6512:c2f9:c3a:b83d:6490) (Quit: ZNC 1.8.2+deb3.1+deb12u1 - https://znc.in) |
| 2025-10-27 01:42:25 | → | dtman34 joins (~dtman34@2601:447:d182:6512:c2f9:c3a:b83d:6490) |
| 2025-10-27 01:43:50 | × | merijn quits (~merijn@host-vr.cgnat-g.v4.dfn.nl) (Ping timeout: 256 seconds) |
| 2025-10-27 01:45:10 | → | L29Ah joins (~L29Ah@wikipedia/L29Ah) |
| 2025-10-27 01:45:25 | → | xff0x joins (~xff0x@fsb6a9491c.tkyc517.ap.nuro.jp) |
| 2025-10-27 01:49:49 | → | peterbecich joins (~Thunderbi@172.222.148.214) |
| 2025-10-27 01:49:52 | → | econo_ joins (uid147250@id-147250.tinside.irccloud.com) |
| 2025-10-27 01:54:31 | → | merijn joins (~merijn@host-vr.cgnat-g.v4.dfn.nl) |
| 2025-10-27 01:58:50 | × | ChaiTRex quits (~ChaiTRex@user/chaitrex) (Ping timeout: 272 seconds) |
| 2025-10-27 01:59:02 | × | merijn quits (~merijn@host-vr.cgnat-g.v4.dfn.nl) (Ping timeout: 240 seconds) |
| 2025-10-27 01:59:08 | → | chromoblob joins (~chromoblo@user/chromob1ot1c) |
| 2025-10-27 02:00:11 | × | pr1sm quits (~pr1sm@24.91.163.31) (Remote host closed the connection) |
| 2025-10-27 02:00:17 | × | dtman34 quits (~dtman34@2601:447:d182:6512:c2f9:c3a:b83d:6490) (Quit: ZNC 1.8.2+deb3.1+deb12u1 - https://znc.in) |
| 2025-10-27 02:00:27 | → | pr1sm joins (~pr1sm@24.91.163.31) |
| 2025-10-27 02:00:38 | → | dtman34 joins (~dtman34@c-73-242-68-179.hsd1.mn.comcast.net) |
| 2025-10-27 02:01:04 | → | ChaiTRex joins (~ChaiTRex@user/chaitrex) |
| 2025-10-27 02:07:12 | → | Shark8 joins (~Shark8@c-174-56-102-109.hsd1.nm.comcast.net) |
| 2025-10-27 02:07:45 | × | haltingsolver quits (~cmo@2604:3d09:207f:8000::d1dc) (Remote host closed the connection) |
| 2025-10-27 02:08:07 | → | haltingsolver joins (~cmo@2604:3d09:207f:8000::d1dc) |
| 2025-10-27 02:09:05 | → | OWS joins (~Shark8@c-174-56-102-109.hsd1.nm.comcast.net) |
| 2025-10-27 02:09:19 | × | Dhark8 quits (~Shark8@c-174-56-102-109.hsd1.nm.comcast.net) (Ping timeout: 240 seconds) |
| 2025-10-27 02:10:10 | × | ljdarj quits (~Thunderbi@user/ljdarj) (Ping timeout: 256 seconds) |
| 2025-10-27 02:10:18 | → | merijn joins (~merijn@host-vr.cgnat-g.v4.dfn.nl) |
| 2025-10-27 02:10:55 | × | bitdex quits (~bitdex@gateway/tor-sasl/bitdex) (Remote host closed the connection) |
| 2025-10-27 02:11:44 | × | Shark8 quits (~Shark8@c-174-56-102-109.hsd1.nm.comcast.net) (Ping timeout: 240 seconds) |
| 2025-10-27 02:15:37 | × | Tuplanolla quits (~Tuplanoll@91-159-187-167.elisa-laajakaista.fi) (Ping timeout: 264 seconds) |
| 2025-10-27 02:15:43 | × | Maxdamantus quits (~Maxdamant@user/maxdamantus) (Ping timeout: 246 seconds) |
| 2025-10-27 02:16:55 | × | merijn quits (~merijn@host-vr.cgnat-g.v4.dfn.nl) (Ping timeout: 240 seconds) |
| 2025-10-27 02:17:18 | → | bitdex joins (~bitdex@gateway/tor-sasl/bitdex) |
| 2025-10-27 02:17:51 | → | Maxdamantus joins (~Maxdamant@user/maxdamantus) |
| 2025-10-27 02:19:29 | × | pr1sm quits (~pr1sm@24.91.163.31) (Remote host closed the connection) |
| 2025-10-27 02:19:35 | × | dtman34 quits (~dtman34@c-73-242-68-179.hsd1.mn.comcast.net) (Ping timeout: 244 seconds) |
| 2025-10-27 02:19:49 | <jackdk> | sm: re: "bravo for revising past releases. (I usually don't go that far back)." The thing is, I *had* to, because the lack of upper bounds on `aeson` meant that `cabal` kept selecting older and older releases in the build plan until I revised them all. |
| 2025-10-27 02:24:15 | → | dtman34 joins (~dtman34@2601:447:d182:6512:c2f9:c3a:b83d:6490) |
| 2025-10-27 02:28:20 | → | merijn joins (~merijn@host-vr.cgnat-g.v4.dfn.nl) |
| 2025-10-27 02:29:09 | × | machinedgod quits (~machinedg@d75-159-126-101.abhsia.telus.net) (Ping timeout: 256 seconds) |
| 2025-10-27 02:33:07 | × | merijn quits (~merijn@host-vr.cgnat-g.v4.dfn.nl) (Ping timeout: 256 seconds) |
| 2025-10-27 02:35:02 | × | dtman34 quits (~dtman34@2601:447:d182:6512:c2f9:c3a:b83d:6490) (Ping timeout: 240 seconds) |
| 2025-10-27 02:36:47 | <haskellbridge> | <sm> yes, that's the nature of cabal |
| 2025-10-27 02:37:34 | <haskellbridge> | <sm> though usually only some other problem constraint causes it to go so far back |
| 2025-10-27 02:38:02 | <haskellbridge> | <sm> the dynamic solver doesn't think like a human and isn't good at explaining what it's doing |
| 2025-10-27 02:40:07 | <jackdk> | Because I am very pro-upper-bounds + relaxation, I consider the real problem to be that 25 releases were left lying around waiting to be broken by a dependency that introduced a breaking change, and that the policy encouraged by the behaviour of the stack binary pushes the cost of reacting to that breaking change onto everyone else except the maintainer. |
| 2025-10-27 02:40:35 | <jackdk> | correction, the policy encouraged by *old templates instantiated by* the stack binary |
| 2025-10-27 02:43:53 | → | merijn joins (~merijn@host-vr.cgnat-g.v4.dfn.nl) |
| 2025-10-27 02:44:25 | × | werneta quits (~werneta@71.83.160.242) (Quit: Lost terminal) |
| 2025-10-27 02:47:21 | <haskellbridge> | <sm> if you are still trying to blame (some part of) stack", I won't stop you. I'll also continue to push back when I see advice that misleads new haskellers |
| 2025-10-27 02:49:00 | × | merijn quits (~merijn@host-vr.cgnat-g.v4.dfn.nl) (Ping timeout: 256 seconds) |
| 2025-10-27 02:49:44 | <haskellbridge> | <sm> this is engineering, people are operating in many different contexts, there are tradeoffs. I appreciate people exploring different approaches (leading to better understanding and consensus over time) |
| 2025-10-27 02:55:37 | lol__ | is now known as jcarpenter2 |
| 2025-10-27 02:59:40 | → | merijn joins (~merijn@host-vr.cgnat-g.v4.dfn.nl) |
| 2025-10-27 03:04:31 | × | merijn quits (~merijn@host-vr.cgnat-g.v4.dfn.nl) (Ping timeout: 240 seconds) |
| 2025-10-27 03:08:31 | → | annamalai joins (~annamalai@157.49.214.182) |
| 2025-10-27 03:10:11 | → | dtman34 joins (~dtman34@2601:447:d182:6512:c2f9:c3a:b83d:6490) |
| 2025-10-27 03:13:22 | × | peterbecich quits (~Thunderbi@172.222.148.214) (Ping timeout: 240 seconds) |
| 2025-10-27 03:15:28 | → | merijn joins (~merijn@host-vr.cgnat-g.v4.dfn.nl) |
| 2025-10-27 03:20:25 | × | merijn quits (~merijn@host-vr.cgnat-g.v4.dfn.nl) (Ping timeout: 264 seconds) |
| 2025-10-27 03:30:52 | → | merijn joins (~merijn@host-vr.cgnat-g.v4.dfn.nl) |
| 2025-10-27 03:34:03 | × | dtman34 quits (~dtman34@2601:447:d182:6512:c2f9:c3a:b83d:6490) (Ping timeout: 252 seconds) |
| 2025-10-27 03:35:44 | × | merijn quits (~merijn@host-vr.cgnat-g.v4.dfn.nl) (Ping timeout: 256 seconds) |
| 2025-10-27 03:39:43 | × | chromoblob quits (~chromoblo@user/chromob1ot1c) (Ping timeout: 246 seconds) |
| 2025-10-27 03:39:58 | → | chromoblob joins (~chromoblo@user/chromob1ot1c) |
| 2025-10-27 03:44:08 | × | td_ quits (~td@i53870936.versanet.de) (Ping timeout: 240 seconds) |
| 2025-10-27 03:46:03 | → | td_ joins (~td@i5387093E.versanet.de) |
| 2025-10-27 03:46:42 | → | merijn joins (~merijn@host-vr.cgnat-g.v4.dfn.nl) |
| 2025-10-27 03:53:19 | × | merijn quits (~merijn@host-vr.cgnat-g.v4.dfn.nl) (Ping timeout: 240 seconds) |
| 2025-10-27 03:54:14 | → | dtman34 joins (~dtman34@2601:447:d182:6512:c2f9:c3a:b83d:6490) |
| 2025-10-27 03:54:14 | × | synchromesh quits (~john@2406:5a00:2412:2c00:5ca1:546e:8b5a:71bf) (Read error: Connection reset by peer) |
| 2025-10-27 03:54:42 | → | synchromesh joins (~john@2406:5a00:2412:2c00:80f9:f3a2:4980:7e12) |
| 2025-10-27 03:59:19 | <hololeap> | hi. I have a question about this code: https://bpa.st/3JY2S |
| 2025-10-27 04:00:32 | <hololeap> | I remember learning at one point that I should be discouraged from putting a constraint inside a data type, but it seems to be working really well here |
| 2025-10-27 04:00:49 | <hololeap> | it let me make a Foldable type for NonEmptyHashSet |
| 2025-10-27 04:01:27 | <hololeap> | foldable instance |
| 2025-10-27 04:04:08 | <glguy> | the main one you were supposed to avoid was on the outside: data Ord a => T a = D |
| 2025-10-27 04:04:21 | <Leary> | hololeap: Couldn't it be `Foldable` regardless? In fact, you should be able to derive it. |
| 2025-10-27 04:04:42 | → | merijn joins (~merijn@host-vr.cgnat-g.v4.dfn.nl) |
| 2025-10-27 04:05:36 | <hololeap> | Leary: my implentation of toList turns it into a HashSet first, but I could have turned it into a list a different way |
| 2025-10-27 04:05:51 | <Leary> | It's not inherently bad to put a constraint on a *constructor*, but it's something you ought to have a good reason for. |
| 2025-10-27 04:06:07 | <Leary> | Since it means carrying the dictionary everywhere. |
| 2025-10-27 04:07:20 | <hololeap> | everything function in the module had a Hashable constraint before I added the constraint inside the data type |
| 2025-10-27 04:07:25 | <hololeap> | *every |
| 2025-10-27 04:07:44 | <monochrom> | I wonder if you actually need it. |
| 2025-10-27 04:07:58 | <jackdk> | You're also asking for the caller to provide the `Hashable a` constraint while also carrying the same dictionary in the ctor |
| 2025-10-27 04:08:13 | <monochrom> | Hrm, you need it. |
| 2025-10-27 04:08:33 | <hololeap> | it carries two types that both assume Hashable: Hashed and HashSet |
| 2025-10-27 04:08:46 | <jackdk> | You can write the instance a `instance (forall a. Hashable a) => Foldable NonEmptyHashSet` if you turn on |
| 2025-10-27 04:08:51 | <jackdk> | the necessary extensions |
| 2025-10-27 04:09:04 | <hololeap> | is that QuantifiedConstraints? |
All times are in UTC.