Algol 60

11/ 01/ 1960 | ALGOL 60

ΣΑΝ ΣΗΜΕΡΑ 11 Ιανουαρίου 1960, ξεκινά η ανάπτυξη μίας από τις πρώτες ανώτερες γλώσσες προγραμματισμού, της ALGOL 60 (ALGOrythmic Language). Έχει προηγηθεί η ALGOL 58, η πρώτη της οικογένειας ALGOL, η οποία θα συμπληρωθεί το 1968, με μία ακόμη έκδοση, την ALGOL 68. Από την ALGOL 60 πηγάζουν νεότερες γλώσσες που χρησιμοποιούνται σήμερα ευρύτατα, όπως η C και η Pascal.

H οικογένεια γλωσσών ALGOL είναι αποτέλεσμα συνεργασίας Αμερικανών και Ευρωπαίων επιστημόνων και ειδικότερα της αμερικάνικης ACM (Association for Computing Machinery) και της γερμανικής GAMM (German Association for Applied Mathematics & Mechanics) από τα μέσα της δεκαετίας του ’50. Στην πρώτη συνάντησή τους στη Ζυρίχη ορίστηκαν τρεις διαφορετικοί τρόποι σύνταξης: μια σύνταξη αναφοράς (reference syntax), μια σύνταξη δημοσίευσης (publication syntax) και μια σύνταξη υλοποίησης (implementation syntax).

Ο Έντσγκερ Ντάικστρα, ιδιαίτερα γνωστός για τα αποφθέγματά του στο χώρο της πληροφορικής, υπήρξε ο επιστήμονας που ολοκλήρωσε την πρώτη υλοποίηση της ALGOL 60 στην Ολλανδία, το καλοκαίρι του 1960.

Ειδικότερα, η ανάπτυξη της ALGOL 60 ξεκίνησε με την πρώτη συνάντηση 13 επιστημόνων (επτά από Ευρώπη και έξι από ΗΠΑ) το Γενάρη του 1960 στο Παρίσι. Μεταξύ αυτών ο Τζον Μπάκους, που έχει αναπτύξει ήδη την ALGOL 58 και ο Τζον ΜακΚάρθι, δημιουργός της LISP (επίσης το 1958). Η πρώτη υλοποίηση της ALGOL 60 θα γίνει το καλοκαίρι εκείνης της χρονιάς, από τον Έντσκερ Ντάικστρα στην Ολλανδία και συγκεκριμένα σε έναν υπολογιστή Electrologica X1 (ολλανδικής κατασκευής). Βρισκόμαστε ακόμη σε μία εποχή που οι compilers των γλωσσών αναπτύσσονται ξεχωριστά στους υπολογιστές όπου πρόκειται να χρησιμοποιηθούν. Αξίζει να σημειωθεί μάλιστα ότι η ALGOL 60 δεν παρείχε δυνατότητες εισόδου/εξόδου, με αποτέλεσμα να παρατηρούνται πολύ μεγάλες διαφορές από υλοποίηση σε υλοποίηση, ανάλογα με τον υπολογιστή. Κάτι που επιλύθηκε με την έκδοση ALGOL 68, η οποία διέθετε εκτενείς βιβλιοθήκες γι’ αυτό το σκοπό. Έκτοτε αναπτύχθηκαν πάνω από 70 εκδοχές και υπογλώσσες της ALGOL 60 σε διάφορους υπολογιστές. Ανάμεσά τους, η Case ALGOL του 1961, στον UNIVAC 1107, από την οποία προέκυψε η Simula που αποτελεί υπερσύνολο της ALGOL 60. Επίσης, με την έκδοση Whetstone, από τον compiler της ALGOL 60 σχεδιασμένο για τον υπολογιστή KDF9, κατασκευάστηκε και το πρώτο μετροπρόγραμμα (benchmark) το 1972. Στις παραπάνω, δεν προσμετράμε τις γλώσσες οι οποίες βασίστηκαν έμμεσα ή άμεσα στην ALGOL 60.