cl-geodesics compiles for me with the attached patch. One of the problems is that the ASDF system definition has unbalanced parentheses. This makes it impossible to load/use this package. The version in sarge and etch has the same bug, so it doesn't look like anybody has used cl-geodesics in the past several years. It should probably be removed rather than fixed.
OTOH, if you decide to keep it, there are a few other problems I noticed: - utilities.lisp doesn't have an IN-PACKAGE form, so it gets loaded in whatever random package happens to be active. - The GD-STATIC-EQUAL, GD-STATIC-UNEQUAL and GD-COSMOLOGICAL systems each define the same symbols in the GEODESICS package, so they can't be loaded simultaneously. But that's exactly what the GEODESICS system does. I think each of the GD-* systems needs to live in a separate package? -- Peter De Wachter
--- a/debian/geodesics.asd +++ b/debian/geodesics.asd @@ -4,25 +4,25 @@ (defsystem :gd-static-equal - :depends-on (:integrate) + :depends-on (:infix :integrate) :components ((:file "geodesics") (:file "staticequal" :depends-on ("geodesics")) (:file "gdequations" :depends-on ("staticequal")) (:file "utilities" :depends-on ("staticequal")))) (defsystem :gd-static-unequal - :depends-on (:integrate) - :components (((:file "geodesics") - (:file "staticunequal" :depends-on ("geodesics")) - (:file "gdequations" :depends-on ("staticunequal")) - (:file "utilities" :depends-on ("staticunequal")))) + :depends-on (:infix :integrate) + :components ((:file "geodesics") + (:file "staticunequal" :depends-on ("geodesics")) + (:file "gdequations" :depends-on ("staticunequal")) + (:file "utilities" :depends-on ("staticunequal")))) (defsystem :gd-cosmological - :depends-on (:integrate) + :depends-on (:infix :integrate) :components ((:file "geodesics") (:file "general" :depends-on ("geodesics")) (:file "gdequations" :depends-on ("general")) (:file "utilities" :depends-on ("general")))) (defsystem :geodesics - :depends-on (:infix :gd-static-equal :gd-static-unequal :gd-cosmological)) + :depends-on (:gd-static-equal :gd-static-unequal :gd-cosmological)) --- a/utilities.lisp +++ b/utilities.lisp @@ -46,7 +46,7 @@ (let ((*log* ,s)) ,@body))))) -(setf *integrator* (make-adaptive-integrator #'runge-kutta 5)) +(setf *integrator* (integrate:make-adaptive-integrator #'integrate:runge-kutta 5)) (defun invert (fn value &key min max) ;; uses linear interpolation. With extreme loss of generality: @@ -64,4 +64,4 @@ (setf min x) (setf max x)) (frob (+ min (/ (* (- max min) (- value (funcall fn min))) (- (funcall fn max) (funcall fn min))))))))) - (frob (+ min (/ (* (- max min) (- value (funcall fn min))) (- (funcall fn max) (funcall fn min)))))))) \ No newline at end of file + (frob (+ min (/ (* (- max min) (- value (funcall fn min))) (- (funcall fn max) (funcall fn min))))))))