C’est un chercheur en informatique qui vient de recevoir la médaille
d’or du CNRS, la plus haute distinction scientifique française toutes
disciplines confondues. Les informaticiens sont rares à avoir été ainsi
honorés : ce n’est que la seconde fois, après Jacques Stern en 2006.
Gérard Berry
est un pionnier dans un nombre considérable de domaines informatiques :
le lambda-calcul, la programmation temps réel, la conception de
circuits intégrés synchrones, la vérification de programmes et circuits,
l’orchestration de services Web. Il a été l’un des premiers
informaticiens académiciens des sciences, le premier professeur
d’informatique au Collège de France.
Parmi ses grandes inventions, essayons d’en expliquer une, le langage Esterel.
Ecran indiquant un code erreur sur
les premières versions de Macintosh. @Wikipédia
Nous sommes entourés de systèmes d’une incroyable complexité :
téléphones, moteurs de recherche, avions, centrales nucléaires. Ils
fonctionnent tous avec du matériel informatique (des circuits) et du
logiciel informatique (des programmes). Mais alors que le plantage d’un
téléphone ou même d’un moteur de recherche est anodin, il en est tout
différemment des avions, des centrales nucléaires ou encore des
pacemakers. Pour ces derniers, le bug peut provoquer un désastre. Pour
ne donner qu’un exemple, c’est un bug qui est à l’origine de la
destruction d’Ariane 5, de l'Agence spatiale européenne,
quarante secondes seulement après son décollage, le 4 juin 1996. Or un
bug, c’est souvent une seule ligne de code erronée sur des millions qui
composent un programme. Ça vient vite ! Et ça peut faire mal.
Comment éviter les bugs ? On peut bien sûr tester davantage les
programmes. Cela permet de trouver beaucoup d’erreurs, mais combien
d’autres passeront à travers les mailles du filet ? Une autre solution,
c’est d’intervenir en amont dans le processus de création de programme,
par exemple en fournissant aux informaticiens de meilleurs outils de
conception, de meilleurs langages de programmation. C’est l’approche que
prône Gérard Berry.
Les langages de programmation standards sont mal adaptés aux
situations rencontrées dans des systèmes aussi complexes que des avions.
Il faut tenir compte à la fois du matériel et du logiciel, du fait que
nombreuses tâches s’exécutent en parallèle, que parfois la même tâche
est exécutée plusieurs fois pour se protéger d'une panne d’un composant.
Surtout, il faut utiliser des modèles qui tiennent compte du temps, des
délais de réponse, des mécanismes de synchronisation. Le nouveau
concept de langage synchrone a permis de répondre à cette situation. Ce
concept a été découvert et promu par Gérard Berry et ses collègues au
travers notamment du langage Esterel. Ce langage ainsi que d’autres
langages synchrones développés en France, comme Lustre et Signal, ont eu
un impact majeur dans le monde entier.
Mais comment un langage peut-il aider à résoudre des problèmes aussi
complexes ? D’abord, parce qu’il permet de décrire les algorithmes que
l’on veut implémenter sous une forme compacte et proche de l’intention
du programmeur. Ensuite, parce que ce langage est accompagné de toute
une chaîne d’outils de compilation et de vérification automatique, qui
garantit que le produit final est correct.
Les langages synchrones ont constitué une avancée scientifique
majeure. Gérard Berry est allé plus loin encore, et les a emmenés dans
l’aventure industrielle en cofondant la société Esterel Technologies. Ces langages sont aujourd’hui incontournables dans des domaines comme l’aérospatial ou l’énergie.
Sa notoriété, Gérard l’a aussi mise au service du partage de la
culture scientifique pour permettre à chacune et chacun de comprendre «
pourquoi et comment le monde devient numérique ». Il passe un temps
considérable, souvent avec des jeunes, à expliquer les fondements et les
principes de la science informatique. Un défi !
L’enseignement de l’informatique est l’un de ses grands combats. Il a dirigé avec Gilles Dowek l’écriture d’un rapport important sur la question.
Un autre défi ! Alors qu’il s’agit d’éducation, de science et de
technique, l’Etat se focalise souvent sur le haut débit et l’achat de
matériel. Un pas en avant et au moins un en arrière. Mais il en faut
bien plus pour entamer l’enthousiasme de Gérard Berry.
Gérard Berry est un inventeur. Au-delà d'Esterel, c’est un découvreur
des modèles stables du lambda-calcul, un inventeur de machine abstraite
chimique, un concepteur de langages d’orchestration d’objets
communicants, comme HipHop. Gérard Berry s’investit avec enthousiasme
dans ses nombreuses fonctions des plus académiques, comme professeur au
Collège de France, aux plus mystérieuses, comme régent de déformatique
du Collège de Pataphysique.
Les Mardis de la science
Et quand vous passerez devant une centrale nucléaire, admirez le fait
que même s’il utilise des logiciels et matériels bien plus compliqués
que votre téléphone, son système informatique ne « plante » pas,
contrairement à celui de votre téléphone. Quand vous volerez, peut-être
au-dessus de l’Atlantique, réjouissez-vous que le fonctionnement de
votre avion soit plus fiable que celui de votre tablette.
Et puis, de
loin en loin, pensez que tout cela est possible parce que des chercheurs
en informatique comme Gérard Berry ont mis toute leur créativité, toute
leur intelligence pour développer cette science et cette technique qui
garantissent la fiabilité des systèmes informatiques.