John Backus

informaticien américain
(Redirigé depuis Speedcoding)

John Warner Backus (né à Philadelphie le – mort à Ashland (Oregon) le ) est un informaticien américain. Il est directeur de l’équipe qui pour la première fois crée un langage de programmation de haut niveau, le Fortran, et est le créateur de la forme de Backus-Naur (BNF). Il a aussi mené de nombreuses recherches sur la programmation fonctionnelle, qu'il a contribué à populariser.

John Backus
John Backus le 14 décembre 1989
Biographie
Naissance
Décès
Voir et modifier les données sur Wikidata (à 82 ans)
AshlandVoir et modifier les données sur Wikidata
Sépulture
Nom de naissance
John Warner BackusVoir et modifier les données sur Wikidata
Nationalité
Formation
The Hill School (en) (jusqu'en )
Université de Virginie (-)
Université Columbia (maîtrise (en)) (-)Voir et modifier les données sur Wikidata
Activités
Autres informations
A travaillé pour
IBM (-)
Armée de terre des États-Unis (-)Voir et modifier les données sur Wikidata
Membre de
Arme
Conflit
Distinctions
Archives conservées par
Œuvres principales

Il reçoit le prix Turing en 1977.

Il prend sa retraite en 1991 et meurt chez lui à Ashland en Oregon le [2].

Vie et carrière

modifier

Backus est né à Philadelphie, en Pennsylvanie. Il étudie à The Hill School à Pottstown en Pennsylvanie, mais n’est pas réellement un bon élève[2]. Après son entrée à l’université de Virginie pour étudier la chimie, il est recruté par l’armée américaine[2]. Ses résultats aux tests d'aptitude le dirigent vers une carrière médicale. Il étudie alors la médecine à Harverford, puis travaille à l'hôpital de Atlantic City. Là, on lui diagnostique une tumeur cérébrale, retirée par la suite avec succès. Peu après, il décide de mettre un terme à ses études médicales.

Après son arrivée à New York, il entame une formation de technicien radio. C'est en aidant son professeur à réaliser certains calculs que Backus se découvre un intérêt pour les mathématiques. En 1949, il obtient une maîtrise à l’université Columbia, puis rejoint IBM en 1950. Les trois premières années, il travaille sur le SSEC (Selective Sequence Electronic Calculator). Son premier projet majeur est d’écrire un programme chargé de calculer la trajectoire de la Lune.

En 1953, Backus découvre le IBM 701, le successeur du SSEC. Il est alors confronté au même problème qu'avec le SSEC : réaliser des calculs scientifiques qui nécessitent l'utilisation de nombres en virgule flottante, alors que le IBM 701 ne prend en charge que les entiers arithmétiques. Pour pallier le problème, Backus développe le système Speedcoding, qui permet au programme d'utiliser un système simple de nombres en virgule flottante.

Fortran

modifier

En 1953, il n'existe pas encore de vrai langage de programmation tel qu'on le conçoit au début du XXIe siècle. La plupart des programmes est écrite manuellement en langage machine ou à l'aide d'un assembleur primitif[3]. Bien sûr, il y a le système de Backus, Speedcoding[4], mais l'approche n'est pas la bonne et le résultat est très lent. L'arrivée de l'IBM 704 cette même année va changer la donne. Outre le fait qu'il est plus performant que son prédécesseur, il possède un processeur qui supporte directement les nombres en virgule flottante. Un système tel que Speedcoding devient donc inutile.

Après avoir consacré un an à décrire la syntaxe et le fonctionnement de Fortran, Backus présente le projet à ses supérieurs en novembre 1954, dans le rapport intitulé Specifications for The IBM Mathematical Formula Translating System FORTRAN[5]. Il faut ensuite plus de deux ans à l'équipe de Backus pour développer le compilateur FORTRAN[6], déployé courant avril 1957 sur tous les IBM 704.

Backus Naur Form

modifier

À la fin des années 1950, il travaille avec le comité international chargé de développer ALGOL 58 et le très influent ALGOL 60, qui devient très rapidement le standard pour la description des algorithmes par les chercheurs en informatique, statut qu'il conservera pendant longtemps.

Au moment de la mise au point d'Algol, Backus travaille sur un nouvel outil permettant d'exprimer une grammaire formelle pour un langage de programmation. Il présente son travail au comité, The syntax and semantics of the proposed international algebraic language of the Zurich ACM-GAMM conference, en . Peter Naur, autre membre du comité, s'intéresse alors au travail de Backus et y apporte quelques modifications. La BNF (pour Backus Naur Form, au lieu de Backus Normal Form) est alors utilisée pour la description de l'ALGOL 60 en 1960.

FP et FL

modifier

Plus tard, il travaille sur un langage de programmation purement fonctionnel (« function-level » : au niveau fonctionnel) connu sous le nom de FP. Backus choisit de présenter ce langage durant le discours qu’il doit prononcer lors de la remise du prix Turing.

Ce discours, « Can programming be liberated from the von Neumann style? : a functional style and its algebra of programs » (« La programmation peut-elle échapper au style de von Neumann ? Un style fonctionnel et son algèbre de programmes »), qui présente les avantages de la programmation fonctionnelle, a très largement contribué à relancer l’intérêt pour ce paradigme. Un interpréteur FP est distribué avec la version 4.2 du système d’exploitation BSD Unix mais Backus ne réussira jamais à répandre son langage.

Backus passe le reste de sa carrière à développer FL (de « Function level »), un successeur de FP.

Récompenses et honneurs

modifier

Il reçoit le prix Turing en 1977 pour « son influence et sa contribution au développement des langages de programmation de haut niveau, notamment à travers son travail sur FORTRAN, et pour la publication des procédures formelles servant à la spécification des langages de programmation »[7].

L'astéroïde (6830) Johnbackus est nommé en son honneur[8].

Références

modifier
  1. « http://www.computerhistory.org/collections/catalog/102657970 » (consulté le )
  2. a b et c (en) « John W. Backus, 82, Fortran Developer, Dies »
  3. Cf. Jérôme Feldman et Marcel Berger (dir.), Les progrès des mathématiques, Paris, éditions Belin, coll. « Pour la Science », , 167 p. (ISBN 2-902918-14-3), « Les langages de programmation », p. 102-113
  4. IBM 701 Speedcoding System, 19 juin 1953.
  5. Preliminary Report, Specifications for the IBM Mathematical FORmula TRANslating System, FORTRAN [PDF].
  6. « John Backus », sur IBM Archives (consulté le )
  7. (en) « ACM Turing Award Citation: John Backus »(Archive.orgWikiwixArchive.isGoogleQue faire ?).
  8. « Small-Body Database Lookup », sur ssd.jpl.nasa.gov (consulté le )

Articles connexes

modifier

Liens externes

modifier

Bibliographie

modifier
  • The history of FORTRAN I, II, and III par John Backus dans The first ACM SIGPLAN conference on History of programming languages, Los Angeles, CA, pages: 165 - 180, 1978, (ISSN 0362-1340).
  • Can programming be liberated from the von Neumann style?: a functional style and its algebra of programs, par John Backus dans Communications of the ACM, Volume 21, Issue 8 (), pages: 613 - 641, (ISSN 0001-0782) et aussi dans (en) ACM Turing Award lectures : the first twenty years, 1966 to 1985, New York Reading, Mass, ACM Press Addison-Wesley Pub. Co, , 483 p. (ISBN 0-201-07794-9).