In a programming language, a type is a description of a set of values and a set of allowed operations on those values. PL/I has many built-in data types. Each type can specify a number of elementary attributes. Data elements describes these built-in data types.
PL/I allows you to define your own types using the built-in data types. This chapter discusses user-defined types (aliases, ordinals, structures, and unions), declarations of variables with these types, handles, and type functions.