2026/06/23

Newest at the top

2026-06-23 22:26:27 +0000merijn(~merijn@host-cl.cgnat-g.v4.dfn.nl) (Ping timeout: 252 seconds)
2026-06-23 22:21:57 +0000merijn(~merijn@host-cl.cgnat-g.v4.dfn.nl) merijn
2026-06-23 22:21:35 +0000karenw(~karenw@user/karenw) (Quit: Deep into that darkness peering...)
2026-06-23 22:21:12 +0000 <jreicher> I really don't understand the current totality craze. I keep hearing people talk about it in lots of different places, but there never seems to be a reason other than it's being talked about.
2026-06-23 22:12:54 +0000Sgeo(~Sgeo@user/sgeo) Sgeo
2026-06-23 22:11:07 +0000merijn(~merijn@host-cl.cgnat-g.v4.dfn.nl) (Ping timeout: 264 seconds)
2026-06-23 22:07:02 +0000jreicher(~joelr@user/jreicher) jreicher
2026-06-23 22:06:34 +0000merijn(~merijn@host-cl.cgnat-g.v4.dfn.nl) merijn
2026-06-23 22:04:59 +0000 <monochrom> See? What takes forever (pun!) will not be implementing it, but rather getting the community to reach a consensus on how much to allow.
2026-06-23 22:03:46 +0000tcard(~tcard@2400:4051:5801:7500:cf17:befc:ff82:5303)
2026-06-23 22:03:29 +0000tcard(~tcard@2400:4051:5801:7500:cf17:befc:ff82:5303) (Remote host closed the connection)
2026-06-23 21:55:28 +0000merijn(~merijn@host-cl.cgnat-g.v4.dfn.nl) (Ping timeout: 250 seconds)
2026-06-23 21:53:11 +0000michalz(~michalz@185.246.207.221) (Remote host closed the connection)
2026-06-23 21:51:12 +0000merijn(~merijn@host-cl.cgnat-g.v4.dfn.nl) merijn
2026-06-23 21:46:37 +0000merijn(~merijn@host-cl.cgnat-g.v4.dfn.nl) (Ping timeout: 253 seconds)
2026-06-23 21:44:14 +0000Fijxu(~Fijxu@user/fijxu) fijxu
2026-06-23 21:42:07 +0000merijn(~merijn@host-cl.cgnat-g.v4.dfn.nl) merijn
2026-06-23 21:41:59 +0000 <mauke> does "recursive data types" include list?
2026-06-23 21:36:30 +0000target_i(~target_i@user/target-i/x-6023099) (Quit: leaving)
2026-06-23 21:30:35 +0000merijn(~merijn@host-cl.cgnat-g.v4.dfn.nl) (Ping timeout: 245 seconds)
2026-06-23 21:24:51 +0000 <jaror> that should be fine to allow and not that hard to check
2026-06-23 21:24:07 +0000merijn(~merijn@host-cl.cgnat-g.v4.dfn.nl) merijn
2026-06-23 21:23:05 +0000 <monochrom> err, structural recursion
2026-06-23 21:22:56 +0000 <monochrom> I was hoping to allow structure recursion.
2026-06-23 21:22:10 +0000 <jaror> and no Type :: Type
2026-06-23 21:21:45 +0000 <EvanR> (and no recursive data types)
2026-06-23 21:21:22 +0000 <EvanR> no unsafePerformIO, etc
2026-06-23 21:21:11 +0000 <EvanR> if there's no recursion below that, it seems like there's not much else to check
2026-06-23 21:20:49 +0000 <EvanR> ghc already does coverage analysis for case
2026-06-23 21:14:31 +0000weary-traveler(~user@user/user363627) (Ping timeout: 244 seconds)
2026-06-23 21:13:39 +0000merijn(~merijn@host-cl.cgnat-g.v4.dfn.nl) (Ping timeout: 245 seconds)
2026-06-23 21:10:40 +0000user363627(~user@user/user363627) user363627
2026-06-23 21:09:21 +0000merijn(~merijn@host-cl.cgnat-g.v4.dfn.nl) merijn
2026-06-23 21:06:29 +0000 <jaror> Some (at least on) of their employees was considering opening a GHC proposal
2026-06-23 21:05:33 +0000 <monochrom> Well, I guess it won't happen anyway, so I don't need to argue against it.
2026-06-23 21:05:03 +0000 <monochrom> :(
2026-06-23 21:04:41 +0000 <jaror> Just don't put the function in its own scope
2026-06-23 21:04:28 +0000 <jaror> No, it's easy to disallow recursion
2026-06-23 21:04:12 +0000 <monochrom> Someone would have to write a "simple" totality checker for GHC before you could have that pragma.
2026-06-23 21:03:00 +0000 <jaror> You can do a lot in Agda
2026-06-23 21:02:54 +0000leppard(~noOne@ipservice-092-209-218-237.092.209.pools.vodafone-ip.de) (Quit: KVIrc 5.2.8 Quasar http://www.kvirc.net/)
2026-06-23 21:02:35 +0000 <geekosaur> can't do very much when something must be provably total
2026-06-23 20:59:56 +0000 <jaror> The Mu compiler has a "Recursion" language extension which is disable by default
2026-06-23 20:59:16 +0000 <EvanR> the strict one seems even more non haskelly
2026-06-23 20:59:02 +0000 <EvanR> we have a pragma which makes everything in a module strict, I wonder if "everything in this module GHC must be convinced of total or it shall not pass"
2026-06-23 20:58:31 +0000merijn(~merijn@host-cl.cgnat-g.v4.dfn.nl) (Ping timeout: 264 seconds)
2026-06-23 20:57:05 +0000leppard(~noOne@ipservice-092-209-218-237.092.209.pools.vodafone-ip.de) Inline
2026-06-23 20:56:37 +0000 <int-e> (so basically, only the sharing and measuring ideas survived)
2026-06-23 20:56:36 +0000 <monochrom> Oh ah I see what you mean now! :)
2026-06-23 20:56:15 +0000 <int-e> (I simplified ; I didn't use a finger tree; in fact I didn't even balance the trees)