2017-10-04 23 views
3

이것은 간단한 질문처럼 보입니다. 그러나 나는 이것에 대한 좋은 설명을 찾을 수 없습니다. 어떻게 [기가 사용될] (.. 일명 다른 문법을 참조 문법) 예를 들어,컴파일러 디자인에서 중첩 된 문법

S => Eb 
E => cA 

별도의 문법을 중첩 문법을 처리하나요 :

A => d 

이 가능합니까? 그렇지 않다면 어떻게 대응할 것인가? 변수 선언과 같은 문법의 경우 기본 문법과 관련된 표현식 문법을 간단히 다시 작성해야하거나 문법 문구에서 참조 할 수 있습니까? 그렇다면 LL (1) 파서에이 기능을 어떻게 통합 할 것인가?

감사합니다.

+0

'A => d'는 '별도의 문법'이 아닙니다. 논리적으로 말하면 첫 번째 문법의 일부이며, 그렇지 않으면 불완전합니다. – EJP

답변

2

나는 당신의 질문이 물리적 인 분리를 다루고 있다고 믿는다.이 경우에 모두 합쳐서 완전한 메인 문법을 형성 할 수있다.

개념적으로 규칙이없는 문법은 일관성이없고 잘못된 것으로 간주됩니다.