인터프리터 언어란 무엇일까?(feat. Python)

    안녕하세요. 지난 시간에 빌드(Build)에 대해서 알아본 것에 이어 이번 시간에는 인터프리터(Interpreter) 언어에 대해서 살펴보도록 하겠습니다.

    빌드에 대하여 알아보면서 어셈블리어는 컴파일을 통해서 exe가 아닌 obj파일을 생성하고 하나의 exe파일을 만들기 위해서 컴파일 이후에 링크 작업을 추가적으로 거친다는 것을 알았습니다. 이렇게 컴파일 과정을 거쳐서 기계어로 번역되는 언어를 컴파일러 언어로 말하기도 합니다.

    ​▶ 인터프리터 언어 정의

    하지만 인터프리터 언어란, 이러한 명시적인 컴파일 과정 없이 작성한 소스 코드에서 바로 프로그램을 실행할 수 있습니다. 컴파일을 별도로 실행하지 않고 런타임 시점에 코드를 해석해서 실행하는 것이죠. 이러한 동작 방식은 지난 시간에 살펴본 컴파일러 언어가 실행 이전에 반드시 빌드 과정을 거쳐서 실행 파일을 미리 만들어 두어여 한다는 것과 큰 차이가 있습니다.

    물론 인터프리터 언어는 실행 시점에 코드를 해석하기 때문에 일반적으로 컴파일러 언어보다는 속도가 떨어진다는 특징이 있습니다.

    컴파일러 언어 예: C, C++, Java, C#, Go...

    컴파일러 언어의 대표적인 예: C#

     

    (네이티브 언어: 컴파일러 언어 중에서 컴파일러의 결과물이 특정 CPU의 기계어인 경우에 이를 네이티브 언어라고 하는데, 어셈블리어나 C, C++과 같은 언어가 네이티브 언어입니다. 네이티브 언어는 CPU 내에서 곧바로 해석될 수 있기 때문에 실행 속도가 빠르다는 특징을 가지고 있습니다. 마이크로소프트에서는 네이티브 언어를 Unmanaged Language라고 부르기도 합니다.)

    인터프리터 언어 예: Perl, Python, JavaScript...

    인터프리터 언어의 대표적인 예: 파이썬

     

    질문이나 보완해야 할 내용에 대해서는 댓글로 남겨주시거나 여기로 메일을 보내주세요. 감사합니다.

    댓글

    Designed by JB FACTORY