Skip to content

Macros

  • Published on
    Rust의 매크로는 컴파일 시점에 코드를 생성하는 메타프로그래밍 도구입니다. 패턴 기반의 선언적 매크로(macro_rules!)와, 코드를 토큰 스트림으로 받아 조작하는 절차적 매크로(derive·attribute·function-like)를 구분해 설명합니다. serde의 #[derive(Serialize)]가 실제로 무엇을 하는지, syn과 quote로 TokenStream을 다루는 흐름, 그리고 매크로를 쓰지 말아야 할 때까지 짚습니다.
  • Published on
    Swift는 2014년 Objective-C 후속으로 등장한 이래 가장 큰 변곡점에 들어와 있다. Swift 6.0이 2024년 9월 strict concurrency를 default로 켜며 데이터 레이스를 컴파일 타임에 잡기 시작했고, Swift 6.1이 2025년에 raw identifiers와 complete 모드를 안정화했고, Swift 6.2 preview가 2026년 상반기에 더 매끈한 concurrency를 약속하고 있다. SwiftUI 6(iOS 18)는 Mesh gradient, scroll position binding, view transition을 들고 왔고, SwiftData가 Core Data 후속으로 자리를 잡았다. 서버에서는 Vapor 4가 표준 자리를 지키는 가운데 Hummingbird 2가 Swift Server Workgroup 후원으로 올라왔다. 도구 쪽에서는 Tuist·Mint·swift-package-manager가 빌드와 도구 설치를 책임지고, swift-syntax·swift-format·SwiftLint·SwiftFormat이 코드 품질을, swift-testing(Swift 6.0 신규 프레임워크)이 XCTest를 대체한다. 그리고 2024년 11월 Android Swift Working Group이 발족하며 Swift on Android가 현실 트랙에 들어왔다. swift-foundation 재작성, Embedded Swift 키노트, Macros, Observation까지 — 2026년 5월 Swift 생태계를 한 번에 그린다.