float/bfloat applied to symbol, was: plot numerical question



On 3/12/09, Leo Butler <l.butler at ed.ac.uk> wrote:

> I must admit that I am confused by this. If you define
>
> f(s) := block([t:bfloat(s)], sin(t));
>
> then shouldn't maxima evaluate f(s) to be sin(bfloat(s))?

Current behavior is float(s) => s when s is a symbol, likewise bfloat(s) => s.

In the interest of consistency with a lazy evaluation policy,
seems like float(s) should => float(s), likewise bfloat(s) => bfloat(s).

Maxima is admittedly inconsistent about lazy evaluation,
but, I claim, it should be more consistent.
I suppose float(s) => s is a convenience hack, which is never
a compelling motivation, as I see it.

FWIW, & all the best.

Robert Dodier