Newest at the top
| 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 +0000 | merijn | (~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 +0000 | weary-traveler | (~user@user/user363627) (Ping timeout: 244 seconds) |
| 2026-06-23 21:13:39 +0000 | merijn | (~merijn@host-cl.cgnat-g.v4.dfn.nl) (Ping timeout: 245 seconds) |
| 2026-06-23 21:10:40 +0000 | user363627 | (~user@user/user363627) user363627 |
| 2026-06-23 21:09:21 +0000 | merijn | (~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 +0000 | leppard | (~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 +0000 | merijn | (~merijn@host-cl.cgnat-g.v4.dfn.nl) (Ping timeout: 264 seconds) |
| 2026-06-23 20:57:05 +0000 | leppard | (~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) |
| 2026-06-23 20:56:05 +0000 | acidjnk_new | (~acidjnk@p200300d6e74def43ec2141b26299b177.dip0.t-ipconnect.de) |
| 2026-06-23 20:56:03 +0000 | acidjnk | (~acidjnk@p54ad50b4.dip0.t-ipconnect.de) acidjnk |
| 2026-06-23 20:55:56 +0000 | <EvanR> | pick your poison |
| 2026-06-23 20:55:36 +0000 | <monochrom> | I think with GHC you should go for inline System F-omega or something... |
| 2026-06-23 20:55:23 +0000 | <int-e> | c_wraith: I used something Seq-like for https://research.ibm.com/blog/ponder-this-november-2025 (but the 64 bit restriction meant that I couldn't use Data.Seq itself) |
| 2026-06-23 20:54:52 +0000 | <EvanR> | instead of "C is too slow, switching to asm" it's "guarantees not strong enough switching to STLC" |
| 2026-06-23 20:54:43 +0000 | <monochrom> | I have static typing OCD but it doesn't mean I should go to the Python community and "contribute" a linter that says "Warning: Python is not statically typed" for every line of code. |
| 2026-06-23 20:54:09 +0000 | <EvanR> | we need inline simply typed lambda calculus like C has inline asm xD |
| 2026-06-23 20:53:58 +0000 | merijn | (~merijn@host-cl.cgnat-g.v4.dfn.nl) merijn |
| 2026-06-23 20:53:20 +0000 | <jaror> | I'd like to keep things out of my head and in my source code. |
| 2026-06-23 20:52:43 +0000 | <EvanR> | totalness is a useful idea to apply to your haskell code mentally (when appropriate) just like pure function is useful to apply in C (when appropriate) despite not having real support |
| 2026-06-23 20:52:36 +0000 | <monochrom> | Inserting something in the middle also something Seq does well. |
| 2026-06-23 20:52:28 +0000 | acidjnk | (~acidjnk@p200300d6e70242376685ebb53532e457.dip0.t-ipconnect.de) (Ping timeout: 276 seconds) |
| 2026-06-23 20:52:28 +0000 | acidjnk_new | (~acidjnk@p200300d6e70242376685ebb53532e457.dip0.t-ipconnect.de) (Ping timeout: 276 seconds) |
| 2026-06-23 20:52:16 +0000 | <jaror> | Is there any way that is worse than finite lists? |
| 2026-06-23 20:51:31 +0000 | <jaror> | (amortized) |
| 2026-06-23 20:51:07 +0000 | <jaror> | That way you still have O(1) access to the first element and fast iteration, but you also have fast length and fast indexing |
| 2026-06-23 20:50:09 +0000 | <jaror> | c_wraith, so a better alternative would be a list of arrays that double in length? Maybe someone should write a library for that. |
| 2026-06-23 20:48:02 +0000 | <geekosaur> | yeh, HLS disabled Stan by default a couple versions ago IIRC |
| 2026-06-23 20:47:27 +0000 | <monochrom> | I only have a mild case of static typing OCD. |