Subject: Simplification of products and the number 0
From: Stavros Macrakis
Date: Mon, 27 Sep 2010 11:25:53 -0400
type( sqrt( <integer> ) ) is 'exact algebraic expression', of which
'integer' is a special case.
I suppose you could treat 'exact number' as a special case of 'float', but
that is not the way Lisp or the compiler works. Not only are they
represented incompatibly, but there are integers (e.g. 10^400) which are not
representable as floats...
-s
On Mon, Sep 27, 2010 at 10:03, Andrey G. Grozin <A.G.Grozin at inp.nsk.su>wrote:
> On Mon, 27 Sep 2010, Stavros Macrakis wrote:
>
>> b) we want type(a*b) to be a function of type(a) and type(b),
>> independently of their values (especially important for compilation)
>>
> This is not always so, logically. For example, the types of sqrt(4) and
> sqrt(3) differ.
>
> Andrey