ALGOL
γλώσσα προγραμματισμού / From Wikipedia, the free encyclopedia
Η ALGOL (συντομογραφία των αγγλικών λέξεων ALGOrithmic Language)[1] είναι μια οικογένεια προστακτικών γλωσσών προγραμματισμού που αναπτύχθηκε στα μέσα της δεκαετίας του 1950 και άσκησε σημαντική επιρροή σε πολλές άλλες γλώσσες, ενώ έγινε ο ντε φάκτο τρόπος που περιγράφονταν οι αλγόριθμοι σε βιβλία και ακαδημαϊκά έργα για τα επόμενα 30 χρόνια.[2] Σχεδιάστηκε ώστε να διορθωθούν κάποια από τα προβλήματα της FORTRAN και οδήγησε σε πολλές γλώσσες, μεταξύ αυτών στη BCPL, τη B, την Pascal, τη Simula και τη C. Η ALGOL εισήγαγε τις ενότητες κώδικα (code blocks) και τα ζεύγη begin
και end
για την οριοθέτησή τους, ενώ ήταν η πρώτη γλώσσα που υλοποίησε εμφωλευμένους ορισμούς συναρτήσεων (nested function definitions) με λεκτική εμβέλεια. Συχνά χρησιμοποιούνται τμήματα σύνταξης που μοιάζουν με ALGOL σαν ψευδοκώδικας (περιγραφή αλγορίθμων που απευθύνεται σε αναγνώστες).
Υπήρξαν τρεις σημαντικοί ορισμοί:
- ALGOL 58 - αρχικά προτάθηκε η ονομασία IAL (International Algorithmic Language).
- ALGOL 60 - αρχικά υλοποιήθηκε σαν X1 ALGOL 60 στα μέσα της δεκαετίας του 1960 - με αναθεώρηση το 1963[3][4]
- ALGOL 68 - αναθεωρήθηκε το 1973[5] - εισήγαγε νέα στοιχεία όπως οι ευέλικτοι πίνακες (flexible arrays), τα slices, ο παραλληλισμός, η ταυτοποίηση τελεστών (operator identification) και διάφορες άλλες επεκτάσεις.
Ο Niklaus Wirth βάσισε τη δική του ALGOL W στην ALGOL 60 πριν αναπτύξει την Pascal. Η Algol-W επρόκειτο να ήταν η επόμενη γενιά της ALGOL αλλά η επιτροπή της ALGOL 68 αποφάσισε μια σχεδίαση που ήταν πολυπλοκότερη και πιο προχωρημένη από μια καθαρότερη και απλοποιημένη ALGOL 60. Οι επίσημες εκδόσεις της ALGOL ονομάζονται σύμφωνα με το χρόνο που δημοσιεύτηκαν αρχικά.
Η Algol 68 ήταν αρκετά διαφορετική από την Algol 60 αλλά δεν έτυχε καλής υποδοχής, με αποτέλεσμα ο όρος "Algol" γενικά να σημαίνει την Algol 60 και της διαλέκτους της.