인터프리터

Kroisse (토론 | 기여)님의 2015년 4월 17일 (금) 06:04 판 (새 문서: 프로그래밍 언어로 된 코드를 입력받아, 자기가 그 코드에 적힌 프로그램의 내용을 수행하는 컴퓨터 프로그램. 마치 해당 프로그래...)
(차이) ← 이전 판 | 최신판 (차이) | 다음 판 → (차이)

프로그래밍 언어로 된 코드를 입력받아, 자기가 그 코드에 적힌 프로그램의 내용을 수행하는 컴퓨터 프로그램. 마치 해당 프로그래밍 언어가 기계어인 또 다른 컴퓨터처럼 동작한다는 점에서 가상 머신과 궤를 같이 한다고 볼 수도 있다.

지금은 상상하기 힘든 일이지만, 컴파일러 기술이 발달하기 전에는 컴파일 결과로 나온 프로그램의 실행 속도보다 그 프로그램을 그냥 인터프리터로 돌리는 게 빨랐던 때도 있었다. BASIC과 같은 언어들이 그런 시절의 산실이라 할 수 있다. 물론 현 세대의 컴파일러 기술은 더 이상 인간이 손으로 어셈블리 코드를 짜서는 따라잡을 수 없는 수준으로 발전했기에, 지금의 인터프리터들은 컴파일된 실행 파일 수준으로 성능을 끌어올리기엔 많은 어려움이 있다.