přejít na obsah přejít na navigaci

Linux E X P R E S, ALGOL

ALGOL

Dnes naposledy se podíváme až k samotným kořenům počítačových jazyků. Tentokrát na jazyk Algol, který položil základy imperativním jazykům a který byl kompletně navržen akademicky aktivními lidmi. Název jazyka vychází ze složení "ALGOrithmic Language", což bychom do češtiny přeložili jako algoritmický jazyk.


První verze jazyka Algol byla navržena členy asociace pro počítač (Association for Computing Machinery) a zástupců evropského počítačového průmyslu v roce 1958. Původní název jazyka zněl IAL (International Algebraic Language), ale na meetingu v Curychu byl název IAL pro obtížnou vyslovitelnost a okázalost akronymu zamítnut a pro jazyk se časem vžil název Algol.

Kromě názvu byla kolem jazyka i další nedorozumění, a tak byl v roce 1960 navržen nový dialekt Algolu 58, a to Algol 60. Vývoj Algolu 58 pak byl brzy odložen, ale i přes své krátké trvání přispěl Algol 58 ke vzniku jazyků JOVIAL, MAD, NELIAC a ALGO. V praxi se Algol 58 nikdy neuplatnil.

Algol 60 sehrál díky své koncepci důležitou roli v historii počítačových jazyků. Jako první světu představil blokovou strukturu programu. Tedy to, co dnes známe ve formě begin-end. Dále jako první jazyk v historii obsahoval explicitní řídicí příkazy pro reprezentaci posloupnosti příkazů, iteraci a rozhodování formou podmínek. Program se tedy zapisoval v takovém tvaru, že bylo možno snadno a jednoduše sledovat zpracování jeho příkazů. Toto vše vedlo ke vzniku strukturovaného programování. Sám Algol 60 se bohužel opět neuplatnil.

K další revizi jazyka Algol došlo v roce 1968 a jazyk dostal název Algol 68. Algol 68 vycházel ze základů Algolu 60, ale jeho koncepce je mnohem obecnější. Navíc má daleko mocnější prostředky pro zápis algoritmů. Stejně jako předchozí verze jazyka se ani Algol 68 nijak neujal, a to především pro přílišnou složitost a obtíže s jeho zvládnutím a implementací.

Algol 68 byl první a stále je jedním z mála programovacích jazyků, pro které byla vytvořena kompletní formální specifikace dříve než samotná implementace jazyka samotného. Ve většině případů totiž existuje pouze částečná specifikace jazyka a plná specifikace je dodělána až po úspěšné implementaci.

Pro všechny, kdo si chtějí programovaní v jazyce Algol 68 zkusit, mohu doporučit interpretr Algol 68 Genie, který je šířen pod GNU licencí. Algol 68 Genie je téměř plnou implementací Algolu 68 s některými odlišnostmi, které jsou ve shodě s jeho revizí z roku 1976. Implementace zahrnuje check-out interpretr s mnoho runtime kontrolami. Volitelné grafické a numerické procedury. Algol 68 Genie je dostupný pod operačním systémem Linux, Windows a Mac OS.

V souvislosti s jazykem Algol se kromě Algolu 58, Algolu 60 a Algolu 68 můžeme setkat s Algolem W, který navrhl a vytvořil Nicolas Wirth, duchovní otec jazyka Pascal. Algol W navazuje na Algol 60 a rozšiřuje ho o manipulaci s řetězci, komplexní čísla a dynamicky alokovaná pole. Algol W Nicolas Wirt prezentoval komisi pro Algol, jako nástupce Algolu 60, ale byl odmítnut. Z Algolu W později vyšel Pascal. Více informací o Algolu W, spolu s jeho kompilátorem, naleznete v jednom z odkazů.

Pro Algol 60 můžete jako interpretr použít NASE A60. K použití je zdarma. Jako další možnost, jak si Algol 60 vyzkoušet, se k použití nabízí GNU kompilátor MARST. Ten automaticky překládá program napsaný v jazyce Algol 60 do jazyka C.

Pro ukázku již známého programu Hello world použijeme dnes program zapsaný v jazyce Algol 60, konkrétně implementaci pro Burroughs A-Serie sálový počítač a alternativní příklad zapsaný pro kompilátor Elliott Algol.

BEGIN
FILE F (KIND=REMOTE);
EBCDIC ARRAY E [0:11];
REPLACE E BY "HELLO WORLD!";
WHILE TRUE DO
BEGIN
WRITE (F, *, E);
END;
END.
program Hello_World;
begin
print "Hello world";
end;

Jak je z uvedených příkladů na první pohled vidět, svým zápisem skutečně velmi připomínají dnešní imperativní jazyk jako například Pascal, C, Java. A přestože v praktickém nasazení nenašel Algol žádné uplatnění, zavdal v mnohém vzniku široce užívaným programovacím jazykům.

Nahoru

Odkazy

Přidat téma diskuse

Nejsou podporovány žádné značky, komentáře jsou jen čistě textové. Více o diskuzích a pravidlech najdete v nápovědě.
Diskuzi můžete sledovat pomocí RSS kanálu rss



 
 

Top články z OpenOffice.cz

Lukáš Faltýnek

Lukáš Faltýnek

Vystudoval informační management na Univerzitě Hradec Králové. Pracuje jako analytik/programátor. Láskou k počítačům vzplanul v roce 1986, kdy dostal svůj první počítač Atari 800 XL. S Unixem se poprvé setkal před dvanácti lety. Chvíli nato pak s Linuxem, který si pro jeho svobodu zamiloval. Je ženatý a má dvě děti. Mezi jeho koníčky patří literatura, kinematografie a cestování.


  • Distribuce: Ubuntu

| blog