Generating language-based environments
Generating language-based environments
CLU reference manual
Programming in MODULA-2 (3rd corrected ed.)
Programming in MODULA-2 (3rd corrected ed.)
On understanding types, data abstraction, and polymorphism
ACM Computing Surveys (CSUR) - The MIT Press scientific computation series
The C++ programming language
The C programming language
ACM SIGPLAN Notices
The PSG system: from formal language definitions to interactive programming environments
ACM Transactions on Programming Languages and Systems (TOPLAS)
The automatic restructuring of COBOL
The Institute of Electrical and Electronics Engineers, Inc on Conference on software maintenance--1985
Programming languages should NOT have comment statements
ACM SIGPLAN Notices
An object-oriented metaprogramming system
Proceedings of the Twenty-First Annual Hawaii International Conference on Software Track
The synthesizer generator: a system for constructing language-based editors
The synthesizer generator: a system for constructing language-based editors
Comments, assertions and pragmas
ACM SIGPLAN Notices
DIANA: an intermediate language for Ada
DIANA: an intermediate language for Ada
Realistic compilation by program transformation (detailed summary)
POPL '89 Proceedings of the 16th ACM SIGPLAN-SIGACT symposium on Principles of programming languages
Towards high-level editing in syntax-based editors
Software Engineering Journal
Communications of the ACM
A Transformation System for Developing Recursive Programs
Journal of the ACM (JACM)
Structured Programming with go to Statements
ACM Computing Surveys (CSUR)
Program Transformation Systems
ACM Computing Surveys (CSUR)
Grammar-Based Definition of Metaprogramming Systems
ACM Transactions on Programming Languages and Systems (TOPLAS)
The Cornell program synthesizer: a syntax-directed programming environment
Communications of the ACM
Object-Oriented Software Construction
Object-Oriented Software Construction
The Theory of Parsing, Translation, and Compiling
The Theory of Parsing, Translation, and Compiling
Towards a Wide Spectrum Language to Support Program Specification and Program Development
Program Construction, International Summer Schoo
HOPE: An experimental applicative language
LFP '80 Proceedings of the 1980 ACM conference on LISP and functional programming
SDE 1 Proceedings of the first ACM SIGSOFT/SIGPLAN software engineering symposium on Practical software development environments
Document structure and modularity in mentor
SDE 1 Proceedings of the first ACM SIGSOFT/SIGPLAN software engineering symposium on Practical software development environments
Acer: manipulation principles applied to language design
Acer: manipulation principles applied to language design
Comments on "Language Design for Program Manipulation"
IEEE Transactions on Software Engineering
Hi-index | 0.00 |
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.