2024/10/11

Newest at the top

2024-10-11 20:23:45 +0200vanishingideal(~vanishing@user/vanishingideal) vanishingideal
2024-10-11 20:23:25 +0200 <lambdabot> • Perhaps you meant one of these:
2024-10-11 20:23:25 +0200 <lambdabot> • Variable not in scope: nix
2024-10-11 20:23:25 +0200 <lambdabot> error: Variable not in scope: cabal2nixerror:
2024-10-11 20:23:24 +0200 <Square2> > cabal2nix: nix-prefetch-url: createProcess: posix_spawnp: does not exist (No such file or directory)
2024-10-11 20:23:20 +0200 <Square2> As I'm not getting hits on google. On my fresh ubuntu 24.04 machine I'm getting:
2024-10-11 20:22:58 +0200ash3en(~Thunderbi@2a03:7846:b6eb:101:93ac:a90a:da67:f207) ash3en
2024-10-11 20:21:03 +0200merijn(~merijn@128-137-045-062.dynamic.caiway.nl) merijn
2024-10-11 20:20:54 +0200 <yushyin> raehik: happy to help :)
2024-10-11 20:20:39 +0200briandaed(~root@185.234.210.211) (Quit: Lost terminal)
2024-10-11 20:20:15 +0200vanishingideal(~vanishing@user/vanishingideal) (Quit: leaving)
2024-10-11 20:19:39 +0200 <geekosaur> (I'll also note that `Map` is something of a hack, but it's the best we can do with Haskell as it currently exists. SML/NJ has a better solution.)
2024-10-11 20:15:44 +0200merijn(~merijn@128-137-045-062.dynamic.caiway.nl) (Ping timeout: 260 seconds)
2024-10-11 20:10:35 +0200merijn(~merijn@128-137-045-062.dynamic.caiway.nl) merijn
2024-10-11 20:06:07 +0200 <dolio> But if that leads people to say that the internals must be as stable as the public API, then my response would just be that people insisting that have ruined it for everyone.
2024-10-11 20:05:54 +0200 <raehik> yay thx yushyin that was it! I don't claim it's gospel, but I've tended towards his suggestion in that post (more small libraries)
2024-10-11 20:05:36 +0200 <dolio> I don't know that it's always possible to anticipate when someone downstream will need to actually make use of the internals. So it doesn't seem that far fetched to say that it should be possible to get at them, with the understanding of what you're doing.
2024-10-11 20:03:36 +0200 <geekosaur> sorry, not type safety, soundness
2024-10-11 20:01:15 +0200ljdarj(~Thunderbi@user/ljdarj) ljdarj
2024-10-11 19:59:58 +0200 <geekosaur> if people are doing so indiscriminately, we have a social / communication problem
2024-10-11 19:59:39 +0200 <geekosaur> that's not to claim "Internals" isn't flawed, but at least if I see "Internals" somewhere I know someone (possibly me) has made a judgement call to break the rules
2024-10-11 19:59:28 +0200merijn(~merijn@128-137-045-062.dynamic.caiway.nl) (Ping timeout: 252 seconds)
2024-10-11 19:57:05 +0200acidjnk(~acidjnk@p200300d6e72cfb8501454db6567a02c6.dip0.t-ipconnect.de) (Ping timeout: 248 seconds)
2024-10-11 19:56:31 +0200acidjnk_new(~acidjnk@p200300d6e72cfb8559afb38ba3995c38.dip0.t-ipconnect.de) acidjnk
2024-10-11 19:56:30 +0200 <dolio> Yeah, it doesn't seem like it's a reasonable position.
2024-10-11 19:56:13 +0200 <geekosaur> it's just a different road to hell, as usual paved with good intentions
2024-10-11 19:56:00 +0200 <geekosaur> unless the idea is that there are never ever any hidden parts (goodbye smart constructors, goodbye type safety of `Map`, …)
2024-10-11 19:55:12 +0200 <geekosaur> problem with that article is that there really are cases when internals normally best kept hidden need to be exposed. redesigning your API does not change this
2024-10-11 19:54:47 +0200merijn(~merijn@128-137-045-062.dynamic.caiway.nl) merijn
2024-10-11 19:51:08 +0200 <yushyin> raehik: the blog post that comes to mind is https://nikita-volkov.github.io/internal-convention-is-a-mistake/
2024-10-11 19:43:42 +0200merijn(~merijn@128-137-045-062.dynamic.caiway.nl) (Ping timeout: 252 seconds)
2024-10-11 19:43:07 +0200vanishingideal(~vanishing@user/vanishingideal) vanishingideal
2024-10-11 19:41:41 +0200 <raehik> there was some blog post in the past year concerning good & bad versioning practices in Haskell/using the PVP... can't remembre
2024-10-11 19:41:06 +0200 <geekosaur> (that is, everyone's afraid to mark something "stable" because that would mean they can't change it in the future. PVP expresses this more practically, so "Stability" has essentially dropped out of use.)
2024-10-11 19:40:53 +0200 <raehik> lol
2024-10-11 19:40:46 +0200Sgeo(~Sgeo@user/sgeo) (Read error: Connection reset by peer)
2024-10-11 19:40:38 +0200Sgeo_(~Sgeo@user/sgeo) Sgeo
2024-10-11 19:39:00 +0200merijn(~merijn@128-137-045-062.dynamic.caiway.nl) merijn
2024-10-11 19:38:24 +0200vanishingideal(~vanishing@user/vanishingideal) (Quit: Lost terminal)
2024-10-11 19:38:03 +0200Sgeo(~Sgeo@user/sgeo) Sgeo
2024-10-11 19:38:02 +0200lxsameer(~lxsameer@Serene/lxsameer) lxsameer
2024-10-11 19:37:45 +0200 <geekosaur> the problem with the Stability field is that, as it's actually used, it suffers from "There's this special biologist word we use for 'stable'. We call it 'dead'."
2024-10-11 19:36:30 +0200 <raehik> thx for the tip :)
2024-10-11 19:36:11 +0200 <raehik> I guess I'll just copy paste a line into each module docstring
2024-10-11 19:35:43 +0200 <raehik> geekosaur: yeah, I guess I feel like the meaning of `Internal` is understood well enough to be useful
2024-10-11 19:35:29 +0200 <geekosaur> yes, it's essentially useless though
2024-10-11 19:35:19 +0200 <raehik> so Haddock has the Stability field. but personally I have never ever read it lol
2024-10-11 19:35:14 +0200 <geekosaur> "Internal" is just a convention, not a requirement
2024-10-11 19:34:14 +0200 <geekosaur> but in your case that would be per module instead of in the README
2024-10-11 19:33:51 +0200 <geekosaur> I think the best you can do is something in the top matter (for example, see https://hackage.haskell.org/package/ghc-9.10.1)