중간 표현
보이기
프로그램 실행 |
---|
일반 개념 |
코드의 종류 |
컴파일 전략 |
저명한 런타임 |
저명한 컴파일러 및 툴체인 |
|
중간 표현(intermediate representation, IR)은 소스 코드를 표현하기 위해 컴파일러나 가상 머신에 의해 내부적으로 사용되는 데이터 구조 또는 코드이다. 중간 표현은 최적화, 변환 등 추가적인 처리를 위해 설계되어 있다.[1] 훌륭한 중간 표현은 "정확"해야 하는데, 즉 정보의 소실 없이 소스 코드를 표현할 수 있어야 하며[2] 특정 소스나 대상 언어와는 독립적이어야 한다.[1] 중간 표현은 여러 형태 중 하나를 취할 수 있다: 인 메모리 데이터 구조로서, 또는 프로그램이 읽을 수 있는 특수 튜플이나 스택 기반 코드로서.[3] 후자의 경우 중간 언어로도 부른다.
같이 보기
[편집]각주
[편집]- ↑ 가 나 Walker, David. “CS320: Compilers: Intermediate Representation” (Lecture slides). 2016년 2월 12일에 확인함.
- ↑ Chow, Fred (2013년 11월 22일). “The Challenge of Cross-language Interoperability”. 《ACM Queue》 11 (10). 2016년 2월 12일에 확인함.
- ↑ Toal, Ray. “Intermediate Representations”. 2016년 2월 12일에 확인함.