Home
Main website
Display Sidebar
Hide Ads
Recent Changes
View Source:
Algol
Edit
PageHistory
Diff
Info
LikePages
!!! [Algol] 60 The principal contemporary statically typed ProgrammingLanguage. It is very similar to [Pascal], its successor, and its machine model remains the foundation for all the popular statically typed languages. [C], [C++], [Java], [CSharp] and others are variations of various extents on the machine model of [Algol]. Their programming paradigm is fundamentally identical. (ObjectOrientation is ''not'' a programming paradigm; it's a modelling paradigm.) [Algol] is also the language that introduced static scoping, and the first one to have a context-free grammar; BackusNaurForm was invented to describe it. [Algol], as its name implies, was meant for expressing mathematical algorithms. It never really took off because the much uglier [Fortran] already occupied that role and had [IBM]'s corporate backing. It was also extended for systems programming in the '60s, notably by Burroughs Corporation, which merged with Sperry Corporation in 1986 to form the Unisys Corporation. To this day, Unisys build MainFrame~s that run the MCP OperatingSystem where [Algol] 60 derivatives such as NEWP, Algol, DCAlgol and DMAlgol are the main vehicle of systems and application programming. In the rest of the world, though, the rise of [Unix] hoisted [C] into that role. Thus, it lives on mainly through its heritage: the machine model and the impact of structured programming enabled by lexical scoping. !!! [Algol] 68 A general purpose successor to [Algol] 60 designed by a committee over many years -- too many years. History passed it by and the end result was considered too complex to implement efficiently on computers of the day, although the few programmers who did get to use it love it. Introduced augmented assignment (<tt>+=</tt>, <tt>-=</tt>, <tt>*=</tt>, <tt>/=</tt> etc). !!! [Algol] W (1965) By CharlesAntonyRichardHoare and NicolasWirth (the "W" in "[Algol] W"). Not very widely used, but influential on later languages in its features; [Pascal] often gets credit for invention of a number of things that actually appeared first in [Algol]-W or other languages. Introduced case/switch statement invented by CharlesAntonyRichardHoare (he says his proudest invention), which is characterized by a sequence of non-ordered non-overlapping values/ranges (as opposed to the primitive [Algol]-60 goto-switch or [Lisp]'s cond). Introduced passing parameters by value-result (a.k.a. in-out parameters). ---- See also: * [Algol] 60 on Linux: The [GNU] Project's [MARST | http://www.gnu.org/software/marst/], an [Algol] to [C] translator. * [Algol] 68 on Linux: J. M. van der Veer's [Algol 68 G interpreter | http://www.xs4all.nl/~jmvdveer/algol.html]. * [AlgolWCompiler] * GlynWebster's [Algol68 skillz | http://www.wave.co.nz/~glyn/befunge.a68] ---- Part of CategoryProgrammingLanguages, CategoryImperativeProgrammingLanguages
3 pages link to
Algol
:
GoToStatementConsideredHarmful
AlgolWCompiler
StuffToCode