ALGOL: Nejlepší jazyk, o kterém jste nikdy neslyšeli

Disclosure: Your support helps keep the site running! Za některé služby, které doporučujeme na této stránce, získáváme poplatek za doporučení. Více informací

ALGOL je pravděpodobně nejvlivnější jazyk, o kterém jste nikdy neslyšeli.

Další významné jazyky ze stejné doby – Fortran, COBOL, Lisp – se stále hodně používají (relativně).

ALGOL byl sám o sobě důležitý, zejména v akademickém prostředí a matematice. Největší vliv však měl na vývoj dalších jazyků. Většina dnes používaných jazyků vděčí za něco jazyku ALGOL

Krátká historie jazyka ALGOL

ALGOL byl původně vynalezen na konci 50. let 20. století společným výborem amerických a evropských počítačových vědců, kteří se sešli v Curychu. Jejich práce byla vydána jako jazyk dnes známý jako ALGOL 58.

Druhá verze této skupiny, známá jako ALGOL 60, se stala standardní verzí jazyka, která se běžně používá.

Tato verze, popsaná v dnes již proslulé zprávě ALGOL 60, měla zásadní vliv na oblast návrhu programovacích jazyků. ALGOL 68, poslední „oficiální“ verze jazyka, nebyla komunitou ALGOLu dobře přijata.

ALGOL se nikdy příliš neuchytil v obchodním programování, kromě některých aplikací matematické analýzy používaných ve finančním průmyslu.

Byl však hojně používán v akademické informatice a matematice a byl standardním jazykem pro algoritmický popis ještě v 80. a 90. letech.

Vliv jazyka Algol na další jazyky

Syntaxe a struktura jazyka Algol přímo ovlivnily řadu dalších jazyků, které se začaly označovat jako jazyky „podobné jazyku Algol“.

Mezi tyto jazyky patří Simula, C, Pascal a Ada. Některé z těchto souvislostí jsou poměrně přímé:

Nejznámějším členem této skupiny je jazyk C, který dal vzniknout vlastní rodině derivátů a potomků: C++, C#, Objective-C a D – abychom jmenovali alespoň některé. Syntaxe jazyka PHP také vychází z jazyka C, což znamená, že nejpoužívanější jazyk na straně serveru na internetu má svůj původ v jazyce ALGOL.

Ještě více ALGOL ovlivnil způsob, jakým jsou programovací jazyky pojímány a popisovány.

Počítačový vědec John Backus navrhl popis gramatiky jazyka ALGOL (PDF), který byl použit ve zprávě ALGOL 60, kterou vydal Peter Naur. Tento jazyk popisu se stal známým jako Backus-Naurův formulář (BNF). BNF a EBNF („extended“) je nyní standardním způsobem popisu gramatiky formálního jazyka.

Zdroje o jazyce ALGOL

ALGOL je starý, většinou zastaralý jazyk, a proto může být velmi obtížné najít o něm zdroje a spolehlivé informace. Naštěstí pro vás už nemusíte. Prohledali jsme internet, abychom vám přinesli nejdůležitější zdroje pro studium jazyka ALGOL.

Historické výukové programy

Všechny hodnotné výukové programy o jazyce ALGOL byly napsány již dávno. Naštěstí byly ty nejlepší z nich naskenovány a zpřístupněny online.

  • Kurz programování v jazyce Algol 60 (PDF) je výukový kurz jazyka, který napsal Peter Naur, editor původní zprávy o ALGOLu 60 (viz níže)

  • Neformální úvod do ALGOLu 68, revidované vydání (PDF) od Lindseyho a Meulena, původně vyšel v roce 1977, a nyní je k dispozici zdarma online

  • Programming Algol 68 Made Easy (PDF) od Siana Leitche, je další klasická kniha

  • A Tutorial on Algol 68 (PDF) je časopisecký článek z roku 1976, který poskytuje jak úvod do jazyka, tak pohled do historie výpočetní techniky.

Kompilátory

  • Algol 68 Genie je moderní multiplatformní kompilátor jazyka ALGOL – pravděpodobně nejjednodušší způsob, jak začít pracovat s jazykem ALGOL na počítači; nenechte si ujít knihu Learning Algol 68 Genie (PDF) od Marcela van der Veera, která obsahuje výukový kurz jazyka a ukázkové programy

  • Využívejte jazyk Algol online pomocí interpretu jazyka Algol v prohlížeči od Tutorials Point

  • Algol-68 to C je přenosný překladač/kompilátor, umožňující spouštět jazyk ALGOL 68 v libovolném prostředí s kompilátorem jazyka C

  • Z80 ALGOL Compiler s virtuálním strojem, pro spouštění jazyka ALGOL v systému MS-DOS.

