Mapping Swift language constructs and types to C++

Swift and C++ interoperability aims to provide bidirectional interop between two languages, meaning that C++ will be able to call into Swift APIs in addition to Swift calling into C++ APIs. I have been working on designing how certain Swift language constructs and types will be mapped to C++. As part of this work, I have published a design document , that's written more so for the end user rather than a compiler developer. You can find it here: swift/ at main · apple/swift · GitHub .

Please note that this document describes the current experimental design and it does not necessarily reflect the final design that this project will adopt after going through the Swift evolution process.

If you have specific comments/suggestions for how you think this design should evolve or how other language constructs should be mapped to C++ please post them in this thread!