History of IBM's Technical Contributions to High Level Programming Languages

This paper discusses IBM's technical contributions to high level programming languages from the viewpoint of specific languages and their contributions to the technology. The philosophy used in this paper is that it is the appropriate collection of features in a language which generally makes the contribution to the technology, rather than an individual feature. Those IBM languages deemed to have made major contributions are (in alphabetical order) APL, FORTRAN, GPSS, and PL/I. Smaller contributions (because of lesser general usage) have been made by Commercial Translator, CPS, FORMAC, QUIKTRAN, and SCRATCHPAD. Major contributions were made in the area of formal definition of languages, through the introduction of BNF (Backus-Naur Form) for defining language syntax and VDL (Vienna Definition Language) for semantics.

[1]  S. Zilles,et al.  FORMAC an experimental formula manipulation Compiler , 1964, ACM National Conference.

[2]  Jean E. Sammet,et al.  Roster of programming languages for 1976-77 , 1974, SIGP.

[3]  John W. Backus,et al.  The IBM 701 Speedcoding System , 1954, JACM.

[4]  Abraham Robinson,et al.  Random-Access Stored-Program Machines, an Approach to Programming Languages , 1964, JACM.

[5]  J. E. Sammet,et al.  Introduction to FORMAC , 1964, IEEE Trans. Electron. Comput..

[6]  Jules I. Schwartz,et al.  The development of JOVIAL , 1978, SIGP.

[7]  P Lucas,et al.  On the formal description of PL/I , 1969 .

[8]  John W. Backus,et al.  Can programming be liberated from the von Neumann style?: a functional style and its algebra of programs , 1978, CACM.

[9]  Frances E. Allen,et al.  The History of Language Processor Technology in IBM , 1981, IBM J. Res. Dev..

[10]  P. J. Landin,et al.  Correspondence between ALGOL 60 and Church's Lambda-notation , 1965, Commun. ACM.

[11]  H. Hellerman Experimental personalized array translator system , 1964, CACM.

[12]  Richard L. Wexelblat ACM SIGPLAN History of Programming Languages Conference, Los Angeles, California, June 1-3, 1978 : preprints , 1978 .

[13]  Brian A. Wichmann,et al.  Rationale for the design of the Ada programming language , 1979, SIGP.

[14]  Gian-Carlo Rota,et al.  History of Computing in the Twentieth Century , 1980 .

[15]  E. D. Callender,et al.  ALGY - an algebraic manipulation program , 1961, IRE-AIEE-ACM '61 (Western).

[16]  Richard D. Jenks The SCRATCHPAD language , 1974, SIGS.

[17]  Alan J. Perlis,et al.  An extension to ALGOL for manipulating formulae , 1964, CACM.

[18]  Kenneth E. Iverson,et al.  The evolution of APL , 1978, SIGP.

[19]  T. M. Dunn,et al.  Remote computing--an experimental system: part 1: external specifications , 1964, AFIPS '64 (Spring).

[20]  J. C. Shaw JOSS: a designer's view of an experimental on-line computing system , 1964, AFIPS '64 (Fall, part I).

[21]  Alan J. Perlis,et al.  Preliminary report: international algebraic language , 1958, CACM.

[22]  Jean E. Sammet,et al.  Roster of programming languages for 1973 , 1974, SIGP.

[23]  Anthony C. Hearn,et al.  REDUCE 2: A system and language for algebraic manipulation , 1971, SYMSAC '71.

[24]  Friedrich L. Bauer,et al.  Report on the algorithmic language ALGOL 60 , 1960, Commun. ACM.

[25]  Henry Ledgard,et al.  Reference Manual for the ADA® Programming Language , 1983, Springer New York.

[26]  Kenneth E. Iverson,et al.  A programming language , 1899, AIEE-IRE '62 (Spring).

[27]  J. W. Backus The History of FORTRAN I, II and III , 1979, IEEE Ann. Hist. Comput..

[28]  Kenneth E. Iverson,et al.  A Formal Description of SYSTEM/360 , 1964, IBM Syst. J..

[29]  David Beech,et al.  A Structural View of PL/I , 1970, CSUR.

[30]  Gregor von Bochmann,et al.  A Sampler of Formal Definitions , 1976, CSUR.

[31]  Donald E. Knuth,et al.  The Early Development of Programming Languages. , 1977 .

[32]  Niklaus Wirth,et al.  PL360, a Programming Language for the 360 Computers , 1968, JACM.

[33]  Michael Marcotty,et al.  The Definition Mechanism for Standard PL/I , 1977, IEEE Transactions on Software Engineering.

[34]  Jean E. Sammet,et al.  The early history of COBOL , 1978, SIGP.

[35]  Douglas T. Ross,et al.  Origins of the APT language for automatically programmed tools , 1978, SIGP.

[36]  Jean E. Sammet,et al.  Programming languages - history and fundamentals , 1969, Prentice-Hall series in automatic computation.

[37]  Erich J. Neuhold,et al.  The Formal Description of Programming Languages , 1971, IBM Syst. J..

[38]  John W. Backus,et al.  The syntax and semantics of the proposed international algebraic language of the Zurich ACM-GAMM Conference , 1959, IFIP Congress.

[39]  Charles H. Kriebel,et al.  Review of "Programming Languages: History and Fundamentals, by (Miss) Jean E. Sammet." Prentice-Hall, Inc. (1969) , 1969, DATB.

[40]  J. W. Backus,et al.  The FORTRAN automatic coding system , 1899, IRE-AIEE-ACM '57 (Western).

[41]  Joseph Weizenbaum Symmetric list processor , 1963, CACM.

[42]  Joel Moses,et al.  MACSYMA - the fifth year , 1974, SIGS.

[43]  Peter Lucas,et al.  Formal Semantics of Programming Languages: VDL , 1981, IBM J. Res. Dev..

[44]  Geoffrey Gordon,et al.  The development of the General Purpose Simulation System (GPSS) , 1978, SIGP.

[45]  Kristen Nygaard,et al.  SIMULA: an ALGOL-based simulation language , 1966, CACM.

[46]  John McCarthy A Formal Description of a Subset of Algol , 1964 .

[47]  Jean E. Sammet,et al.  Programming languages: history and future , 1972, CACM.