После четырёхлетнего перерыва состоялся Международный конкурс обфускации кода на языке C (International Obfuscated C Code Contest, IOCCC, для экспертов и разработчиков Obscure/Obfuscated C program). Организаторы объявили победителей-разработчиков. Это мероприятие проводится с 1984 года (и отчасти вдохновлено ошибкой в ​​классическом Bourne shell). Считается, что это «старейший конкурс в Интернете» для разработчиков с девизом, что программисты должны получать удовольствие от C. Цель конкурса — «показать важность стиля программирования ироничным образом» и «нагрузить компиляторы C необычным кодом».

Выдержки из официальных правил и требований конкурса:

  • правило 0, точно так же, как C начинается с 0, так и IOCCC начинается с правила 0. :-)

  • правило 1, ваша заявка должна быть полной программой....

  • правило 5, Ваша заявка НЕ ​​ДОЛЖНА изменять содержимое или имя файла любой части вашей исходной заявки, включая, помимо прочего, prog.c, Makefile (который мы создаем на основе ваших инструкций по сборке), а также любые файлы данных, которые вы отправляете....

  • правило 6, I am not a rule, I am a free(void *human);
    while (!(ioccc(rule(you(are(number(6)))))) {
    ha_ha_ha();
    }

Правило 6 явно отсылает к The Prisoner (некоторые другие правила еще глупее). И в правилах есть свои шутки типа «вы находитесь в лабиринте извилистых правил, все разные», есть по крайней мере ноль судей, которые считают, что Fideism имеет мало или вообще ничего общего с процессом судейства IOCCC, мы предлагаем вам не пытаться получить «самый маленький самовоспроизводящийся» источник (самый маленький, запись с нулевым байтом, победил в 1994 году).

В рамках IOCCC 2025 разрешалось использовать кодировку UTF-8 в коде. Код каждого участника должен быть интересен и чем-то примечателен. Работы могли быть необычно оформлены или выделять неожиданные стороны языка C. Размер исходного кода программы не должен превышать 4096 байт, а программа должна собираться и выполнять осмысленное действие.

По информации OpenNET, список победителей IOCCC 2025:

  • помощник в решении головоломки Wordle, в которой нужно угадать пятибуквенное слово за шесть попыток (код);

  • чат-бот, использующий модель llama2-7b-chat и OpenMP. Проект отмечен как самый компактный движок для выполнения больших языковых моделей (код — всего 1800 байт);

  • на первый взгляд, программа возводит в квадрат числа от 1 до 10, но на деле показывается рецепт приготовления жареного лосося. Код — 15 строк и содержит манипуляции с незаметными символами Unicode;

  • эмулятор CPU Intel 4004. Код — 14 строк;

  • генератор изображений деревьев в консоли. Код оформлен в виде дерева;

  • трассировщик лучей, реализованный целиком при помощи макросов C-препроцессора (код);

  • физический движок, симулирующий вращение волчка. Код тоже в форме волчка;