Next: Defining Macros, Previous: Expansion, Up: Macros [Contents][Index]
¤Ê¤¼¡¢¥Þ¥¯¥í¤ÎŸ³«·Á¤ò¤ï¤¶¤ï¤¶·×»»¤·¤Æ¤«¤éŸ³«·Á¤òɾ²Á¤¹¤ë¤Î¤«¡¢
µ¿Ìä¤Ë»×¤¦¤«¤â¤·¤ì¤Þ¤»¤ó¡£
¤Ê¤¼¡¢¥Þ¥¯¥íËÜÂΤÇ˾¤ß¤Î·ë²Ì¤òľÀܽФµ¤Ê¤¤¤Î¤Ç¤·¤ç¤¦¡©
¤½¤ÎÍýͳ¤Ë¤Ï¡¢¥³¥ó¥Ñ¥¤¥ë¤¬´Ø·¸¤·¤Æ¤¤¤Þ¤¹¡£
¥³¥ó¥Ñ¥¤¥ë¤¹¤ëLisp¥×¥í¥°¥é¥à¤Ë¥Þ¥¯¥í¸Æ¤Ó½Ð¤·¤¬¸½¤ì¤ë¤È¡¢ Lisp¥³¥ó¥Ñ¥¤¥é¤Ï¡¢¥¤¥ó¥¿¡¼¥×¥ê¥¿¤¬¤¹¤ë¤Î¤ÈƱÍͤ˥ޥ¯¥íÄêµÁ¤ò¸Æ¤Ó½Ð¤·¡¢ ¤½¤ÎŸ³«·Á¤ò¼õ¤±¼è¤ê¤Þ¤¹¡£ ¤³¤ÎŸ³«·Á¤òɾ²Á¤¹¤ë¤«¤ï¤ê¤Ë¡¢¥³¥ó¥Ñ¥¤¥é¤Ï¡¢ Ÿ³«·Á¤¬¥×¥í¥°¥é¥à¤ËľÀܸ½¤ì¤¿¤«¤Î¤è¤¦¤Ë¤½¤ì¤ò¥³¥ó¥Ñ¥¤¥ë¤·¤Þ¤¹¡£ ¤½¤Î·ë²Ì¡¢¥³¥ó¥Ñ¥¤¥ëºÑ¤ß¤Î¥³¡¼¥É¤Ï¡¢¥Þ¥¯¥í¤¬°Õ¿Þ¤·¤¿ÃͤÈÉûºîÍѤòÀ¸¤¸¡¢ ¤«¤Ä¡¢¼Â¹Ô®Å٤ϥ³¥ó¥Ñ¥¤¥ë¤·¤¿Â®Å٤ˤʤë¤Î¤Ç¤¹¡£ ¥Þ¥¯¥íËÜÂΤ½¤Î¤â¤Î¤ÇÃͤÈÉûºîÍѤò·×»»¤·¤¿¤Î¤Ç¤Ï¡¢ ¤³¤Î¤è¤¦¤Ëưºî¤·¤Þ¤»¤ó¡£ ¥³¥ó¥Ñ¥¤¥ë»þ¤Ë·×»»¤·¤Æ¤·¤Þ¤¤¡¢¤½¤ì¤Ç¤Ï°ÕÌ£¤¬¤¢¤ê¤Þ¤»¤ó¡£
¥Þ¥¯¥í¸Æ¤Ó½Ð¤·¤¬Àµ¤·¤¯¥³¥ó¥Ñ¥¤¥ë¤µ¤ì¤ë¤¿¤á¤Ë¤Ï¡¢
¤½¤ì¤é¤Î¸Æ¤Ó½Ð¤·¤ò¥³¥ó¥Ñ¥¤¥ë¤¹¤ë¤È¤¤Ë¡¢
LispÆâ¤Ç¥Þ¥¯¥í¤¬ÄêµÁºÑ¤ß¤Ç¤¢¤ëɬÍפ¬¤¢¤ê¤Þ¤¹¡£
¥³¥ó¥Ñ¥¤¥é¤Ë¤Ï¡¢ÆÉ¼Ô¤¬¤³¤Î¤è¤¦¤Ë¤¹¤ë¤³¤È¤òÊ亴¤¹¤ëµ¡Ç½¤¬¤¢¤ê¤Þ¤¹¡£
¥³¥ó¥Ñ¥¤¥ëÂоݤΥե¡¥¤¥ë¤Ë¥Õ¥©¡¼¥àdefmacro
¤¬´Þ¤Þ¤ì¤Æ¤¤¤ë¤È¡¢
¤½¤Î¥Õ¥¡¥¤¥ë¤Î»Ä¤ê¤ò¥³¥ó¥Ñ¥¤¥ë¤¹¤ë¤¢¤¤¤À¤Ï¡¢
°ì»þŪ¤Ë¥Þ¥¯¥í¤òÄêµÁ¤·¤Þ¤¹¡£
¤³¤Îµ¡Ç½¤¬Æ°ºî¤¹¤ë¤¿¤á¤Ë¤Ï¡¢
defmacro
¤òƱ¤¸¥Õ¥¡¥¤¥ë¤ÎºÇ½é¤ËÍøÍѤ¹¤ë²Õ½ê¤è¤ê¤Þ¤¨¤Ë
Æþ¤ì¤Æ¤ª¤¯É¬Íפ¬¤¢¤ê¤Þ¤¹¡£
¥Õ¥¡¥¤¥ë¤ò¥Ð¥¤¥È¥³¥ó¥Ñ¥¤¥ë¤¹¤ë¤È¡¢
¤½¤Î¥Õ¥¡¥¤¥ë¤Î¥È¥Ã¥×¥ì¥Ù¥ë¤Ë¤¢¤ërequire
¤Î¸Æ¤Ó½Ð¤·¤ò¼Â¹Ô¤·¤Þ¤¹¡£
¤³¤ì¤Ï¡¢¥Õ¥¡¥¤¥ë¤òÀµ¤·¤¯¥³¥ó¥Ñ¥¤¥ë¤¹¤ë¤¿¤á¤ËɬÍפʥѥ屡¼¥¸¤òɽ¤·¤Þ¤¹¡£
¥³¥ó¥Ñ¥¤¥ëÃæ¤ËɬÍפʥޥ¯¥íÄêµÁ¤¬»È¤¨¤ë¤³¤È¤òÊݾڤ¹¤ë1¤Ä¤ÎÊýË¡¤Ï¡¢
¤½¤ì¤é¤Î¥Þ¥¯¥í¤òÄêµÁ¤¹¤ë¥Õ¥¡¥¤¥ë¤ò
require
¤Ë»ØÄꤷ¤Æ¤ª¤¯¤³¤È¤Ç¤¹¡Êsee Named Features¡Ë¡£
¥³¥ó¥Ñ¥¤¥ëºÑ¤ß¤Î¥×¥í¥°¥é¥à¤ò¼Â¹Ô¤¹¤ë¤È¤¤Ë¡¢
¥Þ¥¯¥í¤òÄêµÁ¤·¤¿¥Õ¥¡¥¤¥ë¤ò¥í¡¼¥É¤·¤Æ¤·¤Þ¤¦¤³¤È¤òÈò¤±¤ë¤Ë¤Ï¡¢
require
¤Î¸Æ¤Ó½Ð¤·¤Î¼þ¤ê¤Ëeval-when-compile
¤ò½ñ¤¤¤Æ¤ª¤¤Þ¤¹
¡Êsee Eval During Compile¡Ë¡£