Hacker News new | ask | show | jobs
by Someone 4295 days ago
So, what kind of 1.0 release is this?

- It's Keynote time/September 9, so we call what we have, crashing bugs included, 1.0.

- We culled the features that do not work reliably yet, polished the good parts, and called it 1.0.

- This is a/the set of features that we consider to form a good product, and all features work reasonably well.

1 comments

I'd say it's a bit of all three.

This is clearly a marketing-driven 1.0. It's really not ready, and wouldn't reasonably be called a 1.0 otherwise.

However, they've been pretty good about sticking to a solid set of features and not over-extending themselves for this initial release. It seems fairly clear that they intend to go in and fill out a lot of stuff later, and preferred a smaller set of solid features to start with rather than trying to do everything at once.

They've also been pretty clear that the language is going to be in a state of flux for long while. From the Swift Blog:

"Binary Compatibility and Frameworks

While your app’s runtime compatibility is ensured, the Swift language itself will continue to evolve, and the binary interface will also change. To be safe, all components of your app should be built with the same version of Xcode and the Swift compiler to ensure that they work together.

This means that frameworks need to be managed carefully. For instance, if your project uses frameworks to share code with an embedded extension, you will want to build the frameworks, app, and extensions together. It would be dangerous to rely upon binary frameworks that use Swift — especially from third parties. As Swift changes, those frameworks will be incompatible with the rest of your app. When the binary interface stabilizes in a year or two, the Swift runtime will become part of the host OS and this limitation will no longer exist."