kms

Swift Programming Language

June 6, 2014

Apple surprised the world at this year’s WWDC: They have been secretly working on a new programming language, Swift, designed to minimize their reliance on Objective-C.

They called it Objective-C minus the C. Considering that Objective-C augments the semantics of C with the syntax of Smalltalk, this would imply that we would be left with the syntax Smalltalk. I don’t think that Swift’s syntax is like Smalltalk at all. Instead, one could say that Swift has the semantics of Smalltalk (or Strongtalk) with the syntax of C.

While reading the introduction to Swift, I felt that the closest pre-existing language was Dart. There are quite a few differences, but there seems to be some convergent evolution. Given Lars Bak’s work on Strongtalk, this isn’t too surprising. Both are a departure from the Java and C++ object-orientation style, incorporating progress from type theory along the way.

I have a few issues with some of their language design decisions (which I plan to discuss in the coming weeks), but overall they made some good decisions (playgrounds!).