Next: , Previous: Macro Type, Up: Programming Types   [Contents][Index]


2.3.14 ´ðËÜ´Ø¿ô·¿

´ðËÜ´Ø¿ô·¿¡Êprimitive function¡Ë¤Ï¡¢ Lisp¤«¤é¸Æ¤Ó½Ð¤·²Äǽ¤Ê´Ø¿ô¤Ç¤¹¤¬¡¢C¸À¸ì¤Ç½ñ¤¤¤Æ¤¢¤ê¤Þ¤¹¡£ ´ðËÜ´Ø¿ô¤Î¤³¤È¤òsubr¤È¤« ÁȤ߹þ¤ß´Ø¿ô¡Êbuilt-in functions¡Ë¤È¤â¸Æ¤Ó¤Þ¤¹¡£ ¡Ê¡Øsubr¡Ù¤Ï¡Øsubroutine¡Ù¤«¤é¤­¤Æ¤¤¤ë¡£¡Ë ¤Û¤È¤ó¤É¤Î´ðËÜ´Ø¿ô¤Ï¡¢¸Æ¤Ó½Ð¤¹¤È¤­¤Ë¤¹¤Ù¤Æ¤Î°ú¿ô¤òɾ²Á¤·¤Þ¤¹¡£ °ú¿ô¤¹¤Ù¤Æ¤òɾ²Á¤·¤Ê¤¤´ðËÜ´Ø¿ô¤ò¥¹¥Ú¥·¥ã¥ë¥Õ¥©¡¼¥à¡Êspecial form¡Ë¤È ¸Æ¤Ó¤Þ¤¹¡Êsee Special Forms¡Ë¡£

´Ø¿ô¤ò¸Æ¤Ó½Ð¤¹Â¦¤«¤é¤¹¤ì¤Ð¡¢´Ø¿ô¤¬´ðËÜ´Ø¿ô¤«¤É¤¦¤«¤Ï´Ø·¸¤¢¤ê¤Þ¤»¤ó¡£ ¤·¤«¤·¡¢Lisp¤Ç½ñ¤¤¤¿´Ø¿ô¤Ç´ðËÜ´Ø¿ô¤òºÆÄêµÁ¤·¤è¤¦¤È¤¹¤ë¤È¡¢ ÌäÂ꤬¤¢¤ê¤Þ¤¹¡£ ¤È¤¤¤¦¤Î¤Ï¡¢´ðËÜ´Ø¿ô¤ÏC¤Î¥³¡¼¥É¤«¤éľÀܸƤФì¤ë¤«¤é¤Ç¤¹¡£ ºÆÄêµÁ¤·¤¿´Ø¿ô¤òLisp¤«¤é¸Æ¤Ó½Ð¤¹¾ì¹ç¤Ë¤Ï¿·¤·¤¤ÄêµÁ¤ò»È¤¤¤Þ¤¹¤¬¡¢ C¤Î¥³¡¼¥É¤ÏÁȤ߹þ¤ß¤ÎÄêµÁ¤ò»È¤¤Â³¤±¤ë¤Ç¤·¤ç¤¦¡£ ¤·¤¿¤¬¤Ã¤Æ¡¢´ðËÜ´Ø¿ô¤òºÆÄêµÁ¤·¤Ê¤¤¤Ç¤¯¤À¤µ¤¤¡£

´Ø¿ô¡Êfunction¡Ë¤È¤¤¤¦ÍѸì¤Ç¡¢ Lisp¤äC¤Ç½ñ¤«¤ì¤¿Emacs¤Î¤¹¤Ù¤Æ¤Î´Ø¿ô¤ò»Ø¤·¤Þ¤¹¡£ Lisp¤Ç½ñ¤¤¤¿´Ø¿ô¤Ë´Ø¤·¤Æ¤Ï¡¢See Function Type¡£

´ðËÜ´Ø¿ô¤Ë¤ÏÆþÎϹ½Ê¸¤Ï¤Ê¤¯¡¢ ¥µ¥Ö¥ë¡¼¥Æ¥£¥ó̾¤ò´Þ¤à¥Ï¥Ã¥·¥åµ­Ë¡¤Çɽ¼¨¤·¤Þ¤¹¡£

(symbol-function 'car)          ; ¥·¥ó¥Ü¥ë¤Î´Ø¿ô¥»¥ë¤ò»²¾È¤¹¤ë
     ⇒ #<subr car>
(subrp (symbol-function 'car))  ; ´ðËÜ´Ø¿ô¤«¡©
     ⇒ t                       ; ¤½¤Î¤È¤ª¤ê