해석 기법이란?
- 고급 언어로 작성된 프로그램을 바로 실행하는 장점이 있다
인터프리터는 프로그램을 한 줄씩 실행하며, 소스 코드를 즉시 실행 코드로 변환하고 실행하는 방식을 사용합니다.
인터프리터는 컴파일 과정을 거치지 않기 때문에, 코드 생성과 최적화 단계를 합친 것처럼 보일 수 있습니다.
하지만 인터프리터는 소스 코드를 한 번에 분석하고 최적화하지 않고, 실행 시간에 소스 코드를 직접 해석하여 실행합니다.
즉 번역 된 결과를 중간 코드나 기계어로 저장하지 않고 바로 실행하는 것입니다
인터프리터의 장점은 다음과 같습니다:
- 개발 과정이 빠르고 쉽습니다
- 컴파일 과정이 없기 때문에 수정 후 바로 실행해 볼 수 있어 개발이 더 빠르게 진행됩니다.
- 플랫폼 독립적입니다
- 인터프리터는 소스 코드를 실행 시간에 해석하므로, 플랫폼에 종속되지 않은 코드를 작성할 수 있습니다.
그러나 인터프리터의 단점은 실행 속도가 컴파일러에 비해 느리다는 점입니다.
이는 실행 시간에 소스 코드를 해석하고 실행하기 때문에 발생하는 현상입니다.
- Ex. 파이썬
- 파이썬의 경우 인터프리터가 파이썬 코드를 바로 실행 가능한 바이트코드로 변환한다
- 변환 된 바이트 코드는 PVM에서 실행 된다
참고. 파이썬은 그러면 컴파일을 못하나요
파이썬도 컴파일 가능합니다. 파이썬은 대표적인 인터프리터 언어이죠.
보통 파이썬 코드는 인터프리터에 의해 바로 해석되어 실행됩니다.
하지만 파이썬 코드를 컴파일하여 바이트 코드로 변환하고, 이를 인터프리터가 실행하는 방식도 사용됩니다.
레퍼런스
728x90
'Computer Science > 프로그래밍 언어론' 카테고리의 다른 글
명령형 언어 (0) | 2023.03.26 |
---|---|
하이브리드 기법이란? (0) | 2023.03.26 |
컴파일(Compile) 기법은 무엇인가 (0) | 2023.03.26 |
참조 투명(referential transparency) (0) | 2023.03.14 |
꼬리 재귀(tail recursion) (0) | 2023.03.14 |