Journal ArticleDOI
The Cornell program synthesizer: a syntax-directed programming environment
Tim Teitelbaum,Thomas Reps +1 more
TLDR
The Cornell Program Synthesizer demands a structural perspective at all stages of program development and its separate features are unified by a common foundation: a grammar for the programming language.Abstract:
Programs are not text; they are hierarchical compositions of computational structures and should be edited, executed, and debugged in an environment that consistently acknowledges and reinforces this viewpoint. The Cornell Program Synthesizer demands a structural perspective at all stages of program development. Its separate features are unified by a common foundation: a grammar for the programming language. Its full-screen derivation-tree editor and syntax-directed diagnostic interpreter combine to make the Synthesizer a powerful and responsive interactive programming tool.read more
Citations
More filters
Proceedings ArticleDOI
Models of software development environments
Dewayne E. Perry,Gail E. Kaiser +1 more
TL;DR: The authors argue that there is a qualitative difference between the interactions among a small, family project and a large, city project and that this qualitative difference requires a fundamentally different model of software development environments.
Proceedings ArticleDOI
A meta-language and system for nonlocal incremental attribute evaluation in language-based editors
TL;DR: The main motivation for studying incremental semantics is the design and implementation of LanguageBased Editors and the use of attribute grammars allows a particularly convenient representation of the static semantics of a program in an LBE.
Journal ArticleDOI
Abstracting a specification from code
TL;DR: This paper describes a joint project between the University of Durham and CSM Ltd to develop a method and tool for reverse-engineering and software maintenance based on program transformation theory and presents an example which illustrates how such a tool can extract a high-level abstract specification from the low-level source code of a program by a process of formal program transformation based on a theory of program equivalence.
Journal ArticleDOI
The Poe language-based editor project
TL;DR: Allan Poe (Pascal Oriented Editor) is a full-screen language-based editor that knows the syntactic and semantic rules of Pascal and is designed to be readily transportable to new machines.
Journal ArticleDOI
A fine-grained account of Prolog execution for teaching and debugging
Marc Eisenstadt,Mike Brayshaw +1 more
TL;DR: A fine-grained view of Prolog execution is described in detail, and it is argued that this fine-Grained view can readily be integrated into a coarse- grained model such as that required for understanding the execution of very large programs.
References
More filters
Proceedings ArticleDOI
Closest-point problems
Michael Ian Shamos,Dan Hoey +1 more
TL;DR: The purpose of this paper is to introduce a single geometric structure, called the Voronoi diagram, which can be constructed rapidly and contains all of the relevant proximity information in only linear space, and is used to obtain O(N log N) algorithms for most of the problems considered.
Journal ArticleDOI
Algorithms for Reporting and Counting Geometric Intersections
TL;DR: Algorithms that count the number of pairwise intersections among a set of N objects in the plane and algorithms that report all such intersections are given.
Proceedings ArticleDOI
A research center for augmenting human intellect
TL;DR: In this article, a multisponsor research center at Stanford Research Institute in man-computer interaction is described, where the authors describe a multiscale multi-modal system.
Proceedings ArticleDOI
Geometric intersection problems
Michael Ian Shamos,Dan Hoey +1 more
TL;DR: An O(N log N) algorithm is given to determine whether any two intersect and use it to detect whether two simple plane polygons intersect and to show that the Simplex method is not optimal.
Journal ArticleDOI
An Optimal Worst Case Algorithm for Reporting Intersections of Rectangles
TL;DR: This paper investigates the problem of reporting all intersecting pairs in a set of n rectilinearly oriented rectangles in the plane and describes an algorithm that solves this problem in worst case time proportional to n lg n + k, where k is the number of interesecting pairs found.