Algol 60 implementations and dialects
- P. Naur. Progress of ALGOL in Europe. ALGOL Bulletin, Supplement Number 18 (Oct. 1961), pages 1-6. CHM ACM Digital Library
- Howard Bromberg. Survey of programming languages and processors. Communications of the ACM, Volume 6, Number 3 (March 1963), pages 93-98. ACM Digital Library
- B. A. Wichmann. Algol 60 Compilation and Assessment. A.P.I.C. Studies in data processing, Number 10, Academic Press (August 1973). Electronic edition: PDF at sw.ccs.bcs.org
- See Samelson and Bauer 1959.
- A. A. Grau. Recursive processes and ALGOL translation. Communications of the ACM, Volume 4, Number 1 (January 1961), pages 10-15. ACM Digital Library
- A. A. Grau. The Structure of an ALGOL Translator. Report ORNL-3054, Oak Ridge National Laboratory, January 23, 1961. PDF at ornl.gov
- R. Baumann. ALGOL-Manual der ALCOR-Gruppe. Elektronische Rechenanlagen, Volume 3 (1961), pages 206-212 and 259-264, Volume 4 (1962), pages 71-85.
- K. Samelson and F. Bauer. The ALCOR project. In: Symbolic languages in Data Processing : Proceedings of symposium organized and edited by the International Computation Center, Rome, March 26-31, 1962. Gordon and Breach, New York, 1962, pages 207-216. PDF
- Hermann Bottenbruch. Structure and Use of ALGOL 60.
- Technical Report ORNL-3148, Oak Ridge National Laboratory, July 26, 1961, 52 pages. Online at www.osti.gov
- Journal of the ACM, Volume 9, Number 2 (April 1962), pages 161-221. ACM Digital Library
"Tom Sobosky prepared notes from my talks about ALGOL 60 at the 1960 summer session on ‘Advances in Programming and Artificial Intelligence,’ Chapel Hill, North Carolina. An earlier version of this report was published in the proceedings of this summer session. A. A. Grau and L. L. Bumgarner helped in preparing this first version by making valuable comments and corrections. The present version incorporates further suggestions and corrections by W. Börsch-Supan, A. S. Householder, F. L. Bauer, K. Samelson, and W. R. Busing. I wish to thank all of these gentlemen."
- A. A. Grau. A Translator-Oriented Intermediate Computer Language. Report ORNL-TM-221, Oak Ridge National Laboratory, May 4, 1962. PDF at ornl.gov
- L. L. Bumgarner, A. A. Grau, M. P. Lietzke, R. G, Stueland, and K. A. Wolf. An ALGOL Compiler for the Control Data Corporation 1604 : Progress Report Number 2. Report ORNL-TM-404, Oak Ridge National Laboratory, October 18, 1962. PDF at ornl.gov
- M. P. [Marjorie] Lietzke. An ALGOL 60 Syntax Checker for the IBM 7090 Computer. ORNL-3399, Oak Ridge National Laboratory, March 21, 1963, 26 pages. Online at HathiTrust.org
- L. L. Bumgarner. The Oak Ridge Algol compiler for the Control Data Corporation 1604: preliminary programmer's manual. ORNL-3460, Oak Ridge National Laboratory, 1964. Online at HathiTrust.org
- A. A. Grau and L. L. Bumgarner. An Approach to ALGOL Translation. ORNL 3592, Oak Ridge National Laboratory, June 1964. Online at osti.gov
- R. Bayer, E. Murphree Jr., and D. Gries. User's manual for the ALCOR ILLINOIS 7090 ALGOL-60 translator, 2nd ed., University of Illionois, September 28, 1964. Online at HathiTrust.org
- D. Gries, M. Paul, and H. R. Wiehle. ALCOR ILLINOIS 7090—An ALGOL compiler for the IBM 7090. Report Number 6415, Rechenzentrum der Technische Hochschule, München, 1964.
- D. Gries, M. Paul, and H. R. Wiehle. The object program produced by the ALCOR ILLINOIS 7090 compiler. Report Number 6412, Rechenzentrum der Technische Hochschule, München, 1964.
- Anonymous. User's Manual for the ALCOR-University of Illionois ALGOL-60 Translator. Computer Sciences Center, Purdue University. April 5, 1965. PDF at bitsavers.org
- D. Gries, M. Paul, and H. R. Wiehle. Some techniques used in the ALCOR ILLINOIS 7090. Communications of the ACM, Volume 8, Number 8 (August 1965), pages 496-500. ACM Digital Library
- R. Bayer, D. Gries, M. Paul, and H. R. Wiehle. The ALCOR Illinois 7090/7094 post mortem dump. Communications of the ACM, Volume 10, Number 12 (December 1967), pages 804-808. ACM Digital Library Online at Internet Archive
- See Rutishauser 1967.
- A. A. Grau, U. Hill, and H. Langmaack. Translation of ALGOL 60. Handbook for Automatic Computation, Volume 1, Part b. Springer-Verlag, New York, 1967.
"[The present volume Ib] presents a complete model of a translator program for ALGOL 60, an outline of the general principles applied, and a description of the operation of the program.
The underlying translator philosophy is an outgrowth of experience gained in the ALCOR group (an international group of computing centers and computer manufacturers collaborating in the development and application of ALGOL translators) which, over the years, has constructed ALGOL translators for so diversified a set of computers as ERMETH-ETH Zürich, ORACLE-Oak Ridge National Laboratory, PERM-TH Munich, Zuse Z 22/23, Siemens 2002, Telefunken TR4, Control Data 1604/3400/3600, IBM 7040/7090."
- Steffen Manthey & Klaus Leibrandt. Die PERM und ALGOL. (German), July 2, 2002.
- Arthur Evans, Jr. An Algol 60 Compiler. In Annual Review in Automatic Programming, Volume 4, edited by R. Goodman, Pergammon Press, 1964, Pages 87-124. ScienceDirect
- Anonymous. S205 Notes. Summary of ALGOL-20 Statements for Printing. C.C.D.-31, Carnegie Institute of Technology, February 12, 1964. PDF
- Janet Fierst (editor), David Blocher, Robert Braden, Arthur Evans Jr. and Richard Grove. ALGOL-20: A Language Manual. Carnegie Institute of Technology, February 1965.
- ALGOL W. Stanford University.
- Technical Report CS-68-86, January 1968. Online at infolab.stanford.edu
Includes: Henry R. Bauer, Sheldon Becker, and Susan L. Graham. ALGOL W Language Description.
- Revised version. Technical Report CS-68-89, March 1968. Online at infolab.stanford.edu
- Revised version. Technical Report CS-68-110. Online at infolab.stanford.edu
- Revised version. Richard L. Sites, editor. Technical Report CS-71-230, Stanford University, February 1972, 160 pages. Online at infolab.stanford.edu
Includes: Henry R. Bauer, Sheldon Becker, Susan L. Graham, and Edwin Satterthwaite. ALGOL W Language Description. Satterthwaite notes, "CS-110 was the version printed in large numbers for several years, essentially as a text."
Includes: Henry Bauer, Sheldon Becker, Susan L. Graham, Edwin Satterthwaite, and Richard L. Sites. ALGOL W Language Description.
- Technical Report CS-68-86, January 1968. Online at infolab.stanford.edu
- H. Bauer, S. Becker, and S. Graham. ALGOL W Implementation. Technical Report CS-TR-68-98, Stanford University, May 20, 1968, 153 pages. Online at infolab.stanford.edu
- Stanford University ALGOL W. Source listing, 1969, 294 pages. Listing belongs to Dennis Allison. PDF at bitsavers.org
- James Eve, editor. ALGOL W Reference Manual, University of Newcastle upon Tyne, June 1972. PDF at fh-jena.de
Update of Stanford manual.
- J. A. Hunter and M. M. Hindmarsh, M. M. ALGOL W Development at Newcastle. CS-TR Number 124, School of Computing Science, Newcastle University, 1978. Online at cs.ncl.ac.uk
Abstract: "The development of the Algol W compiler and run-time system are discussed, with particular reference to input/output facilities and external subroutine linkages."
- Richard A. Salisbury, general editor. ALGOL W in MTS. Volume 16 of the MTS Manual, The University of Michigan Computing Center, Ann Arbor, Michigan, September 1980. PDF at cs.ualberta.ca
- Richard A. Salisbury, general editor. System Subroutine Descriptions. Volume 3 of the MTS Manual, The University of Michigan Computing Center, Ann Arbor, Michigan, September 1989. PDF at cs.ualberta.ca
- ALGOL W source code. University of Newcastle via University of Michigan. Posted by permission of Elizabeth Barraclough, Director Emeritus, Newcastle University Computing Service.
- Distribution 3.0, Michigan Terminal System, August 1973.
- Stanford ALGOL W compiler. Phase A - scan and parse passes. May 1971. PL360 source
- Stanford ALGOL W compiler. Phase B - code generation. May 1971. PL360 source
- Stanford ALGOL W compiler. Phase C - run-time library with debugging routines. May 1971. PL360 source
- Stanford ALGOL W compiler. LIBRC - run-time library without debugging routines. May 1971. PL360 source
- NUMAC ALGOL W compiler package. Object program output. April 1971. Assembler source
- NUMAC ALGOL W interface package. Object program to MTS. April 1971. Assembler source
- NUMAC ALGOL W submonitor. MTS interface. March 1971. Assembler source
- MTS ALGOL W compile-and-go interface. Loader. Undated (August 1973?). PL360 source
- LIBDIR - ALGOL W library directory. Undated (August 1973?). Assembler source
- Distribution 3.0, Michigan Terminal System, August 1973.
- Edwin H. Satterthwaite, Jr. Source Language Debugging Tools. Stanford University Ph.D. thesis. Garland Publishing, 1979.
- Chapter 5: The Implementation of Algol W. PDF
"This chapter sketches the underlying implementation of Algol W. It illustrates the application of some of the ideas in Chapter 3 and provides information necessary for understanding subsequent chapters. It also attempts to demonstrate that many features of the Algol W language and System/360 hardware naturally lead to design decisions which, as subsequent chapters show, simplify the implementation of useful debugging aids. The treatment of detail is intentionally selective; very cursory attention is given to those features of the compiler and object code which either are quite standard or are unrelated to the provision of debugging tools. A more thorough, although rather obsolete, description of the compiler is available elsewhere [Bauer 68]."
- Chapter 5: The Implementation of Algol W. PDF
- See also: Wirth 1985 and Wirth 1996.
- Daniel Boulet. Algol W. October 24, 2002. Online at everything2.com
- Glyn Webster. aw2c - a Unix-environment compiler for Algol W that works by translating to GNU c. Online at jampan.co.nz
"aw2c is a new compiler for the Algol W language. It is a complete implementation of the language described in the Algol W Language Description, June 1972. aw2c should be able to compile code intended for the OS/360 Algol W compilers with little or no modification."
- Tony Marsland. Awit-Wita Computer Chess Archive. Algol W source - 1986 original and 2009 aw2c version. Online at cs.ualberta.ca
- See also: A68H
- A.P. Ershov, G. I. Koschuhin, and U. M. Voloshin. The Input Language System of Automatic Programming. ALGOL Bulletin, Sup 14 (Jan. 1961), pages 1-9. CHM ACM Digital Library
- A. P. Yershov. ALPHA--An Automatic Programming System of High Efficiency. Journal of the ACM, Volume 13, Number 1 (January 1966), pages 17-24. ACM Digital Library
- A.P. Yershov, editor. The ALPHA Automatic Programming System. A.P.I.C. Studies in Data Processing Number 7, Academic Press, 1971.
Atlas Algol for the Atlas Computer (I.T.C. Limited)
"The Atlas ALGOL compiler provided by I.C.T. Ltd. was written using the Compiler Compiler of Brooker and Morris (1963). The compiler is basically a two-pass one producing reasonably efficient code without spending too much time in compilation. It loads a set of precompiled permanent procedures as though they had been defined in the block surrounding the actual program." [Hopgood and Bell 1967]
- R. A. Brooker, I. R. MacCallum, D. Morris, and J. S. Rohl. The Compiler Compiler. In Annual Review in Automatic Programming, Volume 3, edited by R. Goodman, Pergammon Press, Oxford, 1963, pages 229-275. ScienceDirect
- MTD/RHK/ACS/RW. Algol Bulletin. Number 1, Atlas Computing Service, International Computers and Tabulators Limited, March 19, 1964. PDF at bitsavers.org
- F. R. A. Hopgood and A. G. Bell. Atlas Algol Processor for Non-Standard Algol Programs. Algol Paper No.7, Atlas Computer Laboratory, 1965.
- F. R. A. Hopgood and A. G. Bell. The Atlas ALGOL Preprocessor for Non-Standard Dialects. The Computer Journal, Volume 9, Number 4 (February 1967), pages 360-364. Oxford Journals Online at chilton-computing.org.uk
- Atlas Algol System. Online at chilton-computing.org.uk
- F. R. A. Hopgood, and Mrs. E. A Baker. Atlas Algol Library. December 1969. Online at chilton-computing.org.uk
Atlas Autocode for the Atlas Computer (Manchester University)
- R. A. Brooker and J. S. Rohl. Atlas Autocode Reference Manual. Computer Science Department, University of Manchester, March 1, 1965. Online at dcs.ed.ac.uk
- P. Bratley, D. Rees, P. Scholfield, and H. Whitfield. Atlas Autocode Compiler for KDF9, Edinburgh University, 1965.
- P. D. Schofield and M. R. Osborne. Programming in Atlas Autocode. Computer Unit Report Number 1, University of Edinburgh. Revised edition, June 28, 1965. PDF at dcs.ed.ac.uk
Reflects the Edinburgh University Atlas Autocode compiler written for the English Electric KDF9.
- R. A. Brooker, J. S. Rohl, and S. R. Clark. The main features of Atlas Autocode. The Computer Journal, Volume 8, Number 4 (January 1966), pages 303-310. Oxford Journals
- A. T. McEwan. An Atlas Autocode to ALGOL 60 translator. The Computer Journal, Volume 9, Number 4 (February 1967), pages 353-359. Oxford Journals
BC ALGOL ran under the FORTRAN Monitor System on the coupled IBM 7040-7094 system at the UC Berkeley Computer Center. It consisted of a translator (also called the pre-processor) and an interpreter (also called the processor). The output of translator was called the syllable string. The translator was written in BC NELIAC.
- Ralph Love et al. BC ALGOL Manual. Computer Center, University of California, Berkeley, October 1966. PDF
"The present manual is the third revised and enlarged edition, and describes the BC-ALGOL system as developed by Ralph Love, Gary Anderson, Russell Briggs, Gayne Winters, Tom Marlin, R. Sherman Lehman, and Klaus Wirth. The revision was done by David Redell, John McConnell, Chr. Gram, and R. Sherman Lehman."
Burroughs B 5000/B 5500 Series
- Paul Kimpel and Nigel Williams. Retro-b5500 emulation project. Online at github.com
Sid McHarg has also written an emulator for the B5500. He had a set of Burroughs Mark XIII release tapes from 1971 that proved to be readable after 40 years, and has arranged with Unisys, the successor to Burroughs, to offer an educational/hobbyist license for the software. We are presently using that software with our emulator.
The emulator and Burroughs software are available through our open-source project at https://github.com/pkimpel/retro-b5500/. The site has a wiki with instructions on setting up and using the emulator. There are also links to a hosting site for the emulator and some utilities, a 'getting started' index into the wiki, a web forum, and a project blog.
Prior to Sid's tapes becoming available, we started down the hard road of manually transcribing source code from listings on bitsavers.org. Nigel transcribed the Mark XVI Algol compiler source, Hans Pufal transcribed ESPOL, and I have transcribed (but not proofed) the Mark XVI MCP. I then ported a large subset of Algol and ESPOL to the modern Unisys MCP Algol dalect for use as cross-compilers for the B5500, which work, but which we ended up not using very much. A few other transcription efforts have been completed, including Gary Kildall's APL interpreter from 1971, and more are either in progress or planned. Most of this transcription is Algol code, and all of it is posted on the project site." [Kimpel]
- Anonymous. Burroughs B5500 Mark XIII System Software, 1971. Images of three tapes preserved by Sid McHarg, digitized with the help of Paul Pierce, and made available under a hobbyist license by Bob Supnik and Unisys. Images include executables and source for a complete system release including operating system, compilers, and utilities. Online at phkimpel.us
- Various authors. Transcriptions of B5700 listings (source code) from bitsavers.org. Online at github.com
- Gary Kildall, Leroy Smith, Sally Swedine, and Mary Zosel. APL. University of Washington. January 11, 1971. Online
- Anonymous. B6500ESPOL (Implementation Language Compiler). Burroughs Corporation, January 1968. Online
- Anonymous. B6500SIM (System simulator). Burroughs Corporation, undated. Online
- Niklaus Wirth et al. EULER (programming language interpreter). Stanford University, March 1965. Online
- Various authors. B5500/5700 listings (source code). Online at bitsavers.org
- Anonymous. Extended Algol Reference Manual. Burroughs Corporation, B5500 Information Processing Systems.
- July 1967, 218 pages. PDF at bitsavers.org
- April 1969, 236 pages. PDF at bitsavers.org
"One of the programming languages utilized by the Burroughs B 5500 Electronic Information Processing System is Extended ALGOL. In addition to implementing virtually all of ALGOL 60, Extended ALGOL provides for communication between the processor and input/output devies, enabling editing of data, and facilitates program debugging. Within the framework of an Extended ALGOL program, the programmer can thus exercise close control over data transmission and manipulation to any desired degree."
- Anonymous. Compatible ALGOL Reference Manual. Burroughs Corporation, B5500 Information Processing Systems. May 1969, 185 pages. PDF at bitsavers.org
"Burroughs B 5500 Compatible ALGOL is based on the definitive 'Revised Report on the Algorithmic Language ALGOL 60' (Communications of the ACM, Vol. 6, No. 1; January, 1963). This manual describes the ALGOL language implemented by the B 5500 Compatible ALGOL Compiler. Compatible ALGOL represents a subset of B 6500 Extended ALGOL and should be useful for facilitating conversion to a B 6500 System. This language is intended to be used where character mode manipulation is required without jeopardizing the integrity of the operating system or other multiprocessing programs."
- Anonymous. Source Listing, ALGOL Compiler. Burroughs B5500/B5700 Mark XVI System Release, October 7, 1977, 382 pages PDF at bitsavers.org
- Richard Waychoff. Stories about the B5000 and the People Who Were There. April 9, 1979, 51 pages. Computer History Museum, Lot X4100.2007. PDF at computerhistory.org
DEK has penciled in "half-true" at beginning of title. There is a title page for Appendix B, The Algol Syntax Chart, but no content pages. Appendix A: Letter to Editor, Computer August 1977, by W. R. Lonergan.
- Burroughs B 5000 Conference, OH 98. Oral history on 6 September 1985, Marina del Ray, California. Charles Babbage Institute, University of Minnesota, Minneapolis. Online at umn.edu
Burroughs B 6000/B 7000, B 5900, A Series, and later Unisys systems
- Anonymous. A Series ALGOL Reference Manual. Burroughs Corporation, 1985.
"Burroughs Extended ALGOL is a high-level, structured programming language designed for A Series and B 5000/B 6000/B 7000 Series systems. In addition to implementing almost all of ALGOL 60, Burroughs Extended ALGOL has provisions for communications between programs and input/output (I/O) devices, the editing of data, and the implementation of diagnostic facilities for program debugging."
Control Data Corporation
- Anonymous. ALGOL Reference Manual : 3100 / 3200 / 3300 / 3500 Computer System. Publication Number 60134800, Control Data Corporation, February 1966. PDF at bitsavers.org
- Anonymous. ALGOL Abnormal Object Time Termination Dump : 3100 / 3200 / 3300 / 3500. Publication Number 60171000, Control Data Corporation, May 1966. PDF at bitsavers.org
- Anonymous. ALGOL Generic Reference Manual : 3000 / 6000. Publication Number 60214900, Control Data Corporation, December 1967. PDF at bitsavers.org
"The ALGOL compiler for the 3000 and 6000 computers is based in design on the ALGOL compiler developed by Regnecentralen, Copenhagen, Denmark for the GIER computer."
- Jo Ann Baughman, Mary Lynn Berryman, and Yvonne Yapp. ALGOL: OS-3 User's Manual. cc-69-11, Computer Center, Oregon State University, October 1969. PDF at bitsavers.org
"The purpose of this manual is intended to provide, for the user with a knowledge of ALGOL, some examples of entering and executing ALGOL programs on the CDC 3300 or 3500 under OS-3."
- Anonymous. ALGOL Reference Manual : CYBER 70 Series / 6000 Series / 7600 Series. Version 4, Publication Number 60384700, Control Data Corporation, Revision A, August 15, 1973. PDF at bitsavers.org
- Anonymous. ALGOL-60 Version 4 Reference Manual : CDC Operating Systems NOS 1, NOS/BE 1, SCOPE 2. Publication Number 60481600, Control Data Corporation, Revision C, March 31, 1978. PDF at bitsavers.org
- Anonymous. ALGOL-60 Version 5 Reference Manual : CDC Operating Systems NOS 1, NOS/BE 1, SCOPE 2. Publication Number 60496600, Control Data Corporation, Revision B, August 22, 1979. PDF at bitsavers.org
- D. W. Barron, J. N. Buxton, D. F. Hartley, E. Nixon and C. Strachey. The Main Features of CPL. The Computer Journal, Volume 6, Number 2 (August 1963), pages 134-143. Oxford Journals
"The paper provides an informal account of CPL, a new programming language currently being implemented for the Titan at Cambridge and the Atlas at London University. CPL is based on, and contains the concepts of, ALGOL 60. In addition there are extended data descriptions, command and expression structures, provision for manipulating non-numerical objects, and comprehensive input-output facilities. However, CPL is not just another proposal for the extension of ALGOL 60, but has been designed from first principles and has a logically coherent structure."
- Buxton, Gray, Park, and Strachey[?]. CPL Working Papers. Technical Report, University of London Institute of Computer Science and the Mathematical Laboratory, Cambridge, July 1966.
- G. F. Coulouris and T. J. Goodey. The CPL1 System Manual. University of London Institute of Computer Science, 1966.
- G. F. Coulouris, T. J. Goodey, R. W. Hill, R. W. Keeling and D. Levin. The London CPL1 compiler. The Computer Journal, Volume 11, Number 1 (May 1968), pages 26-30. Oxford Journals
- David Hartley. Cambridge and CPL in the 1960s. Higher Order Symbolic Computing, Volume 13, Numbers 1-2 (April 2000), pages 69-70. SpringerLink
- Martin Richards. Christopher Strachey and the Cambridge CPL Compiler. Higher Order Symbolic Computing, Volume 13, Numbers 1-2 (April 2000), pages 85-88. SpringerLink
- See also Pigott: CPL
Dartmouth Algol (General Electric GE-235)
- Stephen J. Garland. Memo to: Potential ALGOL Users. Dartmouth College, Hanover, New Hampshire, September 29, 1964. PDF at bitsavers.org
- Anonymous. Dartmouth ALGOL for the GE-265 Time-Sharing System. CP B-441A, General Electric Computer Department, revised February 1966. PDF at bitsavers.org
- Anonymous. DECsystem-10 ALGOL Programmer's Reference Manual. DEC-10-LALMA-A-D, Digital Equipment Corporation, 1974. PDF at bitsavers.org
- David Woodhouse. ALGOL 60 Programming on the DECSystem-10. La Trobe University Department of Mathematics, August 1975. PDF
- Anonymous. DECsystem-10/20 ALGOL Programmer's Guide. AA-0196C-TK, Digital Equipment Corporation, 1977. PDF at bitsavers.org
- Tim Shoppa. PDP-10 Software Archive. ALGOL distributions with source and binaries. Online at pdp-10.trailing-edge.com
- AP-5069B-SB, ALGOL-10 Version 10, 1977. Online at pdp-10.trailing-edge.com
- AP-5069C-SB, ALGOL-10 Version 10A, 1978. Online at pdp-10.trailing-edge.com
- AP-D608C-SB, ALGOL-10, 1978. Online at pdp-10.trailing-edge.com
- AP-5471B-BM, 1978. Online at pdp-10.trailing-edge.com
- BB-D608D-SB_1982, ALGOL-10 V10B (310), 1982. Online at pdp-10.trailing-edge.com
- ALGOL-10_V10B_BIN_SRC_1err, 1982. Online at pdp-10.trailing-edge.com
- BB-5471C-BM, ALGOL-20, January 29, 1982. Online at pdp-10.trailing-edge.com
- ALGOL-20_29Jan82. Online at pdp-10.trailing-edge.com
- ALGOL-20_1-29-82. Online at pdp-10.trailing-edge.com
Gordon Bell notes that DEC contracted with Nico Habermann at Carnegie Mellon University to write the PDP-10 Algol compiler. [Personal communication, May 11, 2010]
"In the summer of 1960 Edsger W. Dijkstra and Jaap A. Zonneveld put into operation the very first ALGOL 60 compiler in the world. Its code was never documented. This report contains the full assembly text of one of the latest versions of that compiler (from 1964)." [Kruseman Aretz 2003]
- E. W. Dijkstra. Recursive Programming.
- MR33, Mathematisch Centrum, Amsterdam, 1960. Online at cwi.nl
- Numerische Mathematik, Volume 2, Number 1 (December 1960), pages 312-318 SpringerLink
- E. W. Dijkstra. Algol 60 translation. Supplement Number 10 to the ALGOL Bulletin. MR35, Mathematisch Centrum, Amsterdam, 1961. Online at utexas.edu Online at cwi.nl
"If every subroutine has its own private fixed working spaces, this has two consequences. In the first place the storage allocations for all the subroutines together will, in general, occupy much more memory space than they ever need simultaneously, and the available memory space is therefore used rather uneconomically. Furthermore-and this is a more serious objection-it is then impossible to call in a subroutine while one or more previous activations of the same subroutine have not yet come to an end, without losing the possibility of finishing them off properly later on.
We intend to describe the principles of a program structure for which these two objections no longer hold. In the first place we sought a means of removing the second restriction, for this essentially restricts the admissable structure of the program; hence the name 'Recursive Programming'. More efficient use of the memory as regards the internal working spaces of subroutines is a secondary consequence not without significance. The solution can be applied under perfectly general conditions, e.g. in the structure of an object program to be delivered by an ALGOL 60 compiler. The fact that the proposed methods tend to be rather time consuming on an average present day computer, may give a hint in which direction future design might go."
- An Algol 60 translator for the X1.
- Originally published in two parts in German in the journal Mathematik, Technik, Wirtschaft (MTW Quarterly), Volume 2, pages 54-56 and Volume 3, pages 115-119. Online at cwi.nl
- Also published in Annual Review in Automatic Programming, Volume 3, edited by R. Goodman, Pergammon Press, 1963, pages 329-345. ScienceDirect
- Making a translator for ALGOL 60. Originally published in APIC Bulletin, Issue 7, pages 3-11. Also published in Annual Review in Automatic Programming, Volume 3, edited by R. Goodman, Pergammon Press, 1963, pages 347-356. ScienceDirect
- B. Randell and L. J. Russell. Discussions on Algol Translation, at Mathematisch Centrum. Report W/AT 841, Atomic Power Division, English Electric Co., Whetstone, Leicester, 1962. Online at cs.ncl.ac.uk
Abstract: "This report is a record of discussions with Dr. E. W. Dijkstra, at Mathematisch Centrum, Amsterdam, during 4th - 8th December, 1961. Topics covered included details of the Algol Translator written at Mathematisch Centrum, and proposals regarding the techniques to be used in the Algol Translator being developed at the Atomic Power Division, Whetstone."
- E. W. Dijkstra. Operating Experience with ALGOL 60. The Computer Journal, Volume 5, Number 2, 1962, pages 125-127. Online at cwi.nl Oxford Journals
Abstract: "This paper describes the circumstances under which the ALGOL 60 translator of the Mathematical Centre, Amsterdam, has been constructed. It describes its main features, virtues and short-comings. Furthermore, it tells how the translator has shown itself to be an inspiring tool for a varied group of users."
- P. J. J. Van de Laarschot and J. Nederkoorn. Voorlopige gebruiksaanwijzing van de tweede MC Algol 60-vertaler [Preliminary directions for use of the second MC Algol-60 translator]. MR 54, Stichting Mathematisch Centrum, 1963. Online at cwi.nl
"In 1963 a second ALGOL 60 system, developed by Nederkoorn and Van de Laarschot, became available. Although it was hardly used as complete system the compiler came in use as separate syntax checker (suppressing the punching of an object tape). In later years no (fresh) ALGOL program was run with the Dijkstra/Zonneveld system without a prior syntax check by the Nederkoorn/Van de Laarschot compiler." [Kruseman Aretz 2003]
- P. J. J. Van de Laarschot and J. Nederkoorn. Text of the second Algol 60 translator for the X1.MR 61, Stichting Mathematisch Centrum, 1963. Online at cwi.nl
- Edsger Dijkstra. A programmer's early memories.
- Published in: N. Metropolis, J. Howlett, and Gian-Carlo Rota, eds., A History of Computing in the Twentieth Century: a Collection of Essays. Academic Press, New York, 1980, pages 563-573.
- EWD568, May 24, 1976. Online at utexas.edu
- Edsger Dijkstra. "From my Life". EWD1166, November 29, 1993. Online at utexas.edu
- Edsger Dijkstra. Email to Maarten van Emden. Month?, 2000. Online at vanemden.wordpress.com
- F. E. J. Kruseman Aretz. The Dijkstra-Zonneveld ALGOL 60 compiler for the Electrologica X1. Historical Note. Centrum Voor Wiskunde En Informatica, Software Engineering Note SEN-N0301, June 30, 2003. Online at cwi.nl
Abstract: "In the summer of 1960 Edsger W. Dijkstra and Jaap A. Zonneveld put into operation the very first ALGOL 60 compiler in the world. Its code was never documented. This report contains the full assembly text of one of the latest versions of that compiler (from 1964).
In order to make that text more accessible, an equivalent version in Pascal is added, together with eight chapters introducing the compiler and explaining its major features."
- F. E. J. Kruseman Aretz. Algol 60 translation for everybody. Elektronische Datenverarbeitung, Number 6 (1964), pages 233-244. Online at cwi.nl
- F. E. J. Kruseman Aretz. Het MC-ALGOL 60-systeem voor de X8. MR81, Mathematisch Centrum, October 1966. Online at cwi.nl
- F. E. J. Kruseman Aretz and B. J. The ELAN source text of the MC ALGOL 60 system for the Electrologica X8. MR 84, Mathematisch Centrum, Amsterdam, (November 1966). Online at cwi.nl
- F. E. J. Kruseman Aretz, F.E.J., P. J. W. ten Hagen, and H. L. Oudshoorn, H.L. An ALGOL 60 compiler in ALGOL 60 : text of the MC-compiler for the EL-X8. Tract 48, Mathematisch Centrum, Amsterdam, 1973. Online at cwi.nl
- F. E. J. Kruseman Aretz. A comparison between the ALGOL 60 implementations on the Electrologica X1 and the Electrologica X8. Software Engineering Report SEN-E0801, Centrum Voor Wiskunde En Informatica, September 2008. Online at cwi.nl
Abstract: "We compare two ALGOL 60 implementations, both developed at the Mathematical Centre in Amsterdam, forerunner of the CWI. They were designed for Electrologica hardware, the EL X1 from 1958 and the EL X8 from 1965. The X1 did not support ALGOL 60 implementation at all. Its ALGOl 60 system was designed by Dijkstra and Zonneveld and completed in 1960. Although developed as an academic exercise it soon was heavily used and appreciated. The X8, successor of the X1 and (almost) upwards compatible to it, had a number of extensions chosen specifically to support ALGOL 60 implementation. The ALGOL 60 system, developed by Nederkoorn and Kruseman Aretz, was completed even before the first delivery of an X8. In this document we describe the two systems, demonstrating the progress in both hardware and software in a relatively short period."
- Maarten van Emden. Work review RA W19, Mathematisch Centrum, September 24, 1968. PDF
Presents two Algol 60 programs for the X8: Adaptive Romberg Integration, and a syntax-oriented parser for sales survey data in a business data processing application.
Electrologica X8 (THE: Technische Hogeschool Eindhoven)
- C. Bron, E. W. Dijkstra et al. Listing of Algol 60 compiler from THE Operating System. Annotations by D. E. K. in dark pen. Computer History Museum, Lot X4100.2007.
- C. A. R. Hoare. Report on the Elliott ALGOL Translator. The Computer Journal, Volume 5, Number 2, 1962, Pages 127-129. Oxford Journals
- C. A. R. Hoare. The Elliott ALGOL input/output system. The Computer Journal, Volume 5, Number 4, 345-3458 (January 1963). Oxford Journals
C. A. R. Hoare. The Elliott ALGOL programming system. In P. Wegner (ed.), Introduction to Systems Programming, Academic Press (1964), pages 156-166.
- C. A. R. Hoare, J. Hoare, and J. S. Hillmore. 803 Algol : Description of Library Program A104. Elliot Brothers Limited, Scientific Computing Division, Version 4, January 1965. Online at billp.org
Authors' names appear at the bottom of page 54.
- Bill Purvis. The Elliot 803 Algol 60 Compiler. Online at billp.org
Purvis reconstructed symbolic assembly language for the compiler and runtime library, starting with two paper tapes containing the compiler and runtime library object programs.
- Edgar G. Daylight. From Mathematical Logic to Programming-Language Semantics — a Discussion with Tony Hoare. Journal of Logic and Computation (to appear).
Section 2.3 covers Hoare's Algol work at Elliot.
- Nigel Williams, coordinator. Elliot 503 ALGOL reconstruction project.
- Elliot 503 ALGOL versions. Online at retroComputingTasmania.com
- Elliot 503 Project To-do list. Online at retrocomputingTasmania.com
Personnel include Bill Purvis - 803 ALGOL recovery expert, Eric van der Meer - 503 expert, and Brian Marriott and Rod Bilson - both supported the 503 at Hydro-University Computing Centre, Hobart, Tasmania, as technical specialists.
- FEAT FORTRAN-to-ALGOL translator. Elliot Computer Division.
EMAS ALGOL for ICL 2900 (University of Edinburgh)
- Source code (IMP). University of Edinburgh, Version 6.0, January 1980. Online at dcs.ed.ac.uk
- Related documentation files. Online at dcs.ed.ac.uk
English Electric Company Kidsgrove
- J. S. Green. ALGOL Programming for KDF 9. English Electric-Leo-Marconi Computers Ltd, undated (1968?), 131+ix pages. PDF at bitsavers.org
- F. G. Duncan. Implementation of ALGOL 60 for the English Electric KDF9. The Computer Journal, Volume 5, Number 2, 1962, Pages 130-132. Oxford Journals
- F. G. Duncan. Input and output for ALGOL 60 on KDF 9. The Computer Journal, Volume 5, Number 4, 1963, Pages 341-344. Oxford Journals
- E. N. Hawkins and D. H. R. Huxtable. A Multi-Pass Translation Scheme for ALGOL 60. In Annual Review in Automatic Programming, Volume 3, edited by R. Goodman, Pergammon Press, Oxford, 1963, pages 163-205. ScienceDirect
- B. A. Wichmann. The Usercode produced by the Kidsgrove Algol Compiler. Online at sw.ccs.bcs.org
- See also Pigott: Kidsgrove Algol
- B. Randell and L. J. Russell. DEUCE ALGOL. Report W/AT 844, Atomic Power Division, English Electric Co., Whetstone, Leicester, February, 1962.
- B. Randell. Proposals for Code Procedures in KDF9 Algol. Report W/AT 867, Atomic Power Division, English Electric Co., Whetstone, Leicester, March, 1962.
- B. Randell. The Object Programme Generated by the Whetstone KDF9. Report W/AT 872, Atomic Power Division, English Electric Co., Whetstone, Leicester, April, 1962.
- B. Randell and L. J. Russell. Certification of algorithms 63, 64 and 65, partition, quicksort, and find. Communications of the ACM, Volume 6, Number 8 (August 1963), page 446. ACM Digital Library
- B. Randell and L. J. Russell. ALGOL 60 Implementation.
Academic Press, 1964. PDF
Posted by permission of the authors and the copyright holder (University of Brighton); scanned by Al Kossow.
- B. Randell. Whetstone Algol Revisited, or Confessions of a Compiler Writer. APIC Bulletin, Issue 21, Automatic Programming Information Centre, College of Technology, Brighton, 1964. Online at cs.ncl.ac.uk
Abstract: "A complete and detailed account of the Whetstone KDF9 Algol Compiler has been given in the book 'Algol 60 Implementation'. The present paper uses the wisdom born of hindsight in an attempt at a critical re-appraisal of the Whetstone Compiler and the implementation techniques which are used in it."
- B. Randell. The Whetstone KDF9 Algol Translator. In Introduction to System Programming, P. Wegner (editor), page 122-136, Academic Press, London, 1964.
- B. A. Wichman. Some Statistics from ALGOL Programs. National Physical Laboratory, Teddington, Middlesex, England, CCU Report Number 11, August 1970. PDF at sw.ccs.bcs.org
- B. Randell. Reminiscences of Whetstone ALGOL. University of Newcastle upon Tyne, Computing Science, Technical Report Series, No. CS-TR-1190, 2010. Online at cs.ncl.ac.uk
Abstract: "These reminiscences centre on the implementation, by Lawford Russell and myself, of an ALGOL 60 compiler for the English Electric KDF9 Computer in the early 1960s. However details are also given of preceding work on so-called "automatic programming", and of other contemporary ALGOL compiler projects."
- Whetstone Algol resurrection. Online at sw.ccs.bcs.org
"We now have the Walgol Translator re-keyed from a dog-eared listing, in the main, by Brian Wichmann, Graham Toal and Roderick McLeod. David Holdsworth has written an assembler and a rough-and-ready emulator. Bill Findlay is in the process of implementing a properly-enginered emulator."
"Efforts to identify and combine the essential and fundamental concepts of programming languages, in particular of ALGOL 60, led to Wirth's dissertation under the guidance of Prof. H. D. Huskey at the University of California at Berkeley, and to the definition of the language Euler. The language was implemented on the IBM 704 computer. After publication the project was continued at Stanford University and resulted in an improved implementation on the Burroughs B5000 computer. This work led the foundation for the method of the microprogrammed, stack-oriented interpreter, first tested on an IBM 360/30 computer. This method became widespread much later and was to play a key role in the implementation of high-level languages on microcomputers. Another important aspect of this research was the development of efficient, general parsing methods, and the systematic coupling of semantic interpretation with syntactic analysis. The so-called precedence grammars originated in the context of this project." [Wirth at ethz.ch]
- Niklaus Wirth. A generalization of ALGOL. Communications of the ACM, Volume 6, Issue 9 (September 1963), pages 547-554. ACM Digital Library
- Niklaus Wirth and Helmut Weber. EULER: A Generalization of ALGOL and its Formal Definition.
- Technical Report CS-20, Computer Science Department Stanford University, April 27, 1965. Appendices contain the Extended ALGOL source code for the syntax processor, translator, and interpreter (see next item). PDF at stanford.edu
- Part 1 and Part 2: Communication of the ACM, Volume 9, Issues 1 and 2, January-February 1966, pages 13-25 and 89-99. ACM Digital Library Part 1 Part 2
- Niklaus Wirth and William M. McKeeman. EULER IV translator/interpreter. Transcribed from Stanford TR CS-20 by James Fehlinger, March 2014 and capable of running on the Retro-b5500 emulator.
Formula Algol for Bendix G-20/G-21 (Carnegie Institute of Technology)
- A. J. Perlis and R. Iturriaga. An extension to ALGOL for manipulating formulae. Communications of the ACM, Volume 7, Number 2 (February 1964), pages 127-130. ACM Digital Library
- A. J. Perlis, R. Iturriaga, and T. Standish. A Preliminary Sketch of Formula ALGOL. - Revised ed. Dept of Computer Science, Carnegie-Mellon, July 1965. NTIS Order Number AD-659 156. Online at NTIS
- R. Iturriaga, et al. Implementation of Formula Algol in FSL. Carnegie Institute of Technology, Computation Center (October 1965).
- Alan J. Perlis, Renato Iturriaga, and Thomas A. Standish. A Definition of Formula ALGOL. Carnegie Institute of Technology, Pittsburgh, 1966. PDF at bitsavers.org
- R. Iturriaga, T. A. Standish, R. A. Krutar, and J. C. Earley. Techniques and advantages of using the formal compiler writing system FSL to implement a Formula Algol compiler. In Proceedings of the 1966 Spring Joint Computer Conference. ACM, New York, pages 241-252. ACM Digital Library
- J. Early. Formula ALGOL Manual. Technical Manual CCU-73, Carnegie-Mellon University, Pittsburgh, June 1967. PDF at bitsavers.org
"Formula Algol was dedicated to the linguistic pun that the elementary operations can be regarded as operating on numbers or on formulas. The idea was that if a variable x has no value, then operations on expressions involving x must be regarded as operating on the formula. A few programs could be written, but the pun proved an inadequate basis for substantial programs." [McCarthy 1980]
"... Finally in my opinion the best answer to a heckle ever was delivered by Alan Perlis. He was giving a talk on a language he had designed and implemented at CMU, called Formula Algol. Roughly speaking, the language glued together Algol and the data type for symbolic formulas. This was way ahead of its time; today this is essentially what systems like Maple do, but of course not with Algol. The gluing together was messy and complex, making the resulting language not very usable. During the talk Perlis got interrupted by an audience member, who stood up, and started to read a list of questions. They were all of the form: Why did you do X in Formula Algol? Each question hit right on an issue with the language—it was not a good mating between Algol and formulas. After listening to several questions Alan interrupted and said, 'Do you want me to answer?' But the questioner just keep reading more of his list. Finally Perlis could take it no longer and repeated 'Do you want me to answer?' The questioner reluctantly said 'Okay.' Perlis then said: 'Poor design.' He then proceeded to finish his talk." [Richard Lipton, 2011]
GE Research and Development Center (GE 600)
- Anonymous. R&DC ALGOL Programming Manual - Preliminary Version. Report 70-G-006, General Electric Research and Development Center, Schenectady, New York, 1970.
- P. M. Lewis II and D. J. Rosenkrantz. An ALGOL Compiler Designed Using Automata Theory. Proceedings of the Symposium on Computers and Automata, Polytechnic Press, Brooklyn, New York, 1971, 75-87.
"An ALGOL compiler was designed and built using recently-developed concepts in automata theory. Its compile speed is in excess of 10,000 line/min on a 1 microsecond computer.
Automaton models such as finite-state machines and pushdown machines were used as the basic building blocks of the compiler. The main theorem used in the design is: a simple syntax directed translation on an LL(k) grammar can be performed by a one-state pushdown machine. In order to use this theorem, an LL(1) grammar was developed for the part of ALGOL to be processed by the syntax box of the compiler; this grammar is given in the Appendix."
"The one other ALGOL compiler I can recall knowing about in those days was an amazing effort by Brian Higman, for an incredibly small machine, an experimental process control computer being developed by G.E.C. whose total memory capacity was 512 20-bit words." [Randell 2010]
- B. Higman. Towards an ALGOL Translator. In Annual Review in Automatic Programming, Volume 3, edited by R. Goodman, Pergamon Press, Oxford, 1963, pages 121-162. ScienceDirect
Paper includes source code for part of the compiler.
- ALGOL (F).
- Anonymous. IBM System/360 Operating System: ALGOL Language. System Reference Library, Form C28-6615-1, April 1967. PDF at bitsavers.org
- Anonymous. IBM System/360 Operating System: ALGOL Programmer's Guide. System Reference Library, Form C33-4000-0, June 1968. PDF at bitsavers.org
- Anonymous. IBM System/360 Operating System ALGOL (F) Compiler Program Logic Manual. IBM Program Logic, Form Y33-8000, 1967.
Hans-Jürgen Hoffmann. The IBM OS/360 ALGOL60-Compiler. 1998?. RTF at www.pu.informatik.tu-darmstadt.de
"In the sixties, beginning fall 1964, there was a development undertaken by IBM laboratories first in Böblingen, Germany, later in Lidingö, Sweden, to design and implement a F-level ALGOL 60 compiler for OS/360. The compiler when it was completed in 1967 has been successfully used for some time by a number of OS/360 installations in Europe and world-wide, [van Wingen 1970]. Besides IBM manuals not much is known about this early development in the open literature (see, e.g., [Endres 2001])."
- Anonymous. IBM System/360 Conversion Aids: ALGOL-to-PL/I Language Conversion Program for IBM System/360 Operating System. Program Number 360C-CV-711. Program Logic manual, Form Y33-7006-0, January 1969. PDF at bitsavers.org
ICL 1900 (#XALT, #XALE, and #XALV)
- Anonymous. ICL 1900 Series Algol: Language. Technical Publication 3340, International Computers Limited, reprinted June 1969. djvu at icl1900.co.uk
- User Notices 30, 32; 1970, 1980. djvu at icl1900.co.uk
- Anonymous. ICL 1900 Series Basic Algol. Technical Publication 4043, International Computers and Tabulators Limited, August 1967. djvu at icl1900.co.uk
- User Notices 3-5; 1969. djvu at icl1900.co.uk
- Additional documentation: Paper Tape Compiler, Magnetic Tape Compiler, 16K Disc Compiler, 32K Disc Compiler, GEORGE 3 and GEORGE 4 Compilers; Scientific Subroutines; Algol Compiler Library Procedures; Algol Batch System, Basic Algol Batch System. Online at icl1900.co.uk
- David Holdsworth and Delwyn Holroyd. George 3 Executive Emulator. Enables George 3 Mk 8.67 to be run in a Windows 32-bit environment; extensive software available. Online at icl1900.co.uk
IMAG (Institut de Mathématiques Appliquées de Grenoble)
- Georg Werner. Etude de la syntaxe d'ALGOL; application à la compilation. Thesis, U. of Grenoble, 1964.
- L. Bolliet, N. Gastinel, and P. J. Laurent. Un nouveau language scientifique: ALGOL : Manuel Pratique. Herrmann, Paris, 1964.
- J.-Cl. Boussard. Etude et réalisation d'un compilateur Algol 60 sur calculateur électronique du type IBM 7090/94 et 7040/44. Thèse de doctorat ès sciences appliquées, U. of Grenoble, 1964.
- J.-Cl. Boussard. ALGOL compiler for the 7040/44. Programer's manual IMAG, AO1 (1964).
- J.-Cl. Boussard. Réalisation d'un compilateur ALGOL 60 pour les machines 7090/94 et 7040/44. Congress AFIRO IV, 1964.
- M. Brasseur and J. Cohen. A description in ALGOL of a simplified ALGOL compiler. IMAG-Groupe ALGOL, Number 27 (April 1964).
- A. Auroux. Incorporation d'un compilateur ALGOL 62 duns le systeme IBSYS 7040/44. AFIRO Cong., Dunod, 1965, page 221-227.
- A. Colmerauer. Recherche d'erreurs syntaxiques. IMAG, March, 1965.
- J.-Cl. Boussard. An ALGOL compiler: construction and use in relation to an elaborate operating system. Communications of the ACM, Volume 9, Number 3 (March 1966), pages 179-182. ACM Digital Library
- J. Le Palmec. Étude d'un langage intermédiaire pour la compilation d'Algol 60: application à un calculateur de type microprogrammé, CAE 510. Thesis, U. of Grenoble, 1966.
- Charles Conley, submittor. 4K ALGOL. University of Grenoble, Number 8-213, DECUS Program Library, April 11, 1969. PDF at bitsavers.org
"This manual has been written for ALGOL users with a 4K or larger PDP-8.
The subset of ALGOL compiled by the system is SUBSET ALGOL 60 (IFIP)* with additional restrictions which are described in Appendix B.
This compiler was written by J. C. Boussard, D. Clauzel, and X. Nguyen Dinh of IMAG (Institute of Applied Mathematics, University of Grenoble)."
- James D. Bailey, submittor. TSS/8 ALGOL. University of Grenoble, Number 8-330, DECUS Program Library, August 4, 1970. PDF at bitsavers.org
"TSS/8 ALGOL is 4K ALGOL (DECUS 8-213) adapted for TSS/8. The 4K ALGOL writeup should be considered the manual for TSS/8 ALGOL as well. This writeup describes only the differences between
the two programs."
- See also Pigott: ALGOL 62
- Jean Pierre Verjus. Programming in Grenoble in the 1960s and those Flew from the Nest. IEEE Annals of the History of Computing, Volume 12, Number 4 (April-June 1990), pages 95-101. IEEE Computer Society
"J. C. Boussard (1964), Doctorate of Applied Sciences: first ALGOL compiler in France"
Mailüfterl ALGOL (IBM Laboratory Vienna)
- Heinz Zemanek: Die algorithmische Formelsprache "ALGOL". Elektronische Rechenanlagen.
- Part 1: Volume 1, Number 2, (1959), pages 72-7.
- Part 2: Volume 1, Number 3 (1959), pages 140-143.
- P. Lucas and H. Bekič. Compilation of ALGOL, Part I - Organization of the Object Program. LR 25.3.001, IBM Laboratory Vienna, May 1962.
- H. Bekič. Note on a test example by D. E. Knuth. ALGOL Bulletin, Number 18 (October 1964), page 13. CHM ACM Digital Library
Bekič notes that the Mailüfterl Compiler correctly handles Knuth's "Man or boy" test.
- Heinz Zemanek, OH 127. Oral history interview by William Aspray, 14 and 16 February 1987, Vienna, Austria. Charles Babbage Institute, University of Minnesota, Minneapolis. Online at umn.edu
"Bauer had promised us that we'd get documents which make it trivial to write a compiler -- which, of course, was a wrong assumption. And fortunate, I would say, it was too, because by this way, my next guy, the programmer of the team, Mr. Lucas, really had to dig deep into the art of programming languages and compiler writing. He developed special principles and we ended up by having not only an ALGOL compiler, but also a (smaller) LOGALGOL compiler."
- H. Kanner, C. Robinson, and P. Kosinski. Eliminate stack mechanisms in computer hardware? Communications of the ACM, Volume 7, Number 1 (January 1964), page 1. ACM Digital Library
- H. Kanner, P. Kosinski, and C. L. Robinson. The structure of yet another ALGOL compiler. Communications of the ACM, Volume 8, Number 7 (July 1965), pages 427-438. ACM Digital Library
MARST ALGOL 60-to-C translator (GNU)
- Andrew Makhorin. MARST Algol-to-C translator Developed between 2000 and 2007. Latest version 2.6, November 16, 2007. Online at gnu.org
NASE ALGOL 60 interpreter
- Erik Schoenfelder. NASE A60 Algol 60 Interpreter. Developed between 1990 and 1999. Latest version 0.22, April 21, 2005. Online at bertnase.de
The ODRA 1204 was a small scientific computer designed and built by ELWRO in Wrocław, Poland. See:
- Krystyna Jerzykiewicz and Jerzy Szczepkowicz. ALGOL 1204. Warsaw, 1973. In Polish. Posted here by permission of Krystyna Jerzykiewicz.
Wikipedia contributors. Odra (computer). Wikipedia, The Free Encyclopedia. March 21, 2013, 23:27 UTC. Available at: http://en.wikipedia.org/w/index.php?title=Odra_(computer)&oldid=546118244. Accessed January 15, 2014.
PSYCO for CDC 1604 (IDA: Institute for Defense Analysis)
- E. T. Irons. A syntax directed compiler for ALGOL 60. Communications of the ACM, Volume 4, Number 1 (January 1961), pages 51-55. ACM Digital Library
- Edgar T. Irons. Maintenance manual for PSYCO - Part One : The Princeton Syntax Compiler. Institute for Defense Analysis, Communications Research Division, January 10, 1961, 104 pages. Computer History Museum, Lot X4100.2007. PDF at computerhistory.org
- E. T. Irons. The Structure and Use of the Syntax-Directed Compiler. In Annual Review in Automatic Programming, Volume 3, edited by R. Goodman, Pergamon Press, Oxford, 1963, pages 207-227. ScienceDirect
"An Algol 60 compiler for Dask was completed in September 1961." [datamuseum.dk]
- J. Jensen, T. Jensen, P. Mondrup, and P. Naur. A manual of the DASK ALGOL language, Regnecentralen.
" The conventions and methods used in DASK ALGOL were developed over the period February 1959 - August 1960. The great stimulus received at the early stages of the work from the general advisors of the ALCOR group, Professors F. L. Bauer and K. Samelson and Mr. M. Paul, Mainz, is gratefully acknowledged. Discussions with Professor A. von Wijngaarden, Dr. E. W. Dijkstra and Mr. J. A. Zonneveld of the Mathematical Centre, Amsterdam, have also been a great stimulus to the work.
The actual work was done by
Jørn Jensen (JJ)
Toke Jensen (TJ)
Per Mondrup (PM)
Peter Naur (PN)
The general conventions are due to JJ, PM and PN. The actual coding was done by JJ (block and parameter administration, standard input procedures), TJ (input of the ALGOL program), and PM (arithmetics, standard functions, standard output procedures). Checking and debugging was done by PN, who also worked out the present Manual." [Introduction]
- 2nd edition, 1961. International Computing Collection (CBI 62), Charles Babbage Institute, University of Minnesota, Minneapolis. Finding aid at CBI
Box 8 contains
- "A Manual of the DASK ALGOL language, J. Jensen, T. Jensen, P. Mondrup, and P. Naur, 1961. [60 p.]".
- "The program of the wired store on DASK, J. Jensen, P. Mondrup, and P. Naur, circa 1961. [complete program]"
- 2nd edition, 1961. International Computing Collection (CBI 62), Charles Babbage Institute, University of Minnesota, Minneapolis. Finding aid at CBI
- J. Jensen and P. Naur. 1961. An Implementation of Algol 60 Procedures.
- J. Jensen, P. Mondrup, and P. Naur. A storage allocation scheme for ALGOL 60.
- See also: Daylight 2011 below.
"The compiler for Gier, based on a novel multipass design, was ready in August 1962." [datamuseum.dk]
- Jørn Jensen and Peter Naur. Letters exchanged while Naur was at the Unversity of North Carolina and discussing techniques that were used in GIER ALGOL, 1961. Danish. Online at datamuseum.dk
- Peter Naur. Gier Algol Translator and Gier Algol Running System. Computer History Museum, Lot X4100.2007, U2439 Box: Compilers 7, January-May 1962, 39 pages. PDF at computerhistory.org
- Peter Naur. The design of the GIER ALGOL compiler.
Abstract: "The report gives a full description of the design of an ALGOL 60 system for the GIER, a machine having 1024 words of core store and 12,800 words on drum. An introductory section gives the historical perspective of the design and the principal characteristics of the machine. The second section discusses the problems of the running ALGOL-program: storage allocation and addressing of variables, program references, procedure calls, and the automatic administration of transfers of program segments from the drum to the core store. The third section discusses the storage problem of the translator and the resulting multipass design. The fourth section describes some of the methods which have been found useful in writing the translator. The last section gives the size of the final system and some notes on its performance."
- BIT, Volume 3, 1963.
- Annual Review in Automatic Programming, Volume 4, edited by R. Goodman, Pergammon Press, 1964, Pages 49-85. ScienceDirect
- Russian translation: Sovremennoye Programmirovanie, Sovjetskoye Radio, Moskva 1966, pages 161-207.
- Peter Naur, editor. A Manual of GIER ALGOL, Regnecentralen, Copenhagen.
- International Computing Collection (CBI 62), Charles Babbage Institute, University of Minnesota, Minneapolis. Box 8 contains "A Manual of GIER ALGOL, ed. P. Naur, 1961. [65 p.]" Finding aid at umn.edu
- A Manual of GIER ALGOL : as developed by Henning Christensen, Jørn Jensen, Peter Kraft, Paul Lindgreen, Peter Naur, Knut-Sivert Skog and Peter Villemoes. First edition, 1963. PDF at datamuseum.dk
- A Manual of GIER ALGOL III : as developed by Henning Christensen, Gunnar Ehrling, Jørn Jensen, Peter Kraft, Paul Lindgreen, Peter Naur, Knut-Sivert Skog and Peter Villemoes. Second edition, with a page of corrections and editions, 1965. PDF at datamuseum.dk
- A Manual of GIER ALGOL 4 : developed by Tove Asmussen, Jørn Jensen, Søren Lauesen, Paul Lindgreen, Per Mondrup, Peter Naur, and Jørgen Zachariassen. Third edition, 1967. PDF at datamuseum.dk
- T. Asmussen, J. Jensen, S. Lauesen, P. Lindgreen, P. Mondrup, P. Naur, and J. Zachariassen. The Complete Annotated Programs of GIER ALGOL 4. December 1967.
- Peter Naur. Features of the GIER ALGOL 4 system. BIT Numerical Mathematics. Volume 8, Number 1 (1968), pages 36-42. SpringerLink
- Jørn Jensen, Søren Lauesen, Paul Lindgreen, Boris Martynenko, D.B. Wagner (editor). Pass actions, pass output, and storage organization in the Gier Algol 4 Compiler. A/S Regnecentralen, April 1969. PDF at datamusuem.dk
Abstract: "This report gives details of two important aspects of the Gier Algol 4 compiler: 1. Actions of the various passes; specifically the details of their interfaces. 2. Storage organization in the compiled program. The report assumes that the reader is thoroughly familiar with Algol and in particular Gier Algol 4, and that he has some acquaintance with the operation of the compiler. It plunges immediately into technical details."
- Mogens Kjaer. GIER simulator with software, including GIER ALGOL 4. Online at datamuseum.dk
- Charlies Simonyi. The Rosetta Code: Archeology of the Gier Algol Compiler. Lecture presented at the Society of Computer-Archeologists in Denmark, 2004?. Online at datamuseum.dk
- Edgar G. Daylight. Pluralism in Software Engineering: Turing Award Winner Peter Naur Explains. Lonely Scholar Conversations Series, October 2011.
Part I of this wide-ranging interview covers Naur's work on Algol 60, including the DASK and GIER implementations. He also makes a few remarks about Algol 68.
- Roger H. Abbott. An Efficient Algol-60 System for the PDP8. Proceedings of the Ninth DECUS EUROPE Seminar, 1973. PDF at pdp8.de
"A one-pass compiler translates nearly full Algol-60 into an intermediate language, whose instructions and variable addresses are 6 bits long. The run-time system loads the intermediate language into core memory, and performs the operations specified by its 64 instructions. Execution speed is limited by floating point arithmetic, and is nearly as fast as programs written in machine code. It is about 6 times faster than OS/8 Fortran on a machine with EAE, although compiled programs occupy only one-third of the space. Minimum hardware is an 8K PDP8 with teletype. The system can run under Monitor or OS/8. A 12K machine can use Field 2 for array storage."
- John Wilson, archivist. Source and executables for OS/8. In D Bit public FTP archive; files formerly found on nickel.ucs.indiana.edu/pub/DEC/PDP8. Online at dbit.com Online at bitsavers.org
- RHA Minisystems. Algol60 compiler and interpreter for MSDOS and CP/M. Online at angelfire.com/biz/rhaminisys/
- Ron Morrison. On the Development of Algol. Ph.D. Thesis, University of St. Andrews, December 1979. Online at cs.st-andrews.ac.uk
- Ron Morrison. S-algol Reference Manual, CS/79/1, University of St. Andrews, 1979. Online at cs.st-andrews.ac.uk
- Ron Morrison. S-algol distribution - source (C version) and object. University of St. Andrews via Wilhelm Bernhard Kloke, circa 1994. .tar.gz
SDS 930 (Scientific Data Systems)
- Anonymous. SDS ALGOL 60 Reference Manual. 90 06 99C, Scientific Data Systems, November 1966. PDF at bitsavers.org
SHARE for IBM 7090/7094
- M. P. Lietzke. A method of syntax-checking ALGOL 60. Communications of the ACM, Volume 7, Number 8 (August 1964), pages 475-478. ACM Digitial Library
- R. G. Franciotti and M. P. Lietzke. The organization of the SHARE Algol 60 Translator. In Proceedings of the 1964 19th ACM National Conference ACM '64. ACM, New York, NY. ACM Digital Library
- Robina Mapstone, interviewer. Oral history interview of Morton Bernstein. March 14, 1973, Archives Center, National Museum of American History. PDF at smithsonian.org
Bernstein discusses SHARE's involvement with ALGOL 58 and ALGOL 60.
- R.G. [Rex] Franciotti. An Introduction to the SHARE Algol 60 Translator. Computer History Museum Lot X3762.2007. Donated by Mark Halpern.
- Marjorie P. Lietzke. SHARE ALGOL 60 Translator : Preliminary Manual. Report Number KDP-70, Union Carbide Corporation, Oak Ridge, Tennessee, undated. Computer History Museum Lot X3762.2007. Donated by Mark Halpern.
- Marjorie P. Lietzke. Letter to SHARE ALGOL Mailing List, May 21, 1964. Announcement of MOD4 of the SHARE ALGOL compiler for IBM 7090. Computer History Museum Lot X3762.2007. Donated by Mark Halpern.
- Marjorie P. Lietzke. SHARE ALGOL 60 Translator : MOD 4 : Preliminary Manual. Report Number KDP-70 Revision 2, Union Carbide Corporation, Oak Ridge, Tennessee, May 20, 1964. Computer History Museum Lot X3762.2007. Donated by Mark Halpern.
- Marjorie P. Lietzke, editor. The SHARE ALGOL 60 Translator for the IBM 709/7090/7094. Report K-1614, Union Carbide Corporation, Oak Ridge Tennessee, January 20, 1965, 166 pages. Computer History Museum Lot X3762.2007. Donated by Mark Halpern.
- Ole-Johan and Kirsten Nygaard. SIMULA: an ALGOL-based simulation language. Communications of the ACM Volume 9, Number 9 (September 1966), pages 671-678. ACM Digital Library
- Ole-Johan Dahl, Bjørn Myhrhaug, and Kristen Nygaard. Common Base Language.
- Anonymous. Data processing - Programming languages - Simula. Svensk Standard SS 63 61 14, May 20, 1987, 178 pages. Online at uio.no
- Peter Sylvester. Simula: IBM System 360/370 Compiler and Historical Documentation. Website. Online at edelweb.fr
- Gunnar Syrrist. PC SIMULA for DOS. Formerly commercial version developed by Simula Software Development; now free. Website. Online at prosjekt.ring.hibu.no
- J. R. Holmevik. Compiling SIMULA: a historical study of technological genesis. IEEE Annals of the History of Computing, Volume 16, Number 4 (Winter 1994), pages 25-37. Online at um.edu.mt IEEE Computer Society
- Stein Krogdahl. The Birth of Simula. Proceedings of the History of Nordic Computing Conference, Trondheim, June 2003. PDF at heim.ifi.uio.no SpringerLink
- H. Goheen, G. Bachelor, D. Digby and D. Hartman. SMALGOL, A Subset of ALGOL. Oregon State University.
- Anonymous. ALWAC SMALGOL Programming Manual. Alwac Computer Division, March, 1962.
"I have already alluded to the ALGOL compiler designed by Gerrit Van der Mey -- probably the most impressive of the early ALGOL compiler efforts. This was not just because it was the most complete implementation of the language of which I was aware -- it even handled dynamic own arrays and various other unfortunate little complications of the language that just about everybody else avoided tackling. Rather it was because van der Mey, who I met just once when I was taken to his house by Fraser Duncan, was both totally blind and deaf. Yet despite these handicaps, he had almost singlehandledly designed his compiler, though colleagues at the Dr. Neher Laboratorium helped with such debugging as was needed." [Randell 2010]
"I should give credit to another programmer who worked with me for 27 years, and has to be credited with most of the programming work behind Zebra. van der Mey joined me in 1951: he was a maths graduate but the year before he took his doctor's degree he got meningitis. He had been blind from the age of four; at this time he was 30 years old, and he became deaf from the same cause.
He wrote practically all the major programs - the simple code floating point, the double length floating point, Lisp, IPL 5, Algol, and others. Later on he worked on other machines for which he wrote Lisp, the PDP-8, PDP-9, great pieces of Algol implementation, and he worked on theoretical aspects of lambda calculus and combinators in later years. He is now 82 [he died in 2002] and still very strong and a very amiable man. We talked to him through a teleprinter line with a Braille box termination." [van der Poel 1996]
- G. van der Mey. Process for an ALGOL Translator, Report 164 MA, Dr. Neher Laboratorium, Staatsbedrijf der Posterijen, Telegrafie en Telephonie, Leidschendam, Holland, July 1962.
- W. L. van der Poel. The Construction of an ALGOL Translator for a Small Computer. In: Symbolic Languages in Data Processing, Proceedings of symposium organized and edited by the International Computation Center, Rome, March 26-31, 1962. Gordon and Breach, 1962, pages 229-236. PDF
- International Computing Collection (CBI 62), Charles Babbage Institute, University of Minnesota, Minneapolis. Box 9 contains Zebra ALGOL material. Finding aid at CBI
- Don Hunter. Memories of the Zebra. Computer RESURRECTION, The Bulletin of the Computer Conservation Society, Number 11, Winter 1994/1995Online at cs.manchester.ac.uk
- Willem van der Poel. Evolution of the Zebra. Computer RESURRECTION, The Bulletin of the Computer Conservation Society, Number 16, Christmas 1996 Online at cs.manchester.ac.uk
- Don Hunter and Willem L. van der Poel. ZEBRA resurrection. Emulators and software including ALGOL Translator. Online at cs.manchester.ac.uk
UNIVAC 1107 and 1108
- George N. Gray. UNIVAC and ALGOL. Unisys History Newsletter, Volume 6, Number 2, June 2002. Online at cc.gatech.edu
"UNIVAC developed the 1107, its second generation scientific computer, between 1960 and 1962. There was much talk about ALGOL being its primary language. (In 1959, it had even been proposed to develop an ALGOL compiler for UNIVACs LARC supercomputer, but the LARC project was so far over budget that the proposal never got anywhere and the LARC used a modified FORTRAN). At that time, the company's resources were spread very thin, and much of the software development was farmed out. ... development of the FORTRAN and ALGOL compilers was assigned to General Kinetics, a firm in Arlington, VA. General Kinetics ultimately failed to produce either one.
... Case Institute of Technology in Cleveland provided an ALGOL compiler for the EXEC II environment, as part of the arrangement by which it acquired an 1107. The Case Tech compiler was completed in 1964, and computer science students there were trained in ALGOL, rather than FORTRAN. However, FORTRAN was the most widely used language on the 1107.
... In 1965 the Technical Institute at Trondheim, Norway obtained its own 1107 at a discount and began working on a new ALGOL compiler. It was adopted by UNIVAC which named it Norwegian University ALGOL (NU ALGOL). ... NU ALGOL found modest use within the UNIVAC 1100 customer base. The University of Wisconsin, which was making the transition from a Burroughs B5500 to a UNIVAC 1108, developed various extensions to NU ALGOL including the capability of handling ASCII characters in place of the 1108s native Fieldata character set. Wisconsin wrote an e-mail system using NU ALGOL."
- Frederick Way III. Computing at Case [Case Institute of Technology]. Case Alumnus, Volume 63, Number 1 (August 1983), pages 4-8. Computer History Museum, Lot X4100.2007. PDF at computerhistory.org
"The 1107 was the first machine we had that ran so fast that a paper-tape log of use was out of the question. It was delivered with essentially no software at all. Haynam and Gilbert Hanson wrote an algebraic compiler for it that was compatible with the one running on the B-220. The compiler ran on the day that the 1107 passed its acceptance test."
"George Haynam and Gil had a few wizard undergraduates and 1 or 2 graduate students help with the Algol compiler." [Grant Saviers, personal communication, May 12, 2010]
- Anonymous. UNIVAC 1108 Multi-Processor System ALGOL Programmers Reference Manual, UP-7544, Sperry-Univac, 1968. PDF at bitsavers.org
[Was this the Case compiler?]
- Anonymous. UNIVAC 1108 Multi-Processor System Extended ALGOL Programmers Reference Manual, UME-7636, Sperry-Univac, 1968. PDF at bitsavers.org
- Anonymous. The NU ALGOL Programming System for UNIVAC 1107/1108 : Programmers Guide and Reference Manual. Computing Centre, NTH, Trondheim, Norway, December 1969. Manual donated by Karl Andrew Iversen, NTNU. PDF
"Preface: The system described herein was initiated with two objectives:
- to provide ALGOL-users with a reasonable efficient and reliable programming tool.
- to serve as an adequate base for the implementation of the SIMULA-67 language.
For practical reasons it became necessary to be compatible with UNIVAC's old ALGOL system which thus served as the detailed definition of the source language. However, in a few places the compatibility has been sacrificed to achieve a more efficient and reliable implementation. From a pragmatic point of view these are regarded to be of no significance for most users."
"The manual was written by the Computing Centre NTH (NTH = Norwegian Institute of Technology - today NTNU) and published by Tapir Academic Publishing in December 1969.
NU ALGOL was sold from the Computer Centre NTH to Sperry Rand Norway on the 6th of March 1970 for 1 287 000 NOK (approx 180 000 USD in 1970). We have indications that the language was used well into the 1990s by among other the American Bureau of Census." [Ola Nordal, private communication, 3 November 2010]
- Anonymous. UNIVAC 1100 series NU ALGOL Programmer Reference. UP-7884, Sperry-Univac.
- Original edition, 1971. PDF
- Revised edition, September 1973. PDF at bitsavers.org
"ACKNOWLEDGEMENT: The NU (Norwegian University) ALGOL System was designed and implemented as a joint effort of the Norwegian Computing Center, Oslo, and the Computing Center at the Technical University of Norway, Trondheim."