News for hackers. Stuff that matters.
Re:Unison Programming Language by sgk284 on Sunday June 27, 2021 @02:44PM (#27654072)
The names are just pointers, and they're both pointing to the same definition in your example. But when you redefine one of those, you would point one of the names to a new definition.

It's similar to how DNS can have two domains point to the same IP, but then you can change one of those domains point to a new IP.

Re:Unison Programming Language by ajuc on Sunday June 27, 2021 @03:00PM (#27654223)
> The names are just pointers, and they're both pointing to the same definition in your example. But when you redefine one of those, you would point one of the names to a new definition.

But how do you know which name was called where if the callers referenced the content hash not the name?

Re:Unison Programming Language by milansuk on Sunday June 27, 2021 @04:35PM (#27655052)
I also think that the DNS analogy is wrong because all callers are hash-based. The only solution I see is to go through the list of all callers and manually update selected ones.

If I understand Unison right, the names are used only on the developer's layer(to write code), but when you save code, it's all hash-based.

Still, Unison got my attention.

Re:Unison Programming Language by aparsons on Sunday June 27, 2021 @04:06PM (#27654800)
Would it not be correct for those callers to keep calling the old (shared) implementation?
Re:Unison Programming Language by ajuc on Sunday June 27, 2021 @04:20PM (#27654925)
well it would be nice to have a way to update old code