The language of reference is the language. Dimensions are typed and numerated from to . Any dimension should be accessible by level operators. Note that only and PPL libraries have the dimension permutation functions. Thread-safety and timeout exception are supported. The exception handlers consist of not_implemented, invalid_argument, overflow, timeout and out_of_space, with interruptions by a catch and throw mechanism for overflow, timeout, out_of_space exceptions.
Other decisions are: prefix for each implementation; functional or/and imperative signatures at level , with recycle/destructive version; no reference counter which is hidden if implemented; all implementations must cover the interface but may have their own extensions; improvements such as factorization are hidden from the common interface; constructor, destructor, debugging functions are required; using a system of varargs instead of a list or a table of arguments.