Archive Liste Typographie
Message : Re: [HS Fortran 2] Pan sur le bec !

(Michel Houdé) - Jeudi 29 Novembre 2001
Navigation par date [ Précédent    Index    Suivant ]
Navigation par sujet [ Précédent    Index    Suivant ]

Subject:    Re: [HS Fortran 2] Pan sur le bec !
Date:    Thu, 29 Nov 2001 16:11:19 +0100
From:    Michel Houdé <michel.houde@xxxxxx>

[Philippe Deschamp]
> >la tradition parvenue à moi dit qu'au lieu de
> >    DO 123 I = 1, 10
> >qui est un début de boucle se terminant à l'étiquette 123 et devant
> >être exécutée 10 fois de suite, quelqu'un à la NASA écrivit
> >    DO 123 I = 1. 10
> >qui est strictement la même chose que
> >    DO123I = 1.10
> >
> >(affectation de la valeur flottante 1.10 à la variable DO123I,
> >déclarée par défaut), ce qui a pour résultat que le corps de la
> >« boucle » n'est exécuté qu'une fois. Si I ne servait à rien d'autre
> >qu'à « compter les tours », ça peut ne pas se remarquer.

[Joël BERTRAND]
>     Vive le format fixe du Fortran ! Cependant, par défaut, une telle
> variable est déclarée à la volée en « integer », et le code contient
une
> ligne
> 123   CONTINUE
> jamais appelée. Deux raisons pour que le compilateur insulte l'être
> humain ;-)

[Michel Houdé]
Sûrement pas ! Moi, quand j'ai appris le FORTRAN en 1969, ce qui semble
correspondre à l'époque évoquée, les variables commençant par
I,J,K,L,M,N étaient, par défaut, considérées comme entières (INTEGER).
Toutes les autres, était, toujours par défaut, réelles (REAL).

Quant au compilateur, sont rôle se bornait à convertir le code source en
code objet. Les notions d'optimisation, de réarrangement, n'existaient
pas.
Une instruction CONTINUE, parfaitement valide, n'avait aucune raison
d'attirer l'attention d'un compilateur, d'autant qu'elle ne faisait
rien, en fait, et ne servait que de support d'étiquette.
D'ailleurs, vu les capacités des machines de l'époque, fallait pas lui
en demander plus, au compilateur.
L'anecdote citée par Philippe est donc tout à fait plausible.

Il est toujours difficile d'examiner le passé avec des lunettes
d'aujourd'hui. 8:)

Michel Houdé
Compiègne

PS: le plus dur, c'était de perforer les cartes.