私はのように、ファイルからLispオブジェクトを収集するための基本的なテンプレートを熟知しています:読書Lispは文字列からオブジェクト
(with-open-file (stream "filename.lisp")
(loop for object = (read stream nil 'eof)
until (eq object 'eof)
collect object))
しかし、私はからオブジェクトを収集するにこれを翻訳するかどうかはわかりませんたとえば、read-from-string
を使用して文字列を返します。それで、文字列の途中で中断したインデックスを追跡する必要がありますか?また、eof
や他の正当なLispオブジェクト、例えばnil
やt
の名前の衝突を回避するにはどうしたらいいですか?
[WITH-INPUT-FROM-STRING(http://www.lispworks.com/documentation/HyperSpec/Body/m_w_in_f.htm#with-input-from-string) – Barmar