Don’t feel bad, I think the current behavior of :sprint is definitely unintuitive, if you don’t already know how the evaluation of overloaded values are handled. IIRC during his talk at ZuriHac 2023 @kosmikus suggested that :sprint should ideally print closures and thunks in two distinct ways. There is a relevant ticket in GHC’s issue tracker. I tried to tackle it during ZuriHac and put up a draft PR that I unfortunately couldn’t spend enough time on to push it to finalization. Hopefully I’ll return back to it sometime soon
Wow!Thanks for your additional explanation!That’s really a truly valuable feature to add.
Best of luck with your efforts, and I hope you’ll be able to return to it soon.