Re:Unison Programming Language
by andi999 on Sunday June 27, 2021 @02:43PM
(#27654059)
Cool, but why/what for?
[ Parent
| on HN ]
I'm just as much of a novice as you, but one of the use cases the creators had in mind are distributed computing systems. For example, if you have to crunch a bunch of data in the cloud, you would write your data crunch function/algorithm (which is represented by some hash '#asdjh238ad') then spin up nodes to crunch data using '#asdjh238ad'. When a new node in a cluster comes up it can say "I don't have '#asdjh238ad'" and the orchestrator or one of the node's peers can send over a copy of it.
With a traditional programming language you couldn't do this because "send me a copy of sort()" would be met with "which sort()?". Whereas with unison every different sorting implementation would have different hash, so there would be no confusion.
Re:Unison Programming Language
by Nullabillity on Sunday June 27, 2021 @04:43PM
(#27655124)
That makes sense as a build system (and is more or less how Nix works). The question would be why you'd subject your source code to this.
there was a paper that implemented an r7rs compatible module system for termite scheme that used hashes for identification for netework transfers of code but left the source files still normal - I think focusing on the textual representation too much misses the point a bit here.