Algol-W is clearly a transitionary stage between ALGOL 60 and Pascal (created later by Wirth also). It represented a relatively conservative modification of ALGOL 60; to ALGOL 60 Wirth added string, bitstring, complex number and reference to recorddatatypes and a call-by-result parameter passing mechanism but changed little else.
Like the rest of Wirth's languages (Pascal, Modula-2, Oberon, etc.), Algol-W is small and statically typed. The language that eventually became ALGOL 68 is much larger and more complex than Algol-W, and it differs more from Algol 60 than Algol-W does.
Code Sample
record PERSON ( string NAME; integer AGE; logical MALE; reference(PERSON) FATHER, MOTHER, YOUNGESTOFFSPRING, ELDERSIBLING reference(PERSON) procedure YOUNGESTUNCLE (reference(PERSON) R); beginreference(PERSON) P, M; P := YOUNGESTOFFSPRING(FATHER(FATHER(R))); while (P = null) and ( MALE(P)) or (P = FATHER(R)) do P := ELDERSIBLING(P); M := YOUNGESTOFFSPRING(MOTHER(MOTHER(R))); while (M = null) and ( MALE(M)) do M := ELDERSIBLING(M); if P = nullthen M elseif M = nullthen P elseif AGE(P) < AGE(M) then P else M end
External References
Stanford Computer Science Department Technical Report CS-TR-68-89 (http://www-db.stanford.edu/TR/CS-TR-68-89.html) Various documents for Stanford University's 1972 implementation of Algol-W. The report includes the Algol W Language Description.
ALGOL (short for ALGOrithmic Language) is a family of imperative computer programming languages originally developed in the mid 1950s which became the de facto standard way to report algorithms in print for almost the next 30 years.
It was revised and expanded by Peter Naur to the Backus-Naur form for ALGOL 60.
ALGOL 68 was defined using a two-level grammar formalism invented by Adriaan van Wijngaarden and which bears his name.
It was Niklaus Wirth's proposal for a successor to ALGOL 60 in the ALGOL 68 committee.
It represented a relatively conservative modification of ALGOL 60; Wirth added string, bitstring, complex number and reference to recorddatatypes and call-by-result passing of parameters, but changed little else.
AlgolW @ Everything2 An informal but detailed description of the language by a former user, with sidebars extolling AlgolW over Pascal as an Educational programming language.