Maxima-function logxor does not work under Sbcl



Hello Oliver,

Numerical constants were being used that vary between CL implementations.  Please try the following:

logical&&  logand(x,y):=?boole(?boole\-and,x,y)$
	logor(x,y):=?boole(?boole\-ior,x,y)$
	logxor(x,y):=?boole(?boole\-xor,x,y)$

Regards
Douglas Crosher


On 13/11/11 09:29, Oliver Kullmann wrote:
> Hello,
>
> Maxima 5.25.1 http://maxima.sourceforge.net
> using Lisp SBCL 1.0.53
> Distributed under the GNU Public License. See the file COPYING.
> Dedicated to the memory of William Schelter.
> The function bug_report() provides bug reporting information.
> STYLE-WARNING: redefining MAXIMA::ADD-LINEINFO in DEFUN
> STYLE-WARNING: redefining MAXIMA::$LOAD in DEFUN
> (%i1) load(functs);
> Evaluation took 0.0180 seconds (0.0190 elapsed) using 3.045 MB.
> (%o1) "/home/kullmann/OKplatform/ExternalSources/Installations/Maxima/sbcl/5.25.1/share/maxima/5.25.1/share/simplification/functs.mac"
> (%i2) logxor(1,1);
> Evaluation took 0.0000 seconds (0.0010 elapsed) using 0 bytes.
> (%o2) 1
>
> which should return 0, which it does under CLisp and Ecl, e.g.
>
> Maxima 5.25.1 http://maxima.sourceforge.net
> using Lisp ECL 11.1.1
> Distributed under the GNU Public License. See the file COPYING.
> Dedicated to the memory of William Schelter.
> The function bug_report() provides bug reporting information.
> (%i1) load(functs);
> Evaluation took 0.0150 seconds (0.0180 elapsed)
> (%o1) "/home/kullmann/OKplatform/ExternalSources/Installations/Maxima/ecl/5.25.1/share/maxima/5.25.1/share/simplification/functs.mac"
> (%i2) logxor(1,1);
> Evaluation took 0.0000 seconds (0.0000 elapsed)
> (%o2) 0
>
>
> The Maxima-buid using Sbcl (built using CLisp) passed all tests except of one,
> a numerical value close by to the given one.
>
> Many tests of my system also passed, and I can't see any systematic issue here.
>
> Oliver
>
> _______________________________________________
> Maxima mailing list
> Maxima at math.utexas.edu
> http://www.math.utexas.edu/mailman/listinfo/maxima
>