@techreport{R-86-39, TITLE = {A Structure Editor as a Template for Programming Environment Functions}, AUTHOR = {Ola Str{\"o}mfors}, YEAR = {1986}, NUMBER = {R-86-39}, INSTITUTION = ida, ADDRESS = idaaddr, ABSTRACTURL = {/publications/cgi-bin/tr-fetch.pl?r-86-39+abstr}, ABSTRACT = {This paper presents how a structure editor, ED3, can serve as a platform for a number of programming environment functions. The structure editor and its text editing facilities has been in use since 1980. Since then, several functions have been added to it, most recently Ada oriented tools: a syntax checker, a pretty-printer, and a Pascal to Ada syntax translator.The mechanism to reference nodes without any naming encourages the user to look upon the tree as a dynamic structure to be modified whenever convenient. From several years of experience with ED3 it is evident that the block structure of a Pascal program is seldom the most natural view for the programmer.Production quality implementations of ED3 are running on a number of hosts. It is implemented in Pascal and has assisted in translating itself into Ada.}, IDANR = {LiTH-IDA-R-86-39}, NOTE = {Also presented at the Workshop on Programming Environments - Programming Paradigms, Roskilde, Denmark, October 22-24, 1986}