Shape grammars provide a means for the recursive specification of shapes. The formalism for shape grammars is designed to be easily usable and understandable by people and at the same time to be adaptable for use in computer programs. Shape grammars are similar to phrase structura grammars, which were developed by Chomsky [ 1956, 1957]. Where a phrase structura grammar is defined over an alphabet of symbols and generates a language of sequences of symbols, a shape grammar is defined over an alphabet of shapes and generates a language of shapes. This dissertation explores the uses of shape grammars. The dissertation is divided into three sections and an appendix. In the first section: Shape grammars are defined. Some simple examples are given for instructiva purposes. Shape grammars are used to generate a new class of reversible figures. Shape grammars are given for some well-known mathematical curves (the Snowflake curve, a variation of Peano's curve, and Hilbert's curve). To show the general computational power of shape grammars, a procedura that given any Turing machine constructs a shape grammar that simulates the operation of that Turing machine is presented. Related work on various formalisms for pictura grammars is described. A symbolic characterization of shape grammars is given that is useful for implementing shape grammars in computer programs.