Function MAKE-SYMBOL
make-symbol
name => new-symbol
name - 文字列
new-symbol - 新しい、unintern
シンボル
make-symbol
は、新しくunintern
であり、 名前がnameのシンボルを作成して返却します。 new-symbolは、bound
でもfbound
でもありません。 そして、null
のプロパティリストを持っています。
new-symbolの名前の文字列が、引数nameなのか、 あるいはそのコピーなのかは実装依存です。 いったん文字列がmake-symbol
の引数nameとして与えられたら、 その文字を変更しようとした結果は未定義です。
setq temp-string "temp") => "temp"
(setq temp-symbol (make-symbol temp-string)) => #:|temp|
(symbol-name temp-symbol) => "temp"
(eq (symbol-name temp-symbol) temp-string) => implementation-dependent
(find-symbol "temp") => NIL, NIL
(eq (make-symbol temp-string) (make-symbol temp-string)) => false (
なし。
なし。
もしnameが文字列ではないとき、 型error
のエラーが発生します。
make-symbol
は、名前のケースを大文字に変更しようとはしません。 シンボルの大文字小文字の変換は、ただLispのリーダーが実行するだけです。 シンボルを生成するプログラムのインターフェイスは大文字小文字を保持し、 そしてシンボルのintern
を行うプログラムインターフェイスは 大文字小文字を区別します。