books-programmingLanguages-programmingLanguagesChHistLangs

Table of Contents for Programming Languages: a survey

Of historical interest

I place a language in the 'of historical interest' section if it seems to me that the language introduced important ideas or was the basis for an important language, but the language is no longer very popular (for writing new programs; there are plenty of old languages with lots of legacy code), and if it seems to me that either the language has been 'succeeded' by another, or that most of the interesting innovations in the language have been incorporated into many others.

If language still seems to me to be the best way to learn about some idea, then i did not confine it to the 'of historical interest' section, even if it is unpopular.

BCPL

goals: "removing those features of (the CPL) language which make compilation difficult"

influences: CPL

people: Martin Richards

notes: predecessor of B, which led to C

B

goals: "B was essentially the BCPL system stripped of any component that Thompson felt he could do without" ( http://en.wikipedia.org/wiki/B_%28programming_language%29 )

people: Ken Thompson, Dennis Ritchie

influences: BCPL

attributes: typeless (everything is a word)

notes: predecessor of C

Oberon

Goals: "...The language Oberon was born out of the ambition to simplify language to the essentials....Tempted to design a version of Modula stripped down to essentials, we also wanted to identify those features that were indispensable to encompass object-orientation" (cite http://www.swissdelphicenter.ch/en/niklauswirth.php )

Pros:

The minimal extensions present in Oberon for OOP are:

Oberon already has first-class functions, so 'methods' may be implemented manually by assigning function values to fields of a record.

People: Niklaus Wirth

As of this writing, the latest in Wirth's Pascal/Modula/Oberon family of languages. Latest version as of this writing: Oberon-7

Links:

Pascal

Goals: "The general idea dominating the design of Pascal was to provide a language appealing to systematic thinking, mirroring conventional mathematical notation, satisfying the needs of practical programming, and encouraging a structured approach" (cite http://www.swissdelphicenter.ch/en/niklauswirth.php)

Criteria:

Historically important innovations:

Attributes:

Cons:

Influences: Algol, Fortran, Cobol ( http://www.swissdelphicenter.ch/en/niklauswirth.php )

People: Niklaus Wirth

Retrospectives:

Modula-2

Goals: "To create a language adequate for describing entire systems, from storage allocator to document editor, from process manager to compiler, and from display driver to graphics editor. I perceived that many problems in software development stemmed from the mixing of parts written in different languages." (cite http://www.swissdelphicenter.ch/en/niklauswirth.php) )

Historically important innovations:

People: Niklaus Wirth

Retrospectives:

Notes:

Fortran

Simula

Historically important innovations:

Influences: ALGOL

Goals: discrete event simulation

People: Ole-Johan Dahl, Kristen Nygaard

Other notes:

Algol

designed by committee

Pl/1

Ada

Pros:

Notes:

Inspired: