Type augmentation

The opposite of generalization is specialization, and it is associated with type augmentation in F#. It is worth noting that the official F# 4.0 Language Specification (http://fsharp.org/specs/language-spec/4.0/FSharpSpec-4.0-latest.pdf) does not introduce this terminology using type extension instead. Nevertheless, the type augmentation expression is de-facto ubiquitous and used interchangeably with type extension. Personally, I believe that augmentation is free of the undesired connotation that extension carries as something that's added to an existing matter. Augmentation is a better synonym for the specialization of an existing matter by adding, customizing, or even removing features. So we will stick to it here.

The following ...

Get F# 4.0 Design Patterns now with the O’Reilly learning platform.

O’Reilly members experience books, live events, courses curated by job role, and more from O’Reilly and nearly 200 top publishers.