Rust처럼 Python 작성하기
(kobzol.github.io)- Rust를 사용하기 시작하면서 Python 코딩 방식에 Rust의 몇가지 개념을 채택했다고
- Type Hint를 가능한 많이 사용하기
- 튜플/딕셔너리 대신 Dataclasses
- Algebraic data types(ADT)
- newtype 패턴
- 타입을 이용하여 invariant 인코딩
- Strongly-typed bounding boxes
Rust로 Tensorflow, PyTorch를 쓸 수 있나요? 쓸 수 있다고 해도, 거기에 주렁주렁 달려있는 라이브러리들도 쓸 수 있을지 알 수 없죠. 너무 일차원적인 생각입니다.
어떤 언어의 좋은 특성(개념)을 사용하는 것이랑, 그 언어를 직접 사용하는 것은 상황에 따라 다르겠지만 다른 것이라고 생각합니다. lisp, 헤스켈 등 함수형 언어 특정을 자바스크립트에서 아주 효과적으로 사용한다고 해서, 자바스크립트를 쓰는 곳에 lisp를 사용할 수 없으니깐요.
내용 전반적으로 type hint 쓰겠다는 내용이 많은데, 이건 런타임에 하는 게 아니라, 성능과는 관계가 없고요. isinstance같은 타입 체크하는 부분은 없는 거보다야 더 걸리겠지만, 내부적으로 캐쉬되는 걸로 압니다. 엄청난 루프에서 하면 차이가 생기긴 하겠져.