Then again, Algol 68 is the source of many C++
features -- iostreams
for example.
Let's see, Algol 60 brought us:
- Formal grammars (BNF)
- Block structure
- Local variables
um, Fortran's variables were local - but
only local or global (Common) - nothing in between
- Scope of names
- Declarations
make that Mandatory declarations ... and even there the
predecessors of
COBOL were earlier
- Type safety
and indirectly
- structured programming
everybody has their own definition of structured
programming ...
- parser generators
Tom> The Whetsone Algol compiler ran, in one pass, as fast as the
Tom> source-input reader hardware, in 7000 words of memory! Though
Tom> slow, it's a full-featured language, unlike C which is basically
Tom> a portable assembler (I loved writing in C).
Tho' those 7000 words
were 48-bit (on the KDF9). The ICT/ICL1900 series
had an Algol (subset) that ran on a 4K (24-bit word) computer and a full
compiler for an 8K machine ... I can't remember, but I think the #XALE
(disk compiler) and #XALM (corresponding tape-based compiler) were for
16K. I think, also, that IBM's Algol compiler was an "E" code so
intended for a 32KB '360 ... not that the PL/I E compiler would run on that
size machine :-(
I don't know how big the first Algol 60 compiler (at MC Amsterdam) was
-- probably similar, quite possibly smaller.
Tom> Algol had it's share of horrors, but man it is the basis for
Tom> nearly all modern languages. C's block and scope structure came
Tom> directly from Algol.
Lobotomized, of course -- C left out a bunch of important parts from
the Algol block structure.
Some because C is really from the Fortran tradition
(Dirty tricks are
sometimes useful and too strong typing and structure prevent such); some
because they had been discovered to be more problematic than helpful.
Algol 60 -> CPL -> BCPL -> B -> C (importing much from PL/I* ... which
was a union of concepts from Algol 60, Fortran IV, and COBOL using
Algol structure)
* this linkage is not normally recognised in histories of programming
languages, but when it is considered that the originators of C had been
involved in the Multics project ... an OS written in PL/I; the only
previous production OS that had been written in a HLL was that of the
Burroughs machines ... using a version of Algol (to complete the
circularity of these references).
Hm. Algol 60 certainly has no OO nature. Algol 68
does, the
beginnings of it.
Simula 67 was a derivative of Algol 60 that is normally recognised as the
foundation of OO.
Andy
--
Internal Virus Database is out-of-date.
Checked by AVG Anti-Virus.
Version: 7.0.308 / Virus Database: 266.11.5 - Release Date: 04/05/05