[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

de facto standards


I agree with you that Flavors has significant technical shortcomings, and that
it would be unfortunate if Flavors should become a de facto standard in its
present form.

However, if the demand for Flavors is as great as your message suggests, then
I fear it will be difficult to prevent Flavors from becoming a de facto
standard, despite its technical problems.  It should be clear from history
that technical merit plays a relatively minor role in the adoption of language
standards.  Fortran, for example, prospered even though its creator disowned
it and worked actively to promote an alternative.

To prevent Flavors from becoming a de facto standard, there must be an
alternative.  Simply extending Common Lisp to support alternative objects
systems (the "hooks" approach) does not by itself provide an alternative, but
merely makes it possible for an alternative to arise.

An informal process of developing and evaluating alternative objects systems
is unlikely to produce a viable alternative to Flavors in time.  While this
development and evaluation is taking place, usage of Flavors will continue to
increase.  By the time an alternative objects system could arise and gather
enough support from the Common Lisp community to be declared the "winner", it
seems quite likely that Flavors will be too well entrenched to dislodge.
Although it would be nice if there were indeed a "free marketplace of ideas"
where alternative objects systems could compete on their technical merits,
there are factors other than technical merit at work in the marketplace.

As I said before, manufacturers will not want to support multiple objects
systems.  If Flavors becomes a de facto standard, then other objects systems
will not achieve universal support, even if a set of hooks has been
standardized.  Also, if the "portable implementation" of Flavors using hooks
turns out to be inadequate (e.g., not efficient enough), then manufacturers
will be forced by market demand to provide customized implementations of
Flavors; they may well perceive this task to be more important than supporting
the standard hooks.

The best way to avoid the adoption of an inferior standard is for this
committee to develop and endorse a superior alternative.  Obviously, it is
very valuable (if not essential) for this alternative to be endorsed by the
Flavors people as well.  Such endorsement does not guarantee success, however
(witness Fortran).