LangDev

아.. 파싱하는 부분이 어렵군요

인테그랄

파싱하는거 때문에 굉장히 골 머리를 썩이고 있습니다

인터넷 찾아보니 단항연산자,이항연산자 파싱하는거는 스택쓰는 방법으로 잘 나오던데 삼항연산자나 그 이상의 연산자 파싱하는거는 어디를 찾아봐도 없네요

혹시 컴파일러나 인터프리터 짜보신 횽들 계시면 삼항연산자나 그 이상의 연산자 파싱 어떻게 하셨는지 조언좀 주시면 감사하겠습니다

가장 간단한 방법은 아마도 재귀 하강 파싱일겁니다. 근데 그냥 파서 생성기 쓰시는 게 편할걸요?

디토

recursive descent parser만큼 컴파일러 만드는 걸 잘 이해할 수 있는 방법은 없다고 생각합니다. 현재 인테그랄님은 배우시는 입장인 것 같은데 한번 시도해보시기를 권합니다. 프로그래밍에 익숙하시다면 recursive descent parser를 만드는 수고는 사실 아무것도 아닙니다. 사실, 파서 생성기를 배우는 것은 반드시 해야할 일입니다. 하지만 파서 생성기는 수많은 종류가 있기때문에 나에게 필요한 부분이 어떤 것인가 적당히 잘 판별해서 배우는 것이 중요하다고 생각합니다.

semmal