Les étoiles le jour de votre naissance
Transcription
Les étoiles le jour de votre naissance
De même qu’il y a de nombreuses langues (français, arabe, russe, japonais...), il y a plusieurs types de programmation, c’est-à-dire plusieurs façons de donner des ordres à l’ordinateur. Ces modes de programmation sont appelés “paradigmes”. Il existe par exemple les paradigmes impératif, fonctionnel ou objet. Le choix du langage et du paradigme de programmation dépend de l’application, de l’algorithme, mais aussi de l’interaction du programme avec d’autres programmes et enfin du choix et de l’expertise du programmeur. L’équipe-projet PROVAL L’objectif de l’équipe-projet de recherche PROVAL est de proposer des méthodes et outils qui s’intègrent dans le cycle de développement de logiciel et qui permettent la production d’un code prouvé correct par rapport à un comportement attendu. Ce projet s’appuie sur le formalisme de la théorie des types qui donne un cadre sémantique clair pour représenter en machine les preuves et les calculs. http://proval.lri.fr/index.fr.html Humain écrit Programme Les étoiles le jour de votre naissance ! est compilé Fichier exécutable Dessin produit Contact communication : INRIA Saclay - Île-de-France Catherine Girard [email protected] Comprendre la programmation en calculant la position des étoiles et des planètes selon le jour et l'heure Comprendre la programmation en calculant la position des étoiles et des planètes selon le jour et l'heure Mieux vaut connaître l’astronomie plutôt que d’implorer les dieux pour se sortir d’un mauvais pas ; la preuve avec Tintin ! calculs trigonométriques. Il faudrait plusieurs heures de calcul pour avoir une réponse avec seulement du papier et un crayon. Heureusement, l'ordinateur est arrivé. Il est possible de lui demander de calculer la position des corps célestes à tout moment et d’obtenir une réponse (et même un dessin) en moins d'une seconde ! Mais l’ordinateur n’est pas intelligent, il faut lui expliquer ce que l’on attend de lui. On lui décrit donc dans un langage très précis ce qu'on veut qu'il exécute en écrivant un programme. C'est une suite d'ordres : par exemple, pour calculer la position de la Lune, on va calculer Depuis toujours le ciel fascine les hommes qui l’observent. Ils ont essayé de le comprendre, puis de le prévoir. Pouvoir anticiper les saisons, les phases de la lune, les marées, puis les positions des étoiles et des planètes, et donc les éclipses, a très longtemps été un défi. Petit à petit, les mathématiques ont permis de décrire les mouvements observés dans le ciel, et nous pouvons désormais savoir avec exactitude où se situent les corps célestes, aujourd’hui, dans le futur et dans le passé. Les formules employées pour décrire ces observations sont précises, mais généralement très compliquées : une longue liste d’additions, de multiplications et de le sinus d’une valeur, le multiplier par 6,28875, l’ajouter à une autre… Ce programme est très simple, mais de nombreux programmes bien plus compliqués (jeux, Internet Explorer, MSN…) sont absolument nécessaires à notre interaction avec l’ordinateur. Cette succession d’opérations est compréhensible par l’homme, mais pas directement par la machine. Le programme source doit être “compilé”. Cela signifie qu’un programme (un de plus), appelé “compilateur”, va transformer le texte du programme source en une suite d’instructions en langage machine exécutable par l’ordinateur. Le compilateur joue un rôle de traducteur entre ce qui est écrit par le programmeur et ce qui est compris par la machine. Après cela, on peut enfin exécuter le programme pour obtenir une réponse chiffrée ou un dessin.