New in OS X: Get MacRumors Push Notifications on your Mac

Resubscribe Now Close

Apple Swift Lead Discusses Swift 5 in New Podcast

Apple is currently working on Swift 5.0, the next major version of its the coding language the company first introduced in 2014. As Apple prepares to release Swift 5.0, Ted Kremenek, who is leading the project, recently sat down for an interview with John Sundell on his Swift by Sundell podcast.

The new episode, titled "Pragmatic Priorities," is available to listen to starting today on iTunes and through the Podcasts app on iOS devices.


Kremenek is Apple's senior manager of languages and runtimes, and he is overseeing the release of Swift 5 and is Apple's voice on the project.

In the podcast, Kremenek covers topics that include how Apple plans new features for Swift, the process by which pitched ideas turn into release features, and of course, Swift 5.

Swift 5's major focus is long-awaited ABI stability (Application Binary Interfaces), and Kremenek goes into detail on how ABI stability was ultimately implemented and what changes needed to be made for Swift to become ABI stable.

With Swift 5, apps created with one version of the Swift compiler will be able to interface with a library built with another version, something that is not the case now.

The Swift by Sundell podcast with Ted Kremenek will be of interest to developers and those who use the Swift language and want to learn more about the changes and features coming in Swift 5.

Tag: Swift


Top Rated Comments

(View all)

7 weeks ago
FYI, the Highest-Perf apps in the iOS App Store are (still) written in an mix of Objective-C & "C".
Rating: 11 Votes
7 weeks ago

Well swift makes it easy to rewrite Obj-C code piecemeal... I would not sit on decade old code... I would always learn form it and invest in modern code.


Code is not like milk. It doesn't go bad after a certain amount of time.
[doublepost=1551212910][/doublepost]

IMHO, Swift is a colossal mistake. They should have continued improving Objective-C instead of indulging in what amounts to a compiler programmer's pet project.


That statement shows you know very little (nothing) about software development.

Swift reduces the time to create an app by nearly half, and reduces the complexity of the code. Swift code also runs faster than objective-c code, especially in math intensive functions. It also takes advantage of memory management functionality that is absent in Objective-C.

There is no way to "improve" Objective-C to make it equivalent to what Swift is today.
Rating: 8 Votes
7 weeks ago
Developer here with 20+ years of experience:

FYI, the Highest-Perf apps in the iOS App Store are (still) written in an mix of Objective-C & "C".


What is the point of say this? Imply that swift is not for fast apps?

What does this mean for average Joe? Does that meant that more apps will get iOS release also (like Zbrush?) or something else? Sorry, coding is not my area of knowledge :)


For that, is necessary that Swift have a better support for non-Apple platforms. If I need to have something across many platforms is necessary to use a low-level lang like C/C++/Rust or a runtime like Java/.NET or similar.

This is certainly the biggest problem with swift, IMHO. I wish Apple get serious here and provide first class support for at least linux/windows of the core library:

https://www.reddit.com/r/swift/comments/8zb9y1/state_of_swift_for_androidlinuxwindows_on_2018/

----
Is important to note than instead of

IMHO, Swift is a colossal mistake.


The colossal mistake is C/C++. Both of them are massive bugs-friendly, security-impossible piece of languages that are behind almost all the problems of crashes, weird bugs and security problems for decades now. Costing billons not only in damages but in the amount of time and effort required to workaround them.

The problem is that all the OS today are on top of the "C ABI" ie: Eventually you need to lower your hopes to whatever C can do, not matter how problematic. However, is possible to reduce the surface area and use a better language, like Rust or Swift for most of the tasks and only lower to C for compatibility or to access the vast ecosystem around it.

Swift, like Rust and others, are far from a mistake. Is what is necessary to move the industry forward. Stay forever with C/C++ is like stay with Cobol, but worse.
Rating: 6 Votes
7 weeks ago
IMHO, Swift is a colossal mistake. They should have continued improving Objective-C instead of indulging in what amounts to a compiler programmer's pet project.
Rating: 6 Votes
7 weeks ago

Well, both of those have many, many years head start on Swift. Not surprising. I'd like to see stats another five years from now. And perhaps a breakdown of apps that are older than 2014 vs new ones since.


That's not it. Swift has 40 years of OOA/OOD, Structural and Functional programming research behind it. They should have enhanced ObjC to go to 3.0, then 4.0 and dropped this idea from the start.
Rating: 5 Votes
7 weeks ago
Waiting for swift to have something like async / await. Nested callbacks are such a pain
Rating: 4 Votes
7 weeks ago

FYI, the Highest-Perf apps in the iOS App Store are (still) written in an mix of Objective-C & "C".

Source?
Rating: 3 Votes
7 weeks ago


I have no problem conceding that Swift has *plenty* of nice attributes, but my biggest gripe with it is that it's a constantly changing target [so, re-opening a project from a year ago results in a bunch of compiler errors because they keep changing things] and, worse, it represents a total impedance mismatch with the Cocoa frameworks.


I think most Swift developers accepted that this will be the painful reality for the beginning years of Swift until it is mature enough to be more stable. Migration between Swift versions has become easier and easier in each major version of Swift.
Rating: 2 Votes
7 weeks ago

I agree with the overall idea, but I think in practique will not fly with too many developers. Think how much resistance was for python 3, and that is for minor changes.

If a "evolutionary approach" is applied to a language that requiere so many changes, you will end with "obj-c++" and will so different that for all practical purposes is another language.

Then you start thinking in syntax changes (like remove C-style loops for the more sane "for x in y" idioms) and many other stuff and now is more problematic.

Or maybe, do it more slowly and piece meal? Probably with a VERY good source translator than rewrite the code to the new idioms, but then you multiple the times of code review. And still need a very good grasp in where you go so the changes are planed.

I'm unaware something like this have been done sucesfully.


Fair observations. I won't pretend to have a master plan of how it could have been done, but in general terms, I think incremental improvements, as they were already doing before Swift, could have moved us closer to the goalpost. And, eventually, dropping compatibility with C/C++ down the road.

(I have no problem conceding that Swift has *plenty* of nice attributes, but my biggest gripe with it is that it's a constantly changing target [so, re-opening a project from a year ago results in a bunch of compiler errors because they keep changing things] and, worse, it represents a total impedance mismatch with the Cocoa frameworks. The frameworks were not designed for Swift and Swift was deliberately not designed for those frameworks. It makes working with Swift in the context of Mac/iOS applications a drag, IMHO. Others may love it and that's great for them. I tried hard to like it, but I'm just not a fan.)
Rating: 2 Votes
7 weeks ago

In fact, there are a few most well known App out there actually did the opposite, went from Swift to ObjC because all these reasons.


Interesting. Which ones?
Rating: 2 Votes

[ Read All Comments ]