Chapter 12
Union and Dummy Types
Here the impossible union ... is actual
—T. S. Eliot:The Dry Salvages (1941)
dummy adj. artificial, bogus, dry, fake, false, imitation, mock, phoney, practice, sham, simulated, trial
—Chambers 20th Century Thesaurus (1986)
This chapter is primarily concerned with the classification of scalar types into (a) union vs. nonunion types and (b) dummy vs. regular types. Note carefully, therefore, that all of the types mentioned in this chapter will be scalar types specifically, barring explicit statements to the contrary. Now, I’ve mentioned the special types alpha and omega several times in earlier chapters; what I haven’t mentioned prior to this point, however, is that these types are actually union types, and indeed dummy types as well. (To be more specific, they’re important special cases of these latter constructs.) Fig. 12.1 summarizes the situation.
Fig. 12.1: Classification of scalar types
To elaborate briefly:
A scalar type is either a nonunion type or a union type, and can’t be both. All nonunion types are regular types.
A union type is either a regular union type or a dummy type, and can’t be both. All regular union types are union types, and so are all dummy types.
Alpha and omega are dummy types, and therefore union types too (but in practice there’ll probably be other dummy types in addition to alpha and omega per se).
A regular type is either ...
Get Type Inheritance and Relational Theory 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.