Howdy,
The following cannot work because, for some reason, the array subscript
parser insists on doing math on array indices even when the array is
associative instead of numeric
typeset -A UUID_TABLE
...
UUID_TABLE+=( [${SOME_UUID}]=${SOME_VALUE} )
...
some_command ${UUID_TABLE[${SOME_UUID}]}
The parser and evaluator insist on doing math on ${SOME_UUID} no matter
how its quoted or whatever. This seems extremely wrong.
At a minimum putting the index in double quotes should suppress the
arithmetic evaluation. In the ideal the decision to math-or-not decision
should happen after the array type is known, thought that's probably too
hard.
Alternately some sort of builtin hash function to map complex strings
into usable associative array indexes would be nice.
UUIDs are simply too useful and common in current systems to sustain
their current second-class status.
(DISCLAIMER: I'm not a subscriber to this list.)