go.od_planter
python의 시작(CPython)과 python으로 만든 python이란? 본문
Python 언어가 어떻게 만들어졌는지, 그리고 “Python을 Python으로 만들었다”는 표현이 실제로 무엇을 의미하는지에 대해 조금 더 명확하게 설명하겠습니다.
Python의 기원과 구현
1. Python의 기원:
• Python은 1980년대 말, 네덜란드의 프로그래머 귀도 반 로섬(Guido van Rossum)에 의해 개발되었습니다.
• Python은 처음부터 고급 프로그래밍 언어로 설계되었으며, 문법이 간결하고 가독성이 좋도록 하는 데 중점을 두었습니다.
• Python의 첫 번째 구현체는 C 언어로 작성되었습니다. 이 구현체가 바로 CPython입니다. 현재 대부분의 Python 코드가 CPython 위에서 실행됩니다.
2. CPython:
• CPython은 Python 언어 사양을 C 언어로 구현한 것입니다. CPython은 Python 코드를 해석하고 실행할 수 있는 인터프리터 역할을 합니다.
• 예를 들어, print("Hello, World!")와 같은 Python 코드를 실행하면, 이 코드를 CPython이 C 언어로 구현된 인터프리터를 통해 해석하고 실행합니다.
• 따라서, CPython은 Python의 첫 번째, 그리고 가장 기본적인 구현체입니다.
Python을 Python으로 만들었다?
“Python을 Python으로 만들었다”는 표현은 PyPy라는 구현체와 관련이 있습니다.
1. PyPy:
• PyPy는 Python 언어의 또 다른 구현체입니다.
• PyPy는 Python 언어 자체로 Python 인터프리터를 구현한 것입니다.
• 이 말은 PyPy가 Python 언어로 작성된 코드를 사용해 Python 코드를 해석하고 실행할 수 있는 프로그램을 만들었다는 뜻입니다.
2. 이해하기 쉽게:
• 처음 Python 언어는 C 언어로 구현된 CPython에서 시작되었습니다.
• 이후, 개발자들은 Python 언어의 고급 기능을 사용하여, Python 자체를 이용해 Python 인터프리터를 구현하는 프로젝트를 시작했습니다. 이것이 PyPy입니다.
• PyPy의 핵심은 “Python 인터프리터를 Python 코드로 구현했다”는 것입니다. 다만, PyPy가 처음부터 Python 코드로만 작성된 것은 아닙니다. 초기에는 Python 외의 언어로 핵심 부분을 만들고, 나머지를 Python으로 작성하는 방식으로 발전했습니다.
컴파일러와 인터프리터의 관계
• Python 언어의 소스 코드(예: print("Hello, World!"))는 바로 실행될 수 있는 기계어 코드가 아닙니다. 이 소스 코드는 컴퓨터가 이해할 수 있는 형태로 변환되어야 합니다.
• 인터프리터는 이 소스 코드를 읽어 들여, 실행 가능한 코드로 변환하고, 바로 실행하는 역할을 합니다.
• CPython은 C 언어로 작성된 인터프리터이고, PyPy는 Python으로 작성된 인터프리터입니다.
요약하자면
• Python 언어는 기본적으로 C 언어로 구현된 CPython이라는 인터프리터에서 시작되었습니다.
• 이후, Python 언어의 고급 기능을 사용하여 Python 인터프리터를 구현한 것이 PyPy입니다.
• “Python을 Python으로 만들었다”는 것은 Python 언어를 이용해 Python 인터프리터를 만들었다는 뜻입니다. 하지만 이 작업은 초기의 CPython과 같은 다른 언어로 구현된 인터프리터 없이 바로 가능하지 않았습니다.
즉, Python의 첫 구현은 C 언어로 만들어졌고, 이후 Python으로 작성된 Python 인터프리터가 등장하게 된 것입니다.
'Language > Python' 카테고리의 다른 글
[python] 환경설정 (.env) 완전 이해하기: os.getenv, load_dotenv, kwargs 정리 (0) | 2025.03.27 |
---|---|
[python] Class, 객체, __init__, self, 매직메서드(특별한 메서드), 자동 호출, 연산자 오버로딩 (0) | 2024.09.05 |
Python 인터프리터 / 구현체, 인터프리터 (0) | 2024.08.23 |