Updated:

프로그래밍 언어

Python $^{b}$은 Python $^{a}$만의 문법에 맞춰 코드를 작성하면 이를 실행하는 하나의 프로그램이다.

  • 두 가지 의미
    1. (컴퓨터 시스템을 구동시키는) 소프트웨어를 작성하기 위한 형식 언어
    2. 프로그래밍 언어를 지원하는 소프트웨어 (소프트웨어를 작성하기 위한 소프트웨어)


Compile Language vs. Interpreter Language

Compile Language

  • 소스 코드를 기계어로 컴파일 → 실행파일 만듬 → 실행

Interpreter Language

  • run time 때 한 줄씩 실행


Python의 조상

Python이라는 프로그램을 구현할 때 사용된 언어는 C, Java, Python 등이 있다.

  • C → CPython
    • 컴파일하여 bytecode로 바꾸고 그 다음 인터프리터(가상 머신)가 실행한다.
  • Java → Jython
  • RPython → PyPy


PyPy

  • RPython (Restricted Python)으로 만든 구현체
    • RPython? 파이썬 프로그래밍 언어의 부분 집합.
  • JIT(just in time) 컴파일을 사용한다.
    • run time에서 필요한 부분들을 즉석 컴파일
    • 자주 쓰이는 코드caching한다.