Next: , Previous: Building Emacs, Up: GNU Emacs Internals   [Contents][Index]


B.2 ¥Ô¥å¥¢¥á¥â¥ê

Emacs Lisp¤Ç¤Ï¡¢¥æ¡¼¥¶¡¼¤¬ºîÀ®¤·¤¿Lisp¥ª¥Ö¥¸¥§¥¯¥È¸þ¤±¤Ë 2¼ïÎà¤Î¥á¥â¥ê¡¢ÉáÄÌ¥á¥â¥ê¡Ênormal storage¡Ë¤È ¥Ô¥å¥¢¥á¥â¥ê¡Êpure storage¡Ë¤ò»È¤¤¤Þ¤¹¡£ ÉáÄÌ¥á¥â¥ê¤Ï¡¢Emacs¥»¥Ã¥·¥ç¥óÃæ¤Ë¿·¤¿¤ËºîÀ®¤µ¤ì¤ë¤¹¤Ù¤Æ¤Î¥Ç¡¼¥¿¤òÃÖ¤¯¾ì½ê¤Ç¤¹¡£ ÉáÄÌ¥á¥â¥ê¤Ë´Ø¤¹¤ë¾ðÊó¤Ï°Ê²¼¤ÎÀá¤ò»²¾È¤·¤Æ¤¯¤À¤µ¤¤¡£ ¥Ô¥å¥¢¥á¥â¥ê¤Ï¡¢¤¢¤é¤«¤¸¤á¥í¡¼¥É¤·¤¿É¸½àLisp¥Õ¥¡¥¤¥ë·²¤ÎÆÃÄê¤Î¥Ç¡¼¥¿¡¢ ¤Ä¤Þ¤ê¡¢Emacs¤Î¼Â¹ÔÃæ¤Ë¤±¤Ã¤·¤ÆÊѲ½¤·¤Ê¤¤¥Ç¡¼¥¿¤ò¼ý¤á¤ë¤¿¤á¤Ë»È¤¤¤Þ¤¹¡£

¥Ô¥å¥¢¥á¥â¥ê¤Ï¡¢temacs¤¬¤¢¤é¤«¤¸¤á¥í¡¼¥É¤¹¤ëɸ½àLisp¥é¥¤¥Ö¥é¥ê¤ò ¥í¡¼¥É¤·¤Æ¤¤¤ëºÇÃæ¤Ë¤Î¤ß³ä¤êÅö¤Æ¤é¤ì¤Þ¤¹¡£ ¥Õ¥¡¥¤¥ëemacs¤Ç¤ÏÆÉ¤ß½Ð¤·ÀìÍÑ ¡Ê¤³¤ì¤¬¤Ç¤­¤ë¥ª¥Ú¥ì¡¼¥Æ¥£¥ó¥°¥·¥¹¥Æ¥à¤Ç¤Ï¡Ë¤È°õ¤¬ÉÕ¤±¤é¤ì¡¢ Åö³º¥Þ¥·¥ó¤ÇƱ»þ¤Ë¼Â¹Ô¤µ¤ì¤Æ¤¤¤ë¤¹¤Ù¤Æ¤ÎEmacs¤Î¥¸¥ç¥Ö¤Ç ¥á¥â¥êÎΰè¤ò¶¦Í­¤Ç¤­¤ë¤è¤¦¤Ë¤·¤Þ¤¹¡£ ¥Ô¥å¥¢¥á¥â¥ê¤Ï³ÈÄ¥¤Ç¤­¤Þ¤»¤ó¡£ Emacs¤ò¥³¥ó¥Ñ¥¤¥ë¤·¤¿¤È¤­¤Ë¸ÇÄꥵ¥¤¥º¤¬³ä¤êÅö¤Æ¤é¤ì¡¢ ¤¢¤é¤«¤¸¤á¥í¡¼¥É¤¹¤ë¥é¥¤¥Ö¥é¥ê¤ËÂФ·¤Æ½½Ê¬¤ÊÂ礭¤µ¤¬¤Ê¤¤¤È temacs¤Ï¥¯¥é¥Ã¥·¥å¤·¤Þ¤¹¡£ ¤½¤Î¾ì¹ç¤Ë¤Ï¡¢¥Õ¥¡¥¤¥ësrc/puresize.h¤Î¥³¥ó¥Ñ¥¤¥ë¥Ñ¥é¥á¡¼¥¿ PURESIZE¤òÁý¤ä¤¹É¬Íפ¬¤¢¤ê¤Þ¤¹¡£ ¤¢¤é¤«¤¸¤á¥í¡¼¥É¤¹¤ë¥é¥¤¥Ö¥é¥ê¤òÄɲä·¤¿¤êɸ½àµ¡Ç½¤Ëµ¡Ç½¤òÄɲ䷤ʤ±¤ì¤Ð¡¢ ¤½¤Î¤è¤¦¤Ê¤³¤È¤ÏÉáÄ̤ϵ¯¤³¤é¤Ê¤¤¤Ï¤º¤Ç¤¹¡£

Function: purecopy object

