Grammaires et algèbre

jeudi 15 juillet 2010
par  Alain BUSSER

Il y a

  • Les papous papas à poux papas ;
  • Les papous papas à poux pas papas ;
  • Les papous pas papas à poux papas ;
  • Les papous pas papas à poux pas papas ;
  • Les papoux papas pas à poux ;
  • Les papous pas papas pas à poux ;

et c’est tout !


Informatique

c++, Pascal, Java (langage), Python, JavaScript sont des langages de programmation, donc a fortiori, des langages ! Décrire leur grammaire comme un ensemble de règles, fait appel à leur forme de Backus-Naur.

Si chaque fois qu’on utilise un fichier texte dans un programme, on considère qu’on utilise la théorie des langages, alors elle est utile

  • Chaque fois qu’on utilise un format vectoriel, comme avec InkScape (format svg) ou Asymptote (format postscript) ;
  • Chaque fois qu’on utilise un fichier xml, par exemple avec CaRMetal, Enigma ou GeoGebra...
  • Chaque fois qu’on navigue sur Internet (langages html, css et php),
  • Chaque fois qu’on lit ses mails (un mail est un fichier texte),
  • Chaque fois qu’on cherche un fichier, que ce soit avec un moteur de recherche (ce qu’on tape dedans est du texte !) ou sur l’ordinateur (le "finder" des Mac est dérivé d’un logiciel UNIX dont la version libre, grep, gère les RegExp) ;
  • Bien entendu, les logiciels éditeurs de texte manipulent des chaînes de caractère ; parmi ceux-ci, le logiciel cat (Unix) [1] a ceci de particulier que son nom même vient de l’opération de concaténation. Un programme est un fichier texte, donc en dernier ressort, programmer c’est manipuler des chaînes de caractères. Dans ce cas, la concaténation consiste à mettre l’une après l’autre deux instructions destinées à être exécutées en séquence, et elle est donc fondamentale en algorithmique. Lorsque un programme est en quelque sorte compilé et exécuté en même temps, le logiciel qui réalise ce prodige s’appelle un interpréteur, ce qui n’est pas un hasard...
  • Démarrer un programme ou naviguer dans le disque dur, ou gérer les "favoris" sont également des opérations sur les chaînes de caractère : Le lanceur ("Démarrer" sous Windows) est un fichier texte, les raccourcis et favoris sont des chaînes de caractère, et l’explorateur de fichier gère les chemins de ces fichiers, qui sont des chaînes de caractère (lisibles dans le rectangle en haut de la fenêtre).
  • Même démarrer l’ordinateur est souvent l’interprétation d’une chaîne de caractères (par exemple /boot/grub/menu.lst)...

[1un des rares logiciels dont le nom peut être stocké dans de l’ADN, sous la forme Cytosine-Adénosine-Thymine !


Commentaires