[swift-corelibs-dev] relationship of CF

Drew Crawford drew at sealedabstract.com
Sat Jan 2 05:58:54 CST 2016

I had a question about something I saw in the docs:

> A significant portion of the implementation of Foundation on Apple platforms is provided by another framework called CoreFoundation (a.k.a. CF). CF is written primarily in C and is very portable. Therefore we have chosen to use it for the internal implementation of Swift Foundation where possible. As CF is present on all platforms, we can use it to provide a common implementation everywhere.

(emphasis added)

Is the intent of this paragraph to suggest that most PRs to swift-corelibs-foundation should be a C-language implementation to CF with a light Swift wrapper?  That goes against my intuition, but it "seems to be" a plain reading of the paragraph.

its justification about "all platforms" is also strange–I know CF "kind of" builds for Windows, but is anyone actually testing it there?  To make sure we aren't breaking it?  Or does "all platforms" mean something else here?

I feel like this paragraph is an opportunity to explain to a patch author how to structure their patch between use/maintenance/contributions to the CF layer vs the Swift layer.  I feel like it could do a much better job, but I don't understand what the design guidance actually is, so I can't fix it.

-------------- next part --------------
An HTML attachment was scrubbed...
URL: <https://lists.swift.org/pipermail/swift-corelibs-dev/attachments/20160102/7c48778f/attachment.html>

More information about the swift-corelibs-dev mailing list