> > What do you think about, simply:
> >
> > Synchronous operations may fail by "timing out" i.e., taking too long.
> > For asynchronous operations, "timing out" is undefined.
>
> This is probably correct, but I think it defines the symptom rather than
the
> cause.
The way I'd put that is that it's more of a *designation* of the concept,
rather than a *definition*. (These are terms used by Michael Jackson in
his text on software requirements and specifications.)
But perhaps designation is more appropriate for the case at hand,
since definitions tend to be beyond the reach of the general readership.
If there are no other objections, I'd like to propose that the simple
language above be adopted.
Are there uses of 'synchronous' and 'asynchronous' for which the above
is not expressive enough, anyone? Can those cases perhaps be
covered using other terms, such as "blocking", "solicited", etc?
Walden