data types created by the programmer. they have their own range (or domain) of data and their own sets of operations that may be performed on them. p 593
data type that specifies the values the data type can call and the operations that can be performed on the values without revealing the details of data implementation
This example is not-paraphrase.