분류 전체보기
-
[SE-0518] tide-SendableSwift 2026. 4. 5. 08:26
안녕하세요. 그린입니다 🍏이번 포스팅에서는 SE-0518 — ~Sendable로 non-Sendable 타입을 명시적으로 표현하기에 대해 정리해보겠습니다 🙋🏻IntroProposal: SE-0518Status: Implemented (Swift 6.4)Experimental Feature Flag: TildeSendableMotivationpublic 타입이 Sendable을 명시적으로 conform하지 않을 때, 그 의도를 파악하기가 쉽지 않습니다.아직 Sendable conformance를 추가하지 않은 건지, 아니면 의도적으로 non-Sendable로 설계한 건지가 불분명하거든요.이를 판단하려면 타입의 스토리지 구조와 동기화 메커니즘 같은 구현 세부사항을 알아야 하는데, 라이브러리 외부에서는 ..
-
Swift 6.3Swift 2026. 3. 29. 08:58
안녕하세요. 그린입니다 🍏이번 포스팅에서는 Swift 6.3에서 릴리즈된 내용들을 정리해보겠습니다 🙋🏻Intro2026년 3월 24일, Swift 6.3이 공식 릴리즈되었습니다.Swift는 소프트웨어 스택의 모든 레이어에서 사용할 수 있는 언어를 목표로 설계되었습니다.임베디드 펌웨어, 인터넷 규모의 서비스, 풀-피처 모바일 앱을 만들든 간에,Swift는 강력한 안전성 보장, 필요할 때의 성능 제어, 그리고 표현력 있는 언어 기능과 API를 제공하거든요 👍 Swift 6.3은 이러한 이점들을 스택 전반에 걸쳐 더 넓게 활용할 수 있도록 해줍니다. 이번 릴리즈의 주요 내용은 다음과 같습니다더 유연한 C 상호운용성크로스 플랫폼 빌드 툴링 개선임베디드 환경에서의 Swift 개선공식 Swift SDK fo..
-
Swift 6.2.4Swift 2026. 3. 22. 07:06
안녕하세요. 그린입니다 🍏이번 포스팅에서는 Swift 6.2.4에서 릴리즈된 내용들을 정리해보겠습니다 🙋🏻Intro2026년 2월 27일, Swift 6.2.4가 공식 릴리즈되었습니다.이번 릴리즈는 주로 버그 수정과 성능 개선에 초점을 맞춘 마이너 업데이트입니다.Xcode 26.3에 Swift 6.2.4가 포함되어 있으며, Swiftly나 Docker를 통해서도 설치할 수 있습니다 🚀 설치 방법Swiftly 사용swiftly install 6.2.4# 또는swiftly install latest 직접 다운로드Swift.org에서 툴체인을 직접 다운로드할 수 있습니다. DockerDocker 이미지는 곧 hub.docker.com/_/swift에서 사용 가능합니다. XcodeXcode 26.3에 S..
-
[SE-0515] Allow reduce to produce noncopyable resultsSwift 2026. 3. 14. 07:40
안녕하세요. 그린입니다 🍏이번 포스팅에서는 SE-0515 Allow reduce to produce noncopyable results에 대해 정리해보겠습니다 🙋🏻IntroSwift의 reduce는 정말 유용한 함수이지만, 몇 가지 한계가 있었습니다.noncopyable 타입을 다룰 수 없었고, initial value를 borrow하는 방식이라 불필요한 복사가 발생했어요. SE-0515는 reduce를 개선합니다 😁Noncopyable initial value와 result를 허용하고Copyable일 때도 initial value를 consume하도록 변경합니다이미 PR이 Accepted 상태이고 구현도 완료되었으니, 곧 현업에서도 쓸 수 있을 것 같습니다 🚀 왜 필요한가?Noncopyable..
-
[SE-0514] Hashable Conformance for Dictionary.Keys, CollectionOfOne and EmptyCollectionSwift 2026. 3. 2. 09:14
안녕하세요. 그린입니다 🍏이번 포스팅에서는 SE-0514 Hashable Conformance for Dictionary.Keys, CollectionOfOne and EmptyCollection에 대해 정리해보겠습니다 🙋🏻IntroSwift 표준 라이브러리의 몇몇 collection 타입들이 Hashable을 conform하지 않는 게 있습니다.Dictionary.Keys, CollectionOfOne, EmptyCollection이 바로 그것들인데요. 이번 SE-0514는 이 세 타입에 Hashable conformance를 추가하는 제안입니다. 특히 Dictionary.Keys는 모든 key가 이미 Hashable인데 keys view 자체는 Hashable이 아닌 게 좀 이상하죠.간단하지만 ..
-
[SE-0510] Introduce Dictionary.mapValuesWithKeysSwift 2026. 2. 21. 00:45
안녕하세요. 그린입니다 🍏이번 포스팅에서는 SE-0510 Introduce Dictionary.mapValuesWithKeys에 대해 정리해보겠습니다 🙋🏻IntroDictionary의 값을 변환할 때 key 정보도 함께 필요한 경우가 종종 있습니다.하지만 현재는 이런 작업을 하려면 init(uniqueKeysWithValues:)나 reduce(into:)를 써야 하는데, 이들은 불필요하게 dictionary를 rehashing하거나 재할당하는 비용이 발생합니다. SE-0510은 이 문제를 해결하기 위해 mapValuesWithKeys라는 새로운 메서드를 제안합니다.Key 정보를 transformation closure에 전달하면서도 성능 오버헤드 없이 값만 변환할 수 있습니다 🚀 현재 시점에서는..
-
[SE-0508] Array expression trailing closuresSwift 2026. 2. 14. 15:44
안녕하세요. 그린입니다 🍏이번 포스팅에서는 SE-0508 Array expression trailing closures에 대해 정리해보겠습니다 🙋🏻IntroSwift에서 trailing closure는 정말 자주 쓰는 문법이죠. 그런데 array나 dictionary 타입 뒤에는 trailing closure를 쓸 수 없다는 걸 아셨나요?[String] 같은 타입 뒤에 중괄호를 쓰면 파서가 제대로 인식하지 못해서 에러가 발생합니다.이번 SE-0508은 바로 이 제약을 풀어주는 제안입니다.이미 Accepted 상태이고 구현도 완료되었으니, 곧 실제로 활용할 수 있을거에요 🚀 왜 필요한가?Array에 trailing closure를 받는 init을 정의하는 건 꽤 합리적인 디자인입니다. 예를 들어 @..
-
[SE-0507] Borrow and Mutate AccessorsSwift 2026. 2. 8. 08:14
안녕하세요. 그린입니다 🍏이번 포스팅에서는 SE-0507 Borrow and Mutate Accessors에 대해 정리해보겠습니다 🙋🏻IntroSwift의 property accessor는 계속 발전중입니다.기존에는 get, set, 그리고 최근 추가된 yielding borrow, yielding mutate가 있었는데요. 이번 SE-0507은 새로운 borrow와 mutate accessor를 제안합니다. 얘네들은 borrowing semantics를 사용해서 복사 오버헤드 없이 값에 접근할 수 있고, yielding accessor보다 성능이 좋습니다.특히 non-copyable 타입을 다루는 collection이나 성능이 중요한 저수준 데이터 구조에 유용할 거예요 🚀 현재 2026년 2월 ..