23 - LL Parsing (FOLLOW operation)
2021. 8. 25. 22:53ㆍ개발 관련 학습정리/컴파일러 만들기 (이론)
반응형
FOLLOW
follow 연산도 first와 마찬가지로 여러가지 룰이 적용된다.
먼저 정의이자 룰은,
1. FOLLOW란 해당 터미널/논터미널 바로 뒤에 따라오는 요소를 말한다.
first는 해당 논터미널이 전개되었을때 가장 앞에 오는 요소라면,
follow는 해당 논터미널 뒤에 가장 근접한 요소를 찾는다.
S -> aAtB 일때, A의 follow는 t가 되는것이다.
2. S -> AB에서, B가 epsilon이 아닐때 First(B)는 Follow(A)와 같다.
이는 AB가 있을때 A의 Follow는 B의 가장 앞쪽과 같기 때문에 이가 성립된다
3. S -> aB에서, Follow(B)는 Follow(S)와 같다.
B뒤에 뭐가 없는 상황일때, S의 마지막과 B의 마지막이 동일하기 때문에 부분집합으로 보아 이가 성립된다.
4. Follow()에 들어가는 요소가 스타트 심볼일때, 무조건 string이 포함된다.
이 룰은 하나의 규칙이므로 외우면 좋다.
반응형
'개발 관련 학습정리 > 컴파일러 만들기 (이론)' 카테고리의 다른 글
22- LL Parsing (FIRST operation) (0) | 2021.08.12 |
---|---|
21 - Bottom Up Parsing (0) | 2021.08.12 |
20 - Indirect Left-Recursion (0) | 2021.08.10 |
19 - Top Down Parsing (avoid Left-Recursion) (0) | 2021.08.09 |
18 - Top Down Parsing (1) (0) | 2021.08.05 |