次のコードがあるとします。
(handler-case (read ...)
(parse-error (condition)
(format t "What text was I reading last to get this error? ~s~&"
(how-to-get-this-text? condition))))
アクセサーしか見えparse-namestring
ませんが、解析していたテキストではなく、エラーのメッセージが表示されます。
編集
私の場合、問題はそれほど一般的ではないため、解析に失敗した文字列全体を含まない代替ソリューションも良い場合があります。
解析しようとしているこのコード例を想像してください。
prefix(perhaps (nested (symbolic)) expressions))suffix
場合によっては「接尾辞」で停止する必要があり、他の場合は続行する必要があります。接尾辞自体には他の意味はありませんが、パーサーが次に実行する必要があるアクションの指標であるだけです。