Advertisement

Research and Advances

A proposal for input-output conventions in ALGOL 60

The ALGOL 60 language as first defined made no explicit reference to input and output processes. Such processes appeared to be quite dependent on the computer used, and so it was difficult to obtain agreement on those matters. As time has passed, a great many ALGOL compilers have come into use, and each compiler has incorporated some input-output facilities. Experience has shown that such facilities can be introduced in a manner which is compatible and consistent with the ALGOL language, and which (more importantly) is almost completely machine-independent. However, the existing implementations have taken many different approaches to the subject, and this has hampered the interchange of programs between installations. The ACM ALGOL committee has carefully studied the various proposals in an attempt to define a set of conventions for doing input and output which would be suitable for use on most computers. The present report constitutes the recommendations of that committee.
Research and Advances

Computer-usage accounting for generalized time-sharing systems

The current development of general time-sharing systems requires a revision of accounting procedures for computer usage. Since time-sharing system users operate concurrently, it is necessary to be more precise as to the amount of computer time and storage space that a user actually utilizes. The various cost factors which should be considered for computer usage accounting in generalized time-sharing systems are discussed.
Research and Advances

A Fortran II load-time saver

The FORTRAN II CHAIN feature on the 7090 can be used to save card-to-tape time, loading time, and to provide a convenient method for storing and transporting producting programs. The method is simply to load the desired program as a CHAIN and save the tape on which it is stored. A trivial program can then be used to recall the major program.
Research and Advances

A technique for computer detection and correction of spelling errors

The method described assumes that a word which cannot be found in a dictionary has at most one error, which might be a wrong, missing or extra letter or a single transposition. The unidentified input word is compared to the dictionary again, testing each time to see if the words match—assuming one of these errors occurred. During a test run on garbled text, correct identifications were made for over 95 percent of these error types.
Research and Advances

Computer-made perspective movies as a scientific and communication tool

It is easy to program the basic transformation required for a perspective drawing. This fact plus the advent of high speed microfilm printers such as the General Dynamics Electronics S-C 4020 makes possible perspective movies as the direct output from a computer. The programming of such a movie is briefly described for studying the angular motions of a satellite containing an attitude control system. In the movie, a domino-shaped box represents the satellite and a sphere with circles of latitude and longitude represents the earth. The cost was approximately three to eight minutes of IBM 7090 time per one minute of movie.
Research and Advances

Digital data processor for tracking the partially illuminated moon

A study of lunar tracking techniques and fabrication of a breadboard to assess the feasibility of the best technique selected was conducted to define a tracking system for observation of the sightline to the center of a partially illuminated moon. The data processing portion of the system is presented in detail and then described in general are the operation of the tracker head assembly for data readout, the operation of the entire system and the effect data processing considerations have on the design of the tracker system. The system basically consists of an optical sensor, digital computer and tracker drive mechanism. The three system units, connected in cascade, comprise the control loop. For this application, an optical telescope with a radial mechanical scanning mechanism was used that read out lunar sightline measurement information. This information is sequentially read into a special purpose digital computer that extracts the measurements and computes the error signals that drive the tracker to the appropriate attitude.
Research and Advances

Tests on a computer method for constructing school timetables

A previously proposed computer method for constructing timetables, based on an iteration involving Boolean matrices, is described. In limited tests the method has successfully produced timetables on every trial. References are given which relate the timetable problem to theorems on matrices of zeros and ones, and to theorems on bipartite graphs. Some problems of applying the method to constructing timetables in real situations are noted.
Research and Advances

Some effects of the 6600 computer on language structures

The problem of compiling efficient 6600 codes prompted the development of an intermediate language reflecting the structure of the machine, that is more easily manipulated in improving object program efficiency. The subject of this paper is the intermediate language and methods of manipulating it. Compilations of a series of arithmetic statements are discussed. It is assumed that all functions and exponentials have been removed from these statements, and replaced by simple variables. For purposes of simplicity the treatment of subscripts is ignored. A simplified 6600 structure is presented to illustrate the compiling method. Several assumptions are made for purposes of simplification, although there are cases in which the assumptions are violated in the actual machine.
Research and Advances

“Structural connections” in formal languages

This paper defines the concept of “structural connection” in a mechanical language in an attempt to classify various formal languages according to the complexity of parsing structures on strings in the languages. Languages discussed vary in complexity from those with essentially no structure at all to languages which are self-defining. The relationship between some existing recognition techniques for several language classes is examined, as well as implications of language structure on the complexity of automatic recognizers.
Research and Advances

Bounded context syntactic analysis

Certain phase structure grammars define languages in which the phrasehood and structure of a substring of a sentence may be determined by consideration of only a bounded context of the substring. It is possible to determine, for any specified bound on the number of contextual characters considered, whether a given grammar is such a bounded context grammar. Such grammars are free from syntactic ambiguity. Syntactic analysis of sentences in a bounded context language may be performed by a standard process and requires a number of operations proportional to the length of sentence analyzed. Bounded context grammars form models for most languages used in computer programming, and many methods of syntactic analysis, including analysis by operator precedence, are special cases of bounded context analysis.
Research and Advances

GIT—a heuristic program for testing pairs of directed line graphs for isomorphism

Given a pair of directed line graphs, the problem of ascertaining whether or not they are isomorphic is one for which no efficient algorithmic solution is known. Since a straightforward enumerative algorithm might require 40 years of running time on a very high speed computer in order to compare two 15-node graphs, a more sophisticated approach seems called for. The situation is similar to that prevailing in areas such as game-playing and theorem-proving, where practical algorithms are unknown (for the interesting cases), but where various practical though only partially successful techniques are available. GIT—Graph Isomorphism Tester—incorporates a variety of processes that attempt to narrow down the search for an isomorphism, or to demonstrate that none exists. No one scheme is relied upon exclusively for a solution, and the program is designed to avoid excessive computation along fruitless lines. GIT has been written in the COMIT language and successfully tested on the IBM 7090.
Research and Advances

An efficient composite formula for multidimensional quadrature

A (2s+1)-point, second-degree quadrature formula for integration over an s-dimensional hyper-rectangle is presented. All but one of the points lie on the surface with weights of opposite sign attached to points on opposite faces. When a large volume is subdivided into congruent rectangular subdivisions, only one point is required in each interior subdivision to achieve second-degree accuracy.
Research and Advances

On the numerical solution of boundary value problems for linear ordinary differential equations

A numerical method is presented for the solution of boundary value problems involving linear ordinary differential equations. The method described is noniterative and makes use of any one-step numerical integration scheme to reduce the problem from one of boundary values to one of initial values. Comments are made concerning some numerical results of applying the method to a specific problem. In addition an extension of the algorithm described to more general problems is discussed.

Shape the Future of Computing

ACM encourages its members to take a direct hand in shaping the future of the association. There are more ways than ever to get involved.

Get Involved

Communications of the ACM (CACM) is now a fully Open Access publication.

By opening CACM to the world, we hope to increase engagement among the broader computer science community and encourage non-members to discover the rich resources ACM has to offer.

Learn More