Previous: Type Predicates, Up: Lisp Data Types   [Contents][Index]


2.6 ƱÃͽҸì

2¤Ä¤Î¥ª¥Ö¥¸¥§¥¯¥È¤ÎƱÃÍ´Ø·¸¤òÄ´¤Ù¤ë2¤Ä¤Î´Ø¿ô¤òÀâÌÀ¤·¤Þ¤¹¡£ ʸ»úÎó¤Ê¤É¤ÎÆÃÄê¤Î¥ª¥Ö¥¸¥§¥¯¥È¤¬Æ±ÃͤǤ¢¤ë¤«¤òÄ´¤Ù¤ë´Ø¿ô·²¤â¤¢¤ê¤Þ¤¹¡£ ¤³¤ì¤é¤Î½Ò¸ì¤Ë¤Ä¤¤¤Æ¤Ï¡¢¥Ç¡¼¥¿·¿¤ò½Ò¤Ù¤Æ¤¤¤ëŬÀڤʾϤò»²¾È¤·¤Æ¤¯¤À¤µ¤¤¡£

Function: eq object1 object2

¤³¤Î´Ø¿ô¤Ï¡¢object1¤Èobject2¤¬ Ʊ°ì¥ª¥Ö¥¸¥§¥¯¥È¤Ç¤¢¤ì¤Ðt¤òÊÖ¤·¡¢¤µ¤â¤Ê¤±¤ì¤Ðnil¤òÊÖ¤¹¡£ ¡ØÆ±°ì¥ª¥Ö¥¸¥§¥¯¥È¡Ù¤È¤Ï¡¢ °ìÊý¤òÊѹ¹¤¹¤ë¤È¡¢Â¾Êý¤Ë¤âƱ¤¸Êѹ¹¤¬È¿±Ç¤µ¤ì¤ë¤³¤È¤ò°ÕÌ£¤¹¤ë¡£

eq¤Ï¡¢object1¤Èobject2¤¬Æ±¤¸ÃͤÎÀ°¿ô¤Ç¤¢¤ë¤È t¤òÊÖ¤¹¡£ ¤Þ¤¿¡¢¥·¥ó¥Ü¥ë̾¤Ï¡¢ÉáÄÌ¡¢°ì°Õ¤Ç¤¢¤ë¤Î¤Ç¡¢ °ú¿ô¤¬Æ±¤¸Ì¾Á°¤Î¥·¥ó¥Ü¥ë¤Ç¤¢¤ì¤Ð¡¢¤½¤ì¤é¤Ïeq¤Ç¤¢¤ë¡£ ¡Ê¥ê¥¹¥È¡¢¥Ù¥¯¥È¥ë¡¢Ê¸»úÎó¤Ê¤É¤Î¡Ë¤½¤ì°Ê³°¤Î·¿¤Î¾ì¹ç¡¢ 2¤Ä¤Î°ú¿ô¤¬Æ±¤¸ÆâÍÆ¤äÍ×ÁǤǤ¢¤Ã¤Æ¤â¡¢ ¸ß¤¤¤Ëeq¤Ç¤¢¤ë¤È¤Ï¸Â¤é¤Ê¤¤¡£ ¤½¤ì¤é¤¬Æ±°ì¥ª¥Ö¥¸¥§¥¯¥È¤Ç¤¢¤ë¾ì¹ç¤Ë¸Â¤êeq¤Ç¤¢¤ë¡£

(eq 'foo 'foo)
     ⇒ t
(eq 456 456)
     ⇒ t
(eq "asdf" "asdf")
     ⇒ nil
(eq '(1 (2 (3))) '(1 (2 (3))))
     ⇒ nil
