[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

compiling problems in 2.0 final



#|
Can someone please tell me why I can't compile this function in  
MCL2.0 (final release)?  It has compiled in all other MCL's, most  
recently 2.0b1, but now the compiler appears to get lost in constant  
folding. I have tried compiling this file in System 7 on a IIci and a  
Quadra.
	Rick Taube
	Zentrum fuer Kunst und Medientechnologie
	7500 Karlsruhe 1
	Germany
	hkt@zkm.de, hkt@ccrma.stanford.edu
|#

(in-package :cl-user)

(defun bessi0 (x) 

  ;;I0(x) from "Numerical Recipes" by Press et al
  (if (< (abs x) 3.75)
      (let* ((y (expt (/ x 3.75) 2)))
	(+ 1.0
	   (* y (+ 3.5156229
		   (* y (+ 3.0899424
			   (* y (+ 1.2067492
				   (* y (+ 0.2659732
					   (* y (+ 0.360768e-1
						   (* y  
0.45813e-2)))))))))))))
    (let* ((ax (abs x))
	   (y (/ 3.75 ax)))
      (* (/ (exp ax) (sqrt ax)) 

	 (+ 0.39894228
	    (* y (+ 0.1328592e-1
		    (* y (+ 0.225319e-2
			    (* y (+ -0.157565e-2
				    (* y (+ 0.916281e-2
					    (* y (+ -0.2057706e-1
						    (* y (+  
0.2635537e-1
							    (* y (+  
-0.1647633e-1
								    ( 
* y 0.392377e-2))))))))))))))))))))