categoryLISP覚書

マクロの例

trackback0  comment0
プログラミング覚書 011

マクロの例:引数をnilに設定するマクロ
----------------------------------------------------------------------

(defmacro nil! (x))
(list 'setf x nil))

----------------------------------------------------------------------
 引数を1つとる新しいオペレータ、nil!が定義される
 (nil! a)という形で呼び出すと、
コンパイルないし評価の前に(setf a nil)と変換される
----------------------------------------------------------------------

;使用例
(nil! x) ;NIL
x ;NIL

----------------------------------------------------------------------
(nil! x)とタイプするのは、マクロを展開した形の
(setf x nil)とタイプするのと全く等価である
関連記事
 









        
 
http://greenwind888.blog.fc2.com/tb.php/64-c20418be