You Can't Make Code This Insane In Rust
Cette vidéo présente les 23 gagnants du 29e concours IOCCC (International Obfuscated C Code Contest) de 2025, où des développeurs créent des programmes C volontairement obscurs, artistiques et souvent inutiles, allant d’un émulateur Game Boy en forme de console à un jeu Pong d...

SYNTHÈSE STRUCTURÉE
L’esprit du concours : l’art de l’inutile
Le présentateur ouvre en définissant l’essence de l’IOCCC : « Something I absolutely adore about software is when someone makes something that is functionally useless. […] It exists because it exists. It was made because you can. » Le concours récompense non pas l’efficacité, mais la créativité et l’obscurcissement pur. Les juges créent des catégories sur mesure pour chaque édition, ce qui explique les 23 gagnants.
Le prix IMO : un jeu mathématique obscurci
Ce programme implémente le problème 5 des Olympiades Internationales de Mathématiques 2024, un problème de grille avec une bombe par ligne et colonne. Le code définit des opérateurs personnalisés absurdes : l’opérateur « sleepyhead » (-~-), l’opérateur « fish », l’opérateur « fishing hook », l’opérateur « sword », et l’opérateur « little prince’s rose ». L’auteur précise que le code compile avec GCC 15.2.1 et Clang 20.1.8 sur ARM64 Linux, ainsi qu’avec GCC 13.3.0 sur x86-64 Linux, en utilisant des flags spécifiques. Les omissions volontaires de parenthèses et l’utilisation de types C natifs visent à réduire la mémoire pour des plateformes 8 bits contraintes.
Le meilleur émulateur imaginaire : une architecture à une seule instruction
Ce projet, baptisé « Eternal Software Initiative », vise à préserver les logiciels pendant 1000 ans. L’architecture repose sur une seule instruction, décrite comme « so minimal that someone a thousand years from now could reimplement it without any specialized knowledge of our era’s technology ». Un backend LLVM compile du C/C++ standard vers cette cible, et Linux a été porté pour fonctionner nativement. Le présentateur montre que Doom tourne sur cette architecture, bien que lentement. Le code source de l’émulateur tient en « less than a page of code », et la spécification complète « fits on a napkin ».
Le prix Retro Space : simulation d’une simulation de trou noir
Ce programme est un RPG où l’on incarne Jean-Pierre Luminet en 1978, reproduisant les étapes de la première simulation photographique d’un trou noir. Le code gère quatre formats d’entrée différents, utilise des formats d’encodage inhabituels, et intègre des cartes perforées virtuelles. L’auteur explique : « Unusual encoding formats make tracing data through a program difficult. […] Most variables have multiple uses, sometimes at different parts of iteration through a single loop. » Les cartes perforées sont dessinées à partir de chaînes intégrées dans les données d’espace blanc, rendant le code encore plus difficile à analyser.
La meilleure ligne unique : un compresseur en une ligne
Une seule ligne de C implémente un outil de compression compatible avec le format compress d’Unix. Le présentateur précise : « It outputs a compressed file in the same format as the Unix compress tool. You can actually then go and uncompress it using your regular Unix tooling. » Cependant, le format produit correspond à une version boguée de compress qui ne devrait plus être utilisée.
Le prix Constamment Constant : affichage des décimales de e
Ce programme affiche les décimales du nombre e, mais avec un comportement étrange : la sortie directe vers stdout est garbled, alors que l’utilisation de head ou cat produit un affichage correct. Le code inclut également la chaîne « IOCCC2026 » en sortie.
Le prix le Plus Résilient : un outil diff/patch auto-modifiant
Ce programme est à la fois un outil diff et patch, mais avec une mécanique auto-modifiante. Le code source se termine par un diff valide qui, appliqué, transforme le programme en un autre outil. L’auteur décrit : « Two tools are woven into one source file, connected by a self-modifying mechanism. […] A countdown variable T, initialized to C minus 41 equals 26, controls the iteration. » Après 25 itérations, le programme cesse de produire de la sortie, ayant construit un nouvel outil via le log Git.
Le prix le Plus Susceptible de Téléporter : un roguelike en forme de mascotte
Ce jeu est un roguelike simple où le joueur collecte des symboles dollar et peut téléporter, ce qui réduit son score de 3 points. Le code source est lui-même en forme de mascotte faisant un pouce levé. Le présentateur note : « When you press the teleport button, it is going to lower your score by three, because, well, there are three developers. »
Le prix Qui a Gagné : l’intro de Doctor Who en ASCII
Ce programme, en forme de cabine téléphonique, affiche la séquence d’introduction de Doctor Who de 1963 en caractères ASCII.
Le meilleur émulateur réel : un émulateur Game Boy en forme de Game Boy
Le code source est physiquement en forme de Game Boy. L’émulateur est fonctionnel et peut exécuter des ROMs, comme le montre une démonstration de calcul de Pi et un jeu réel. Le présentateur précise avec humour : « The ROMs supplied entirely legally. They were not ripped off like… Nope, nope, they didn’t come from the internet. Nope, this is a backup of their own game. Definitely. »
Le prix le Plus Apaisant : synthèse de vagues océaniques
Ce programme génère des sons de vagues océaniques en superposant des bulles sonores. L’auteur explique : « The sound of ocean waves is, at its core, the sound of countless overlapping bubbles. […] A single filter function, distinguished only by its arguments, handles everything from bubble resonance and bandpass noise shaping to stereo envelope tracking and musical dynamics. »
Le prix Ping Pong : un jeu dont l’état est le code source
Ce programme implémente Pong, mais l’état du jeu est stocké dans le code source lui-même. Pour jouer, il faut compiler et exécuter le programme à chaque frame : « running the program produced the source code to generate the next frame, formatted to display the current frame. By repeatedly compiling and running each successive frame, you can play the game. » Un script try.sh automatise ce processus. Quand le joueur perd, le programme se transforme en un autre jeu similaire au dinosaure de Chrome.
Le mot le Plus Magique : un langage basé sur « Zoltraak »
Ce programme, en forme de Fern (personnage de Frieren), implémente un langage de programmation où le seul mot-clé est « Zoltraak ». L’auteur explique : « A skilled mage only needs one magic to defeat most foes and that’s the ordinary offensive magic also known as Zoltraak. […] We have created a language that contains just Zoltraak. » Le programme lit du texte sur stdin et produit du code C sur stdout, avec une compression légère. Pour une version plus compacte, il suffit de compiler avec un compilateur C++.
CONCEPTS CLÉS
- IOCCC : International Obfuscated C Code Contest, concours annuel de code C volontairement obscur et artistique.
- Obfuscation : Technique de programmation visant à rendre le code source difficile à comprendre, souvent pour des raisons artistiques ou de défi.
- Auto-modification : Mécanisme par lequel un programme modifie son propre code source ou son exécution en cours de route.
- Émulateur imaginaire : Émulateur d’une architecture qui n’existe pas dans la réalité, créé pour le défi technique.
- Capsule logicielle : Séquence de nombres encapsulant un logiciel complet (OS, dépendances) pour une préservation à long terme.
CONCLUSION
L’IOCCC 2025 démontre que la programmation peut être un art pur, libéré de toute contrainte utilitaire. Chaque gagnant repousse les limites de ce qui est possible avec C, transformant