This paper introduces a grammar-based technique for making sweeping changes, involving substantial restructuring, to largescale software programs. Pervasive structural changes are often required in order to make changes in data structures, computational forms, or programrning style during software maintenance.Theconceptofagrammar-basededitorisintroduced. AVbased editor is a well-defined system that applies the descnptlve power of context-free grammars to the software editing problem. Grammars allow generalization away from the specific details of any one program fragment, introducing the possibility for maintainers to browse and edit related program fragments simultaneously and create transformations reusable on other modules or programs. Examples of grammar-based editing of Ada programs are provided.