Hello world !

C’est le premier texte que j’ai réussi à afficher à l’aide d’un programme écrit en C sur mon vieil IBM PC au début des années 80, mon premier fichier exécutable sous DOS 3.1 avec un ordinateur doté d’une gigantesque mémoire de 640 Ko, et de deux magnifiques lecteurs de disquettes (vous savez, les grandes et souples). J’avais à l’époque ce que l’on considère encore aujourd’hui comme la bible de ce langage, le Kerninghan & Ritchie !

PhotoCe n’était pas mes premiers essais de programmation[1] puisque j’avais gouté quelques années auparavant au Basic sur un Pet 80. D’ailleurs pour la petite anecdote, un camarade de classe, dont le père[2] avait fondée une SSII, m’avait enseigné ce langage muni d’un simple cahier sur lequel j’écrivais les programmes résultants des exercices qu’il me demandait de résoudre. Jusqu’au jour il m’a demandé de réfléchir à l’algorithme minimum pour programmer la stratégie d’un jeu d’échec. Ce problème m’a coûté de longues heures de reflexion jusqu’à ce qu’il me donne enfin la solution : Mon roi est-t-il en échec ? Si oui, tenter d’annuler cet échec, sinon, tenter de mettre le roi adverse en échec et mat., c’est tout ! Une simple phrase m’a permis de comprendre que parfois une simple (petite) idée peut générer un (très) gros programme.

Pour en revenir au C, je suis rapidement passé à l’écriture d’un outil de trace qui me permettait d’enregistrer un certain nombre d’informations sur le déroulement d’une routine ou d’un programme avec entre autre la surveillance de la pile qu’il fallait éviter de saturer, des tableaux pour lesquels les sorties d’indices étaient fréquentes ou encore de l’état des pointeurs. Ces fameux pointeurs qui m’ont régulièrement donné du fil à retordre.

PS: J’ai encore au boulot mon exemplaire du K & R et il faudra que je scanne la couverture pour illustrer ce billet.

Notes

[1] Et encore, je ne parle pas de mes somptueux programmes sur ma vieille hp33e !

[2] Pour la petite histoire, il était à l’époque un spécialiste de ce que l’on appelle la logique floue.

Ajouter un commentaire

Les commentaires peuvent être formatés en utilisant la syntaxe Markdown Extra.

Ajouter un rétrolien

URL de rétrolien : https://open-time.net/trackback/2868

Haut de page