I have the following code:
(defun Areacircle ()
(princ "Enter Radius: ")
(defparameter radius (read))
(defparameter area (* 3.1416 radius radius))
(princ "Area: ")
(write area))
(AreaCircle)
The problem is that, slime runs it with no problem but when I compile it with (compile-file "area.lisp" :output-file "area") it evaluates the (read) part first; it ask to pass the value to radius before printing anything.