Path: utzoo!attcan!utgpu!watmath!maytag!water!wlrush From: wlrush@water.waterloo.edu (Wenchantress Wench Wendall) Newsgroups: ont.events,uw.talks Subject: PROGRAMMING LANGUAGES SEMINAR Keywords: Mr. Scott Vorthmann of the School of Information and Computer Science at the Georgia Institute of Technology, will speak on "Syntax-Directed Editor Support for Incremental Consistency Maintenance." Message-ID: <2253@water.waterloo.edu> Date: 17 Apr 89 13:54:30 GMT Distribution: ont Organization: U of Waterloo, Ontario Lines: 60 DEPARTMENT OF COMPUTER SCIENCE UNIVERSITY OF WATERLOO SEMINAR ACTIVITIES PROGRAMMING LANGUAGES SEMINAR -Thursday, April 20, 1989 Mr. Scott Vorthmann, of the School of Information and Computer Science at the Georgia Institute of Technology, will speak on "Syntax-Directed Editor Support for Incremental Consistency Maintenance." TIME: 3:30 PM ROOM: DC 1302 ABSTRACT The technology of syntax-directed editors offers characteristics which are ideally suited to the task of incremental consistency maintenance. In particular, the use of attribute grammars to provide static semantic analysis has several specific advantages: a fine granularity of processing, a fine granularity of dependencies to direct that processing, caching of derived data, and algorithms which update that data with a minimal amount of processing. However, several shortcomings of this approach have been identified. The described research addresses these shortcomings with extensions to the technology of syntax-directed editor generation. The principal extension is the addition of a naming layer to the editor kernel architecture. The naming layer supplements the tree structure provided by the syntax with non-local references (from identifier usage sites to declaration sites), presenting a directed- graph as the structure now underlying the attribute propagation. Naturally, the naming layer must map certain syntactic modifications to appropriate adjustments to this binding graph, and must produce a unique state of the binding graph for a given syntactic state. The behaviour of the naming layer with respect to the syntactic and attribute grammar layers is specified by a Naming Specification Language, which is simply a set of extensions to an existing attribute grammar notation. NSL supports the designation of name declaration and reference sites, the designation of productions that embody scopes, and specification of visibility of names between related scopes. The visibility mechanisms provided by NSL are its most important features.