Когда формат на самом деле печатает в языке Common LISP?

У меня есть следующий код языка Common LISP:

(defun micro-read-eval-print ()
    (format t "Micro > ")
    (let ((form (read-line)))))

Когда я выполняю его, я получаю следующее:

CL-USER> (micro-read-eval-print)
(m-quote a)
Micro > NIL

Обратите внимание, что я ввел в" (m-кавычке a)", в то время как интерпретатор Lisp производил "Микро> NIL".

Теперь, я ожидал бы, что эти события произойдут в обратном порядке. Я ожидал бы "Микро>" быть распечатанным сначала, так как оператор формата на первом месте. То, почему это не, распечатало сначала? И что я должен сделать, чтобы удостовериться, что это печатается сначала?

6
задан Paul Reiners 6 August 2010 в 17:43
поделиться