지극히 개인적인 공부 노트/근-본(Roooooooooooot)

[Python] '파이썬'의 시작

AS J 2021. 8. 11. 13:26
명시적인 것이 암시적인 것보다 낫다.
- 파이썬 철학 중 일부 -

1. 기원

1) 누가

귀도 반 로섬(Guido van Rossum)

2) 언제

1989년 12월

3) 어디서

네덜란드 CWI(Centrum voor Wiskunde en Informatica, 국립 수학 및 과학 컴퓨터 과학 연구기관)

4) 어떻게

최초로 1980년대 말 고안되었고, 반 로섬이 구현하며 파이썬의 주 저자로 계속 중심적 역할을 맡아 파이썬의 방향을 결정.

5) 왜

귀도 반 로섬은 암스테르담대학교에서 컴퓨터과학과 수학을 전공하고, CWI라는 연구소에서 인터프리터 언어(interpreted language)를 개선하는 일을 맡았다. CWI에서는 개발 범용의 명령형 컴퓨터 프로그래밍 언어 ABC를 개발하는 프로젝트를 시작했지만, 4~5년이 지나고 눈에 띄는 성과가 없다는 이유로 종료시켰다. 이 과정에서 같은 회사의 '아모에바'라는 팀으로 옮겨서 마이크로 커널 분산 시스템 환경을 연구하는 일을 진행했다. 그는 아모에바 프로젝트에서 일하면서 하이레벨 언어가 필요하다고 생각했고, 새로운 분산 시스템 환경에 맞으면서 C와 Shell에서 부족한 부분을 채워주는 새로운 언어를 개발하고 싶었다고 한다. 이후 취미 활동으로 새로운 언어를 개발하기 시작했다. 이후 1989년 12월 귀도 반 로섬에 의해 예외 처리가 가능하고, 아메바 운영 체제와 통신이 가능한 파이썬이 구현되었고, 1990년에 첫 버전이 공개되었다.

파이썬 2.0은 2000년 10월 16일에 전면적인 쓰레기 수집기(Garbage Collector) 탑재, 유니코드 지원 등의 특징을 갖추며 배포되었다. 또, 개발 절차 그 자체로 더 투명하고 공동체 지원을 받는 형태가 되었으며, 2020년 1월 1일부로 파이썬 2의 지원은 종료되었다.

2008년 12월 3일에는 파이썬 3.0의 최종판이 긴 테스트를 거쳐 발표되었다. 파이썬 2.0과 다른 점은 딕셔너리형과 문자열형 등의 내장 자료형의 내부적인 변화 및 일부 구형의 구성 요소 제거, 표준 라이브러리 재배치, 한글 변수 사용 가능, 향상된 유니코드 지원, print 명령문이 print() 함수로 바뀌는 등의 차이가 있다.

6) 일화

1990년대부터 2006년까지의 파이썬 로고

파이썬(Python)은 그리스 신화에 나오는 뱀 이름이고, 현재 로고 또한 뱀을 본딴 디자인이다. 하지만 실제로 귀도 반 로섬이 파이썬이라는 이름을 정할 때 그리스 신화를 참고한 것은 아니었다. 그는 영국 방송의 코미디 프로그램 '몬티 파이썬 비행 서커스(Monty Python's Flying Circus)'를 좋아해서 따온 단어였다고 한다. 파이썬의 공식 홈페이지에 따르면 그는 짧고, 특별하고, 미스터리한 느낌의 단어를 찾았고, 그래서 파이썬이라는 이름을 결정했다고도 한다.

 

2. 활용

파이썬은 문법이 간결하고, 표현 구조가 인간의 사고 체계와 닮았기 때문에 초보자도 쉽게 배울 수 있다. 또, 유지 보수와 관리도 비교적 쉽고, 외부의 풍부한 라이브러리가, 좋은 생산성 등의 장점이 있어서 다양한 용도로 확장하기 좋다. 이런 점에서 파이썬은 웹 개발, 데이터 분석, 머신러닝, 그래픽, 학술 연구 등 다양한 분야에서 활용되고 있다.

단, 속도가 비교적 느리고, 모바일 앱 환경에서는 사용하기가 힘들다는 점도 유의해야 한다.

 

3. 참고

1) ABC 언어: https://homepages.cwi.nl/~steven/abc/

 

The ABC Programming Language: a short introduction

The ABC Programming Language: a short introduction (Also available in Japanese) New: Implementation for the Raspberry Pi!. The ABC Programmer's Handbook is available online. ABC is an interactive programming language and environment for personal computing,

homepages.cwi.nl

2) 파이썬 공식 홈페이지: https://www.python.org/

 

Welcome to Python.org

The official home of the Python Programming Language

www.python.org

3) 파이썬 공식 홈페이지 FAQ: https://docs.python.org/2/faq/general.html#why-is-it-called-python

 

General Python FAQ — Python 2.7.18 documentation

Python is an interpreted, interactive, object-oriented programming language. It incorporates modules, exceptions, dynamic typing, very high level dynamic data types, and classes. Python combines remarkable power with very clear syntax. It has interfaces to

docs.python.org

4) 파이썬 철학: https://www.python.org/dev/peps/pep-0020/

 

PEP 20 -- The Zen of Python

The official home of the Python Programming Language

www.python.org