We decided to go open with our project, documented here in the posts from the category distributed GLC. There is a dynamically changing and evolving team, formed by the authors of this article
and Stephen P. King, Jim Whitescarver, Rao Bhamidipati, as well as others from ProvenSecure Solutions, which is behind it. This project have several goals, the first one is to explore the possibility of implementing this computing model in reality.
The implications of the proposal (i.e. “what if this is possible?”) are huge. I would like to write instead, in an understated manner, why we think that the means to achieve those implications is interesting. From personal experience with explanations around this subject, it looks like the really difficult part, at this stage of the project, at least, is the one of understanding what is different in this model.
The reason behind this difficulty is not that the understanding demands highly technical knowledge. Instead, as Louis Kauffman describes it, the project is based on ideas which look completely non obvious at first, which, once understood, they become straightforward.
The most important idea is that the model is not one based on signals circulating through wires, passing through gates. Nor on messages exchanged through channels (though there is a nuance here, coming from the second idea, concerning “locality”).
What then? you might ask. Is this a communication model where the entities involved in communication are not actually communicating? No, on the contrary, the entities (i.e. the GLC actors) are communicating all the time, but not like in a phone call, instead their communication is alike a chemical reaction between molecules which are close in space.
Think about this. A chemical reaction network (CRN) is obviously a good description of a collection of chemical reactions. But is nothing else than a description. The molecules involved in the CRN are not “aware” there is a CRN. They interact in a purely local way, they are not goal driven, nor there is a upper being which set them the task to interact. The “communication” between two molecules is not based on signal passing, like the mathematical description of a CRN is. It is more like a graph rewrite procedure. Pure syntax, at this level (of molecules), but nevertheless self-sustaining, autonomous, purely local and of course distributed (in space).
The second idea is this “locality”, which means that the interaction between the actors should be not controlled from an upper level, the actors should be autonomous and reactive entities, and that their reactions should be a consequence of the local environment only. In the case of the GLC actors, this is a consequence of GLC being based on local graph rewrites (i.e. involving only rewrites acting on a bounded number of nodes and arrows), with the exception of the GLOBAL FAN-OUT move, where chemlambda comes to help. Chemlambda is purely local.
The third idea is to use Hewitt Actor Model as a replacement for space. On the net, we do need a way to define what means for two GLC actors (i.e. the net correspondents of two molecules) to be in proximity. The GLC actors are designed in such a way so to have these proximity relations as links between actors (with no exterior control or decision over this, past the preparation stage) and to see communication between actors as the graph rewrites. In practice, most of the graph rewrites occur between two actors. As an exception, the GLOBAL FAN-OUT (from GLC) becomes in chemlambda a procedure which is alike binary cell fission in real life. Indeed, this is not explained in detail in the paper, only a small example is given, but compare the picture taken from this post
(about how the W combinator suffers a GLOBAL FAN-OUT with the pure local means of chemlambda) with this picture from the binary cell fission wiki page,