
On Wed, Mar 18, 2020 at 11:21:29AM +0000, Chris Done wrote:
Is there any effort or designs ongoing to add CAS (content-addressable storage) to GHC, as in Unison? < https://www.unisonweb.org/docs/tour/> == The idea == The summary of the idea is simply that top-level declarations can be addressed by a hash of their contents. Recursive definitions are transformed into the worker/wrapper to eliminate the self-referencing issue of hashing.
I started wanting this recently, although I can't remember why. As far as I can see there are two distinct things that one might want 1. To be able to come up with a hash for each expression. 2. To be able to look up that hash somewhere to recover the expression. I was only interested in 1. Please correct me if I'm wrong but it seems from your description that your use case only requires 1 too. Anyway, I think this is a great idea. Tom