It seems to me that the test (> (denominator l) 1) will always be true
when it is encountered.
The case (= (denominator l) 1) means that l is an integer, and that is
peeled off in the previous line.
The denominator of a common lisp rational number is always >= 0.
On 9/27/2013 5:00 AM, John Lapeyre wrote:
> Hi,
>
> It seems like there is a bit of support in maxima for
> lisp ratios, although not much. Here is a patch that
> allows ratios to work with bfloats in many instances.
> I tried to arrange it to have a low impact on efficiency.
> The patch passed the test suite.
>
> btw. In the original code, it looks like special constants are checked
> before integers (I'm not certain). I did not change this, but maybe
> it should be the other way around.
I think the special constants should be checked after integers.
I wrote this piece of code, probably in 1974 or so.
>
> --John
>
>
>
> _______________________________________________
> Maxima mailing list
> Maxima at math.utexas.edu
> http://www.math.utexas.edu/mailman/listinfo/maxima