use of $csign



Is there any reason to use csign instead of $csign in /src? One place I
would like
to use $csign is simpsgnum:

(defmfun simpsignum (x y z)
  (oneargcheck x)
  (setq y (simpcheck (cadr x) z))
  (setq z ($csign y))
  ;; When $csign thinks y is complex, let it be.
  (cond ((memq z '($complex $imaginary)) (eqtest (list '(%signum) y) x))

Changing csign --> $csign in simpsignum fixes a bug the Sage developers
have long wanted fixed
(this is the correct solution set, I think)

(%i3) to_poly_solve(q*sqrt(2+q^2)-1,q);
(%o3) %union([q = 1/sqrt(1-sqrt(2))],[q = 1/sqrt(sqrt(2)+1)])
(%i4) build_info();

Maxima version: 5.18post
Maxima build date: 4:45 9/14/2009
Host type: i686-pc-mingw32
Lisp implementation type: SBCL
Lisp implementation version: 1.0.29

I'd guess that conjugate could also benefit by using $csign.

Barton