18P by xguru 2023-05-23 | favorite | 댓글 8개
  • Rust를 사용하기 시작하면서 Python 코딩 방식에 Rust의 몇가지 개념을 채택했다고
  • Type Hint를 가능한 많이 사용하기
  • 튜플/딕셔너리 대신 Dataclasses
  • Algebraic data types(ADT)
  • newtype 패턴
  • 타입을 이용하여 invariant 인코딩
  • Strongly-typed bounding boxes

이럴거면 뭐하러 python을 쓰나...
(feat. 이럴거면 뭐하러 nodejs를 쓰나)

타입 정도만 둔거같은데 러스트랑 비교 할만한가요?

Rust처럼 Python을 쓸 거라면 Rust를 쓰는 게 낫지 않을까요?..

Rust로 Tensorflow, PyTorch를 쓸 수 있나요? 쓸 수 있다고 해도, 거기에 주렁주렁 달려있는 라이브러리들도 쓸 수 있을지 알 수 없죠. 너무 일차원적인 생각입니다.

어떤 언어의 좋은 특성(개념)을 사용하는 것이랑, 그 언어를 직접 사용하는 것은 상황에 따라 다르겠지만 다른 것이라고 생각합니다. lisp, 헤스켈 등 함수형 언어 특정을 자바스크립트에서 아주 효과적으로 사용한다고 해서, 자바스크립트를 쓰는 곳에 lisp를 사용할 수 없으니깐요.

상황에 따라 취사선택 해야겠지만 일반적으로 권장하고싶은 접근들이네요.

제가 파이썬을 잘 몰라서....
이런식으로 하면 오버헤드가 많아지지 않을까요?

내용 전반적으로 type hint 쓰겠다는 내용이 많은데, 이건 런타임에 하는 게 아니라, 성능과는 관계가 없고요. isinstance같은 타입 체크하는 부분은 없는 거보다야 더 걸리겠지만, 내부적으로 캐쉬되는 걸로 압니다. 엄청난 루프에서 하면 차이가 생기긴 하겠져.