Numerical evaluation etc.






If xfloat(e) doesn't evaluate to a float, I  doubt that
any combination of numer, float, or ... will evaluate the
expression to a float.

(C1) xfloat(e) := scanmap('float, rectform(e))$
(C2) xfloat(sqrt(1+%i) - sqrt(1-%i));
(D2)                   .9101797211244547 %I
(C3) xfloat(exp(exp(1)));
(D3)                     15.15426224147926

Here is the same trick for bfloat. I think scanmap isn't
needed---most likely, xbfloat(e) := bfloat(rectform(e)) will
work as well.

(C4) xbfloat(e) := scanmap('bfloat,rectform(e))$
(C5) xbfloat(sqrt(1+%i)-sqrt(1-%i));
(D5)                  9.101797211244547B-1 %I

To change the number of digits in a big float, assign a new value to
fpprec.

(C6) fpprec : 25$
(C7) xbfloat(sqrt(1+%i)-sqrt(1-%i));
(D7)               9.101797211244546826087155B-1 %I
(C8)


Barton