keyword を intern する
Keyword 引数を intern で返そうとすると、こうやるのかなと思ったが
? (defparameter test "test") TEST ? (intern (concatenate 'string ":" (symbol-name 'test))) \:TEST NIL ?
となってしまい、頭にバックスラッシュがついてしまう。
どうにかこれがつかないようにできないか・・・と思って調べていたが、intern の :keyword を使用することでできそう。: を文字に連結して intern とする必要はない。
? (symbol-name 'test) "TEST" ? (intern (concatenate 'string ":" (symbol-name 'test))) \:TEST NIL ? (intern (concatenate 'string ":" (symbol-name 'test)) :keyword) :\:TEST NIL ? (intern (symbol-name 'test) :keyword) :TEST :EXTERNAL ?