In reading “The Swift Programming Language” to prep for my post on how Swift informs us about programming language trends, I was surprised at how straightforward the language’s features seemed:
I found myself nodding along with each feature introduced. Tuples: check. Named Parameters: check. Default Parameters: check. Protocols: check. Functions: check.
I realized it wasn’t just because Swift has unsurprising features, but because I’m familiar enough with enough other languages
experience with Java and C, and had my head was in Scala for quite a while a few years ago.
Although the forms of Swift’s various features differ from their analogs in other languages, conceptually, they are the same: the
generic type system is similar to Java’s, and the tuples are close enough to Scala’s that all I need to do is understand the
It really is true that the more languages you know, the easier it is to “pick up” new ones. This is a great reason to
learn a new programming language every year.
a disadvantage when trying to acquire new skills. Learning something like Swift (or Scala, or Elixir, or whatever) requires not
just understanding the syntax of the language, but the very concepts that underpin its features (some of which can be mind-bending).