01 Qu’est-ce que le langage de programmation ésotérique Malbolge ?

Malbolge – Wikipédia

Malbolge est un langage de programmation ésotérique développé par Ben Olmstead en 1998. Il a été nommé d’après le huitième cercle de l’enfer de la Divina Commedia de Dante.

La particularité du Malbolge est qu’il a été développé comme le pire langage de programmation possible, le plus difficile à maîtriser. Le premier programme Malbolge a été créé deux ans après la création du langage de programmation. Cependant, ce programme n’a pas été programmé par un humain, mais a été calculé par un programme utilisant un algorithme de recherche.

Les raisons de cette difficulté sont :

  • Les commandes sont remplacées par d’autres commandes après leur exécution. Cela rend très difficile la conversion des boucles en Malbolge.
  • la manipulation des mots de données n’est possible dans le système numérique ternaire qu’au moyen du décalage à droite et d’un autre opérateur très inhabituel – la fonction folle.
  • l’encodage d’une commande par un caractère ASCII dépend de la position de la commande modulo 94.
  • Les cellules de mémoire ne peuvent être initialisées qu’avec l’une des huit valeurs ASCII possibles.

Un programme Malbolge est composé des caractères ASCII +b(29e*j1VMEKLyC})8&m#~W>qxdRp0wkrUo[D7,XTcA\"lI.v%{gJh4G-=O@5`_3i<?Z';FNQuY]szf$!BS/|t:Pn6^Ha

ou sous une forme normalisée à partir des caractères ijopv*/<

Références

Spécificité de Malbolge (lscheffer.com)

Interprétation du Malbolge de référence (lscheffer.com)