[나시고랭 컴파일러 개발] 1 - Parsing Lib 만들기

2021. 8. 18. 00:42개발 관련 학습정리/컴파일러 만들기 (개발)

반응형

드디어 컴파일러 개발 착공을 시작하게 되었다.

컴파일러 개발 언어는 제일 익숙한 c#으로 하기로 했다. 

새로 만들 언어 이름은 nasigo-language, 유일하게 자신있는 요리이자 내가 좋아하는 음식이다.

 

 

첫번째로, 코드를 불러올 Parsing에 관한 라이브러리를 만들기로 하였다.

Parsing Data라는 class를 통해 데이터를 주고 받도록 설계되어 있으며,

메서드 클래스와 데이터 타입 클래스로 나누어져 있다.

 

 

 

Parsing Data는 String과 List를 통해 접근할 수 있으며, 추가는 클래스 내 Add 함수만을 통해 할 수 있다.

 

 

Parser는 Nasigolang Main에서 Singleton을 통해 접근할 수 있고, 

클라이언트 역할인 DoParse와

실제 구현부인 ParsingLine으로 구성되어 있다.

앞으로 Parser 클래스 내에 전처리, Lexer와의 연계 처리 부분을 추가할 예정이다.

 

 

현재 개발하는 Parser는 고급 언어를 Read하는 부분을 말하며,

Syntax Analysis와 같은 말인 Parsing은 이 컴파일러 개발에서 Syntax Analysis로 표기합니다.

 

 

반응형