Subject: different meaning of function parameters?
From: Stavros Macrakis
Date: Mon, 26 May 2008 19:29:21 -0400
Sorry for the slow response.
This is a bug in solve:
solve([x=1],[x]) => [x = 1] -- correct
solve('[x=1],'[x]) => [x = 1] --correct
x:23$
solve([x=1],[x]) => error -- correct, this is solving
[23=1] for [23]
solve('[x=1],'[x]) => error -- not correct, solve is
looking at the value of 'x'
This is caused because $solve evaluates its arguments an extra time.
This bug has been in the code for a while (starts with "(setq eql..."
in the 7th line of $solve), and I don't know what the motivation for
this code was.
Sorry for the bug, we'll try to fix it. Does anyone know any reason
for this code?
-s