Advertisement

Expand, a system for input card replication

In an effort to reduce the volume of card handling at our installation, our operating system [1] was modified to include an EXPAND feature. The function of EXPAND is to eliminate the necessity of reproducing a card or a group of cards of the input dock to any particular job. Once a group of cards appears in an input deck, they may be caused to reappear subsequently by the inclusion of a single control card which calls for the “insertion” of cards by sequence numbers or letters. The user is permitted to specify minor modifications to the cards as they are being inserted. Hence, the user may easily run parameter studies, insert similar EQUIVALENCE, COMMON and DIMENSION statements in a multisubroutined FORTRAN program, or specify similar regions on a large mesh such as is needed for a thermal or nuclear study. Note also that when it is necessary to change a deck and rerun, it is only necessary to repunch the original card—every reappearance caused by EXPAND automatically reflects the new card.

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.

On declaring arbitrarily coded alphabets

The inability of existing programming languages to handle character strings from more than one or two alphabets is mentioned and a scheme for declaring additional alphabets is proposed. The scheme provides for: many-to-one encodings, right or left justification, collating sequences different from numeric sequence, variations in character size (number of bits) from alphabet to alphabet, and arbitrary source-language character representation.

An improved equivalence algorithm

An algorithm for assigning storage on the basis of EQUIVALENCE, DIMENSION and COMMON declarations is presented. The algorithm is based on a tree structure, and has reduced computation time by 40 percent over a previously published algorithm by identifying all equivalence classes with one scan of the EQUIVALENCE declarations. The method is applicable in any problem in which it is necessary to identify equivalence classes, given the element pairs defining the equivalence relation.

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.

An experiment in a user-oriented computer system

A version of a software-hardware system for the purpose of facilitating the programming and analysis of well-formulated problems is described. A modified Flexowriter is used to generate computer-acceptable input when equations or computable requests are typed in much the same manner as they would appear in conventional mathematical texts. The typing and language rules are quite flexible and unrestrictive. While the compiler part is efficient, the system as a whole has much broader aspects as a tool for the study of problem solving and self-teaching systems.

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.

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