scispace - formally typeset
Journal ArticleDOI

The Cornell program synthesizer: a syntax-directed programming environment

Tim Teitelbaum, +1 more
- 01 Sep 1981 - 
- Vol. 24, Iss: 9, pp 563-573
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

Reuse of compiler analysis in a programming environment

TL;DR: An incremental optimizing compiler that reuses target code and compiler analysis to greatly reduce the recompilation time during program development and to incrementally produce target code that is optimized across a larger unit than the unit of recompilation.

A Design Rationale for a Editor Language-based

TL;DR: The need for language-based editors to support a pluralistic view of program structure is identified, together with the need to observe the constraints on performance and storage consumption if such editors are to be accepted by professional programmers.
Book ChapterDOI

Generation of Incremental Indirect Threaded Code for Language-Based Programming Environments

TL;DR: The aim is to provide one uniform operational model based on attribute grammars that allows the specification of the runtime semantics, and thus code generation, to be incorporated with the specifications of the syntax and static semantics of the language.
Journal ArticleDOI

Graph attribution as a specification paradigm

TL;DR: An interactive software development environment can be viewed as a structure-based editor, provided that structure is broadly interpreted.
Proceedings ArticleDOI

Universities and the future of high-performance computing technology

TL;DR: A computer tax would provide the hundreds of millions of dollars needed to restore the universities' role in computing-technology growth and ensure that universities' future growth in technological areas is at the same rate as that of computing technology itself.
References
More filters
Proceedings ArticleDOI

Closest-point problems

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

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.