현재 다음과 같은 문법이 있습니다.
COMPONENT = HEADER BODY
BODY = ELEMENT+
ELEMENT = EXPRESSION | DECLARATION | DESCRIPTION | NAME
나는 본문이 순서에 상관없이 각 ELEMENT 중 하나를 가져야한다고 주장하고 싶습니다. 현재 나는 파싱 후 이것을 확인하고 있지만 Parser Combinators
특히 guard
s를 사용하여 문법에서 이것을 표현할 수 있는지 궁금합니다.
나는 이것에 대해 더 많은 연구를 시도했지만 아무것도 나오지 않는 것 같습니다.
예, 가능합니다. 모든 유효한 순열을 기록하기 만하면됩니다. 이것은 손에서 벗어나게됩니다.
본질적으로 구문 전반에 걸쳐 제약 조건을 설정하려고 시도하고 있으며 문법은 문맥없는 제약 조건을 표현하는 데 정말 최고이기 때문에 문법으로 표현하는 것은 문제가되지 않습니다.
가능한 모든 절을 옵션으로 허용하는 문법 규칙으로 구문 분석하고 추가 제약 조건을 확인하기 위해 의미 론적 패스 (어쨌든 하나가 있음)를 구축하는 것이 좋습니다.
이 기사는 인터넷에서 수집됩니다. 재 인쇄 할 때 출처를 알려주십시오.
침해가 발생한 경우 연락 주시기 바랍니다[email protected] 삭제
몇 마디 만하겠습니다