DocumentCode :
1216066
Title :
Language design for program manipulation
Author :
Merks, Eduardus A T ; Dyck, J. Michael ; Cameron, Robert D.
Author_Institution :
Sch. of Comput. Sci., Simon Fraser Univ., Burnaby, BC, Canada
Volume :
18
Issue :
1
fYear :
1992
fDate :
1/1/1992 12:00:00 AM
Firstpage :
19
Lastpage :
32
Abstract :
The design of procedural and object-oriented programming languages is considered with respect to how easily programs written in those languages can be formally manipulated. Current procedural languages such as Pascal, Modula-2 and Ada; generally support such program manipulations, except for some annoying anomalies and special cases. Three main areas of language design are identified as being of concern from a manipulation viewpoint: the interface between concrete and abstract syntax; the relationship between the abstract syntax and static semantics naming, scoping and typing; and the ability to express basic transformations (folding and unfolding). Design principles are suggested so that the problems identified for current languages can be avoided in the future
Keywords :
high level languages; object-oriented programming; software engineering; Ada; Modula-2; Pascal; abstract syntax; language design; naming; object-oriented programming languages; procedural languages; program manipulation; program manipulations; scoping; static semantics; typing; unfolding; Appropriate technology; Concrete; Data structures; Instruments; Process design; Synthesizers;
fLanguage :
English
Journal_Title :
Software Engineering, IEEE Transactions on
Publisher :
ieee
ISSN :
0098-5589
Type :
jour
DOI :
10.1109/32.120313
Filename :
120313
Link To Document :
بازگشت