Sie sind auf Seite 1von 7

KEY HIGH-LEVEL LANGUAGES Of the application areas, the first five (Le.

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

Specific references are not listed (aside from the Flow-Matic


standards numbers, if they exist). For older references Formac
and information (including history) on most of these IPL-v
languages, there are five main sources, and they are IT
referred to with the indicated abbreviations in the Joss
listings: Jovial
Mad
Roster: “Roster of Programming Languages for 1976-77.” Neliac
J. E. Sammet, ACM SIGPLAN Notices 13, No. 11.
Simula 67
HOPL: History of Programming Languages, R. L. Wexelblat
(Ed.). New York: Academic Press, 1981.
HOPL-11: History of Programming Languages-11, T. J. Bergin
and R. G. Gibson (Eds). Reading, MA: Addison-Wesley, 1996. CURRENTUSAGE-BROADAPPLICATIONAREAS
PL: Programming Languages: History and Fundamentals,
J. E. Sammet. Englewood Cliffs, NJ: Prentice Hall, 1969.
Numerical scientific
ANSI, ISO: For any language that is an ANSI or IS0 standard, Basic
the appropriate number has been shown. Where both Fortran
standards exist, the initial or primary location is usedwherever Speakeasy
possible. In those cases where standardization is under way,
the organization is shown without any number. Further details
on programming language standards are in the article Business data processing
PROGRAMMING LANGUAGE STANDARDS, which contains a Cobol
complete list of standards including languages which are not in
the list below.
String and list processing
Icon
For any language contained in more than one of the
Lisp
above sources, all relevant references have been given.
Snob014
The reader should note that there may be more cur-
rent references for some of these languages (including,
but not limited to, articles in this encyclopedia). In a
Formula manipulation
very few cases, these have been included. Macsyma
Mathematica
The computers are described either as specific family, Reduce
or as “many” or “most” where there aretoo many to
list.More implementations mayexist but are not Multipurpose
known to the author. Implementations include main- Ada
frames, mincomputers, and personal computers, and APL
an entry of “many computers” canapply to any or dl C++
of these categories. An entry of “mostcomputers” M (previously called Mumps)
applies to all sizes. An entry of “some” means that Pascal
there is more than one implementation, but it is not PWI
practical to provide a specific list. Prolog
The list of computers on which the language has been Smalltalk
implemented, and, to a lesser extent, the comment
and the implicitvalue judgment in including the Social science and/or statistics
language at all, stem primarily from the author’s old OMNITAB I1
language roster, mentioned above, and some updating SPSS
of that information based on more recent research.
However, time has not permitted a thorough updating Systems programming (including debugging aids)
Bliss
of implementation and/or usage details.
C
Jean E. Sammet Java

List of Languages by Application Area


HISTORICALLY
IMPORTANT BUT NOT IN CURRENTLANGUAGESFORSPECIALIZED
SlCNlFlCANT CURRENT USE APPLICATIONAREAS
Computer-assisted instruction
Algol 60 Coursewriter I11
Algol 68 PILOT
Comit [11] TUTOR
APPENDIX VI 1939

Circuit design ALGOL 68


ECAP 11 ALGOrithmic Language 1968
SCEPTRE 1968
Roster, HOPL-11.
Civil, mechanical, structural engineering Many computers.
COG0 Multipurpose.
ICES Very powerful language but not very upward-
compatible from Algol 60.
Computer hardware design (including simulation)
ISPL APL
VHDL A Programming Language
1962
Equipment checkout Roster, HOPL, PL, IS0 8485-1989.
ATLAS Many computers.
Multipurpose.
Machine tool control Has unusual character set and cryptic syntax, but
APT has very powerful, concise primitive array
operations.
MathematicaVlinear programming
MPSX APT
PDS/MaGen Automatically A-ogrammed Tools
1957
Simulation (continuous) Roster, HOPL, PL, ANSI X3.37-1995.
CSMP Most computers.
CSSL Machine tool control.
DYNAMOI11 Language for programming numerically controlled
machine tools.Was first language developed for a
Simulation (discrete) specialized application area.
GPSS
ATLAS
SIMSCRPT 1 1.5
Abbreivated Test Language for “All” Systems
1968
Roster, ANSI/IEEE Standard 416-1988.
Description of Languages Most computers in differing versions.
ADA Equipment checkout.
1979 For test engineers to control automatic test
HOPL-11, ANSI/ISO/IEC 8652-1995. equipment.
Many computers.
Multipurpose. BASIC
Very powerful language developed over many years Beginners All Purpose Symbolic Instruction Code
with much publiccommentary. Sponsored by US 1964
Department of Defense, but designed by French Roster, HOPL, PL, ANSI X3.113- 1987.
language team. Used primarily in embedded Almost all computers.
computer systems (e.g. military, FAA, NASA), but Numerical scientific.
also in numerous commercial applications.\ Very simple language but with some advanced
features. Available on many micro- and personal
computers for uses beyondjust numerical
ALGOL 60 scientific.
ALGOrithmic Language 1960
May 1960 BLISS
Roster, HOPL, PL. Basic Language for Implementation of System
Many computers. Software
Numerical scientific. 1970
Suitable for problems involving numeric Roster.
computation and/or logical processes. Its Several computers.
predecessor (Algol 58) had several significant Systems programming.
languages based on it (e.g. Jovial, Mad, Neliac). For writing compilers and operating systems.
1940 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

Almost all computers. IBM 650.


Numerical scientific. Numerical scientific.
First language to be widely used and remains in First language implemented on small computer;
wide use. inspired much compiler research.

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

MAD Primarily for nonprogrammers, using desk


Michigan Algorithm Decoder calculator-type operations, but also containing
1960 powerful mathematical facilities (e.g. regression,
Roster, PL. matrix inversion).
Several computers.
Systems programming. PASCAL
Original version was based on Algol 58 and designed 1971
for numerical computation. Later version was Roster, HOPL-11, ANSI/ISO/IEC 7185-1990.
extended significantly. Most computers.
Multipurpose.
MATHEMATICA Small but elegant language with many significant
1986 features. Used heavily for teaching programming.
Formula manipulation. Many Pascal compilers are written in Pascal.
Many computers.
Powerful language for doing formal algebraic PDS/MACEN
manipulation that contains many mathematical Problem Descriptor System
built-in functions and powerful graphics facilities. 1973 (?)
Roster.
MPSX Many computers.
Mathematical Programming System Extended Mathematical programming.
1966 Facilitates generation of matrices and reports for
Roster. mathematical programming systems.
IBM System/360, 370.
Mathematical programming. PILOT
Controls solution strategy for mathematical
programming problems. Other similar languages IEEE 1154 1991.
run on different computers. Roster.
Many computers.
M/MUMPS Computer-assisted instruction.
Massachusetts General Hospital Utility Simple language that has been written in Basic,
Multi-A-ogramming System APL\360, Algol, Fortran, and PL/I.
1969
Roster, ANSI X1l.l-1995. PL/I
Several computers. (Not an acronym, although often erroneously
Multipurpose. thought to stand for Programming Language I.)
Fairly general language with emphasis on string 1964
handling and complex file handling. Used heavily Roster, HOPL, PL, ANSI X3.53-1976.
in medical areas, but also in commercial Several computers.
applications. Name changed from Mumps to M Multipurpose.
in 1993. First of the very large, powerful languages,
combining many features from Algol, Cobol,
NELIAC Fortran, and other languages.
Navy Electronics Laboratory International Algol
Compiler PROLOG
1960 1971
PL. HOPL-11, IS0 13211-1995.
Many second-generation computers. Many computers.
Numerical scientific. Multipurpose.
Was based on Algol 58 and was used to write its own For use in logic programming, which can itself be
compilers. applied to many scientific applications. Has a
major use in artificial intelligence.
OMNITABII
1966 REDUCE
Roster. 1967
Most large computers. Roster.
Statistics. Many computers.
APPENDIX VI 1943

Formula manipulation. SNOBOL4


Algol-likelanguage written in itselfand using Lisp as StriNgOriented SymBOlic Language
an intermediate language. 1963
Roster, HOPL.
Most large computers.
SCEPTRE
String processing.
1960s (3)
Emphasizes string processing
and pattern matching.
Roster.
Several computers.
SPEAKEASY
Cicruit design.
1968
Used for designing and analyzing circuits.
Roster.
Several computers.
SIMSCRIPT 11.5 Numerical scientific.
1963 (?) Easily learned but powerful array processing
Roster. language with built-in matrix algebra and
Many computers. powerful library-oriented system.
Simulation (discrete).
Advanced language for large discrete simulation SPSS
problems. Several previous numbered versions Statistical Programs for the Social Sciences
exist. 1975 (?)
Roster.
Most computers.
SIMULA 67
Statistics.
Simulation Language, 1967
Is really a language (albeit simple) and is
1967
implemented in batch and interactive versions.
Roster, HOPL, PL.
Many computers.
TUTOR
Multipurpose.
1971 (?)
An extension of Algol 60 and quite distinct from its
Roster.
predecessor (Simula I), which was primarily a
CDC 6500, Cyber series.
simulation language. Introduced the important
Computer-assisted instruction.
concept of classes.
Runs under PLATO.

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.

Das könnte Ihnen auch gefallen