August 1963 - Vol. 6 No. 8
Features
American standard code for information interchange
There was the germ of an idea in two previous papers [1, 2] which no one seems to have picked up in almost five years. For certain functions it seems desirable to transform the argument to a short range symmetric about 1.0. I will give examples of this usage for the square root and logarithm function for both binary and decimal machines.
SABRAC, a time-sharing low-cost computer
The serial SABRAC computer designed and built in the Scientific Department of the Israel Defence Ministry has a 5000-location magnetic drum, main store. To avoid a need to resort to optimum programming techniques and to increase its overall efficiency the computer has also been given a 224-word ferrite core store from which the program is obeyed.
Transfers between the core and drum stores and to and from the twin paper-tape input and output channels are all available autonomously (concurrently, time-shared). Multiplication and division orders are also autonomous, so that the machine may be executing up to three orders simultaneously. All functions naturally are interlocked.
A number of other advanced orders and facilities are also incorporated. In particular, an “Execute” order permits a temporary jump for up to four orders and a second modifier register permits double modification in general and relative addressing of subroutines in particular. Thus the overall effective speed of the machine is much higher than its basic specification would lead one to expect and its design indicates one way in which the concepts of time sharing may be incorporated in “low-cost” computers.
A list-type storage technique for alphanumeric information
A method which is economic in terms of space and time is proposed for the storage and manipulation of character strings of arbitrary length in a fixed word-length computer. The method is illustrated in an application to Algol-type identifiers in an Algol-like block structure.
Character manipulation in 7090 FORTRAN
The IBM 7090 FORTRAN II language requires that a programmer desiring toa mnipulate characters or strings of characters either assign each character to a separate 7090 word or write special subroutines for handling packed words containing 6 characters. The one-character-per-word approach is superior in most cases due to the much smaller machine time it requires. One pays for this speed advantage in additional core requirements, however, plus more complex logic requirements in some cases. Applications exist where considerations of storage and logic make a packed-word approach competitive. One such application, and the one which led to the work described here, was the desire to manipulate information sent via telephone lines by a remote 7090 user to and from the central computer. The results of this work are not completed, but the methods used for manipulating character strings were felt to be of sufficient interest to warrant a report. The following paragraphs describe the approach taken.
Some remarks on the syntax of symbolic programming languages
This paper concerns some preliminary results of an investigation of certain syntactical features of symbolic programming languages (SPL), which is a part of a wider research in the field of problem-oriented languages for automatic processor construction [1]. Our main aim is to point out certain peculiar features of SPL's which yield a deeper insight into their linguistic nature from a formal point of view, in order to take further steps in the direction of finding a proper way to define them. The general approach suggested here might be of some interest in the broader field of general linguistics, since many languages, including natural languages, show similar properties.
A note on the dangling else ALGOL 60
Some revisions of ALGOL 60 are proposed, which not only eliminate certain ambiguous statements but also add some convenience to the language. A discussion of the background of the problem and a sketch of a proof that the ambiguities have been removed is included.
Continued operation notation for symbol manipulation and array processing
A brief account is given of a notational device that is very useful in the formal representation of syntaxes, string relationships and string transformation procedures and also of computing procedures that deal with arrays of functions of many variables. The device consists of the use of certain “continued operation” or “collective” symbols that are analogous to the summation symbol ∑ and continued multiplication symbol ∏ of conventional mathematics.
A computer program for editing the news
The computer news editing program is designed to perform the following functions: (1) it will input automatically those stories from the AP Teletypesetter tape which the editor wishes to use; (2) it will make additions and deletions in these stories according to instructions received from the editor; (3) it will attempt to “edit,” i.e. cut from the bottom, the stories in its possession according to (a) an overall news hole limitation, (b) a minimum-lines-per-story limitation, (c) the general interests of the paper's editor in various categories of news, (d) a formula which grants more space to those stories which the editor thinks are more important, and (e) the availability of news on the day in question; (4) it will print out stories cut to desired lengths and arranged in categories.
There are, of course, many editing functions which the program does not perform. It does not assign stories to pages; it does not lay out the news and advertising; it does not crop pictures nor provide for display headlines; it does not cut stories (as an editor would) with regard for their meaningfulness and literary effectiveness. In short, the present program is presented more as an “aid to the editor” handling the news than as a complete computer editing system. Designing a complete editing system, though probably feasible, would be a major undertaking.
An exponential method of numerical integration of ordinary differential equations
A formula for numerical integration is prepared, which involves an exponential term. This formula is compared to two standard integration methods, and it is shown that for a large class of differential equations, the exponential formula has superior stability properties for large step sizes. Thus this formula may be used with a large step size to decrease the total computing time for a solution significantly, particularly in those engineering problems where high accuracy is not needed.