Generating language-based environments
Generating language-based environments
IBM Journal of Research and Development
A meta-language and system for nonlocal incremental attribute evaluation in language-based editors
POPL '85 Proceedings of the 12th ACM SIGACT-SIGPLAN symposium on Principles of programming languages
A Fast and Usually Linear Algorithm for Global Flow Analysis
Journal of the ACM (JACM)
Finite Differencing of Computable Expressions
ACM Transactions on Programming Languages and Systems (TOPLAS)
Generalized common subexpressions in very high level languages
POPL '77 Proceedings of the 4th ACM SIGACT-SIGPLAN symposium on Principles of programming languages
Incremental evaluation for attribute grammars with application to syntax-directed editors
POPL '81 Proceedings of the 8th ACM SIGPLAN-SIGACT symposium on Principles of programming languages
Compiler Construction
Optimal-time incremental semantic analysis for syntax-directed editors
POPL '82 Proceedings of the 9th ACM SIGPLAN-SIGACT symposium on Principles of programming languages
Automatic generation of efficient evaluators for attribute grammars
POPL '76 Proceedings of the 3rd ACM SIGACT-SIGPLAN symposium on Principles on programming languages
Incremental data flow analysis in a structured program editor
Incremental data flow analysis in a structured program editor
Lisp machine manual
Generating editing environments based on relations and attributes
ACM Transactions on Programming Languages and Systems (TOPLAS)
Incremental attribute evaluation in distributed language-based environments
PODC '86 Proceedings of the fifth annual ACM symposium on Principles of distributed computing
Efficient incremental evaluation of aggregate values in attribute grammars
SIGPLAN '86 Proceedings of the 1986 SIGPLAN symposium on Compiler construction
A foundation for programming environments
SDE 2 Proceedings of the second ACM SIGSOFT/SIGPLAN software engineering symposium on Practical software development environments
MUIR - a language development environment
SIGSMALL '88 Proceedings of the 1988 ACM SIGSMALL/PC symposium on ACTES
Incremental dynamic semantics for language-based programming environments
ACM Transactions on Programming Languages and Systems (TOPLAS)
Efficient evaluation of circular attribute grammars
ACM Transactions on Programming Languages and Systems (TOPLAS)
Coping with changes in an object management system based on attribute grammars
SDE 4 Proceedings of the fourth ACM SIGSOFT symposium on Software development environments
Incremental attribute evaluation: a flexible algorithm for lazy update
ACM Transactions on Programming Languages and Systems (TOPLAS)
An object-oriented specification for compiler
ACM SIGPLAN Notices
An object-oriented specification and its generation for compiler
CSC '92 Proceedings of the 1992 ACM annual conference on Communications
Alphonse: incremental computation as a programming abstraction
PLDI '92 Proceedings of the ACM SIGPLAN 1992 conference on Programming language design and implementation
Implementing semantics of object oriented languages using attribute grammars
CSC '91 Proceedings of the 19th annual conference on Computer Science
Remote attribute updating for language-based editors
POPL '86 Proceedings of the 13th ACM SIGACT-SIGPLAN symposium on Principles of programming languages
Dynamically bypassing copy rule chains in attribute grammars
POPL '86 Proceedings of the 13th ACM SIGACT-SIGPLAN symposium on Principles of programming languages
Hi-index | 0.00 |
The goal of our work is to use the paradigms of syntax-directed editing to perform very sophisticated semantic checking, for example, to check flow-sensitive properties such as whether a variable is necessarily defined before it is used. Semantic checking of this power is much more important than syntax checking because it relieves the programmer of the need to keep track of numerous details as the program grows in complexity. There has been a great deal of recent work on syntax-directed editing. This work primarily serves the needs of novice programmers: making the task of entering and editing programs easier and less error prone. Most syntax-directed editors guarantee that the program fragment under construction is syntactically correct at all times. Many of them also detect simple semantic errors such as undeclared variables or type errors. Few, however, attempt to perform more semantic analysis than a typical (non-optimizing) compiler.