Inconsistency when using previously defined variables as arguments to functions
Subject: Inconsistency when using previously defined variables as arguments to functions
From: thomas
Date: Tue, 01 Feb 2011 00:14:02 +0100
On 01/31/2011 04:29 PM, Stavros Macrakis wrote:
>
> > * ev( ... , simp ) is synonymous with ev( ... ) unless you have
> previously
> > set simp to false (which is a bad idea). What did you expect it
> to do?
>
> I disagree that simp:false is a bad idea. The effect is exactly what
> one would expect; it disables built-in simplifications. If that's what
> you want, then great.
>
>
> Certainly, simp:false has its uses. But in this case, I very much
> doubt that the user actually needed or wanted simp:false.
>
This is probably not relevant to the discussion that evolved out of
this, but: yes, we (meaning Geogebra, a math-software that's currently
trying to interface maxima) actually use simp: false.
The background is that since Maxima doesn't have any kind of
"Hold"-statement, we sometimes need to send statements to maxima without
having them simplified, to mimic the behaviour of "hold". Everything
that we want to send to Maxima simplified will go through ev(..., simp)
instead. This actually works pretty well for our purposes, we've yet to
encounter any problems with this approach. The one with the limit('(..),
'i) was the first one I witnessed. Is there a better way to do this?
Cheers
Thomas