Ukázkové programy v jazyce ALGOL

  • Hello World! a Compute the Mean, napsaný v jazyce ALGOL pro mainframe Unisys (Burroughs) řady A

  • 99 lahví piva na zdi, naprogramovaný v jazyce ALGOL 68 a v ALGOL 60

  • Eratosthenovo síto v ALGOL 60 ukazuje příklad programu pro hledání prvočísel v jazyce ALGOL.

Historické zdroje

  • Zpráva o algoritmickém jazyce ALGOL 60 (PDF), kterou editoval Peter Naur, je původním definičním dokumentem jazyka – povinná četba pro každého badatele v ALGOLu; revidovaná zpráva (PDF) představuje konečnou, oficiální definici jazyka; revidovaná zpráva je k dispozici také v současném kritickém vydání s opravenými chybami (PDF)

  • Algol68.org je webová stránka věnovaná tomuto jazyku s množstvím dalších zdrojů a materiálů

  • projekt History of ALGOL organizace Software Preservation Group obsahuje množství materiálů o jazyce ALGOL, včetně původních článků, kompilátorů, článků, aplikací a dalších.

Knihy o jazyce ALGOL

  • Průvodce programováním v jazyce ALGOL (1962) od Daniela McCrackena je kniha zabývající se jazykem ALGOL 60

  • Programování – ALGOL (1969) od D. J. Malcolme-Lawese je raná příručka tohoto jazyka určená široké veřejnosti, a obsahuje historicky fascinující úvod do výpočetní techniky

  • Programming and Problem-Solving in Algol 68 (1978) od Andrewa JT Colina je základní knihou, která seznamuje jak s programováním počítačů obecně, tak s ALGOLem konkrétně

  • An Introduction to Algol 68 Through Problems (2014) od Learnera a Powella rovněž seznamuje s programováním počítačů pomocí ALGOLu, pomocí řady praktických počítačových problémů

  • Programování pomocí případových studií: Další úvod do programování pomocí jazyka ALGOL, ale s důrazem na matematiku, představuje kniha Chedzoy a Forda An Algol Primer (1969).

ALGOL a jiné jazyky

  • Příručka a průvodce srovnáváním a výběrem počítačových jazyků (1990) od Jamese Ogdena poskytuje zajímavé srovnání vlastností, silných a slabých stránek jazyka Basic, FORTRAN, Pascal, COBOL, PL/1, APL, ALGOL-60 a C

  • Numerical Methods of Mathematical Optimization (1968) vydaná Kunzim a kol. se zabývá matematickými výpočty v jazycích FORTRAN i ALGOL

  • Data Structures of Pascal, ALGOL 68, PL/1 a Ada (1986) autorů Lewiho a Paredaense se zabývá základními koncepty, nikoli praktickými příklady programování v obsažených jazycích

  • FORTRAN, PL/I a Algols (1979) Briana Meeka porovnává tyto tři významné rodiny jazyků

  • Expert Programming C: (1994) od Petera van der Lindena obsahuje zajímavé podrobnosti o vlivu, který měl ALGOL na vývoj jazyka C

  • Algol-like Languages Volume 1 (1996) and Volume 2 (1997) edited by O’Hearn and Tennent is a collection of essays exploring the history of ALGOL and its influence on the development of other programming languages.

Shrnutí

ALGOL není jazyk, který se musíte naučit, abyste získali práci nebo se stali úspěšnými vývojáři. Měl však obrovský vliv na praxi i teorii počítačového programování.

Pokud se zajímáte o návrh jazyků nebo historii informatiky, je ALGOL důležitým prubířským kamenem, který byste měli znát.

Další četba a zdroje

Máme pro vás další průvodce, výukové programy a infografiky týkající se kódování a vývoje:

  • Fortran Zdroje: Jeden z prvních vysokoúrovňových jazyků, dodnes hojně využívaný ve vědeckém programování.

  • COBOL Úvod a zdroje: klasický obchodní programovací jazyk.

  • Prolog Zdroje: Prolog byl raným logickým programovacím jazykem.

Jaký kód byste se měli naučit?

Váháte, v jakém programovacím jazyce byste se měli naučit programovat? Podívejte se na naši infografiku Jaký kód byste se měli naučit? Nejenže pojednává o různých aspektech jazyků, ale také odpovídá na důležité otázky, jako například: „Kolik peněz si vydělám programováním v Javě?“

.

Napsat komentář