John Backus

Un article de Wikipédia, l'encyclopédie libre.
Aller à : navigation, rechercher

Quasi-homonymie : Ne pas confondre avec John Bacus, product manager du logiciel Sketchup[1]

Page d'aide sur l'homonymie Pour les articles homonymes, voir Backus.

John Warner Backus (né à Philadelphie le 3 décembre 1924 – mort à Ashland (Oregon) le 17 mars 2007) est un informaticien américain. Il est directeur de l’équipe qui pour la première fois utilise un langage de programmation de haut niveau, 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.

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 »[2].

Il prend sa retraite en 1991 et meurt chez lui à Ashland en Oregon le 17 mars 2007[3].

Vie et carrière[modifier | modifier le code]

Backus est né à Philadelphie, en Pennsylvanie. Il étudie à The Hill School à Pottstown (en) en Pennsylvanie, mais n’est pas réellement un bon élève[3]. Après son entrée à l’université de Virginie pour étudier la chimie, il est recruté par l’armée américaine[3]. 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 | modifier le code]

En 1953, il n'existe pas encore de vrai langage de programmation tel que nous le concevons aujourd'hui. La plupart des programmes est écrite manuellement en langage machine ou à l'aide d'un assembleur primitif[4]. Bien sûr, il y a le système de Backus, Speedcoding, mais l'approche n'est pas la bonne et le résultat est très lent. L'arrivée du IBM 704 cette même année va changer la donne. Outre 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, avec le rapport intitulé Specifications for The IBM Mathematical Formula Translating System FORTRAN. Il aura fallu plus de deux ans à l'équipe de Backus pour développer le compilateur FORTRAN[5], opérationnel début 1957.

Backus Naur Form[modifier | modifier le code]

À 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 juin 1959. 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 | modifier le code]

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éférences[modifier | modifier le code]

  1. http://www.arch-image.com/wordpress/2012/04/26/sketchup-quitte-le-giron-de-google-pour-trimble/
  2. (en) « ACM Turing Award Citation: John Backus » (ArchiveWikiwixArchive.isGoogleQue faire ?)
  3. a, b et c (en) « John W. Backus, 82, Fortran Developer, Dies »
  4. Cf. Jérôme Feldman et Marcel Berger (dir.), Les progrès des mathématiques, éditions Belin, coll. « Pour la Science »,‎ 1981 (ISBN 2-902918-14-3), « Les langages de programmation », p. 102-113
  5. « John Backus », sur IBM Archives (consulté le 10 novembre 2014)

Articles connexes[modifier | modifier le code]

Liens externes[modifier | modifier le code]

Bibliographie[modifier | modifier le code]

  • 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 (août 1978), 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,‎ 1987 (ISBN 0201077949).