#ΜαθηΜαγικοΗμερολογιο Η Frances Elizabeth Allen δεν ήταν απλώς μια σπουδαία επιστήμονας της πληροφορικής. Ήταν η γυναίκα που έθεσε τα θεμέλια για το πώς οι σύγχρονοι υπολογιστές εκτελούν προγράμματα γρήγορα και αποδοτικά.
Γεννήθηκε στις 4 Αυγούστου 1932 στο μικρό αγροτικό χωριό Περου της πολιτείας της Νέας Υόρκης. Μεγάλωσε σε μια γαλακτοκομική φάρμα, σε μια οικογένεια με περιορισμένα οικονομικά μέσα αλλά μεγάλη πίστη στην αξία της εκπαίδευσης. Το 1954 πήρε πτυχίο Μαθηματικών από το Albany State Teachers College.
Έγινε καθηγήτρια μαθηματικών σε ένα μικρό αγροτικό λύκειο της περιοχής της. Αγαπούσε τη διδασκαλία και πίστευε ότι θα την ακολουθούσε σε όλη της τη ζωή.
Όμως χρειαζόταν να αποπληρώσει τα φοιτητικά της δάνεια. Γι’ αυτό συνέχισε τις σπουδές της στο Πανεπιστήμιο του Μίσιγκαν, όπου έκανε μεταπτυχιακό στα Μαθηματικά. Εκεί παρακολούθησε μερικά από τα πρώτα μαθήματα υπολογιστών που είχαν ποτέ προσφερθεί στο πανεπιστήμιο και έμαθε προγραμματισμό στον IBM 650 από τον Bernard Galler, έναν από τους πρωτοπόρους της επιστήμης των υπολογιστών.
Στις 15 Ιουλίου 1957 προσλήφθηκε στο ερευνητικό κέντρο Thomas J. Watson της IBM. Η πρώτη της δουλειά ήταν να διδάσκει στους νέους επιστήμονες τη γλώσσα προγραμματισμού FORTRAN. Σκόπευε να μείνει μόνο δύο χρόνια, να ξεχρεώσει τα δάνειά της και να επιστρέψει στη διδασκαλία.
Δεν έφυγε ποτέ.
Η πρώτη μεγάλη της αποστολή ήταν η ανάπτυξη μεταγλωττιστή (compiler) για τους υπερυπολογιστές Stretch και Harvest. Ο Stretch ήταν ένας από τους πρώτους υπερυπολογιστές στον κόσμο, ενώ ο Harvest είχε σχεδιαστεί για την Υπηρεσία Εθνικής Ασφάλειας των ΗΠΑ (NSA) με σκοπό την αποκρυπτογράφηση επικοινωνιών κατά τον Ψυχρό Πόλεμο.
Η Allen και η ομάδα της δημιούργησαν ένα ενιαίο πλαίσιο μεταγλώττισης που υποστήριζε τρεις διαφορετικές γλώσσες προγραμματισμού: FORTRAN, Autocoder και Alpha, μια ειδική γλώσσα που είχε σχεδιαστεί για την ανίχνευση μοτίβων σε κείμενα οποιουδήποτε αλφαβήτου. Και οι τρεις μοιράζονταν έναν κοινό μηχανισμό βελτιστοποίησης.
Στη συνέχεια αφιερώθηκε στο ερώτημα που θα καθόριζε ολόκληρη την καριέρα της:
Πώς μπορεί ένας μεταγλωττιστής να κάνει ένα πρόγραμμα να τρέχει ταχύτερα;
Μόνη της αλλά και σε συνεργασία με τον John Cocke, δημοσίευσε μια σειρά από εργασίες που εισήγαγαν τις βασικές έννοιες πάνω στις οποίες στηρίζονται όλοι οι σύγχρονοι βελτιστοποιητικοί μεταγλωττιστές.
Στην εργασία της «Program Optimization» (1966) έθεσε τα θεωρητικά θεμέλια για τη συστηματική ανάλυση και μετασχηματισμό προγραμμάτων χωρίς να αλλάζει η λειτουργία τους. Εισήγαγε:
την ανάλυση ροής ελέγχου (control flow analysis),
την ανάλυση ροής δεδομένων (data flow analysis),
τη διαδιαδικαστική βελτιστοποίηση (interprocedural optimization).
Με απλά λόγια, δημιούργησε το μαθηματικό πλαίσιο που επιτρέπει σε έναν compiler να «καταλαβαίνει» τη δομή του κώδικα και να τον ξαναγράφει με πιο αποδοτικό τρόπο.
Κάθε φορά που μεταγλωττίζεται ένα πρόγραμμα σε C, C++, Rust, Go, Swift ή Java και ο compiler παράγει κώδικα ταχύτερο από αυτόν που έγραψε ο προγραμματιστής, η κληρονομιά της Frances Allen βρίσκεται από πίσω.
Από το 1980 έως το 1995 ηγήθηκε της ομάδας PTRAN της IBM, η οποία ασχολήθηκε με ένα ακόμη δυσκολότερο πρόβλημα:
Πώς μπορεί ένας υπολογιστής να μετατρέψει αυτόματα ένα πρόγραμμα που γράφτηκε για έναν επεξεργαστή ώστε να εκτελείται παράλληλα σε πολλούς;
Η ομάδα της ανέπτυξε το Program Dependence Graph, μια θεμελιώδη τεχνική που χρησιμοποιείται μέχρι σήμερα στους μεταγλωττιστές για παράλληλη εκτέλεση.
Το 1989 έγινε η πρώτη γυναίκα που ανακηρύχθηκε IBM Fellow, η υψηλότερη τεχνική διάκριση της εταιρείας.
Το 2006 έγινε η πρώτη γυναίκα που κέρδισε το ACM A.M. Turing Award, το σημαντικότερο βραβείο της πληροφορικής. Η βράβευση ανέφερε:
«Για τις πρωτοποριακές συνεισφορές της στη θεωρία και την πρακτική των τεχνικών βελτιστοποίησης μεταγλωττιστών, που έθεσαν τα θεμέλια των σύγχρονων μεταγλωττιστών και της αυτόματης παράλληλης εκτέλεσης.»
Αποχώρησε από την IBM το 2002, έπειτα από 45 χρόνια υπηρεσίας. Τα επόμενα χρόνια τα αφιέρωσε στην προώθηση των γυναικών στην πληροφορική. Αργότερα, το IEEE δημιούργησε μετάλλιο που φέρει το όνομά της.
Στις 4 Αυγούστου 2020, ανήμερα των 88ων γενεθλίων της, η Frances Allen έφυγε από τη ζωή.
Μια καθηγήτρια μαθηματικών από μια γαλακτοκομική φάρμα πήρε μια δουλειά για να ξεχρεώσει τα φοιτητικά της δάνεια.
Έμεινε 45 χρόνια.
Και στο διάστημα αυτό δίδαξε σε όλους τους υπολογιστές του κόσμου πώς να σκέφτονται πιο γρήγορα.
Δεν υπάρχουν σχόλια:
Δημοσίευση σχολίου