K AUTOCODE(ID:2144/)

ADvance autocode for KDF9 


Autocode initially for the EE KDF9 (hence name) then for IBM 360

ICI Management Services, Fulshaw Hall, Wilmslow, UK

The true matrix capabilities are worth noting - triangular, diagonal etc


Related languages
Mercury Autocode => K AUTOCODE   Evolution of

References:
  • Gibbons, A "K Autocode" pp160-168 view details Abstract: This paper describes a development of Mercury Autocode (Brooker, 1958) known as K Autocode. The first implementation of K Autocode was for the English Electric KDF9 and the second for the IBM System/360. In addition to the usual numerical facilities and procedures, the language provides comprehensive input/output, random and sequential file processing, symbol manipulation and a matrix scheme. Extract: K Autocode development
    In 1962, ICI ordered a KDF9 to replace its existing Mercury computer. When the KDF9 was delivered in February 1964, the Mercury was being used on a 3-shift basis for five or more days a week and the workload was programmed almost entirely in Mercury Autocode.
    There was an Autocode library of over 100 programs, several hundred personnel were conversant with the Autocode language and over 2,000 programs were in use. It was the intention at that time to use Autocode on both machines during the transition period and gradually to convert programs and programmers to ALGOL.
    A compatible compiler was written and came into use in May 1964. Another compiler was also provided which contained extra facilities. These were welcomed and suggestions were made for further improvements. As a result, K Autocode was defined and a preliminary implementation made available in October 1964. Subsequently the language has been extended and, because of the relative inefficiency of the ALGOL implementations, is now the most widely used technical programming language in ICI.
    In October 1965, the first of a series of System/360 computers was installed and a 360 implementation of K Autocode started. At the present time, March 1968, nine 360s have been delivered and K Autocode is available on the larger models.
    For the future, PL/I is probably the preferred language but the inefficiency of the initial implementation in relation to K Autocode does not yet make this an attractive proposition. Extract: The Autocode matrix scheme
    The Autocode matrix scheme
    The matrix scheme permits operations to be performed
    on arrays of numbers held in the auxiliary store. The
    auxiliary address, M, of the first element is used to refer
    to the array. Two dimensional arrays are stored by
    rows. The dimensions of the operands are stated
    explicitly in each operation.
    Each matrix operation is essentially an assignment
    instruction, although it is written in the same way as a
    function :
    +operation number (parameter list)
    The matrix operations provide facilities for input,
    output, manipulation and arithmetic. Three typical
    operations are given.
    $5 (M, I, J, K)
    prints the I x J matrix in A4 in tabular form. The
    elements of the matrix must be real numbers and they
    are printed in floating point style with K significant
    figures. As many columns as possible are printed across
    a page.
    $11 (MI, M2, I)
    extracts the diagonal of the square matrix of order I
    stored in M2 and stores it as a vector in MI.
    430 (Ml, M2, M3, X, Y, I, J)
    forms the linear combination of two I x J matrices
    stored in M2 and M3, i.e.
    (MI) = X (M2) + Y (M3)
    The special cases which arise when X and Y are 0 or 1
    are recognised.


          in The Computer Journal 11(2) August 1968 view details
  • Ponton, Jack "The Autocodes: Sirius to IMP, a User's Perspective" view details External link: Online copy
          in The Computer Journal 11(2) August 1968 view details