The semantics that I favor (and those implemented by Spice Lisp)
are that every Common Lisp function which returns an array returns a
simple array unless the function is make-array or one of the arguments
is eq to the result.  This has the advantage of being a simple
specification, and also allows the compiler to do more interesting
type-inference.
  Rob