[swift-evolution] ABI in Layman's terms?

Anton Zhilin antonyzhilin at gmail.com
Thu Aug 11 06:24:22 CDT 2016


2016-08-11 11:52 GMT+03:00 Jonathan Hull via swift-evolution <
swift-evolution at swift.org>:

> Could someone explain in simple terms what the ABI is and what sorts of
> things might affect it?
>
> I had thought it was the layout in memory of structs/classes/etc… and how
> the program knows where to go to find a particular field.  This seems to be
> incorrect though, as I have seen many features that I would assume have
> some affect on this layout ruled “out of scope for phase 1”.  For example,
> I would think that many generics features would have an impact on the ABI,
> or the idea of COW (via secret boxing) for structs, or even union types.
>
> At the very least, I would think that mix-ins would have a fairly
> significant effect.


ABI stability means that changes will have to be backwards compatible after
a certain stage. If we can add mixins feature without modifying old code
(and its SIL and IR and whatever), then we are fine.
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <https://lists.swift.org/pipermail/swift-evolution/attachments/20160811/bee1b474/attachment.html>


More information about the swift-evolution mailing list