2017-05-06 8 views
2

FIRST는 LL 문법LL 문법과

STATEMENT ::= ε | R 
R   :: = print (variable) 

의 덩어리를 가정 그리고

FIRST(STATEMENT) = FIRST(ε) + FIRST(R) 
FIRST(R) = { print (variable) } 

내 질문은 첫 번째 (정책을) 찾아보십시오. FIRST (R)이 맞습니까? 또는 아래 :

FIRST(R) = {print} 

답변

0

아니, FIRST (R)는 print 토큰이라고 가정 단지 print입니다.

+0

답변 해 주셔서 감사합니다. 흠! 그래서 우리는 FIRST 알고리즘을 실행하기 위해 오른쪽 측면을 토큰으로 분할해야합니까? –

+0

터미널과 비 터미널에서 오른쪽을 분리해야합니다. 그런 다음 [규칙]을 적용 할 수 있습니다 (https://www.cs.virginia.edu/~cs415/reading/FirstFollowLL.pdf) –

+0

흠! 그래서, "print (variable)"는 두 개의 비 터미널로 구성되어 있습니까? –