¤³¤Î´Ø¿ô¤Ï¡¢¥Ô¥å¥¢¥á¥â¥êÆâ¤Ëobject¤ò¥³¥Ô¡¼¤·¤½¤ì¤òÊÖ¤¹¡£ ʸ»úÎó¤Î¥³¥Ô¡¼¤Ç¤Ï¡¢¥Ô¥å¥¢¥á¥â¥êÆâ¤ËƱ¤¸Ê¸»ú¤Î¿·¤¿¤Êʸ»úÎó¤òñ½ã¤Ëºî¤ë¡£ ¥Ù¥¯¥È¥ë¤ä¥³¥ó¥¹¥»¥ë¤ÎÆâÍÆ¤ÏºÆµ¢Åª¤Ë¥³¥Ô¡¼¤¹¤ë¡£ ¥·¥ó¥Ü¥ë¤Ê¤É¤Î¾¤Î¥ª¥Ö¥¸¥§¥¯¥È¤Ï¥³¥Ô¡¼¤»¤º¤Ë̵Êѹ¹¤Ç¤½¤ì¤é¤òÊÖ¤¹¡£ ¥Þ¡¼¥«¤ò¥³¥Ô¡¼¤·¤è¤¦¤È¤¹¤ë¤È¥¨¥é¡¼¤òÄÌÃΤ¹¤ë¡£

¤³¤Î´Ø¿ô¤Ï¡¢Emacs¤ò¹½ÃÛ¤·¤Æ¥À¥ó¥×¤¹¤ë¤È¤­°Ê³°¤Ç¤Ï¤Ê¤Ë¤â¤·¤Ê¤¤¡£ ÉáÄ̤ϥե¡¥¤¥ëemacs/lisp/loaddefs.el¤Ç¤Î¤ß¸Æ¤Ó½Ð¤µ¤ì¤ë¤¬¡¢ ¤¢¤é¤«¤¸¤á¥í¡¼¥É¤¹¤ë¤È¤³¤ì¤ò¸Æ¤Ó½Ð¤¹¤è¤¦¤Ê¥Ñ¥Ã¥±¡¼¥¸¤â¾¯¿ô¤À¤¬¤¢¤ë¡£

Variable: pure-bytes-used

¤³¤ÎÊÑ¿ô¤ÎÃͤϡ¢³ä¤êÅö¤ÆºÑ¤ß¤Î¥Ô¥å¥¢¥á¥â¥ê¤Î¥Ð¥¤¥È¿ô¤Ç¤¢¤ë¡£ ŵ·¿Åª¤Ë¤Ï¡¢¥À¥ó¥×¤·¤¿Emacs¤Ç¤Ï ¤³¤ÎÃͤÏÍøÍѲÄǽ¤Ê¥Ô¥å¥¢¥á¥â¥ê¤ÎÁíÎ̤ˤȤƤâ¶á¤¤¡£ ¤½¤¦¤Ç¤Ê¤¤¾ì¹ç¤Ë¤Ï¡¢¤¢¤é¤«¤¸¤á¥í¡¼¥É¤·¤¿¥é¥¤¥Ö¥é¥ê¤¬¾¯¤Ê¤¤¤Î¤Ç¤¢¤í¤¦¡£

Variable: purify-flag

¤³¤ÎÊÑ¿ô¤Ï¡¢defun¤¬´Ø¿ôÄêµÁ¤ò¥Ô¥å¥¢¥á¥â¥ê¤Ë ¥³¥Ô¡¼¤¹¤Ù¤­¤«¤É¤¦¤«¤ò·èÄꤹ¤ë¡£ nil°Ê³°¤Ç¤¢¤ë¤È¡¢´Ø¿ôÄêµÁ¤ò¥Ô¥å¥¢¥á¥â¥ê¤Ë¥³¥Ô¡¼¤¹¤ë¡£

Emacs¤ò¹½ÃÛÃæ¤Î½é´üÃʳ¬¤Ç¤¹¤Ù¤Æ¤Î´ðËÜŪ¤Ê´Ø¿ô¤ò¥í¡¼¥ÉÃæ¤Ë¤Ï ¡Ê¤³¤ì¤é¤Î´Ø¿ô¤ò¶¦Í­¤·¤Æ¥¬¥Ù¥Ã¥¸¥³¥ì¥¯¥·¥ç¥ó¤ÎÂоݤˤ·¤Ê¤¤¤è¤¦¤Ë¡Ë¡¢ ¤³¤Î¥Õ¥é¥°¤Ït¤Ç¤¢¤ë¡£ ¼Â¹Ô·Á¼°¤È¤·¤ÆEmacs¤ò¥À¥ó¥×¤¹¤ë¤È¤­¤Ë¤Ï¡¢ ¥À¥ó¥×Á°¸å¤Î¼ÂºÝ¤ÎÃͤˤϴط¸¤Ê¤¯¤³¤ÎÊÑ¿ô¤Ë¤Ïnil¤ò½ñ¤¯¡£

¼Â¹ÔÃæ¤ÎEmacs¤Ç¤³¤Î¥Õ¥é¥°¤òÊѹ¹¤¹¤ë¤Ù¤­¤Ç¤Ï¤Ê¤¤¡£