콘텐츠로 이동

ABI Stability Manifesto 해설

다운로드 번들에 포함된 공식/준공식 문서를 위키 관점으로 다시 정리한 페이지다.

  • 원문 유형: markdown
  • 다운로드 번들 경로: swiftlang-swift/docs/ABIStabilityManifesto.md
  • 원본 URL: https://github.com/swiftlang/swift/blob/main/docs/ABIStabilityManifesto.md

이 문서는 무엇을 설명하나

ABI 안정화 이전의 배경과 설계 방향을 한 번에 묶어 보여 주는 상위 개념 문서다. 타입 레이아웃, metadata, mangling, calling convention, runtime, stdlib를 같은 프레임에서 본다.

핵심 포인트

  • source compatibility, module stability, ABI stability를 구분한다.
  • Swift ABI를 data layout / metadata / mangling / calling convention / runtime / stdlib 6축으로 정리한다.
  • opaque layout, resilience, value witness table, existential container 같은 핵심 어휘를 한 문서 안에서 연결해 준다.
  • 언어 성장과 ABI 고정 사이의 긴장을 “ABI-additive change” 개념으로 설명한다.

컴파일러와 어떻게 연결되나

  • abi-type-layout / abi-type-metadata / abi-mangling / abi-calling-convention
  • runtime과 serialization
  • library evolution과 resilience
  • public ABI surface와 internal convention 구분

언어 표면에서 어떻게 들어오면 좋은가

  • struct / tuple / enum / class
  • generic / existential / closure / throws
  • String / Int 같은 표준 라이브러리 타입의 표현
  • 공개 API와 binary compatibility

같이 보면 좋은 위키 페이지

읽는 방법 메모

현재 위키의 ABI 세부 페이지들을 한 장의 상위 rationale 문서에 걸어두는 역할을 한다.