inconsistent definition of "sort" (and what about stability?)



On Sat, Nov 12, 2011 at 09:32:03PM -0800, Steve Haflich wrote:
> Raymond Toy <toy.raymond at gmail.com> wrote:
> 
>    (4) Use cl:stable-sort. (Perhaps that's what (1) is saying.)
> 
> Certainly, but that addresses only one of the Kullmann's concerns.  The
> guaranteed behavior with a sort function that provides only partial
> ordering is still effectively defined by the ANS, not the Maxima dos.
> 
> This dependency of Maxima on ANSI CL might be seen as a deficiency in
> Maxima, but I propose that (where it can be) it is a useful partitioning
> of semantics.  Maxima was first defined more than 40 years ago on a Lisp
> with irrational semantics.  The Lisp community learned a lot between
> that time and the specification of ANSI CL (a little less than 20 years
> ago) and I propose that where ANSI CL semantics do not impinge on
> Maxima's focus on symbolic mathematics, ANSI CL semantics should be
> adopted.  It simplifies the total universe.

I can understand the attempt to re-use semantical constructs, but one
should keep in mind:
 - The Maxima documentation must stay independent of that (amongst other
   things, otherwise it would become unreadable for almost all users).
 - Since Maxima creates its own universe, a reasonable effort should
   always be spent on taking that into account.
 - Since standard-texts are highly circular and ambiguous, the contract
   with the user of some component (typically a function) must be made
   explicit (not left to "read the code" or "read that document").

Documentation should be an ongoing effort, permanently improved, for
example as the result of such a discussion.
Perhaps there are institutional barriers in the Maxima evironment,
preventing easy changes of documentation?
I guess the main problem is that the documentation does not happen
at the same place where the code is. Employing a system like
Doxygen could improve this. Yet, as it seems to me, the documentation
in Maxima is a separate world, perhaps mostly disregarded by the
experts.

Oliver