The mechanism used to define the programming language PL/I in the recently adopted American National Standard is presented. This method provides a rigorous though semiformal specification of the language. If uses the model of translation of programs into an abstract form to define the context-free and context-sensitive syntax. The semantics are defined by the interpretation of the abstract form of the program on a hypothetical machine. The method and metalanguage are presented along with several small examples to illustrate the definition technique's features. The complete definition process is shown by the definition of a small example language.