作者ntouckcm (知足常乐)
看板Programming
标题[问题] compiler
时间Thu Jun 19 10:15:47 2008
请问一下
找不到问compiler的专版,但是又有问题,所以只好po在这,请大大解惑
一个文法:
exp->atom|list
atom->num|id
list->(exp-list)
exp-list->exp-list exp|exp
num和id 是terminal,其他是nonterminal
要消去上面的left recursion
公式:A->Aa|b
变成:A->bA'
A'->aA'|ε
但是我不知道要不要取代exp
(1)exp-list->exp-list exp|exp
变成:
exp-list->exp exp-list'
exp-list'->exp exp-list'|ε
(2)exp-list->exp-list exp|exp
先取代:exp-list->exp-list exp|atom|list
变成:
exp-list->atom exp-list'|list exp-list'
exp-list->exp exp-list'|ε
请问一下哪个才对?
--
※ 发信站: 批踢踢实业坊(ptt.cc)
◆ From: 140.121.219.142