Exploring Swift’s numeric types and protocols

Exploring Swift’s numeric types and protocols

Swift is a memory-safe language and you constantly see this manifest in your code with the error 'Binary operator cannot be applied to operands of type…' when you attempt to mix numeric types in expressions. In this talk we’ll explore the design and implementation of Swift’s numeric protocols and types, which have evolved significantly in Swift 3 and 4. We’ll dive into how floating-point numbers work, investigate some of the more obscure APIs, and learn how we can make our raw calculation code more expressive.