Structure Sharing in Attribute Grammars

Structure sharing is commonplace in Prolog implementations in order to achieve a compact representation of data values and to provide the ability to update sets of interrelated values simultaneously. This paper describes a representation of attributed syntax trees — as they appear in syntax-oriented editors — based on structure sharing.