The OpenNET Project / Index page

[ новости /+++ | форум | wiki | теги | ]

Опубликован код работ, победивших на соревновании по написанию самого запутанного кода на языке Си

24.04.2012 10:55

Опубликованы исходные тексты работ, победивших в двадцатом конкурсе IOCCC (International Obfuscated C Code Contest), в рамках которого предлагалось написать на языке Си наиболее запутанный и трудноразбираемый код, на основании анализа которого проблематично разобраться в сути решаемой задачи. При этом код должен быть интересен и чем-то примечателен, подчеркивая важность правильного стилевого оформления или выделяя неожиданные стороны языка Си. Размер исходного кода программы не должен превышать 4096 байт, программа должна собираться и выполнять какое-либо осмысленное действие.

Примечательно, что в этом году код работ был опубликован спустя всего два месяца с момента объявления победителей, в то время как в прошлые конкурсы работы публиковались только при начале проведения следующего мероприятия, например, работы 19 конкурса IOCCC были опубликованы только спустя 4 года.

Из победителей двадцатого конкурса можно отметить следующие работы (следует принять во внимание, что исходный код каждой работы не превышает 4 Кб):

  • Matt Zucker (трассировщик лучей для отображения текста);
  • Daniel Vik (музыкальный проигрыватель с поддержкой формата MOD);
  • Don Yang (несколько скрытых программ внутри одной программы);
  • Peter Eastman (симулятор прыгающего мяча в ASCII графике с кодом в форме мяча);
  • Oscar Toledo G. (графическая игра-стрелялка "танковый бой" для двух игроков);
  • Szabolcs Borsanyi (генератор графиков с кодом в форме графика);
  • David Lowe (классификатор нейронной сети с кодом в форме лица);
  • Philip Blakely (игра Life);
  • Kimmo Fredriksson (утилита grep с приближённым поиском);
  • Hou Qiming (научный калькулятор в коде которого используется разбор ASCII-изображения калькулятора);


  1. Главная ссылка к новости (http://developers.slashdot.org...)
  2. OpenNews: Возобновлено соревнование по написанию самого запутанного кода на языке Си
  3. OpenNews: Анонсировано соревнование по созданию запутанного кода на языке Си
  4. OpenNews: Соревнование по созданию невинно-выглядящего кода на языке Си
Лицензия: CC-BY
Тип: К сведению
Ключевые слова: code, gcc
При перепечатке указание ссылки на opennet.ru обязательно
Обсуждение (27) Ajax | 1 уровень | Линейный | Раскрыть всё | RSS
  • 1.1, klalafuda (?), 11:30, 24/04/2012 [ответить] [﹢﹢﹢] [ · · · ]  
  • +23 +/
    Почему авторов openssl как почетных звезд не позвали?
     
     
  • 2.2, xanten (?), 11:35, 24/04/2012 [^] [^^] [^^^] [ответить]  
  • +29 +/
    Видимо они в жюри.
     
     
  • 3.3, Аноним (-), 11:38, 24/04/2012 [^] [^^] [^^^] [ответить]  
  • +1 +/
    :DDD
     
  • 2.4, Andrey Mitrofanov (?), 11:38, 24/04/2012 [^] [^^] [^^^] [ответить]  
  • +/
    > Почему авторов openssl как почетных звезд не позвали?

    "Размер исходного кода программы не должен превышать 4096 байт" ??

     

  • 1.5, Anonim (??), 11:43, 24/04/2012 [ответить] [﹢﹢﹢] [ · · · ]  
  • +/
    Для меня любой код - филькина грамота. Особенно, если используются всяческие сокращения.
    Не указано, удалось ли в какой из примеров запихать незаметный левый код (например бэкдор) причем так, чтоб никто не понял?
     
     
  • 2.6, Челз (?), 11:56, 24/04/2012 [^] [^^] [^^^] [ответить]  
  • +/
    Все участники пошли Кэмел-Путем.
     
     
  • 3.8, Аноним (-), 12:16, 24/04/2012 [^] [^^] [^^^] [ответить]  
  • +8 +/
    Фигня. Меня просмотр работ разочаровал - по большей части тупая вставка пробелов для получения картинки. Это вообще не серьезно. В отличие от. (перлгольф)
     
  • 2.7, Аноним (-), 12:14, 24/04/2012 [^] [^^] [^^^] [ответить]  
  • –1 +/
    > Для меня любой код - филькина грамота. Особенно, если используются всяческие сокращения.

    И как вы на Си пишете?

     
  • 2.12, Аноним (-), 13:24, 24/04/2012 [^] [^^] [^^^] [ответить]  
  • –4 +/
    >код не должен превышать 4 кБ
    >впихнуть бэкдор так, чтобы никто не понял

    Сам-то понял, что сказал?..

     

  • 1.9, Аноним (-), 12:22, 24/04/2012 [ответить] [﹢﹢﹢] [ · · · ]  
  • +2 +/
    Любой индусокитаец вам нечитаемый код сбацает. И бацают, а люди потом мучаются. Мучаются не только переписывающие эти поделия, но и пользователи из-за кривизны понаписанного. Лучше бы премии давали наоборот - за читаемый код, чтобы учить неучей правильному стилю программирования.
     
     
  • 2.11, ram_scan (?), 12:51, 24/04/2012 [^] [^^] [^^^] [ответить]  
  • +5 +/
    Учить неучей писать правильный код - это брать Кнута и Вирта, и бить ими наотмашь по башке. Но за это уголовная статья. Книги здоровенные, можно нанести тяжкие телесные.
     
     
  • 3.13, klalafuda (?), 13:28, 24/04/2012 [^] [^^] [^^^] [ответить]  
  • +/
    Причем писать сугубо на Миксе. Ибо нефик. По Кнуту же учимся.
     
     
  • 4.26, aka (??), 13:40, 25/04/2012 [^] [^^] [^^^] [ответить]  
  • +/
    на обероне!
     

  • 1.10, Аноним (-), 12:49, 24/04/2012 [ответить] [﹢﹢﹢] [ · · · ]  
  • –1 +/
    > При этом код должен быть интересен и чем-то примечателен, подчеркивая важность правильного стилевого оформления

    Ога, правильность стилевого оформления. Разве что в калькуляторе.

     
  • 1.14, Дед Анон (?), 14:06, 24/04/2012 [ответить] [﹢﹢﹢] [ · · · ]  
  • +4 +/
    Видимо написание кода а потом рисование кодом картинок является невероятно сложной задачей! Не думал что сложность кода будет оцениваться по таким критериям... Ожидал увидеть море циклов в циклах, кучу похожих друг на друга(именами) костант, функций и переменных, которые при попытке разобраться в них будут вводить в ступор и ломать голову. Но это.....
     
     
  • 2.15, klalafuda (?), 14:14, 24/04/2012 [^] [^^] [^^^] [ответить]  
  • +/
    Там есть ещё одно маленькое условие а именно '...При этом код должен быть интересен и чем-то примечателен...'. Причем все-таки в первую очередь код должен быть чем-то интересен и примечателен а уже во вторую или в десятую - плохо разбираем. Т.е. тупо написать какашку - этого явно недостаточно.
     
     
  • 3.18, Аноним (-), 17:19, 24/04/2012 [^] [^^] [^^^] [ответить]  
  • +1 +/
    Тогда надо прямо писать, что код сравнивается не по запутанности, а по "интересности и примечательности" форматирования. А то получается дезинформация и обман почтенной публики.
     

  • 1.16, axe (??), 15:02, 24/04/2012 [ответить] [﹢﹢﹢] [ · · · ]  
  • +/
    > генератор графиков в форме графика

    мой парсер сломался

     
  • 1.17, Аноним (-), 16:22, 24/04/2012 [ответить] [﹢﹢﹢] [ · · · ]  
  • –1 +/
    Как надоела эта радуга на картинках! Субпиксельное сглаживание не нужно, и не важно насколько хорошо оно смотрится у вас на экране.
     
     
  • 2.21, Аноним (-), 23:25, 24/04/2012 [^] [^^] [^^^] [ответить]  
  • +/
    Вот вы и не пользуйтесь. Нехрен другим указывать как им жить.
     
     
  • 3.23, Аноним (-), 01:14, 25/04/2012 [^] [^^] [^^^] [ответить]  
  • +/
    > Вот вы и не пользуйтесь. Нехрен другим указывать как им жить.

    Не пользуюсь. «Указывать» чтобы не видеть этого срама. Выглядит просто чудовищно, и скриншоты красочно (радужно) это показывают.

     
     
  • 4.25, Аноним (-), 12:02, 25/04/2012 [^] [^^] [^^^] [ответить]  
  • +/
    Тип матрицы? DPI? Xft, Cairo? (кде, гнум). У меня Xft желтит. (Товарищи, 2012 год уже... :E этому "yellow halo" уже хз сколько лет. Там, вроде, несовместимость фильтров freetype и Xft, авторы никак не договорятся в каком месте фильтровать - делают дважды.  :D Поправьте, ежель.) Если венда - там есть офф тюнер от негрософт. Но, если физ. разрешение невилико - все равно будет немного заметно.
     
     
  • 5.28, Аноним (-), 01:39, 26/04/2012 [^] [^^] [^^^] [ответить]  
  • +/
    >Тип матрицы? DPI? Xft, Cairo? (кде, гнум).

    Это всё по сути не важно, субпиксель это шаг назад.

     
     
  • 6.30, Аноним (-), 11:58, 26/04/2012 [^] [^^] [^^^] [ответить]  
  • +/
    Скорее временный костыль.
     

  • 1.20, cat666 (?), 23:01, 24/04/2012 [ответить] [﹢﹢﹢] [ · · · ]  
  • +/
    Шарик это круто ! Исходник всего 641 байт ! Попробуйте вам понравиться !
     
     
  • 2.27, имя (?), 21:27, 25/04/2012 [^] [^^] [^^^] [ответить]  
  • +/
    понравиТСя
     

  • 1.29, Аноним (-), 07:53, 26/04/2012 [ответить] [﹢﹢﹢] [ · · · ]  
  • +/
    Не могу на это смотреть. Какие-то сцены насилия, расчленение...
     

     Добавить комментарий
    Имя:
    E-Mail:
    Текст:



    Спонсоры:
    MIRhosting
    Inferno Solutions
    Hosting by Ihor
    Хостинг:

    Закладки на сайте
    Проследить за страницей
    Created 1996-2019 by Maxim Chirkov
    Добавить, Поддержать, Вебмастеру