> > (%i1) n : 171!$
> > (%i2) nf : float(n)$
> > (%i3) numberp(nf);
> > (%o3) true
> > (%i4) nf;
> >
> > Maxima encountered a Lisp error:
> > Error in PROGN [or a callee]: Can't print a non-number. ...
> >
> This is an issue with gcl. As the message says, it can't print the
> non-number, which is double-float infinity in this case. You can do:
>
> :lisp (setq si::*print-nans* t)
>
> to get it to print something, but I'm not sure maxima will really know what to do with a double-float infinity.
For a naive user (eg me for the first 2 or 3 minutes after encountering
it) seeing i.nfE+0 might be less confusing, even if maxima can't do
anything useful with the result. You could detect overflow like this
is (sconcat(float(171!)) = "i.nfE+0"). But maybe there is an easier
way to do that.
thanks,
John