(setq foo '(1 (2 (3))))
     ⇒ (1 (2 (3)))
(eq foo foo)
     ⇒ t
(eq foo '(1 (2 (3))))
     ⇒ nil
(eq [(1 2) 3] [(1 2) 3])
     ⇒ nil
(eq (point-marker) (point-marker))
     ⇒ nil

´Ø¿ômake-symbol¤Ï¡¢¥¤¥ó¥¿¡¼¥ó¤·¤¿¥·¥ó¥Ü¥ë¤òÊÖ¤¹¡£ ¤³¤Î¥·¥ó¥Ü¥ë¤Ï¡¢Lisp¼°¤Ë½ñ¤¤¤¿Æ±¤¸Ì¾Á°¤Î¥·¥ó¥Ü¥ë¤È¶èÊ̤µ¤ì¤ë¡£ ̾Á°¤¬Æ±¤¸¤Ç¤â¶èÊ̤µ¤ì¤ë¥·¥ó¥Ü¥ë¤Ïeq¤Ç¤Ï¤Ê¤¤¡£ see Creating Symbols¡£

(eq (make-symbol "foo") 'foo)
     ⇒ nil
Function: equal object1 object2

¤³¤Î´Ø¿ô¤Ï¡¢ object1¤Èobject2¤¬Åù¤·¤¤Í×ÁǤò»ý¤Æ¤Ðt¤òÊÖ¤·¡¢ ¤µ¤â¤Ê¤±¤ì¤Ðnil¤òÊÖ¤¹¡£ eq¤Ï°ú¿ô¤¬Æ±°ì¥ª¥Ö¥¸¥§¥¯¥È¤«¤É¤¦¤«¤òÄ´¤Ù¤ë¤¬¡¢ equal¤Ï¡¢Æ±°ì¤Ç¤Ï¤Ê¤¤°ú¿ô¤ÎÆâÉô¤òÄ´¤Ù¡¢ ¤½¤ì¤é¤ÎÍ×ÁǤ¬Æ±¤¸¤«¤É¤¦¤«¤òÄ´¤Ù¤ë¡£ ¤·¤¿¤¬¤Ã¤Æ¡¢2¤Ä¤Î¥ª¥Ö¥¸¥§¥¯¥È¤¬eq¤Ê¤é¤Ð¡¢ ¤½¤ì¤é¤Ïequal¤Ç¤¢¤ë¤¬¡¢¤½¤ÎµÕ¤Ï¤Ä¤Í¤Ë¿¿¤È¤Ï¸Â¤é¤Ê¤¤¡£

(equal 'foo 'foo)
     ⇒ t
(equal 456 456)
     ⇒ t
(equal "asdf" "asdf")
     ⇒ t
(eq "asdf" "asdf")
     ⇒ nil
(equal '(1 (2 (3))) '(1 (2 (3))))
     ⇒ t
(eq '(1 (2 (3))) '(1 (2 (3))))
     ⇒ nil
(equal [(1 2) 3] [(1 2) 3])
     ⇒ t
(eq [(1 2) 3] [(1 2) 3])
     ⇒ nil
(equal (point-marker) (point-marker))
     ⇒ t
(eq (point-marker) (point-marker))
     ⇒ nil

ʸ»úÎó¤ÎÈæ³Ó¤Ç¤ÏÂçʸ»ú¾®Ê¸»ú¤ò¶èÊ̤¹¤ë¤¬¡¢¥Æ¥­¥¹¥È°À­¤Ï¹Íθ¤·¤Ê¤¤¡£ ¤Ä¤Þ¤ê¡¢Ê¸»úÎóÆâ¤Îʸ»ú¤À¤±¤òÈæ³Ó¤¹¤ë¡£ ʸ»úÎó¤ÎÆâÍÆ¤¬¤¹¤Ù¤ÆASCII¤Ç¤Ê¤±¤ì¤Ð¡¢ ¥æ¥Ë¥Ð¥¤¥Èʸ»úÎó¤È¥Þ¥ë¥Á¥Ð¥¤¥Èʸ»úÎó¤¬Åù¤·¤¤¤³¤È¤Ï¤Ê¤¤ ¡Êsee Text Representations¡Ë¡£

(equal "asdf" "ASDF")
     ⇒ nil

¤¿¤È¤¨ÆâÍÆ¤¬Æ±¤¸¤Ç¤¢¤Ã¤Æ¤â¡¢ °Û¤Ê¤ë2¤Ä¤Î¥Ð¥Ã¥Õ¥¡¤¬equal¤Ç¤¢¤ë¤³¤È¤Ï¤Ê¤¤¡£

equal¤Î¸¡ºº¤ÏºÆµ¢¤Ç¼ÂÁõ¤µ¤ì¤Æ¤¤¤ë¤Î¤Ç¡¢ ¥ê¥¹¥È¤Ë½Û´Ä¤¬¤¢¤ë¤È̵¸ÂºÆµ¢¤ò°ú¤­µ¯¤³¤·¡Ê¥¨¥é¡¼¤Ë¤Ê¤ê¡Ë¤Þ¤¹¡£