neo 3달전 | parent | favorite | on: GN⁺: Swift는 더 편리한 Rust입니다(blog.namangoel.com)
Hacker News 의견
  • Rust를 처음 사용하는 사람들이 Rust를 좋아하는 이유는 ML 계열 언어를 처음 접했기 때문임

    • Rust는 Unix 해커들에게 친숙한 커뮤니티를 제공함
  • Rust는 비-GC 자동 메모리 관리를 주류로 가져온 첫 언어임

    • Swift, OCaml, Scala 같은 대안들도 존재함
  • Smalltalk의 시대는 끝났고, 이제는 ML의 시대임

    • 2000년대의 언어들은 Smalltalk에서 파생됨
    • 새로운 언어들은 ML 계열 언어임
    • Scala를 배우면 Rust나 Swift도 쉽게 배울 수 있음
  • Rust를 iOS Swift 앱에 통합하는 작업을 하면서 Swift를 더 사용하고 싶어짐

    • Swift는 크로스 플랫폼으로 사용할 수 있지만, 주로 Apple 플랫폼을 목표로 함
    • Rust는 다양한 패키지 시스템을 가지고 있음
    • Swift 패키지는 OS API에 의존하는 경우가 많아 Linux나 WASM에서 작동하지 않음
    • IBM이 서버에서 Swift를 포기한 사례가 있음
  • Rust는 메모리 관리 문제를 해결하기 위해 소유권 개념을 도입했지만, 이를 발명한 것은 아님

    • Cyclone 같은 언어들이 영향을 줌
  • Rust와 Swift는 각각의 강점을 가지고 있음

    • Swift는 더 간결한 문법을 가지고 있지만, 일부 영역은 컴파일러 전용임
    • Swift는 Apple 생태계 밖에서는 두 번째 또는 세 번째로 중요한 언어임
    • 이 문제가 해결되지 않으면 Swift는 주로 Apple 전용 언어로 남을 것임
  • Swift의 도구는 Rust보다 불편함

    • macOS 12를 사용하는 2018 MacBook Air에서 Xcode가 지원되지 않음
    • SourceKit-LSP는 두 번째로 중요한 도구로 취급됨
    • Rust 1.81과 rust-analyzer는 잘 작동함
  • Rust를 배우려고 시도했지만 예제가 너무 복잡해서 어려움을 겪음

    • Rust 웹사이트의 예제 코드가 복잡함
  • Swift는 열거형에 메서드를 직접 추가할 수 있음

    • Rust에서도 동일한 작업을 할 수 있음
  • Swift는 기본적으로 값 타입을 사용하며, 복사-쓰기 시멘틱스를 사용함

    • 이는 배열, 딕셔너리, 문자열에만 적용됨
    • Swift 값 타입은 즉시 복사됨
  • Swift를 칭찬하는 글을 읽을 때마다 Apple/MacOS 생태계를 사용하지 않는 개발자들의 경험이 궁금함

    • MacOS를 사용하지 않는 Swift 개발자를 만나본 적이 없음
    • 표준 라이브러리뿐만 아니라 도구, LSP, 라이브러리, 튜토리얼 등도 중요함
    • Swift가 좋은 언어라는 것은 믿지만, MacOS에서만 좋은 것 같음
  • Zig와 Swift의 점 문법을 싫어하는 유일한 사람인지 궁금함

    • .variant vs Type::Variant
    • 충분히 길거나 복잡한 코드에서는 타입 이름이 가까이 있지 않으면 불편할 것임
    • IDE 같은 기능이 없는 에디터에서는 특히 그렇겠음