Search
Now showing items 1-10 of 23
Abstraction, Inspection and Debugging in Programming
(1981-06-01)
We believe that software engineering has much to learn from other mature engineering disciplines, such as electrical engineering, and that the problem solving behaviors of engineers in different disciplines have many ...
Program Translation via Abstraction and Reimplementation
(1986-12-01)
Essentially all program translators (both source-to-source translators and compilers) operate via transliteration and refinement. This approach is fundamentally limited in the quality of the output it can produce. In ...
Synchronizable Series Expressions: Part II: Overview of the Theory and Implementation
(1987-11-01)
The benefits of programming in a functional style are well known. In particular, algorithms that are expressed as compositions of functions operating on series/vectors/streams of data elements are much easier to ...
The Programmer's Apprentice Project: A Research Overview
(1987-11-01)
The goal of the Programmer's Apprentice project is to develop a theory of how expert programmers analyze, synthesize, modify, explain, specify, verify, and document programs. This research goal overlaps both artificial ...
Obviously Synchronizable Series Expressions: Part I: User's Manual for the OSS Macro Package
(1987-10-01)
The benefits of programming in a functional style are well known. In particular, algorithms that are expressed as compositions of functions operating on series/vectors/streams of data elements are much easier to ...
XP. A Common Lisp Pretty Printing System
(1989-08-01)
XP provides efficient and flexible support for pretty printing in Common Lisp. Its single greatest advantage is that it allows the full benefits of pretty printing to be obtained when printing data structures, as well ...
LetS: An Expressional Loop Notation
(1983-02-01)
Many loops can be more easily understood and manipulated if they are viewed as being built up out of operations on sequences of values. A notation is introduced which makes this viewpoint explicit. Using it, loops can ...
System Validation via Constraint Modeling
(1988-02-01)
Constraint modeling could be a very important system validation method, because its abilities are complementary to both testing and code inspection. In particular, even though the ability of constraint modeling to ...
Toward a Requirements Apprentice: On the Boundary Between Informal and Formal Specifications
(1986-07-01)
Requirements acquisition is one of the most important and least well supported parts of the software development process. The Requirements Apprentice (RA) will assist a human analyst in the creation and modification ...
Formalizing Reusable Software Components in the Programmer's Apprentice
(1987-02-01)
There has been a long-standing desire in computer science for a way of collecting and using libraries of standard software components. The limited success in actually doing this stems not from any resistance to the ...