Common Lispリプレゼンターの正規化

Common Lispのリプレゼンターが解答に適用する正規化の概要を紹介します。


リプレゼンターは、readを使って提出物を読み込み、writeを使ってリプレゼンテーションを書き出します。さらに、いくつかの正規化も適用します。 それぞれの提出物には、次の正規化が適用されます。

コメントの削除

readを使って提出物を読み込むため、コメントは削除されます。

ドキュメンテーション文字列の削除

ドキュメンテーション文字列に含まれているかもしれない名前を正規化する代わりに、その文字列そのものを削除します。 ただし、リプレゼンテーションには、ドキュメンテーション文字列が存在したかどうかが記録されます。

テキストの大文字小文字の正規化

readを使って提出物を読み込むため、すべてのシンボルは大文字に正規化されます。

テキスト整形の正規化

リプレゼンテーションはwriteで書き出されるため、提出物の整形に関する細かな違い(インデント、空白、閉じ括弧を空行に残すなど)は、リプレゼンテーションには保持されません。

シンボル名の正規化

関数、変数、マクロの名前やパッケージなどのシンボルは、リプレゼンテーションで使われるgensymsにマッピングされます。