LaTEX, Knuth, Unicode et plus encore…

Latex est un langage à balise dont la fonction est de représenter les mathématiques sur l’ordinateur, il est utilisé dans toutes les thèses scientifiques interdisciplinaires pour formaliser les équations et autres formules.

Je me rappelle lorsque je passais mon jury de fin d’études et que je disais que je voulais prolonger mes études. Mon auditeur m’avait dit « Monsieur connaissez-vous les algorithmes de Donald Knuth ? » Je répondis « Non » et il rétorqua que j’étais d’une ignorance crasse ! C’est sûrement la meilleure chose qui me soit arrivée. Donald Knuth est probablement un des plus prestigieux des programmeurs informatiques :

Donald Knuth 1938-X

Donald Knuth

Il a écrit le fameux livre the art of computer programming :

TAOCP - The Art Of Computer Programming

Ce livre est un manuel en quatre volumes qui décrit l’algorithmique pour le code informatique. Le but de cet article n’est pas de vous détailler le livre qu’on appelle communément TAOCP et qui est d’ailleurs est un peu désuet compte tenu des cadences fréquentielles et mémorielles actuelles du hardware.

Cependant Knuth mérite d’être connu, il a créé un processeur de texte (langage à balises) TEX qui vient du grec τέχνη (tekhnê) signifiant habileté manuel car il trouvait tellement peu facile de formaliser les mathématiques sur les logiciels de traitement de texte classiques tels que word(MICROSOFT), pages(MACOS) et même libre office(OPEN SOURCE).

Inutile d’utiliser TEX, mais sachez que Leslie Lamport a adapté ce langage et a créé LATEX qui est aujourd’hui utilisé par la plupart des scientifiques qui font des mathématiques sur informatique et certains forums de maths pédagogiques. Latex demande un temps d’apprentissage similaire au HTML ce qui est assez rapide, voici l’exemple d’un code Latex :

Latex code

Et son résultat formalisé :

Latex Graphique

 

Il existe des compilateurs (un compilateur permet d’interpréter le code à n’importe quel niveau de la machine) en temps réel tels que le site overleaf.com qui sont gratuits et géniaux pour s’entraîner.

Je les ai testé et cela marche très bien et permet de gagner un temps fou à la fois en production ou bien pour apprendre le langage TEX.

Passons rapidement à Unicode,

Je vous ai déjà parlé de la table Américaine ASCII pour encoder les lettres de l’alphabet, sachez que Latex a été crée quand Unicode n’existait pas encore mais que Latex/Tex est le langage utilisé si vous voulez contribuer mathématiquement à l’encyclopédie libre Wikipédia de Jimmy Wales.

Si vous ne comprenez toujours pas que l’encodage de caractères est une clé de l’informatique bas niveau (près des impulsions électriques de la machine)…

Unicode est un standard qui a été crée pour se substituer à l’ASCII trop limité en nombre de caractères. Unicode comprend 144 697 caractères. Ces jeux de caractères ont un numéro hexadécimal comme par exemple U+2F12. Cet identifiant universel sera le même pour toutes les typographies qui comprennent le caractère. Vous pourrez trouver les tables d’Unicode sur Wikipédia qui comprennent les différents plans.

Vous voulez utiliser n’importe quel caractère ? Une intégrale quaternion ou un Katakana japonais ? Voici un petit tutoriel :

  • Rendez-vous dans la table de caractères par exemple par la commande run ou exécuter de Windows :
  • Sélectionnez la typographie Cambria Math dans le menu
  • Cliquez sur le symbole de votre choix, repérez le code 2A16 en bas,
  • Lancez Libre Office (ça ne marche pas sur mon Word… bizarre 😂? )
  • Sélectionnez la police dans Libre Office, Cambria Maths
  • Tapez 2A16 et faites la combinaison Alt + X !
  • Magique l’intégrale (4)quaternion apparaît!

Si vous aviez encore un doute quant au fait que l’informatique était une science étroitement lié aux mathématiques ainsi qu’à toutes ses branches…

Dans un autre article je m’attaquerai à l’UTF-8 qui est un dérivé du standard Unicode qui transforme à la fois les caractères ASCII et Unicode et qui s’est imposé comme une norme sur le web aujourd’hui puisque que 95 % des caractères encodés sur l’ordinateur sont encodés selon ce format.

Laisser un commentaire

Votre adresse e-mail ne sera pas publiée. Les champs obligatoires sont indiqués avec *

Ce site utilise Akismet pour réduire les indésirables. En savoir plus sur la façon dont les données de vos commentaires sont traitées.