공식/다운로드 문서 해설 허브
다운로드 번들에 포함된 21개 공식/준공식 문서를 위키 관점으로 다시 정리한 허브다.
이 섹션의 목적은 단순 파일 보관이 아니라, 각 문서를
- 무엇을 위한 문서인지 파악하고
- 관련 위키의 어느 심화 페이지와 이어지는지 확인하고
- 언어 표면 지식에서 컴파일러 내부 지식으로 넘어가는 길을 만드는 것
에 있다.
먼저 읽으면 좋은 페이지
입문 허브
| 문서 |
요점 |
관련 위키 연결 |
| Swift.org Documentation 허브 해설 |
TSPL, API Design Guidelines, Standard Library, Core Libraries, Package Manager, REPL/Debugger가 한 축으로 묶여 있다. |
Swift 컴파일러 모노레포 개요, Swift 개발 환경 설정, 지속적 통합 (CI) |
| Swift Compiler 공개 개요 해설 |
main swift 저장소와 swift-driver 저장소를 함께 보여 준다. |
Swift 컴파일러 모노레포 개요, Swift 컴파일러 드라이버, 진단 시스템 (Diagnostics) |
| TSPL → 컴파일러 교차 읽기 |
TSPL은 Swift의 권위 있는 언어 레퍼런스라는 위치를 가진다. |
Swift 컴파일러 모노레포 개요, 타입 체커 설계 및 구현, Swift 모듈 시스템 |
컴파일러 코어
| 문서 |
요점 |
관련 위키 연결 |
| Compiling Swift Generics PDF 해설 |
제네릭 파라미터, requirement, conformance, substitution이 컴파일 과정에서 어떻게 표현되는지 따라갈 수 있다. |
Compiling Swift Generics, Generic Signatures, Substitution Maps |
| Compiling Swift Generics README 해설 |
책의 범위를 명시한다: Swift에서 parametric polymorphism을 컴파일러가 어떻게 구현하는지 다룬다. |
Compiling Swift Generics, Swift 컴파일러 모노레포 개요, Generic Signatures |
| Generics Manifesto 해설 |
제네릭 기능을 단편 기능 목록이 아니라 하나의 장기적 설계 공간으로 정리한다. |
제네릭 매니페스토, Compiling Swift Generics, Generic Signatures |
| TypeChecker.md 해설 |
타입 검사를 Constraint Generation → Solving → Solution Application의 세 단계로 정리한다. |
타입 체커 설계 및 구현, 진단 시스템 (Diagnostics), 컴파일러 성능 측정 |
| SIL.md 해설 |
Swift 소스가 raw SIL, canonical SIL, optimized SIL을 거쳐 LLVM IR로 가는 위치를 명확히 보여 준다. |
SIL (Swift Intermediate Language), SIL 인스트럭션, SIL 타입 |
| Ownership SSA 해설 |
모든 SIL 값에 None / Owned / Guaranteed / Unowned 중 하나의 ownership kind를 부여한다. |
SIL 소유권 모델 (OSSA), 소유권 매니페스토, SIL 메모리 접근 모델 |
| High-Level Optimizations in SIL 해설 |
Array/String/Span 같은 표준 라이브러리 연산을 일반 함수 호출이 아니라 의미적 원자 연산처럼 이해하게 만든다. |
고수준 SIL 최적화, Swift 옵티마이저 설계, SIL (Swift Intermediate Language) |
툴링/운영
| 문서 |
요점 |
관련 위키 연결 |
| Compiler Performance 문서 해설 |
primary-file / batch / WMO 모드 차이가 성능 관찰에 직접적인 영향을 준다. |
컴파일러 성능 측정, Swift 컴파일러 드라이버, 의존성 분석 (증분 빌드) |
| Driver Internals 문서 해설 |
드라이버를 Parse → Pipeline → Build → Schedule → Batch → Execute 단계로 본다. |
Swift 컴파일러 드라이버, 의존성 분석 (증분 빌드), swift-driver (패키지) |
| Diagnostics 작성 가이드 해설 |
error / warning / note를 언제 어떻게 구분할지 명확한 기준을 준다. |
진단 시스템 (Diagnostics), 컴파일러 디버깅 가이드, 에러 처리 설계 |
| REPL and Debugger 해설 |
Swift REPL은 별도 인터프리터가 아니라 LLDB 기반 디버거 경험과 결합돼 있다. |
컴파일러 디버깅 가이드, Swift 개발 환경 설정, Swift 컴파일러 모노레포 개요 |
| SwiftPM 문서 → 빌드 파이프라인 교차 읽기 |
번들 안의 실제 파일에는 본문이 없고 canonical SwiftPM DocC 문서로 리다이렉트만 걸려 있다. |
Swift Package Manager, swift-driver (패키지), Swift 컴파일러 드라이버 |
ABI/라이브러리/언어 의미
| 문서 |
요점 |
관련 위키 연결 |
| ABI Stability Manifesto 해설 |
source compatibility, module stability, ABI stability를 구분한다. |
ABI 안정성, 라이브러리 진화 (Library Evolution), ABI: 타입 레이아웃 |
| API Design Guidelines → 컴파일러 교차 읽기 |
핵심 원칙은 “Clarity at the point of use”다. |
라이브러리 진화 (Library Evolution), C에서 Swift로의 이름 변환, Swift의 C API 임포트 방식 |
| Standard Library → 컴파일러 교차 읽기 |
표준 라이브러리는 Swift 프로그램의 base layer이며, 소스와 테스트는 메인 swift 저장소에 있다. |
표준 라이브러리 프로그래머 매뉴얼, Swift 런타임, ABI: 타입 레이아웃 |
| Core Libraries → 컴파일러 교차 읽기 |
Foundation, libdispatch, Swift Testing, XCTest를 하나의 교차 플랫폼 라이브러리군으로 소개한다. |
Swift Foundation, Swift Testing, Swift의 C API 임포트 방식 |
| Value/Reference Types → SIL 소유권 교차 읽기 |
struct/enum/tuple는 value type, class/actor/closure는 reference type으로 소개한다. |
SIL 소유권 모델 (OSSA), SIL ARC 최적화, SIL 메모리 접근 모델 |
| Concurrency Data Race Safety → 컴파일러 검사 교차 읽기 |
번들 안의 파일 자체에는 동시성 본문이 없고 redirect만 존재한다. |
Swift 6 데이터 경쟁 안전성 검사, 타입 체커 설계 및 구현, 진단 시스템 (Diagnostics) |