We disagree, sharply.  The abbreviation of long keyword/set element
values using the notion of a case-independent disambiguating
truncation is 1) convenient and 2) easy to teach in the sense that
programmers and others come to understand it quickly.

The

start, stop, status

problem that Fred raises is highly artificial.  It is indeed a straw
man.   If a keyword set already contains 'start' and 'stop' there in
no need to add 'status' to it.  One can add another keyword
value---'query', 'condition', 'info', or the like---instead.

The merit of CIDTs as abbreviations is that they are algorithmically
constructed.  The alternatives are usually unattractive because they
are arbitrary even when historically hallowed.  Consider the names of
the American "states" that begin with the letter 'A' and their
postal-service abbreviations, viz.,

U.S. Armed Forces Americas, AA
U.S. Armed Forces Europe, AE
U.S. Armed Forces Pacific, AP
Alabama, AL
Alaska, AK
Arkansas, AR
Arizona, AZ

Their derivaqtion isa not algorithmic; the lexicographic sequence of
their abbreviations is different from that of their values; for
example

'Alabama' < 'Alaska' but 'AK' < 'AL',

etc., etc.

Macro instructions are often, indeed usually, written by programmers
who could only with some considerable difficulty write the macro
definitions that implement them; and a coherent, easy to understand
abbreviation scheme for keyword values is thus highly desirable.  That
at least is my view.

The subject of

The rationale for using macros ii

will be normalizations, sequencing and comparisons.


John Gilmore, Ashland, MA 01721 - USA

Reply via email to