1. A double-ended concurrent shared object organized as a dynamically sized bi-directional referencing chain of nodes, the double-ended concurrent shared object employing distinguishing values to indicate spare nodes thereof and supporting concurrent non-interfering opposing-end accesses for states of two or more values.