6 ms·
> Swift will be open source later this year, available for iOS, OS X, and Linux. They're doing Linux but not Windows? Is Windows not sufficiently important or
by bachmeier 11y ago
> Swift will be open source later this year, available for iOS, OS X, and Linux.
They're doing Linux but not Windows? Is Windows not sufficiently important or maybe they just forgot to include Windows in the announcement?
- kristofferR 11y agoThey don't just forget stuff like that. It was probably way easier to do on Linux/Unix than Windows.
- astrodust 11y agoPOSIX to POSIX is way easier to get production ready than porting to the Windows API.
- be5invis 11y agoMaybe it is just because WINAPI is different from *nix.
- mercer 11y agoThat's a good point. It was probably easier to port it to Linux. I can't see why they would intentionally avoid Microsoft (at least not at this point in their history).
- lukeh 11y agoMaybe MS will do it given they're porting ObjC.
- cmyr 11y agoMS will almost definitely do it. They've mentioned (maybe off the record) that they were looking into it, and this should seal the deal.
- philoushka 11y agoSwift + .NET Framework would be interesting
- fixermark 11y agoAs easy as it is to ignore the difference in these days of cross-platform development toolchains and environments, they still are very different operating systems under-the-hood. As opposed to OSX and Linux, which are both rooted in a UNIX past and therefore have some shared assumptions about how things like a directory structure and process management are supposed to work.
- deleted 11y ago[deleted]
- garretraziel 11y agoIt's perhaps because Linux is (almost) POSIX compliant, but Windows is not? It would make porting to Linux far more easier than to Windows.
- fleitz 11y agoTechnically it's the reverse, Windows is POSIX compliant, and Linux is almost compliant. However, the non-posix features liunx provides makes it easy to port from the various *nixes where as Windows precise POSIX compliance ensures virtually nothing runs unless the app is written purely to the POSIX spec.
- garretraziel 11y agoWindows is POSIX compliant? I didn't knew that. But in my defense, wikipedia article states [1] that it was marked as deprecated in Windows 8 and it was removed in Windows 8.1. [1] http://en.wikipedia.org/wiki/Windows_Services_for_UNIX http://en.wikipedia.org/wiki/Windows_Services_for_UNIX
- pjmlp 11y agoWindows already has F# and compilation to native code via NGEN, MDIL and .NET Native. Swift won't bring much anyway.
- mwcampbell 11y agoI disagree. Swift and its accompanying libraries are designed for automatic reference counting rather than tracing garbage collection. I think that's a big deal for mobile apps (see Drew Crawford's take on GC in mobile apps, http://sealedabstract.com/rants/why-mobile-web-apps-are-slow/ http://sealedabstract.com/rants/why-mobile-web-apps-are-slow...). In that light, Swift projections for WinRT would be great.
- pjmlp 11y agoI know that post pretty well. Swift only has reference counting because it made sense as the language shares the Objective-C runtime. Objective-C only got ARC because Apple never managed to make their GC work properly without crashes in the context of Objective-C code, given its C underpinnings. CS literature is full of examples on how to achieve performance comparable with GC with reference counting, the solution ends up being a mini-GC anyway. And reference counting cannot compete with GC implementations in lock free algorithms, even with deferred counting.
- oddevan 11y agoMy guess is they're using Linux in their datacenters and want to be able to write programs for them in Swift. That, or they figured that's where all the "Open Source" action is going to be/an "Open Source" language without Linux support is useless.
- s73v3r 11y agoWell, they do use Linux on their backend. I'm guessing they needed OS X and Linux support, so that's what they contributed. Let someone else do the Windows support.