February 1966 - Vol. 9 No. 2

February 1966 issue cover image

Features

Research and Advances

A reprogramming machine

In this paper a description is given of a model programming system which is directed by a programming language and has a library for storing the user's items. Rules are given for transforming programs written in the language and for rearranging the items in the library so that they share their common parts. Some speculations are made about how the mechanical detection of common parts or patterns of library items could help a user to solve his problems, and about the relationships between the behavior of the reprogramming machine and human intelligent behavior.
Research and Advances

The structure of programming languages

In this paper the major components of every programming language are identified as: (1) the elementary program statement, (2) mechanisms for linking elementary statements together, (3) the means by which a program can obtain data inputs. Several alternative forms of each of these components are also described, compared and evaluated. Many examples, frequently from list processing languages, illustrate the forms described. The advantages, disadvantages and factors influencing the choice of a form of component for a language are discussed, and the paper concludes with the suggestion that programming languages evolve toward one which will permit all the most convenient ways of structuring programs, organizing systems and referencing data.
Research and Advances

A language for describing the functions of synchronous systems

Before the design of a system is started, the exact function desired of it should be specified. It is suggested that a computer-oriented language be used for this purpose. The inadequacies of the standard programming languages for the description of systems are discussed, and a dialect of ALGOL which is suitable for describing synchronous systems is introduced. These descriptions can be used for simulation and automatic design of the system described, in addition to communicating system specifications.
Research and Advances

BUGSYS: a programming system for picture processing—not for debugging

BUGSYS is a picture processing and measuring system that depends upon a pictorial input to the computer's memory. BUGSYS can be used for many types of applications. In particular, the authors have used the system for the analysis of linear graphs. The main concept of the system is the use of a collection of programmable pointers, which are visualized as a family of “bugs.”
Research and Advances

EULER: a generalization of ALGOL, and its formal definition: Part II

In this section the algorithmic language EULER is described first informally and then formally by its syntax and semantics. An attempt has been made to generalize and extend some of the concepts of ALGOL, thus creating a language which is simpler and yet more flexible than ALGOL 60. A second objective in developing this language was to show that a useful programming language which can be processed with reasonable efficiency can be defined in rigorous formality.
Research and Advances

Control procedures for data communication—an ASA progress report

Sectional Committee X.3 of the American Standards Association, has charged one of its task groups, X3.3.4, with the responsibility to “Define and specify functional control requirements and characteristics governing the operation of digital data generating and receiving systems interconnected by communication system.” This effort is primarily directed toward systems employing the American Standard Code for Information Interchange (ASCII). This paper represents a progress report on the work of this group toward a proposal for national and international standardization in the field of control procedures. It describes both the old and new work of the task group. The new work is presented in detail, while the work that has been presented in earlier papers [“Control Procedures for Data Communication,” Task Group document X3.3.4/44, May 1964: “Transparent-Mode Control Procedures for Data Communication,” Task Group document X3.3.4/58, December, 1964: Comm. ACM 8 (Apr. 1965), 203-206; “Control Procedures for Data Communication,” Task Group document X3.3.4/60, March, 1965] is retained here in summary form. Many of the concepts and principles described herein have been submitted to the International Organization for Standardization via earlier papers and are now embodied in working papers of that organization.
Research and Advances

Dribble posting a master file

Many business applications employ sequential magnetic tape rather than random-access storage techniques to process a very small number of transactions against a voluminous master file. In such situations, it may prove economical to avoid creating a new master file during each updating run by producing instead a dribble ledger containing only those master file accounts which have experienced activity.
Research and Advances

Tests of probabilistic models for propagation of roundoff errors

In any prolonged computation it is generally assumed that the accumulated effect of roundoff errors is in some sense statistical. The purpose of this paper is to give precise descriptions of certain probabilistic models for roundoff error, and then to describe a series of experiments for testing the validity of these models. It is concluded that the models are in general very good. Discrepancies are both rare and mild. The test techniques can also be used to experiment with various types of special arithmetic.

Recent Issues

  1. July 2024 CACM cover
    July 2024 Vol. 67 No. 7
  2. June 2024 Vol. 67 No. 6
  3. May 2024 CACM cover
    May 2024 Vol. 67 No. 5
  4. April 2024 CACM cover with text
    April 2024 Vol. 67 No. 4