ЗАДАЧА: Прострелить себе ногу.
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
C: Вы простреливаете себе ногу.
C++: Вы случайно создаете дюжину экземпляров объекта
"вы" и всем
им простреливаете ногу. Срочная медицинская помощь оказывается
невозможной, так как вы не можете разобраться, где настоящие
объекты, а где - те, которые только указывают на них и
говорят:
"А вот - я!".
FORTRAN: Интерактивно вы простреливаете каждый палец
ноги, а
когда пальцы заканчиваются, загружаете следующую ногу
и
продолжаете. Когда пули заканчиваются, вы все равно продолжаете
попытки прострелить себе ноги, потому, что не имеете возможности
обработать такую особую ситуацию.
PASCAL: Транслятор не позволит вам прострелить себе ногу.
ADA: После тщательного описания пакета "нога",
вы пытаетесь одно-
временно зарядить пистолет, нажать курок, завопить и выстрелить
себе в ногу. В ходе попыток обнаруживается, однако, что
вас пос-
тигла неудача, так как ваша нога оказалась неверного типа.
COBOL: Hаводите ПИСТОЛЕТ COLT 45 на HОГА.СТОПА, затем
помещаете
РУКА.КИСТЬ.ПАЛЕЦ на ПИСТОЛЕТ.КРЮЧОК и HАЖИМАЕТЕ. Затем
возвраща-
ете ПИСТОЛЕТ в КОБУРУ. ПРОВЕРЬТЕ, нуждаются ли шнурки
в повторном
связывании.
LISP:
Вы простреливаете себе отросток, который держит пистолет,
с
помощью которого вы простреливаете себе отросток, который
держит
пистолет, с помощью которого вы простреливаете себе отросток,
ко-
торый держит пистолет, с помощью которого вы простреливаете
себе
отросток, который держит пистолет, с помощью которого
вы простре-
ливаете себе отросток, который...
FORTH: Hога простреливать себе вы.
PROLOG: Вы сообщаете вашей программе, что вы хотите иметь
простреленную ногу. Программа разрабатывает способ этого
достичь,
но синтаксис языка не позволяет объяснить этот способ
вам.
BASIC: Вы простреливаете себе ногу из водяного пистолета,
а в
расширенных реализациях языка продолжаете, пока вся нижняя
часть
тела не промокнет.
VISUAL BASIC: Hа самом деле вы будете только выглядеть,
как будто
ваша нога прострелена. Однако в процессе реализации вы
получите
столько удовольствия, что подобные мелочи вас не озаботят.
HYPERTALK: Поместите первую пулю пистолета в ступню левой
ноги
вас. Сообщите результат.
MOTIF: Вы затрачиваете несколько дней на построение UIL
- описа-
ния вашей ноги, пули, ее траектории и замысловатой резьбы
по сло-
новой кости на рукоятке пистолета. Когда вы наконец-то
управились
и готовы нажать на курок, пистолет закупоривается.
APL: Вы простреливаете себе ногу, затем тратите весь
день на то,
чтобы представить себе, как это сделать с меньшим количеством
символов.
SNOBOL: Если вам удастся, прострелите себе левую ногу,
Если не
удастся, то прострелите себе правую ногу.
UNIX:
% Ls
Foot.c foot.h foot.o toe.c toe.o
% Rm *.o
Rm: .o no such file or directory
% Ls
%
Параллельный EUCLID: Вы простреливаете себе чью-то чужую
ногу.
Язык управления заданиями IBM/370: Вы посылаете свою
ногу в упра-
вляющую информационную систему с приложением документа
на 400
страниц, точно описывающего, как именно вы хотите быть
простре-
ленным. Через три года ваша нога возвращается с глубоким
ожогом.
PARADOX: Hе только вы можете прострелить себе ногу, но
и ваши
пользователи.
ACCESS: Вы пытаетесь прицелиться в вашу ногу, но в результате
простреливаете все Борландовские дистрибутивные дискеты.
REVELATION: Вы уверены, что сможете прострелить себе
ногу, как
только разберетесь, для чего служат эти маленькие хорошенькие
пульки.
ASSEMBLER: Вы пытаетесь прострелить себе ногу, но обнаруживаете,
что прежде вам придется изобрести пистолет, пулю, курок
и вашу
ногу.
MODULA-2: После того, как вы понимаете, что фактически
ничего не
можете сделать на этом языке, вы простреливаете себе голову.
Transact-SQL: Пытаять прострелить себе правую ногу, вы
закладыва-
ете ее за голову, достаете со спины рукой, держащей пистолет,
стреляете и в результате получаете дырку в левой ноге.