Algebraic data types
Enumerations in Swift are actually algebraic data types that are types created by combining other types. Algebraic data types are essential to many functional programming languages, such as Haskell.
An algebraic data type is based on the idea of algebraic structures, which are a set of possible values and one or more operators to combine a finite number of these values into a single one. An example structure is (Z, +, -), a set of all integers (in math, Z refers to set of all positive and negative integer numbers) with the plus and minus operations on them.
So an algebraic data type is a data type that is created by algebraic operations, specifically, with sum and product as our operations.
Additionally, algebraic data ...
Become an O’Reilly member and get unlimited access to this title plus top books and audiobooks from O’Reilly and nearly 200 top publishers, thousands of courses curated by job role, 150+ live events each month,
and much more.
Read now
Unlock full access