Node space
Fundamental geometry
As was discussed in the node summary, the four "built in" associations of next, prev, parent and focus form a vertical hierarchical dimension, and a horizontal sequence-oriented dimension. So the fundamental topology of a node space is a lot like a grid in that the way one traverses from one node to another is along two orthogonal dimsions which could easily just be called N, E, W and S. It's not a grid that can be easily pictured though, because when interpreted geometrically, only the horizontal is a simple sequence when, the vertical which is related to space and diversity is more about volume. |
Compass |
Loops & threads
The horizontal associations can be used to link nodes together into open or closed sequences called threads and loops. The links between items connect in both directions so that items can be inserted or removed in constant time regardless of total length.
When we combine this horizontal aspect of threads and loops with the vertical aspect of allowing any arbitrary containment trees, we are able to describe sophisticated structures of serial and parallel tasks. A thread or a loop when seen from the point of view of a child nodes operating within it, is like a sequence of slots in a schedule.
Schedule spectrum
The more layers of hierarchical structure there are within a node, the slower the operating cycles of that context have to be. So large complex organisations run on slow cycles like days and weeks, applications within organisations are working in minutes and seconds. And low level services making up applications run even faster or even asyncronously.
The horizontal next and prev associations really do form the schedule of operations because at the higher abstraction layers, the threads move forward (and loops rotate) based on the cycles in use at that level. All these cycles together form a containment tree too because they're all harmonically related, this tree of cycles is called the spectrum.
See also
- nodeSpace.c is the current implementation of node space running in peerd.c based peers
- nodal-wikid.pl extends PERL's native hash-table to make a Nodal Space (no longer current).
- peer-nodal.as implements the functional way since ECMA can't use references as array-keys (no longer current).