파이썬의 패턴 매칭 도입에 얽힌 이야기
(ryanking13.github.io)- 패턴 매칭에 대한 요구
- 패턴 매칭 아이디어의 역사
- PEP 622의 등장
- 이어지는 논쟁
- PEP 622 v2
- PEP 622 is dead, long live PEP 634, 635, 636
- Hello, Pattern Matching!
- 아직 끝나지 않은 이야기
본문의 인용 "Point(x,0) 가 Point.__new__를 호출하지도 않고, x 라는 변수를 찾는 것도 아닌 완전히 새로운 의미를 갖는다는 게 직관적이지 않습니다." 를 읽을 땐 파이썬에는 패턴 매칭 구문이 어울리지 않는다는 의견에 공감했었는데, PEP 634~636 을 읽어보니 패턴매칭도 괜찮겠구나 싶었습니다.
ML계열 언어들은 처음 만들 때부터 패턴 매칭을 고려했으니 자연스럽지만 파이썬에서 "Point"는 이미 클래스 생성자처럼 쓰고 있으니 완전 헷갈릴 거야 - 라고 생각했는데, PEP에 쓰인 코드 예시들을 읽어보니 전혀 헷갈리지 않았어요.
제 글이네요, 소개 감사합니다.
이런 뒷 얘기를 찾다 보면 첨예하게 의견이 갈리는 논제에 대해서 의사 결정을 하는 것이 참 어려운 일이라는 걸 느끼게 됩니다.