Isn't a function of type `(# #) -> T` already (isomorphic to) a
"non-updatable thunk" of type T?

Tom

On Tue, Feb 03, 2026 at 11:43:48AM +0000, Simon Peyton Jones via ghc-devs wrote:
> Hmm.  So your proposal is:
> 
>    - When declaring a type T, specify it as a "non-updatable type"
>    - A thunk of type T is call-by-name
> 
> On Tue, 3 Feb 2026 at 08:25, Edsko de Vries <[email protected]> wrote:
> > I think there *is* a better answer: I think (but this will require
> > careful consideration) that the way is is to be able to mark certain types
> > as "never update thunks of this type".
_______________________________________________
ghc-devs mailing list -- [email protected]
To unsubscribe send an email to [email protected]

Reply via email to