RSS DEV 커뮤니티

바퀴 재발명하기: C#으로 컴파일러 만들기 - 파트 3

이 게시물은 프로그래밍 언어에 변수 선언을 도입합니다. 저자는 코드를 재구성하여 런타임 실행을 위한 새로운 네임스페이스를 만들고, Lexer 및 SyntaxParser 클래스를 리팩토링했습니다. `int`, `double`, `string`, `bool`과 같은 주요 토큰은 `DataType`로 도입되었고, 변수 이름은 `Identifier`로 표현됩니다. 이제 Lexer는 문자열, 키워드, 식별자 및 기호에 대한 토큰을 추출합니다. SyntaxParser는 변수 선언, 할당 및 문자열 연산을 처리하도록 업데이트되었습니다. `Evaluate` 메서드는 각 표현식의 결과를 나타내는 `Identifier` 목록을 반환합니다. 예시에서는 변수 선언과 `print` 함수의 사용법을 보여줍니다. 게시물은 각 표현식이 `Identifier`로 표현된다는 점을 강조하며 마무리됩니다.
favicon
dev.to
Reinventando a Roda: Criando um compilador em csharp - Parte 3