Next: Semantics, Previous: Rules, Up: Grammar File [Contents][Index]
result¤Ç¤¢¤ëÈó½ªÃ¼µ¹æ¤¬µ¬Â§¤Î±¦Â¦¤Ë¤â¸½¤ì¤ë¾ì¹ç¤Ë¡¢ ¤½¤Îµ¬Â§¤ÏºÆµ¢Åª¡Êrecursive¡Ë¤Ç¤¢¤ë¤È¤¤¤¤¤Þ¤¹¡£ Bisonʸˡ¤ÎÂçÉôʬ¤ÏºÆµ¢Åªµ¬Â§¤ò»È¤¤¤Þ¤¹¡£ ¤Ê¤¼¤Ê¤é¤Ð¡¢Ç¤°Õ¤Î¿ô¤ÎʤӤòÄêµÁ¤¹¤ëÍ£°ì¤ÎÊýË¡¤¬¡¢ ºÆµ¢Åªµ¬Â§¤À¤«¤é¤Ç¤¹¡£ 1¤Ä°Ê¾å¤Î¥«¥ó¥Þ¤Ç¶èÀÚ¤é¤ì¤¿¼°¤ÎʤӤÎÄêµÁ¤ò¹Í¤¨¤Æ¤ß¤Þ¤·¤ç¤¦¡£
expseq1: exp | expseq1 ',' exp ;
expseq1
¤Ç»È¤ï¤ì¤Æ¤¤¤ëºÆµ¢¤Ï¡¢µ¬Â§¤Î±¦Â¦¤ÎÃæ¤Ç¤â¤Ã¤È¤âº¸Â¦¤Ë¤¢¤ë¤Î¤Ç¡¢
¤³¤Î¤è¤¦¤ÊºÆµ¢¤òº¸ºÆµ¢¡Êleft recursion¡Ë¤È¸Æ¤Ó¤Þ¤¹¡£
µÕ¤Ë¡¢Æ±¤¸¹½Â¤¤ò±¦ºÆµ¢¡Êright recursion¡Ë¤ò»È¤Ã¤Æ½ñ¤¤¤Æ¤ß¤Þ¤¹¡£
expseq1: exp | exp ',' expseq1 ;
¤¢¤é¤æ¤ëʤӤò¡¢º¸ºÆµ¢¤ò»È¤Ã¤Æ¤â¡¢±¦ºÆµ¢¤ò»È¤Ã¤Æ¤â¡¢ÄêµÁ¤Ç¤¤Þ¤¹¡£ ¤·¤«¤·¡¢¸Â¤é¤ì¤¿¥¹¥¿¥Ã¥¯ÍÆÎ̤ÇǤ°Õ¤Î¿ô¤ÎʤӤòÁöºº¤Ç¤¤ë¤Î¤Ç¡¢ ¤Ä¤Í¤Ëº¸ºÆµ¢¤ò»È¤¦¤Ù¤¤Ç¤¹¡£ ±¦ºÆµ¢¤Ç¤Ï¡¢µ¬Â§¤¬Å¬ÍѤµ¤ì¤ëÁ°¤Ë¤¹¤Ù¤Æ¤ÎÍ×ÁǤò¥¹¥¿¥Ã¥¯¤ËÀѤàɬÍפ¬¤¢¤ë¤Î¤Ç¡¢ Í×ÁǤοô¤ËÈæÎ㤹¤ë¥¹¥¿¥Ã¥¯Îΰè¤ò¾ÃÈñ¤·¤Þ¤¹¡£ ¾ÜºÙ¤Ë¤Ä¤¤¤Æ¤Ï¡¢See The Bison Parser Algorithm¡£
µ¬Â§¤Î·ë²Ì¤¬Ä¾Àܤ½¤Î±¦Â¦¤Ë¤Ï´Þ¤Þ¤ì¤º¡¢ ±¦Â¦¤Ë¤¢¤ëÈó½ªÃ¼µ¹æ¤ÎÃæ¤Ë´Þ¤Þ¤ì¤ë¤È¤¡¢ ´ÖÀÜ¡Êindirect¡Ë¤¹¤Ê¤ï¤ÁÁê¸ß¡Êmutual¡ËºÆµ¢¤¬µ¯¤¤Þ¤¹¡£
Îã¤ò¼¨¤·¤Þ¤¹¡£
expr: primary | primary '+' primary ;
primary: constant | '(' expr ')' ;
¤³¤ÎÎã¤Ç¤Ï¡¢¤½¤ì¤¾¤ì¤Îµ¬Â§¤¬¸ß¤¤¤Ë»²¾È¤·¤Æ¤¤¤ë¤Î¤Ç¡¢ 2¸Ä¤ÎÁê¸ßºÆµ¢¤¬ÄêµÁ¤µ¤ì¤Æ¤¤¤Þ¤¹¡£