This post explains how you can take advantage of Swift’s type system to make your programs more expressive and robust.

Source: Using types to keep yourself honest