C¸À¸ì¤Î±é»»»Ò++¤Î¤è¤¦¤Ë¡¢
ÊÑ¿ô¤ÎÃͤòÁý²Ã¤µ¤»¤ëLisp¤Î¹½Ê¸¤òÄêµÁ¤·¤¿¤¤¤È¤·¤Þ¤·¤ç¤¦¡£
(inc x)¤Î¤è¤¦¤Ë½ñ¤¤¤Æ¡¢
(setq x (1+ x))¤Î¤è¤¦¤Ê¸ú²Ì¤òÆÀ¤¿¤¤¤Î¤Ç¤¹¡£
¤³¤ì¤ò¹Ô¤¦¥Þ¥¯¥íÄêµÁ¤Ï¤Ä¤®¤Î¤è¤¦¤Ë¤Ê¤ê¤Þ¤¹¡£
(defmacro inc (var) (list 'setq var (list '1+ var)))
¤³¤ì¤ò(inc x)¤Î¤è¤¦¤Ë¸Æ¤Ó½Ð¤¹¤È¡¢
°ú¿ôvar¤Ï¥·¥ó¥Ü¥ëx¤Ë¤Ê¤ê¤Þ¤¹¡£
´Ø¿ô¤Î¤è¤¦¤Ëx¤ÎÃͤǤϤ¢¤ê¤Þ¤»¤ó¡£
¥Þ¥¯¥í¤ÎËÜÂΤǤϡ¢¤³¤ì¤ò»È¤Ã¤ÆÅ¸³«·Á(setq x (1+ x))¤ò¹½ÃÛ¤·¤Þ¤¹¡£
¥Þ¥¯¥íÄêµÁ¤¬¤³¤ÎŸ³«·Á¤òÊÖ¤¹¤È¡¢
Lisp¤Ï¤½¤ì¤òɾ²Á¤¹¤ë¤³¤È¤Ë¿Ê¤ß¡¢x¤òÁý¤ä¤·¤Þ¤¹¡£