Beruflich Dokumente
Kultur Dokumente
numerical
scientific, business data processing, string and list proc-
INTRODUCTION essing, formula manipulation, and multipurpose) are
The following list of languages represents the author’s relatively common or well known. The remainder are
personal viewof the (approximately SO) high-level narrow, specialized areas. Following this list, each lan-
languages that are deemed most significant (in 2000) guage is listed inalphabetical order, with the following
from among the over1,000high-level implemented entries:
languages (not counting dialects) that have been
defined since work in computing started. The defined Name
characteristics of a high-levellanguage are given inthis
Meaning of the acronym (when there is one)
author’s article on PROGRAMMING LANGUAGES in this
Encyclopedia. The languages selected had to satisfy Date of first publication (described below)
(in the author’s personal judgment) one or more of
Reference(s) (described below)
these criteria: significant usage, influence on language
design, overall impact on the computing environment, Computers on which the language has been
novelty (first of its kind), uniqueness, and existing or implemented
potential standard. The principal change from the The primary application area
1993 edition of the listis the addition of the Java
language. A comment to indicate verybriefly something
about the language and/or why it is on the list.
The languages have been grouped into two major cate-
gories: (1) those not really in significant use in 1999 For the dateof first publication, this means the earliest
(although perhaps a few hardy souls may continue to dissemination of the following (although sometimes
use them) and (2) those believed to be in significant labeled “draft” or “preliminary”): published paper,
use, where “significant” is judged relative to the size official technical report, language manual, etc. In
many
of the expected user community for that type of cases, the date refers to a much earlier version of the
language. Within the second group, the languages have current language. Thus, the 1956 publication on For-
been listed by name under the primary application tran has little resemblance to the 1978 ANSI standard
areas for which they are intended. This is because of or to the 1997 ISO/IEC standard. Where a question
theauthor’s firm belief thatthe mostimportant mark is used, it means the author is not certain of the
characteristic of any programming language is the date. In a few cases, a specific date has been omitted
application area for which it is intended to be used. entirely because of lack of knowledge.
1938 APPENDIX VI
C Simulation (continuous).
1973 General name for two languages (statement- and
Roster, HOPL-11, ANSI/ISO 9899-1990. block-oriented) used to simulate the dynamics of
Many computers. continuous systems describable by ordinary
Systems programming. differential equations.
Used to write the Unix operating system and most of
its application software. CSSL
Continuous Systems Simulation Language
C++ 1967
1980 Roster.
ANSI,HOPL-11. CDC 6400 and XDS Sigma 7.
Many computers. Simulation (continuous).
Multipurpose. Statement-oriented language to simulate dynamics
An extension of C with facilities for object-oriented of continuous systems describable by ordinary
programming. differential equations. Many varying versionswith
different names are implemented.
COBOL
COmmon Business- Oriented Language DYNAMO
111
1960 1959 (?)
Roster, HOPL, PL, ANSI X3.23-1985. Roster.
Most computers. Most large and medium-sized computers.
Business data processing. Simulation (continuous).
English-like in style, developed and maintained by Used to construct large models of economic and
committee of users and manufacturers under social systems.
Codasyl. One of the most widely used languages.
ECAP II
coco Electronic Circuit Analysis Program IZ
Coordinate Geometry 1966
1963 (?) Roster.
Roster, PL. Several computers.
Several computers. Circuit design.
Civil engineering. Simple language for analyzing electrical networks.
Useful for solving coordinate geometry problems in
civil engineering. FLOW-MATIC
1958
COMIT [Ill PL.
1957 UNIVAC I, 11.
Roster, PL. Business data processing.
IBM System/360. Was first English-like language for business data
String processing. processing and was a major input to design of
First major language for string handling and pattern Cobol.
matching.
FORMAC
COURSEWRITER
III FORmula MAnipulation Compiler
1966 (?) 1964
Roster. Roster, PL,HOPL-11.
IBM System/360. IBM System/360, 370.
Computer-assisted instruction. Formula manipulation.
Simple language for preparing computer-assisted First language to be widely usedfor formal algebraic
instruction courses. manipulation.
CSMP FORTRAN
Continuous System Modeling Program FORmula TRANslation
1968 1956
Roster. Roster, HOPL, PL, ANSI X3.198-1992,
Several computers. ISO/IEC1539:1991
APPENDIX VI 1941
c PSS JAVA
General Purpose Systems Simulator 1995
1961 Many computers.
Roster, HOPL, PL. Multipurpose.
Several computers. An object-oriented language for machine-
Simulation (discrete). independent programming and program
Based on block-diagram approach, with statements execution over a network. Resembles C++ in
used for computer input. appearance, but without some of its low-level
features.
ICES
Integrated Civil Engineering System Joss
1967 (?) JOHNNIAC Open Shop System
Roster. 1964
Several computers. Roster, HOPL,PL.
Civil engineering. Many computers in different versions.
General system for engineering which has internal Numerical scientific.
languages for subsystem development and First language designed for online use. Is very
includes languages such as COG0 and STRUDL. simple. Had many dialects under differing names.
ICON JOVIAL
1978 Jules Own Version of International Algebraic
HOPL-11. Language
Many computers. 1960
String processing. Roster, HOPL,PL.
Based on concepts from SNOBOL for string Many computers in many versions.
processing, but is broader and has different Multipurpose.
syntax. Based on Algol 58 (originally called International
Algebraic Language) and had many versions.
I PL-v Newest version is Jovial J73, Many early Jovial
Information Processing Language V compilers were written in some version of Jovial.
1958.
PL. LISP
Many second-generation computers. LZSt Processing
List processing. 1960
Was used heavily in the 1960s for list processing Roster, HOPL, HOPL-11, PL, ANSI X3.226-1994.
applications. Has close notational resemblance to Many computers.
an assembly language. List processing.
Sophisticated and theoretically oriented with many
ISPL dialects, of which most prominent are Common
Instruction Set Processor Language Lisp (the standard) and Scheme (for teaching).
1971 Used for much artificial intelligence research.
Roster.
DEC PDP-10. MACSVMA
Computer hardware design. Project MAC’S Symbol MAnipulation
Used to describe general register transfer systems 1972
and digital computer architecture. Roster.
PCs, Unix systems.
IT Formula manipulation.
Internal Translator Very powerful language for doing formal algebraic
1957 manipulation.
1942 APPENDIX VI
SMALLTALK VHDL
1971 VHSIC Hardware Descriptor Language
HOPL-11. 1983
Many computers. IEEE Standard #I076 (1993)
Multipurpose. Many computers.
Design allows object-oriented programming, and is Computer hardware design.
first language with that facility to be significantly International standard used to describe input-
used. Has developed as several distinct versions output transformations and interconnections of
(1971, 1972,1976, 1980). components for a digital electronic system.