I've updated documentation and a few code enhancements since release

https://github.com/Pascal-J/kv


Definition of a dictionary:

A datastructure such that when provided with a list of keys a get function will 
retrieve
    the latest value associated with that key as a result of latest set/add/del 
operations that could have modified that associated value.

If a requested retrival key has no associated value, then nothing is returned,
    where in a list of requested keys, nothing combined with other requested 
values is the list of the other values.


key implementation features:

If a user only uses set/del modifiers after loading or optimizing to a unique 
dictionary, then the dictionary will remain in unique state.
    a user may use special add1 function to place kv in non-unique state. get 
and filter will still operate as if unique.
    in non unique mode, filtall and delall will affect multiple values. 
set/del/get operate on last key occurrence + related value.

keys are stored as a table of symbols. Values as a table of numeric, string, or 
boxed values. Table width for simplest keys and values is 1.

This allows multikey keys or metainfo after first key. Allows inverted table or 
associated array datastructures.

Boxed values permit embedded keyed dictionaries.
    keyed data/value access is similar to J locale access to data/functions.
    An embedded dictionary is an association of data variables that replaces 
use for a locale/datastructure.

A dictionary or dictionary hierarchy is a single J entity that can be 
serialized/deserialized with 3!:1 , 3!:2




----------------------------------------------------------------------
For information about J forums see http://www.jsoftware.com/forums.htm

Reply via email to