파서까지 끝났으니 남은 길을 다시 적는다. 필드 단위 대여가 목록에 올라왔다 -- map 도 파서도 같은 자리에서 걸렸다. 224/224, 31/31.
Ferro 로 쓴 Ferro 프런트엔드
셀프호스팅의 강제 함수. 언어가 자기 컴파일러를 쓸 만한지는 써 봐야 안다.
| 파일 | 무엇 |
|---|---|
tok.fe |
토큰. 텍스트를 들지 않고 소스 안의 위치를 든다 (R4) |
scan.fe |
렉서. next(src, &mut at, &mut line) |
main.fe |
렉서 프로그램. 종류별로 세고 몇 개를 찍는다 |
ast.fe |
노드. 자식은 노드 배열 안의 인덱스다 |
parse.fe |
재귀 하강 파서. 토큰 하나를 앞서 본다 |
tree.fe |
파서 프로그램. 식을 전위 표기로 다시 찍는다 |
전위 표기로 찍는 것이 요점이다. 1 + 2 * 3 이 (+ 1 (* 2 3)) 로 나오는 것
말고는 우선순위가 맞았는지 볼 방법이 없다.