Now showing items 1-20 of 26

    • Abstraction, Inspection and Debugging in Programming 

      Rich, Charles; Waters, Richard C. (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 ...
    • Computer Aided Evolutionary Design for Software Engineering 

      Rich, Charles; Shrobe, Howard E.; Waters, Richard C. (1979-01-01)
      We report on a partially implemented interactive computer aided design tool for software engineering. A distinguishing characteristic of our project is its concern for the evolutionary character of software systems. ...
    • Formalizing Reusable Software Components in the Programmer's Apprentice 

      Rich, Charles; Waters, Richard C. (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 ...
    • GPRINT - A LISP Pretty Printer Providing Extensive User Format-Control Mechanism 

      Waters, Richard C. (1981-10-01)
      A pretty printer is presented which makes it easy for a user to control the format of the output produced. The printer can be used as a general mechanism for printing data structures as well as programs. It is divided ...
    • GPRINT: A LISP Pretty Printer Providing Extensive User Format Control Mechanism 

      Waters, Richard C. (1982-09-01)
      A Lisp pretty printer is presented which makes it easy for a user to control the format of the output produced. The printer can be used as a general mechanism for printing data structures as well as programs. It is ...
    • A Hypothetical Monologue Illustrating the Knowledge Underlying Program Analysis 

      Shrobe, Howard E.; Waters, Richard C.; Sussman, Gerald J. (1979-01-01)
      Automated Program Analysis is the process of discovering decompositions of a system into sub-units such that the behavior of the whole program can be inferred from the behavior of its parts. Analysis can be employed ...
    • Intelligent Assistance for Program Recognition, Design, Optimization, and Debugging 

      Rich, Charles; Waters, Richard C. (1989-01-01)
      A recognition assistant will help reconstruct the design of a program, given only its source code. A design assistant will assist a programmer by detecting errors and inconsistencies in his design choices and by ...
    • LetS: An Expressional Loop Notation 

      Waters, Richard C. (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 ...
    • Mechanical Arm Control 

      Waters, Richard C. (1979-10-01)
      This paper discusses three main problems associated with the control of the motion of a mechanical arm. 1) Transformation between different coordinate systems associated with the arm. 2) Calculation of detailed ...
    • A Mechanical Arm Control System 

      Waters, Richard C. (1974-01-01)
      This paper describes a proposed mechanical arm control system and some of the lines of thought which led to this design. In particular, the paper discusses the basic systme required in order for the arm to control its ...
    • Obviously Synchronizable Series Expression: Part I: User's Manual for the OSS Macro Package 

      Waters, Richard C. (1988-03-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 ...
    • Obviously Synchronizable Series Expressions: Part I: User's Manual for the OSS Macro Package 

      Waters, Richard C. (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 ...
    • Obviously Synchronizable Series Expressions: Part II: Overview of the Theory and Implementation 

      Waters, Richard C. (1988-03-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 ...
    • Optimization of Series Expressions: Part I: User's Manual for the Series Macro Package 

      Waters, Richard C. (1989-01-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 understand ...
    • Optimization of Series Expressions: Part II: Overview of the Theory and Implementation 

      Waters, Richard C. (1989-01-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 ...
    • PP: A LISP Pretty Printing System 

      Waters, Richard C. (1984-12-01)
      The PP system provides an efficient implementation of the Common Lisp pretty printing function PPRINT. In addition, PP goes beyond ordinary pretty printers by providing mechanisms which allow the user to control the ...
    • Program Translation via Abstraction and Reimplementation 

      Waters, Richard C. (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 ...
    • The Programmer's Apprentice Project: A Research Overview 

      Rich, Charles; Waters, Richard C. (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 ...
    • The Programmer's Apprentice: A Program Design Scenario 

      Rich, Charles; Waters, Richard C. (1987-11-01)
      A scenario is used to illustrate the capabilities of a proposed Design Apprentice, focussing on the area of detailed, low-level design. Given a specification, the Design Apprentice will be able to make many of the ...
    • Programming Viewed as an Engineering Activity 

      Rich, Charles; Shrobe, Howard E.; Waters, Richard C.; Sussman, Gerald J.; Hewitt, Carl E. (1978-01-01)
      It is profitable to view the process of writing programs as an engineering activity. A program is a deliberately contrived mechanism constructed from parts whose behaviors are combined to produce the behavior of the ...