Comments 39
Всем участникам конкурса были предложены престижные рабочие места в ведущих компаниях страны.
+32
UFO just landed and posted this here
Мда… Посмотрел на эту жесть и понял насколько я её нуб в крестах.
+9
Да, помнится, когда только начал изучать cpp, в своем первом hello world случайно перепутал << и >> ( написал cout >> «Hello, world!») и получил 26 ошибок в консоль. Забавно, оказывается есть такой конкурс:)
+6
Пожалуйста, распишите хотя бы в комментариях, как [не]работает каждый из примеров и «в чем прикол?».
+33
При попытке скомпилировать выдают гигабайты ошибок и/или кушают гигабайты памяти.
0
в чем прикол?
Отличная демонстрация того, что современные компиляторы(интерпретатор, ЯП — нужное подчеркнуть или вставить что-то другое) настолько сложны, что даже безобидный на первый взгляд код вызывает неимоверное количество ошибок, а то и вовсе вводит в ступор сам компилятор.
0
Про вот это могу сказать, ничего сложного тут нет:
«/usr/include» — это первая команда, автор пытается запустить стандартный директорий юникс-подобных система, что вызовет нефатальную ошибку, управление перейдёт дальше
«;» — разделитель двух команд
«perl -e» — запустить интерпретатором Перла код
поскольку код у нас в кавычках, внутри кавычки приходится экранировать, отсюда слеши, в самой программе слешей нет:
«''x'' x (2**16)» — это всего лишь «повторить букву „x“ два в степени 16 раз». В итоге, в первом элементе массива лежит длинная строка букв «x».
«while(1) {print @c}» — бесконечное количество раз выводить массив @c. При выводе массива выводятся подряд все его значения без разделителей. В данном случае будет бесконечно выводить одна и та же строка, состоящая из «x»
«1>&2» — к программе на Перле не относится, стандартная шелловская конструкция «вывести stdout туда же, куда stderr»
Всё. Не понимаю что так впечатлило жюри.
/usr/include; perl -e "@c=\"x\"x(2**16); while(1) {print @c}" 1>&2
«/usr/include» — это первая команда, автор пытается запустить стандартный директорий юникс-подобных система, что вызовет нефатальную ошибку, управление перейдёт дальше
«;» — разделитель двух команд
«perl -e» — запустить интерпретатором Перла код
поскольку код у нас в кавычках, внутри кавычки приходится экранировать, отсюда слеши, в самой программе слешей нет:
@c="x"x(2**16); while(1) {print @c}
совершенно неясно что тут непонятного. @c — переменная-массив (на это указывается «собачка»),«''x'' x (2**16)» — это всего лишь «повторить букву „x“ два в степени 16 раз». В итоге, в первом элементе массива лежит длинная строка букв «x».
«while(1) {print @c}» — бесконечное количество раз выводить массив @c. При выводе массива выводятся подряд все его значения без разделителей. В данном случае будет бесконечно выводить одна и та же строка, состоящая из «x»
«1>&2» — к программе на Перле не относится, стандартная шелловская конструкция «вывести stdout туда же, куда stderr»
Всё. Не понимаю что так впечатлило жюри.
+25
Наверное они ждали, что она снесёт им систему с корнем, а оно вон как! Строку выводит.
+9
> /usr/include» — это первая команда, автор пытается запустить стандартный директорий юникс-подобных система, что вызовет нефатальную ошибку, управление перейдёт дальше
Вы не поняли. Данная строка — это не команда сама по себе. Это то, что подставляется после -I в вызов вида «gcc -I $INCLUDE_PATH». Соответственно, /usr/include — это, собственно, параметр для -I, точка с запятой — завершение вызова gcc, а все остальное — уже как вы написали.
Вы не поняли. Данная строка — это не команда сама по себе. Это то, что подставляется после -I в вызов вида «gcc -I $INCLUDE_PATH». Соответственно, /usr/include — это, собственно, параметр для -I, точка с запятой — завершение вызова gcc, а все остальное — уже как вы написали.
+18
Perl-программисты делятся на две категории:
1. Те, кого Perl ещё впечатляет. Обычно это те же, кто на ещё Perl не программировали.
2. Те, кого Perl уже впечатляет. Обычно это те же, кто уже на Perl не программирует.
P.S.: если честно, то есть ещё третья категория, в которую входят морские свинки по большей части. К сожалению, они не особо многословны, что бы поделиться своими впечатлениями. Есть мнение, что им просто пофиг.
1. Те, кого Perl ещё впечатляет. Обычно это те же, кто на ещё Perl не программировали.
2. Те, кого Perl уже впечатляет. Обычно это те же, кто уже на Perl не программирует.
P.S.: если честно, то есть ещё третья категория, в которую входят морские свинки по большей части. К сожалению, они не особо многословны, что бы поделиться своими впечатлениями. Есть мнение, что им просто пофиг.
+1
Я всё же предпочитаю медитировать по старинке, на ошибки буста и компиляцию libreoffice.
+2
>глючный код C++
>Grand C++ Error Explosion Competition
Ализар такой Ализар.
Поясню: конкурс не на глючный код, а на код, который порождает наибольшое количество ошибок при компиляции.
>Grand C++ Error Explosion Competition
Ализар такой Ализар.
Поясню: конкурс не на глючный код, а на код, который порождает наибольшое количество ошибок при компиляции.
+21
В музее говнокода видел просто шедевр. Файл начинался так:
#!/usr/blin/perl
+20
Всё же не самый глючный код, а порождающий наибольшее количество ошибок компиляции. Глючный код как правило компилируется :-)
+2
Гы! А для Джавы такое есть?
+2
а так?
include.h
выдает
#include "include.h"
выдает
c:\Program Files (x86)\CodeBlocks\MinGW\bin>gcc c:\include.h
In file included from c:\include.h:1:0,
from c:\include.h:1,
from c:\include.h:1,
from c:\include.h:1,
from c:\include.h:1,
from c:\include.h:1,
from c:\include.h:1,
from c:\include.h:1,
from c:\include.h:1,
from c:\include.h:1,
from c:\include.h:1,
from c:\include.h:1,
from c:\include.h:1,
from c:\include.h:1,
from c:\include.h:1,
from c:\include.h:1,
from c:\include.h:1,
from c:\include.h:1,
from c:\include.h:1,
from c:\include.h:1,
from c:\include.h:1,
from c:\include.h:1,
from c:\include.h:1,
from c:\include.h:1,
from c:\include.h:1,
from c:\include.h:1,
from c:\include.h:1,
from c:\include.h:1,
from c:\include.h:1,
from c:\include.h:1,
from c:\include.h:1,
from c:\include.h:1,
from c:\include.h:1,
from c:\include.h:1,
from c:\include.h:1,
from c:\include.h:1,
from c:\include.h:1,
from c:\include.h:1,
from c:\include.h:1,
from c:\include.h:1,
from c:\include.h:1,
from c:\include.h:1,
from c:\include.h:1,
from c:\include.h:1,
from c:\include.h:1,
from c:\include.h:1,
from c:\include.h:1,
from c:\include.h:1,
from c:\include.h:1,
from c:\include.h:1,
from c:\include.h:1,
from c:\include.h:1,
from c:\include.h:1,
from c:\include.h:1,
from c:\include.h:1,
from c:\include.h:1,
from c:\include.h:1,
from c:\include.h:1,
from c:\include.h:1,
from c:\include.h:1,
from c:\include.h:1,
from c:\include.h:1,
from c:\include.h:1,
from c:\include.h:1,
from c:\include.h:1,
from c:\include.h:1,
from c:\include.h:1,
from c:\include.h:1,
from c:\include.h:1,
from c:\include.h:1,
from c:\include.h:1,
from c:\include.h:1,
from c:\include.h:1,
from c:\include.h:1,
from c:\include.h:1,
from c:\include.h:1,
from c:\include.h:1,
from c:\include.h:1,
from c:\include.h:1,
from c:\include.h:1,
from c:\include.h:1,
from c:\include.h:1,
from c:\include.h:1,
from c:\include.h:1,
from c:\include.h:1,
from c:\include.h:1,
from c:\include.h:1,
from c:\include.h:1,
from c:\include.h:1,
from c:\include.h:1,
from c:\include.h:1,
from c:\include.h:1,
from c:\include.h:1,
from c:\include.h:1,
from c:\include.h:1,
from c:\include.h:1,
from c:\include.h:1,
from c:\include.h:1,
from c:\include.h:1,
from c:\include.h:1,
from c:\include.h:1,
from c:\include.h:1,
from c:\include.h:1,
from c:\include.h:1,
from c:\include.h:1,
from c:\include.h:1,
from c:\include.h:1,
from c:\include.h:1,
from c:\include.h:1,
from c:\include.h:1,
from c:\include.h:1,
from c:\include.h:1,
from c:\include.h:1,
from c:\include.h:1,
from c:\include.h:1,
from c:\include.h:1,
from c:\include.h:1,
from c:\include.h:1,
from c:\include.h:1,
from c:\include.h:1,
from c:\include.h:1,
from c:\include.h:1,
from c:\include.h:1,
from c:\include.h:1,
from c:\include.h:1,
from c:\include.h:1,
from c:\include.h:1,
from c:\include.h:1,
from c:\include.h:1,
from c:\include.h:1,
from c:\include.h:1,
from c:\include.h:1,
from c:\include.h:1,
from c:\include.h:1,
from c:\include.h:1,
from c:\include.h:1,
from c:\include.h:1,
from c:\include.h:1,
from c:\include.h:1,
from c:\include.h:1,
from c:\include.h:1,
from c:\include.h:1,
from c:\include.h:1,
from c:\include.h:1,
from c:\include.h:1,
from c:\include.h:1,
from c:\include.h:1,
from c:\include.h:1,
from c:\include.h:1,
from c:\include.h:1,
from c:\include.h:1,
from c:\include.h:1,
from c:\include.h:1,
from c:\include.h:1,
from c:\include.h:1,
from c:\include.h:1,
from c:\include.h:1,
from c:\include.h:1,
from c:\include.h:1,
from c:\include.h:1,
from c:\include.h:1,
from c:\include.h:1,
from c:\include.h:1,
from c:\include.h:1,
from c:\include.h:1,
from c:\include.h:1,
from c:\include.h:1,
from c:\include.h:1,
from c:\include.h:1,
from c:\include.h:1,
from c:\include.h:1,
from c:\include.h:1,
from c:\include.h:1,
from c:\include.h:1,
from c:\include.h:1,
from c:\include.h:1,
from c:\include.h:1,
from c:\include.h:1,
from c:\include.h:1,
from c:\include.h:1,
from c:\include.h:1,
from c:\include.h:1,
from c:\include.h:1,
from c:\include.h:1,
from c:\include.h:1,
from c:\include.h:1,
from c:\include.h:1,
from c:\include.h:1,
from c:\include.h:1,
from c:\include.h:1,
from c:\include.h:1,
from c:\include.h:1,
from c:\include.h:1,
from c:\include.h:1,
from c:\include.h:1,
from c:\include.h:1,
from c:\include.h:1,
from c:\include.h:1,
from c:\include.h:1:
c:\include.h:1:21: error: #include nested too deeply
-1
помогите, пожалуйста исправить такую программу:
sudo cat «test… test… test...» | perl -e '$??s:;s:s;;$?::s;;=]=>%-{
sudo cat «test… test… test...» | perl -e '$??s:;s:s;;$?::s;;=]=>%-{
-7
UFO just landed and posted this here
UFO just landed and posted this here
кстати
(echo должно быть) Автор поста, видимо, хотел допустить максимальное количество ошибок в этом баяне :-)
cat: test... test.. test...: No such file or directory
(echo должно быть) Автор поста, видимо, хотел допустить максимальное количество ошибок в этом баяне :-)
+1
Емаё :-) я всегда думал, что в этой штуке инпут важен, а она работает и без всяких пайов, cat, echo… Можно просто запускать
А насчёт оригинала — сильно сомневаюсь. Мне кажется, эта штука гораздо старше. Лет на 10 как минимум.
perl -e ...
(то есть, конечно, запускать нельзя :-))А насчёт оригинала — сильно сомневаюсь. Мне кажется, эта штука гораздо старше. Лет на 10 как минимум.
0
UFO just landed and posted this here
Ну если верить летописям, оригинал (ну в смысле именно однострочник на perl, не патч Бармина) именно по моей ссылке.
Я в Perl не разбираюсь, но по ссылке есть анализ, откуда следует что инпут не важен. Более того, предположу что «cat test… test… test...» было добавлено специально. Потому что с ним даже не знающий perl человек будет считать что видит где именно ошибка, и попытается исправить на echo и запустить.
Я в Perl не разбираюсь, но по ссылке есть анализ, откуда следует что инпут не важен. Более того, предположу что «cat test… test… test...» было добавлено специально. Потому что с ним даже не знающий perl человек будет считать что видит где именно ошибка, и попытается исправить на echo и запустить.
0
Sign up to leave a comment.
Результаты конкурса на самый глючный код C++