% Function MAKE-SYMBOL
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
を行うプログラムインターフェイスは
大文字小文字を区別します。