Next: Defining Functions, Previous: Lambda Expressions, Up: Functions [Contents][Index]
¤Û¤È¤ó¤É¤Î·×»»µ¡¸À¸ì¤Ç¤Ï¡¢³Æ´Ø¿ô¤Ë¤Ï̾Á°¤¬¤¢¤ê¤Þ¤¹¡£
̾Á°¤Î¤Ê¤¤´Ø¿ô¤È¤¤¤¦¹Í¤¨¤ÏËܼÁŪ¤Ç¤Ï¤¢¤ê¤Þ¤»¤ó¡£
Lisp¤Ç¤Ï¡¢¤â¤Ã¤È¤â¸·Ì©¤Ë¤¤¤¨¤Ð¡¢´Ø¿ô¤Ë¤Ï̾Á°¤Ï¤¢¤ê¤Þ¤»¤ó¡£
´Ø¿ô¤Ï¡¢ÀèÆ¬Í×ÁǤ¬Ã±¤Ëlambda
¤Ç¤¢¤ë¥ê¥¹¥È¡¢
¥Ð¥¤¥È¥³¡¼¥É´Ø¿ô¥ª¥Ö¥¸¥§¥¯¥È¡¢¤¢¤ë¤¤¤Ï¡¢´ðËÜ´Ø¿ô¤Îsubr¥ª¥Ö¥¸¥§¥¯¥È¤Ç¤¹¡£
¤·¤«¤·¤Ê¤¬¤é¡¢¥·¥ó¥Ü¥ë¤Ï´Ø¿ô¤Î̾Á°¤È¤·¤ÆÆ¯¤¤Þ¤¹¡£ ¥·¥ó¥Ü¥ë¤Î´Ø¿ô¥»¥ë¡Êfunction cell¡¢see Symbol Components¡Ë¤Ë ´Ø¿ô¤òÆþ¤ì¤ë¤È¡¢¤³¤Î¤è¤¦¤Ë¤Ê¤ê¤Þ¤¹¡£ ¤½¤¦¤¹¤ë¤È¡¢¥·¥ó¥Ü¥ë¤½¤Î¤â¤Î¤ÏÀµÅö¤Ê¸Æ¤Ó½Ð¤·²Äǽ¤Ê´Ø¿ô¤È¤Ê¤ê¡¢ ´Ø¿ô¥»¥ë¤¬»²¾È¤¹¤ë¥ê¥¹¥È¤äsubr¥ª¥Ö¥¸¥§¥¯¥È¤ÈÅù²Á¤Ë¤Ê¤ê¤Þ¤¹¡£ ´Ø¿ô¥»¥ë¤ÎÆâÍÆ¤ò¥·¥ó¥Ü¥ë¤Î´Ø¿ôÄêµÁ¡Êfunction definition¡Ë¤È¤â¸Æ¤Ó¤Þ¤¹¡£ ¥·¥ó¥Ü¥ë¤Î¤«¤ï¤ê¤Ë¥·¥ó¥Ü¥ë¤Î´Ø¿ôÄêµÁ¤ò»È¤¦½èÍý¤ò ¥·¥ó¥Ü¥ë¤Î´Ø¿ô´ÖÀÜ¡Êsymbol function indirection¡Ë¤È¸Æ¤Ó¤Þ¤¹¡£ See Function Indirection¡£
¼ÂÍѾ塢¤Û¤È¤ó¤É¤¹¤Ù¤Æ¤Î´Ø¿ô¤Ë¤Ï¡¢¤³¤Î¤è¤¦¤Ë¤·¤ÆÌ¾Á°¤¬ÉÕ¤¤¤Æ¤¤¤Æ¡¢
¤½¤Î̾Á°¤Ç»²¾È¤·¤Þ¤¹¡£
¤¿¤È¤¨¤Ð¡¢¥·¥ó¥Ü¥ëcar
¤Ï¡¢
¤½¤Î´Ø¿ô¥»¥ë¤Ë´ðËÜ´Ø¿ô¤Îsubr¥ª¥Ö¥¸¥§¥¯¥È#<subr car>
¤¬³ÊǼ¤·¤Æ¤¢¤ë¤Î¤Ç¡¢
¤½¤Îưºî¤ò¹Ô¤¦´Ø¿ô¤È¤·¤ÆÆ°ºî¤·¤Þ¤¹¡£
´Ø¿ô¤Ë̾Á°¤òÍ¿¤¨¤ë¤Î¤Ï¡¢Lisp¼°¤«¤é¤½¤Î̾Á°¤Ç»²¾È¤Ç¤¤ë¤ÈÊØÍø¤À¤«¤é¤Ç¤¹¡£
#<subr car>
¤Î¤è¤¦¤Ê´ðËÜ´Ø¿ô¤Îsubr¥ª¥Ö¥¸¥§¥¯¥È¤Ç¤Ï¡¢
̾Á°¤Ï¤½¤ì¤é¤ò»²¾È¤¹¤ëÍ£°ì¤ÎÊýË¡¤Ç¤¹¡£
¤½¤Î¤è¤¦¤Ê¥ª¥Ö¥¸¥§¥¯¥È¤Ë¤ÏÆþÎϹ½Ê¸¤Ï¤¢¤ê¤Þ¤»¤ó¡£
Lisp¤Ç½ñ¤¤¤¿´Ø¿ô¤Ç¤Ï¡¢ÌÀ¼¨Åª¤Ê¥é¥à¥À¼°¤è¤ê̾Á°¤ò»È¤¦¤Û¤¦¤¬¤è¤êÊØÍø¤Ç¤¹¡£
¤Þ¤¿¡¢´Ø¿ô¤Ë̾Á°¤¬¤¢¤ì¤Ð¤½¤ì¤ò»²¾È¤Ç¤¤Þ¤¹¡£
¤Ä¤Þ¤ê¡¢ºÆµ¢¸Æ¤Ó½Ð¤·¤¬¤Ç¤¤Þ¤¹¡£
´Ø¿ô¤Î̾Á°¤ò¤½¤ÎÄêµÁ¤½¤Î¤â¤Î¤Ë½ñ¤¯¤³¤È¤Ï¡¢
´Ø¿ôÄêµÁ¤¬¤½¤ì¼«¿È¤ò»Ø¤¹¤è¤¦¤Ë¤¹¤ë
¡Ê¤³¤ì¤ÏÉÔ²Äǽ¤Ç¤Ï¤Ê¤¤¤Ë¤·¤Æ¤â¡¢¼ÂÍѾå¤Ï¤µ¤Þ¤¶¤Þ¤Ê·çÅÀ¤¬¤¢¤ë¡Ë¤è¤ê¤Ï¡¢
¤È¤Æ¤âÊØÍø¤Ç¤¹¡£
´Ø¿ô¤ò»ØÌ¾¤¹¤ë¥·¥ó¥Ü¥ë¤Ç´Ø¿ô¤ò¤·¤Ð¤·¤Ð¼±Ê̤·¤Þ¤¹¡£
¤¿¤È¤¨¤Ð¡¢¤·¤Ð¤·¤Ð¡Ø´Ø¿ôcar
¡Ù¤È¤¤¤Ã¤Æ¡¢
¥·¥ó¥Ü¥ëcar
¤È´Ø¿ôÄêµÁ¤Ç¤¢¤ë´ðËÜ´Ø¿ô¤Îsubr¥ª¥Ö¥¸¥§¥¯¥È¤È¤ò¶èÊ̤·¤Þ¤»¤ó¡£
¤Û¤È¤ó¤É¤ÎÌÜŪ¤Ë¤Ï¡¢¶èÊ̤¹¤ëɬÍפϤ¢¤ê¤Þ¤»¤ó¡£
¤¿¤È¤¨¤½¤¦¤Ç¤¢¤Ã¤Æ¤â¡¢´Ø¿ô¤Ë°ì°Õ¤Ê̾Á°¤ÏɬÍפʤ¤¤³¤È¤ò
¿´¤Ëα¤á¤Æ¤ª¤¤¤Æ¤¯¤À¤µ¤¤¡£
´Ø¿ô¥ª¥Ö¥¸¥§¥¯¥È¤ÏÉáÄÌ1¤Ä¤Î¥·¥ó¥Ü¥ë¤Î´Ø¿ô¥»¥ë¤À¤±¤Ë¸½¤ì¤Þ¤¹¤¬¡¢
¤³¤ì¤Ïñ¤Ê¤ëÊØË¡¤Ç¤¹¡£
fset
¤ò»È¤Ã¤Æ¡¢Ê£¿ô¤Î¥·¥ó¥Ü¥ë¤Ë³ÊǼ¤¹¤ë¤Î¤Ï´Êñ¤Ç¤¹¡£
¤½¤¦¤¹¤ë¤È¡¢³Æ¥·¥ó¥Ü¥ë¤ÏƱ¤¸´Ø¿ô¤òƱÅù¤Ë»ØÌ¾¤·¤Þ¤¹¡£
´Ø¿ô̾¤È¤·¤Æ»È¤¦¥·¥ó¥Ü¥ë¤Ï¡¢ÊÑ¿ô¤È¤·¤Æ¤â»È¤¨¤Þ¤¹¡£ ¥·¥ó¥Ü¥ë¤Î¤³¤ì¤é2¤Ä¤Î»È¤¤Êý¤ÏÆÈΩ¤·¤Æ¤¤¤Æ¾×ÆÍ¤·¤Þ¤»¤ó¡£ ¡ÊScheme¤Ê¤É¤ÎLisp¤ÎÊý¸À¤Î¤Ê¤«¤Ë¤Ï¡¢ ¥·¥ó¥Ü¥ë¤ÎÃͤȤ½¤Î´Ø¿ôÄêµÁ¤ò¶èÊ̤·¤Ê¤¤¤â¤Î¤â¤¢¤ë¡£ ÊÑ¿ô¤È¤·¤Æ¤Î¥·¥ó¥Ü¥ë¤ÎÃͤϡ¢¤½¤Î´Ø¿ôÄêµÁ¤Ç¤â¤¢¤ë¡£¡Ë ¥·¥ó¥Ü¥ë¤Ë´Ø¿ôÄêµÁ¤òÍ¿¤¨¤Æ¤¤¤Ê¤¤¤È¡¢¤½¤Î¥·¥ó¥Ü¥ë¤ò´Ø¿ô¤È¤·¤Æ¤Ï»È¤¨¤Þ¤»¤ó¡£ ¤³¤ì¤Ï¡¢¥·¥ó¥Ü¥ë¤ËÊÑ¿ô¤È¤·¤Æ¤ÎÃͤ¬¤¢¤ë¤«¤É¤¦¤«¤Ë¤Ï´Ø·¸¤·¤Þ¤»¤ó¡£