List space

From Organic Design wiki
Revision as of 23:45, 10 September 2005 by Nad (talk | contribs)
(diff) ← Older revision | Latest revision (diff) | Newer revision → (diff)

The Nodes are relatively high-level structures and at runtime within the peer-nodes they sit upon a more fundamental layer called List-Space in which the actual nodal change takes place in a peer.

The project uses a very fundamental memory model based on binary sequences where each bit in the sequence can be referred to also by a key which is a binary-sequence of fixed length (determined by the total number of bits in the sequence). This can be done because binary-sequences can represent numbers as well as arbitrary content.

There is no arbitrary content in the List-Space though, the only actual content stored in this binary memory are List-Items, which are each a sequence of three binary List-Item-Keys. Since the smallest addressable unit in the List-Space is the List-Item, the size of a List-Item-Key can be based on the total number of List-Items that can fit in the space, rather than the total number of bits. For simplicity and efficiency of running in current environments, ensuring the List-Item size is on DWORD boundaries may be best. Maybe 32-bit List-Item-Keys, or maybe 64-bit List-Items with 21-bit keys.

The middle key is called the data-key and its meaning and use are context-specific. The first and last keys in a List-Item are the previous-key (prev) and next-key (next) allowing the formation of doubly-linked lists called Lists, and hence List-Space. (List-Item 0 is the Root-List-Item and Root-Node and indicates a null link). Lists are referred to by the List-Item-Key of their first List-Item and such keys a referred to as List-Keys. List-Keys are a subset of the List-Item-Keys.

  1. List-Space Methods
  2. +List Characteristics