
Syntax * 변환기는 '반드시' 코드를 이해하고 같은 지시의 순서를 제공해야한다.* Codes in high level language >> Translater(complier, interpreter) >> Machine codes(binary code) 어떻게 체계적으로 PL(Programming Language)을 정의할까? 누구나 문법을 이해할...

Using Racket S-expression : 구조적인 데이터를 사람이 읽을 수 있는 텍스트 형태로 나타내는 방법 atom, list 로 구분할 수 있다.

Parsing : 프로그래밍 언어의 형식을 분석하고, 데이터를 이해하며, 실행방식으로 변환하는 핵심 과정 Abstract syntax tree (AST) : 분석을 위한 필요한 구문론적 구조를 제공 : 가장 대중적으로 사용되는 tree 구조 AST as List 선

🧭 1. 함수적 접근 (Functional Approach)💡 핵심 개념:변수(이름)는 변하지 않는 값을 나타낸다.변수 이름은 환경(environment)을 통해 그 값에 연결된다.한 번 바인딩된 값은 바뀌지 않는다. 상태(state)라는 개념이 없다.🧱 작동 구

🔷 Result 기반 인터프리터의 전체 구조 및 동작 원리기존의 인터프리터는 다음처럼 오직 값만 반환했습니다racket하지만 아래 같은 상황에서는 "값만"으론 부족합니다:racket위 예시처럼 변수에 값을 재할당하는 mutation (상태 변화) 를 표현하려면, 단순

📌 개념변수 초기화는 C에서 int a = 1;처럼 새로운 변수에 값을 할당하는 구조입니다.Racket에서도 같은 의미로 (let (a 1) ...) 형태를 사용합니다.📌 AST 표현racket해석: 'a를 10으로 바인딩하고, 그 환경에서 a + 5를 수행하라.