Location via proxy:   [ UP ]  
[Report a bug]   [Manage cookies]                
skip to main content
10.1145/154766.155365acmconferencesArticle/Chapter ViewAbstractPublication PageshoplConference Proceedingsconference-collections
Article
Free access

A history of ALGOL 68

Published: 01 March 1993 Publication History
  • Get Citation Alerts
  • Abstract

    ALGOL 68 is a language with a lot of “history”. The reader will hear of discord, resignations, unreadable documents, a minority report, and all manner of politicking. But although ALGOL 68 was produced by a committee (and an unruly one at that), the language itself is no camel. Indeed, the rigorous application of the principle of “orthogonality” makes it one of the cleanest languages around, as I hope to show. Moreover, when the language came to be revised, the atmosphere was quite different enabling a much more robust and readable defining document to be produced in a spirit of true cooperation. There are some lessons here for future language design efforts, but I am not optimistic that they have been learned.

    References

    [1]
    News item - Tenth anniversary colloquium, Ziirich, May 1968, ALGOL Bulletin AB28.1.1, Jul. 1968.]]
    [2]
    News item- Minority report, AlgOL Bulletin AB31.1.1, Mar. 1970.]]
    [3]
    H. D. Baecker, ASERC - a code for ALGOL 68 basic tokens, ALGOL Bulletin AB28.3.5, Jul. 1968.]]
    [4]
    H. J. Boom, IFIP WG2.1 Working Paper 217 (Vienna 4), Sep. 1972.]]
    [5]
    E Branquart, J.-P. Cardinael, J. Lewi, J.-E Delescaille and M. Vanbegin, An optimized translation process and its application to ALGOL 68, LNCS 38, Springer-Verlag, 1976.]]
    [6]
    G. de Chastetlier and A. Colmerauer, W-Grammar, Proc. 24th National Conference, ACM Publication P-69, 1969.]]
    [7]
    A. Colmerauer and P. Roussel, The birth of Prolog, in these Proceedings.]]
    [8]
    O-J Dahl, A plea for multiprogramming, ALGOL Bulletin AB24.3.5, Sep. 1966.]]
    [9]
    O-J Dahl, B. Myhrhaug and K. Nygaard, The Simula 67 Common Base Language, Norwegian Computing Centre, Oslo, 1968.]]
    [10]
    R. M. De Morgan, I. D. Hill and B. A. Wichman, A supplement to the ALGOL 60 revised report, Comp. Jour. 19:3 pp 276-288, August 1976; also SIGPLAN Notices 12:1 pp 52-66, January 1977; Modified report on the algorithmic language ALGOL 60, Comp. Jour. 19:4 pp 364-379, Nov. 1976 (being {Naur et al 1962} as modified by the Supplement); R. M. De Morgan, I. D. Hill and B. A. Wichman, Modified ALGOL 60 and the step-until element, Comp. Jour. 21:3 p 282, Aug. 1978 (containing essential errata to all the above documents).]]
    [11]
    E. W. Dijkstra, Cooperating sequential processes, In Programming Languages, E Genuys (Ed), Academic Press, 1968.]]
    [12]
    E. W. Dijkstra, Goto considered harmful, letter to the Editor, Comm. ACM 11:3, Mar. 1968.]]
    [13]
    F. G. Duncan and A. van Wijngaarden, Cleaning up ALGOL 60, ALGOL Bulletin AB16.3.3, May 1964.]]
    [14]
    J. V. Garwick, The question of I/O procedures, ALGOL Bulletin AB 19.3.8, Jan. 1965.]]
    [15]
    Programming language ALGOL 68 and ALGOL 68 extended, GOST 27974-88 and GOST 27975-88, USSR State Committee for Standards, Moscow, 1989.]]
    [16]
    D. Grune, The Revised MC ALGOL 68 test set, IW 122/79, Mathematisch Centrum, Amsterdam, 1979.]]
    [17]
    Wilfred J. Hansen and Hendrik Boom, The report on the standard hardware representation for ALGOL 68, SIGPLAN Notices 12:5, May 1977; also Acta Informatica 9: pp 105-119, 1978.]]
    [18]
    P. G. Hibbard, A sublanguage of ALGOL 68, SIGPLAN Notices 12:5, May 1977.]]
    [19]
    C. A. R. Hoare, Case expressions, ALGOL Bulletin AB18.3.7, Oct. 1964.]]
    [20]
    C. A. R. Hoare, Cleaning up the for statement, ALGOL Bulletin AB21.3.4, Nov. 1965.]]
    [21]
    C. A. R. Hoare, Record Handling, ALGOL Bulh;tin AB21.3.6, Nov. 1965.]]
    [22]
    C. A. R. Hoare, Further thoughts on record handling AB21.3.6, ALGOL Bulletin AB23.3.2, May 1966.]]
    [23]
    C. A. R. Hoare, Critique of ALGOL 68, ALGOL Bulletin AB29.3.4, Nov. 1968.]]
    [24]
    C. A. R. Hoare, The emperor's old clothes (the 1980 ACM Turing award lecture), Comm. ACM 24:2 pp 75-83, Feb. 1981.]]
    [25]
    E R. King, WG2.1 subcommittee on ALGOL 68 support, ALGOL Bulletin AB37.3.1, Jul. 1974.]]
    [26]
    D. Knuth (Chairman), L. L. Bumgarner, D. E. Hamilton, P. Z. Ingerrnan, M. P. Lietzke, J. N. Memer and D. T. Ross, A proposal for input-output conventions in ALGOL 60, Comm. ACM 7:5 pp 273-283, May 1964.]]
    [27]
    C. H. A. Koster, On infinite modes, ALGOL Bulletin AB30.3.3, Feb. 1969.]]
    [28]
    C. H. A. Koster, Affix-grammars, in ALGOL 68 Implementation, J. E. L. Peck (Ed.), pp 95-109, North Holland 1971 ISBN: 0 7204 2045 8.]]
    [29]
    C. H. Lindsey, ALGOL 68 with fewer tears, ALGOL Bulletin AB28.3.1, Jul. 1968.]]
    [30]
    C. H. Lindsey and S. G. van der Meulen, Informal Introduction to ALGOL 68, North Holland, 1971, ISBN: 0 7204 2048 2.]]
    [31]
    C. H. Lindsey, ALGOL 68 with fewer tears, Comp. Jour. 15:2, May 1972.]]
    [32]
    C. H. Lindsey, Specification of partial parametrization proposal, ALGOL Bulletin AB39.3.1, Feb. 1976.]]
    [33]
    C. H. Lindsey and S. G. van der Meulen, Informal Introduction to ALGOL 68 Revised Edition, North Holland, 1977, ISBN: 0 7204 0726 5.]]
    [34]
    C. H. Lindsey and H. J. Boom, A modules and separate compilation facility for ALGOL 68, ALGOL Bulletin AB43.3.2, Dec. 1978; also IW 105/78, Mathematiseh Centrum, Amsterdam, 1978.]]
    [35]
    P. Marfin-l.,tif, Constructive mathematics and computer programming, in Mathematical logic and programming languages, C. A. R. Hoare and J. C. Shepherdson (Eds), Prenuce-Hall, 1985.]]
    [36]
    P. Lucas and K. Walk, On the formal description of PL/I, in Annual review in automatic programming 6:3 pp 105-182, Pea'gammon 1969.]]
    [37]
    B. J. Mailloux, On the implementation of ALGOL 68, Mathematisch Centrum, Amsterdam, I968.]]
    [38]
    J. McCarthy, Definition of new data types in ALGOL X, ALGOL Bulletin AB18.3.12, Oct. 1964.]]
    [39]
    L. G. L. T. Meertens, On the generation of ALGOL 68 programs involving infinite modes, AI_~OL Bulletin AB30.3.4, Feb. 1969.]]
    [40]
    J. M. Merrier, J. V. Garwick, P. Z. lngerman and M. Paul, Report of the ALGOL X I-O subcommittee, IFIP WG2.1 Working Paper 48 (Warsaw 3), July 1966.]]
    [41]
    R. Milner, M. Tofte and R. Harper, The definition of standard ML, MIT Press, 1990.]]
    [42]
    A. van Wijngaarden, Orthogonal design and description of a formal language, MR 76, Mathematisch Centrum, Amsterdam, Oct. 1965.]]
    [43]
    A. van Wijngaarden and B. J. MaiUoux, A draft proposal for the algorithmic language ALGOL X, IFIP WG2.1 Working Paper 47 (Warsaw 2), Oct. 1966.]]
    [44]
    A. van Wijngaarden, B. J. Mailloux and I. E. L. Peck, A draft proposal for the algorithmic language ALGOL 67, MR 88, Mathematisch Centrum, Amsterdam, May 1967.]]
    [45]
    A. van Wijngaarden (Editor), B. J. Mailloux, J. E. L. Peck and C. H. A. Koster, Draft report on the algorithmic language ALGOL 68, MR 93, Mathematisch Centrum, Amsterdam, Jan. 1968.]]
    [46]
    A. van Wijngaarden (Editor), B. J. Mailloux, J. E. L. Peck and C. H. A. Koster, Working document on the algorithmic language ALGOL 68, MR 95, Mathematisch Centrum, Amsterdam, Jul. 1968.]]
    [47]
    A. van Wijngaarden (Editor), B. J. Mailloux, J. E. L. Peck and C. H. A. Koster, Penultimate draft report on the algorithmic language ALGOL 68, MR 99, Mathematisch Centrum, Amsterdam, Oct. 1968.]]
    [48]
    A. van Wijngaarden (Editor), B. J. Mailloux, J. E. L. Peck and C. H. A. Koster, Final draft report on the algorithmic language ALGOL 68, MR 100, Mathematisch Centrum, Amsterdam, Dec. 1968.]]
    [49]
    The first printing of {Van Wijngaarden 1969}.]]
    [50]
    I. W. Backus, F'. L. Bauer, J. Green, C. Katz, J. McCarthy, P. Naur (Ed.), A. J. Perils, H. Rutishauser, K. Samelson, B. Vauquois, J. H. Wegstein, A. van Wijngaarden and M. Woodger, Report on the algorithmic language ALGOL 60, Numerische Mathematik 2: pp 106-136, 1960; also Comm. ACM 3:5 pp 299-314, May 1960.]]
    [51]
    J. W. Backus, F. L. Bauer, J. Green, C. Katz, J. McCarthy, P. Naur (Ed.), A. J. Perlis, H. Rutishauser, K. Samelson, B. Vauquois, J. H. Wegstein, A. van Wijngaarden and M. Woodger, Revised report on the algorithmic language ALGOL 60, Numerische Mathematik 4: pp 420-453, 1963; also Comm. ACM 6:1 pp 1-17, Jan. 1963; also Comp. Jour., 5:1, pp 349-367, Jan. 1963.]]
    [52]
    P. Naur, Proposals for a new language, ALGOL Bulletin AB 18.3.9, Oct. 1964.]]
    [53]
    P. Naur, The fom~ of specifications, ALGOL Bulletin AB22.3.7, Feb. 1966]]
    [54]
    P. Naur, Successes and failures of the ALGOL effort, ALGOL Bulletin AB28.3.3, Jul. 1968.]]
    [55]
    P. Naur, The European side of the last phase of the development of ALGOL 60, in History of Programming Languages, Richard L. Wexelblat (Ed), Academic Press, 1981,1SBN 012 745040 8.]]
    [56]
    C. Pair, Concerning the syntax of ALGOL 68, ALGOL Bulletin AB31.3.2, Mar. 1970.]]
    [57]
    J. E. L. Peck (Ed.), ALGOL 68 Implementation, North Holland, 1971.]]
    [58]
    See {Van Wijngaarden 1969}.]]
    [59]
    See IVan Wijngaarden 19751.]]
    [60]
    D. M. Ritchie, The development of the C language, in these Proceedings.]]
    [61]
    D. T. Ross, A generalized technique for symbol manipulation and numerical calculation, Comm. ACM, 4:3 pp 147-50, Mar. 1961.]]
    [62]
    D. T. Ross, Concerning a minority report on ALGOL 68, ALGOL Bulletin AB30.2.3, Feb. 1969.]]
    [63]
    K. Samelson, Functionals and functional transformations, ALGOL Bulletin AB20.3.3, Jul, 1965,]]
    [64]
    G. Seegmiiller, Some proposals for ALGOL X, ALGOL Bulletin AB21.3.1, Nov. 1965.]]
    [65]
    G. Seegmiiller, A proposal for a basis for, a report on a successor to ALGOL 60, Bavarian Acad. Sci., Munich, Oct. 1965.]]
    [66]
    M. Sintzoff, Existence of a Van Wijngaarden syntax for every recursively enumerable set, Annales Soc. Sci. Bru~telles, I1, pp 115-118, 1967.]]
    [67]
    S. A. Schuman, Toward modular programming in high-level languages, ALGOL Bulletin AB37.4.1, Jul. 1974.]]
    [68]
    The first printing of IVan Wijngaarden 1975}, published as Technical Report TR74-3, Dept. of Computing Science, University of Alberta, Mar. 1974; subject to errata published in ALGOL Bulletin AB37.5 Ju}. 1974, AB38.5.1 Dec. 1974, and AB39.5.1 Feb. 1976.]]
    [69]
    W. M. Turski, Some remarks on a chapter from a document, ALGOL Bulletin AB29.2.4, Nov. 1968.]]
    [70]
    W. M. Turski, ALGOL 68 revisited twelve years later or from AAD to ADA, in Algorithmic Languages, J. W. de Bakker and J. C. van Vliet (Eds), North Holland, 1981.]]
    [71]
    S. G. van der Meulen and M. Veldhorst, TORRIX - a programming sy.i'tem f~~r operations on vectors and matrices over arbitrary fields and of variable size Vol. !, Mathematical Centre Tracts 86, Mathematisch Centrum, Amsterdam, 1978.]]
    [72]
    W. L. van der Poei, extract from WG2.1 Activity Report, ALGOL Bulletin AB21.1.1.]]
    [73]
    W. L. van der Poel, Some notes on the history of ALGOL, in A quarter century oflFIP, H. Zemanek (Ed.), North Holland, 1986.]]
    [74]
    J. C. van Vliet, ALGOL 68 transput, Pt 1: Historical review and discussion of the implementation model, Pt 2: An implementation model, Mathematical Centre Tracts 110 and 111, Mathematisch Centrum, 1979.]]
    [75]
    A. van Wijngaarden (Ed.), B. J. Mailloux, J. E. L. Peck and C. H. A. Koster, Report on the algorithmic language ALGOL 68, Numerische Mathematik 14: pp 79-218, 1969; also A. P. Ershov and A. Bahrs (transl.), Kybernetica 6: (1969) and 7: (1970), bilingual; also I. O. Kerner (transl.), Bericht fiber die algorithmische sprache ALGOL 68, Akademie-Verlag, Berlin, 1972, bilingual; also J. Buffet, P. Areal and A. Qu6r~ (transl.), D~finition du langage algorithmique ALGOL 68, Hermann, Pads, 1972, ISBN 2 7056 1354 1.]]
    [76]
    A. van Wijngaarden, B. J. Mailloux, J. E. L. Peck, C. H. A. Koster, M. Sintzoff, C. H. Lindsey, L. G. L. T. Meertens and R. G. Fisker, Revised report on the algorithmic language ALGOL 68, Acta lnformatica 5:1-3 (1975); also Mathematical Centre Tract 50, Mathematisch Centrum, Amsterdam; also SIGPLAN Notices 12:5, May 1977; also I. O. Kemer (transl.), Revidierter bericht iiber die algorithmische sprache ALGOL 68, Akademie-Verlag, Berlin, 1978; also A. A. Bahrs (transl.) and A. P. Ershov (Ed.), Peresmotrenoye So'obszczeniye ob ALGOLE 68, Izdatelstvo "MIR", Moscow, 1979; also Lu Ru Qian (transl.), ll~ll{~ ALGOL 68 ~ffl~, Science Press, Beijing, Aug. 1982.]]
    [77]
    A. van Wijngaarden and B. J. Mailloux, A draft proposal for the algorithmic language ALGOL X, IFIP WG2.1 Working Paper 47 (Warsaw 2), Oct. 1966.]]
    [78]
    Report on SUBSET ALGOL 60 (IFIP), Numeri~'che Mathematik 6: pp 454-458, 1964; also Comm. ACM 7:10 p 626, Oct. 1964.]]
    [79]
    Report on input-output procedures for ALGOL 60, Numerische Mathematik 6: pp 459-462; alsoComm. ACM 7:10p 628, Oct. 1964.]]
    [80]
    Report of the subcommittee on data processing and transput, ALGOL Bulletin AB32.3.3, May 1971.]]
    [81]
    Report of the subcommittee on maintenance and improvements to ALGOL 68, ALGOL Bulletin AB32.3.4, May 1971.]]
    [82]
    Letter concerning ALGOL 68 to the readers of the ALGOL Bulletin, ALGOL Bulletin AB32.2.8, May 1971.]]
    [83]
    WG2.1 formal resolution: "'Revised report on ALGOL 68", ALGOL Bulletin AB33.1.1, Max. 1972.]]
    [84]
    Report of the subcommittee on maintenance of and improvements to ALGOL 68, August 1971, ALGOL Bulletin AB33.3.3, Mar. 1972.]]
    [85]
    Report of the subcommittee on data processing and transput, August 197 I, ALGOL Bulletin AB33.3.4, Max. 1972.]]
    [86]
    Report on the meeting of working group 2.1 held at Fontainebleau, ALGOL Bulletin AB 34.3.1, Jul. 1972.]]
    [87]
    Report on considered improvements, ALGOL Bulletin AB34.3.2, Jul. 1972.]]
    [88]
    Proposals for revision of the transput section of the report, ALGOL Bulletin AB34.3.3, Jul. 1972.]]
    [89]
    Further report on improvements to ALGOL 68, ALGOL Bulletin AB35.3.1, Max. 1973.]]
    [90]
    Final report on improvements to ALGOL 68, ALGOL Bulletin AB36.3.1, Nov. 1973.]]
    [91]
    IFIP WG2.1 Working Paper 287 (TUM 10), Munich, Aug. 1975.]]
    [92]
    Commentaries on the revised report, ALGOL Bulletin AB43.3.1, Dec. 1978.]]
    [93]
    Commentaries on the revised report, ALGOL Bulletin AB44.3.1, May 1979.]]
    [94]
    Survey of viable ALGOL 68 implementations, ALGOL Bulletin AB52.3.1, Aug. 1988.]]
    [95]
    N. Wirth, A proposal for a report on a successor of ALGOL 60, MR 75, Mathematisch Centrum, Amsterdam, Oct. 1965.]]
    [96]
    N. Wirth and H. Weber, EULER: A generalization of ALGOL, and its formal definition: Part II, Comm. ACM 9:2 pp 89-99, Feb. 1966.]]
    [97]
    N. Wirth and C. A. R. Hoare, A contribution to the development of ALGOL, Comm. ACM 9:6 pp 413-431, Jun. 1966.]]
    [98]
    N. Wirth, Additional notes on "A contribution to the development of ALGOL", ALGOL Bulletin AB24.3.3, Sep. 1966.]]
    [99]
    ALGOL colloquium - closing word, ALGOL Bulletin AB29.3.2, Nov. 1968.]]

    Cited By

    View all

    Recommendations

    Reviews

    Doris Keefe Lidtke

    This lengthy paper is well written, informative, and well documented with a helpful bibliography. The author became a member of the committee in August 1968, so he has first-hand knowledge of the activities. He relies heavily on the detailed minutes of the meetings. As one of the papers presented at the History of Programming Languages Conference earlier this year, this paper contributes to the quality of the proceedings. It is noteworthy that two of the people the author thanks for commenting on his manuscript had signed the Minority Report.

    Access critical reviews of Computing literature here

    Become a reviewer for Computing Reviews.

    Comments

    Information & Contributors

    Information

    Published In

    cover image ACM Conferences
    HOPL-II: The second ACM SIGPLAN conference on History of programming languages
    April 1993
    370 pages
    ISBN:0897915704
    DOI:10.1145/154766
    Permission to make digital or hard copies of all or part of this work for personal or classroom use is granted without fee provided that copies are not made or distributed for profit or commercial advantage and that copies bear this notice and the full citation on the first page. Copyrights for components of this work owned by others than ACM must be honored. Abstracting with credit is permitted. To copy otherwise, or republish, to post on servers or to redistribute to lists, requires prior specific permission and/or a fee. Request permissions from [email protected]

    Sponsors

    Publisher

    Association for Computing Machinery

    New York, NY, United States

    Publication History

    Published: 01 March 1993

    Permissions

    Request permissions for this article.

    Check for updates

    Qualifiers

    • Article

    Conference

    HOPL93
    Sponsor:
    HOPL93: History of Programing Languages 1993
    April 20 - 23, 1993
    Massachusetts, Cambridge, USA

    Acceptance Rates

    Overall Acceptance Rate 12 of 12 submissions, 100%

    Contributors

    Other Metrics

    Bibliometrics & Citations

    Bibliometrics

    Article Metrics

    • Downloads (Last 12 months)132
    • Downloads (Last 6 weeks)21
    Reflects downloads up to 11 Aug 2024

    Other Metrics

    Citations

    Cited By

    View all

    View Options

    View options

    PDF

    View or Download as a PDF file.

    PDF

    eReader

    View online with eReader.

    eReader

    Get Access

    Login options

    Media

    Figures

    Other

    Tables

    Share

    Share

    Share this Publication link

    Share on social media