EXCHLF(ID:3057/exc001)

Extension of CHLF3 for ATLAS 


for EXtended CHLF

W Nixon, Institute of Computer Science in the University of London, 1966

Extremely elegant extension of CHLF3 for the University of London Computer Unit Atlas

Featured Chapter and Routine organised code, with JUMPDOWN as a calling instruction (ie JUMPDOWN(R3) called ROUTINE 3)

Now only known for being the swearword in the mathematician's fairy tale ("Exchlf!" he swore using the vilest oath he knew. His patience was gone.)


Related languages
CHLF3 => EXCHLF   Extension of

References:
  • Nixon, W.L.B. "The EXCHLF Autocode Handbook" University of London Press,University of London,1966, Provisional Version view details Extract: Historical summary
    EXCHLF AUTOCODE - or simply EXCHLF - is a computer programming language. It is a development of MERCURY AUTOCODE, one of the first non-basic programming languages, which was developed especially for the Ferranti MERCURY computer principally by R. A. Brooker of Manchester University.  Various extensions and modifications of MERCURY AUTOCODE have been produced from time to time; in particular, the term CHLF AUTOCODE was applied to an extended version of MERCURY AUTOCODE developed collaboratively by and used at the MERCURY installations at CERN, Harwell, London, and RAE Farnborough. The most substantial innovation in CHLF AUTOCODE was the CHLF Routine, due to Dr D. C. Cooper of the then University of London Computer Unit.

    Both MERCURY AUTOCODE and the original CHLF AUTOCODE as programming languages preserved a particular orientation to MERCURY as the implementing computer,  A facility for incorporating MERCURY machine-language instructions into AUTOCODE programs was much used in order to supplement the deficiencies of AUTOCODE itself.

    The replacement of the London MERCURY by an ATLAS computer was preceded by the development at London of an extended CHLF AUTOCODE; this extension, called CHLF3 AUTOCODE, came into use as the standard version of AUTOCODE for MERCURY at the University of London Computer Unit on 1 April 1962.  Its new features were chiefly such as to obviate the necessity for machine-language instructions, so as to facilitate the transition from MERCURY to ATLAS.  Its development and implementation on MERCURY were due principally to Alan Fairbourn of ULCU, as was its eventual implementation on ATLAS.

    It then became clear that CHLF3 AUTOCODE did not take full advantage of the capabilities of ATLAS; and it was found possible to make still further extensions and improvements by means of appropriate modifications to the ATLAS Compiler for GHLF3 AUTOCODE.  The name EXCHLF AUTOCODE was applied to this new extended language; the EXCHLF Compiler came into use on ATLAS in October 1965.

    By this time the AUTOCODE language had become, rather like a developed human language, a mixture of primitive and sophisticated elements;  it was clear that the next stage of development must include rationalisation as well as further extension.  The EXCHLF Compiler introduced in September 1966, to which this Handbook applies, nevertheless does not render obsolete (in the sense of unavailable) any of the facilities of its predecessors (with a few minor exceptions). However a substantial number of features and facilities have been rendered obsolescent, in that they are now provided for as particular cases of more general facilities, or are incompatible with newer facilities, or are irrelevant to execution by ATLAS.  In order therefore to assist their transition from obsolescence to oblivion, such features and facilities are not described in this Handbook.  In other words, the process of rationalisation has been applied to the Handbook but not yet to the Compiler.

    The implementation on ATLAS of the various stages of the EXCHLF development is due to Gailean Davidson, with the assistance of Diana Lawrence and, more recently, Margaret Pragnell, all of ULICS. Benedict Nixon (ULICS)has been closely associated in a consultative capacity with all the stages of development outlined above.

    Another substantial extension of MERCURY AUTOCODE has been produces by ICT Ltd.; it is CAlled Extended Mercury Autocode or EMA. It includes many of the features of the early CHLF AUTOCODE as well as having peculiarities of its own; but it is not necessarily the case that a EXCHLF program is an acceptable EMA program and vice-versa, in spite of the considerable common ground.
  • Stock, Karl F. "A listing of some programming languages and their users" in RZ-Informationen. Graz: Rechenzentrum Graz 1971 94 view details Abstract: 321 Programmiersprachen mit Angabe der Computer-Hersteller, auf deren Anlagen die entsprechenden Sprachen verwendet werden kennen. Register der 74 Computer-Firmen; Reihenfolge der Programmiersprachen nach der Anzahl der Herstellerfirmen, auf deren Anlagen die Sprache implementiert ist; Reihenfolge der Herstellerfirmen nach der Anzahl der verwendeten Programmiersprachen.

    [321 programming languages with indication of the computer manufacturers, on whose machinery the appropriate languages are used to know.  Register of the 74 computer companies;  Sequence of the programming languages after the number of manufacturing firms, on whose plants the language is implemented;  Sequence of the manufacturing firms after the number of used programming languages.]
  • Stock, Marylene and Stock, Karl F. "Bibliography of Programming Languages: Books, User Manuals and Articles from PLANKALKUL to PL/I" Verlag Dokumentation, Pullach/Munchen 1973 221 view details Abstract: PREFACE  AND  INTRODUCTION
    The exact number of all the programming languages still in use, and those which are no longer used, is unknown. Zemanek calls the abundance of programming languages and their many dialects a "language Babel". When a new programming language is developed, only its name is known at first and it takes a while before publications about it appear. For some languages, the only relevant literature stays inside the individual companies; some are reported on in papers and magazines; and only a few, such as ALGOL, BASIC, COBOL, FORTRAN, and PL/1, become known to a wider public through various text- and handbooks. The situation surrounding the application of these languages in many computer centers is a similar one.

    There are differing opinions on the concept "programming languages". What is called a programming language by some may be termed a program, a processor, or a generator by others. Since there are no sharp borderlines in the field of programming languages, works were considered here which deal with machine languages, assemblers, autocoders, syntax and compilers, processors and generators, as well as with general higher programming languages.

    The bibliography contains some 2,700 titles of books, magazines and essays for around 300 programming languages. However, as shown by the "Overview of Existing Programming Languages", there are more than 300 such languages. The "Overview" lists a total of 676 programming languages, but this is certainly incomplete. One author ' has already announced the "next 700 programming languages"; it is to be hoped the many users may be spared such a great variety for reasons of compatibility. The graphic representations (illustrations 1 & 2) show the development and proportion of the most widely-used programming languages, as measured by the number of publications listed here and by the number of computer manufacturers and software firms who have implemented the language in question. The illustrations show FORTRAN to be in the lead at the present time. PL/1 is advancing rapidly, although PL/1 compilers are not yet seen very often outside of IBM.

    Some experts believe PL/1 will replace even the widely-used languages such as FORTRAN, COBOL, and ALGOL.4) If this does occur, it will surely take some time - as shown by the chronological diagram (illustration 2) .

    It would be desirable from the user's point of view to reduce this language confusion down to the most advantageous languages. Those languages still maintained should incorporate the special facets and advantages of the otherwise superfluous languages. Obviously such demands are not in the interests of computer production firms, especially when one considers that a FORTRAN program can be executed on nearly all third-generation computers.

    The titles in this bibliography are organized alphabetically according to programming language, and within a language chronologically and again alphabetically within a given year. Preceding the first programming language in the alphabet, literature is listed on several languages, as are general papers on programming languages and on the theory of formal languages (AAA).
    As far as possible, the most of titles are based on autopsy. However, the bibliographical description of sone titles will not satisfy bibliography-documentation demands, since they are based on inaccurate information in various sources. Translation titles whose original titles could not be found through bibliographical research were not included. ' In view of the fact that nany libraries do not have the quoted papers, all magazine essays should have been listed with the volume, the year, issue number and the complete number of pages (e.g. pp. 721-783), so that interlibrary loans could take place with fast reader service. Unfortunately, these data were not always found.

    It is hoped that this bibliography will help the electronic data processing expert, and those who wish to select the appropriate programming language from the many available, to find a way through the language Babel.

    We wish to offer special thanks to Mr. Klaus G. Saur and the staff of Verlag Dokumentation for their publishing work.

    Graz / Austria, May, 1973