In my view there are really three things (or two things, with one that splits into two):
Decentralized Agents: this is really the realm of E, actors, the traditional networked ocap space. This is also where Spritely spends most of its time.
Decentralized Convergent Machines: This is where many different parties are producing the same abstracted “machine”. This actually subdivides depending on who gets to govern accepted messages (and to a lesser degree, who’s replicating the machine but not necessarily governing, but that’s just deterministic replay, not very interesting):
Smaller-scale governance, eg quorums is the realm of OpenCroquet and (@zarutian’s favorite) Snes9x’s multtiplayer, “permissioned blockchains” (I don’t like that term) like Hyperledger, etc.
Global governance, eg blockchains are where most of the zeitgeist is.
There’s actually another thing: decentralized data storage, eg content-addressed systems (eg IPFS, Tahoe-LAFS). This is more static, but can be reified into something active by turning otherwise static documents into messages to be processed by a machine.
This is an early stab at trying to explain these ideas. Really needs expansion, and more thinking on the terms.
Arguably, also the Unum Pattern too. But two big differences from CRDTs are that the unum pattern is focused more on behavior rather than data and that information/authority asymmetry can be okay. CRDTs can be an “unum construction kit” though and we’d like to implement a library of them in Goblins.
[edited] I’d like to quibble about ‘distributed’ vs. ‘decentralized’ because… that’s what I do. A decentralized X is an X that is individually distributed around to various places, without any ‘center’. A decentralized agent system would be an agent system that is not centralized (no place that’s the center, such as an agent store). But a decentralized agent would have to be an individual agent that is not centralized - maybe that would be an unum? or something ledger-based, etc. So… I’m pretty sure you mean either ‘distributed agents’ or ‘decentralized agent system’ instead of ‘decentralized agents’. Yes the latter is a thing perhaps but it’s a different thing.