Algol (język programowania)
Z Wikipedii
Algol – Algorithmic Language, język programowania, który odegrał ważną rolę w historii informatyki. Od momentu powstania przez około 20 lat język ten (lub jego dialekty) był standardem opisu algorytmów w publikacjach naukowych.
Prace nad Algolem rozpoczęto w drugiej połowie lat 50., formalną specyfikację języka opublikowano w raporcie Algol 58, następnie język rozwinięto w raportach Algol 60 i Algol 68. Te właśnie wersje zdobyły uznanie informatyków. O ile Algol 58 oparty był na Fortranie i brakowało w nim wielu niezbędnych dla programisty konstrukcji, Algol 60 stanowił przełom w dziedzinie języków programowania.
Algol 60 był pierwszym językiem zaprojektowanym we współpracy międzynarodowej – w pracach nad nim uczestniczyli między innymi Peter Naur i John Backus. Do opisu języka wykorzystano stworzoną przez Backusa podczas projektowania Fortranu notację BNF, zmodyfikowaną przez Naura. Raport o Algolu 60 opublikowano w maju 1960, poprawiono go w 1962. Na podstawie języka Algol 60 Niklaus Wirth stworzył Algol W, który posłużył mu następnie do zdefiniowania Pascala.
W Algolu 60 wprowadzono:
- instrukcje blokowe, pozwalające na grupowanie instrukcji w bloki
- przekazywanie parametrów do procedur przez wartość i przez nazwę
- rekurencję – wywoływanie procedur przez siebie
- tablice dynamiczne – ich rozmiar mógł być ustalany w trakcie działania programu.
- słowa kluczowe – symbole użyte jako słowa kluczowe nie mogą być użyte jako identyfikatory w programie
- typy danych definiowane przez użytkownika – użytkownik mógł zdefiniować abstrakcyjne typy danych najlepiej pasujące do konkretnego problemu
Algol 60 miał również wady, które zdecydowały o tym, że nie odniósł sukcesu przemysłowego. Nie określono w nim żadnych instrukcji wejścia/wyjścia, pozostawiając je konkretnym implementacjom, które na dodatek były utrudnione przez jego elastyczność i niezależność od sprzętu. Brak było przekazywania parametrów przez zmienną (lub referencję). Nie uzyskał też wsparcia firm komputerowych (głównie ze strony dominującego na rynku w latach 60. IBM, który zainteresowany był rozwojem Cobola i PL/I).
Algol 68 był rozwinięciem idei Algolu 60, wprowadzono w nim wreszcie operacje wejścia/wyjścia. Ścisłe określenie języka posunięto jednak do granic: opublikowany w styczniu 1969 roku raport języka był tak formalny, że wielu informatyków uznało go za całkowicie nieczytelny. Mimo to Algol 68 był pierwszym z niewielu języków zdefiniowanych w sposób formalny przed implementacją, które odniosły pewien sukces przemysłowy.
[edytuj] Polskie kompilatory ALGOL 60
- dla ZAM-41 - kod wynikowy częściowo interpretowany, znacznie wolniejszy od kodu wynikowego SAKO i mniej wygodny. Wśród użytkowników zdecydowanie mniej popularny od SAKO.
- dla Odra 1204 - opracowany przez zespół prof. Stefana Paszkowskiego z Uniwersytetu Wrocławskiego. Doskonały, wzorowany na języku Gier Algol.
W Polsce została ustanowiona 23 grudnia 1975 r. przez Polski Komitet Normalizacji i Miar norma PN-75/T-42110 Język Programowania ALGOL 60. Norma była przeznaczona do stosowania przy określaniu konkretnych reprezentacji i wersji realizacyjnych (implementacji) języka dla konkretnych maszyn cyfrowych, dopuszczając pewne niewielkie odstępstwa realizacyjne. Zalecenia normy wzorowane były ISO R 1538 Programing Language ALGOL.
[edytuj] Linki zewnętrzne
ABAP • Ada • AWK • Asembler • C • C++ • C# • COBOL • D • Forth • Fortran • Icon • Java • JavaScript • Lisp • Modula 2 • Oberon • Object Pascal • Objective-C • Pascal • Perl • PHP • PL/SQL • Python • REXX • Ruby • sh • Smalltalk • Snobol • SQL • Visual Basic • VB.NET
Akademickie
Comal • Eiffel • Haskell • Logo • MCPL • ML • Nemerle • Prolog • Scheme
Historyczne
ALGOL • APL • BASIC • Clipper • MUMPS • PLAN • PL/I • PL/M • SAS • Simula