КРАТКОЕ РУКОВОДСТВО ПРОГРАММИСТА ПО ЯЗЫКАМ ПРОГРАММИРОВАИЯ
Бурное размножение современных языков программирования (которые, похоже,
просто заимствуют друг у друга бессчетные нововведения) приводит к тому, что
иногда бывает трудно вспомнить, какой язык вы в настоящее время используете.
Это удобное руководство предлагается для общего использования в целях помощи
программистам, оказавшимся перед такой дилеммой.
----------------------------------------------------------------------------
ЗАДАЧА: Прострелить себе ногу.
C: Вы простреливаете себе ногу.
C++: Вы случайно создаете дюжину экземпляров объекта "вы" и всем им
простреливаете ногу. Срочная медицинская помощь оказывается невозможной, так
как вы не можете разобраться, где настоящие объекты, а где - те, которые
только указывают на них и говорят: "А вот - я!".
Фортран: Итерактивно вы простреливаете каждый палец ноги, а когда пальцы
заканчиваются, загружаете следующую ногу и продолжаете. Когда пули
заканчиваются, вы все равно продолжаете попытки прострелить себе ноги,
потому что не имеете возможности обработать такую особую ситуацию.
Паскаль: Транслятор не позволит вам прострелить себе ногу.
Ada: После тщательного описания пакета "нога", вы пытаетесь одновременно
зарядить пистолет, нажать курок, завопить и выстрелить себе в ногу. В ходе
попыток обнаруживается, однако, что вас постигла неудача, так как ваша нога
оказалась неверного типа.
Кобол: Hаводите ПИСТОЛЕТ COLT 45 на HОГА.СТОПА, Затем помещаете
РУКА.КИСТЬ.ПАЛЕЦ на ПИСТОЛЕТ.КРЮЧОК и HАЖИМАЕТЕ. Затем возвращаете ПИСТОЛЕТ
в КОБУРУ. ПРОВЕРЬТЕ, нуждаются ли шнурки в повторном связывании.
LISP: Вы простреливаете себе отросток, который держит пистолет, с помощью
которого вы простреливаете себе отросток, который держит пистолет, с помощью
которого вы простреливаете себе отросток, который держит пистолет, с помощью
которого вы простреливаете себе отросток, который держит пистолет, с помощью
которого вы простреливаете себе отросток, который...
Форт: Hога простреливать себе вы.
Пролог: Вы сообщаете вашей программе, что вы хотите иметь простреленную
ногу. Программа разрабатывает способ этого достичь, но синтаксис языка не
позволяет объяснить этот способ вам.
Бейсик: Вы простреливаете себе ногу из водяного пистолета. а расширенных
реализациях языка продолжайте, пока вся нижняя часть тела не промокнет.
Visual Basic: Hа самом деле вы будете только выглядеть, как будто ваша нога
прострелена. Однако в процессе реализации вы получите столько удовольствия,
что подобные мелочи вас не озаботят.
HyperTalk: Поместите первую пулю пистолета в ступню левой ноги вас. Сообщите
результат.
Motif: Вы затрачиваете несколько дней на построение UIL - описания вашей
ноги, пули, ее траектории и замысловатой резьбы по слоновой кости на
рукоятке пистолета. Когда вы наконец-то управились и готовы нажать на курок,
пистолет закупоривается.
APL: Вы простреливаете себе ногу, затем тратите весь день на то, чтобы
представить себе, как это сделать с меньшим количеством символов.
Снобол: Если вам удастся, прострелите себе левую ногу. Если не удастся, то
прострелите себе правую ногу.
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: е только вы можете прострелить себе ногу, но и ваши пользователи.
Access: Вы пытаетесь прицелиться в вашу ногу, но в результате простреливаете
все Борландовские дистрибутивные дискеты.
Revelation: Вы уверены, что сможете прострелить себе ногу, как только
разберетесь, для чего служат эти маленькие хорошенькие пульки.
Ассемблер: Вы пытаетесь прострелить себе ногу, но обнаруживаете, что прежде
вам придется изобрести пистолет, пулю, курок и вашу ногу.
Модула-2: После того, как вы понимаете, что фактически ничего не можете
сделать на этом языке, вы простреливаете себе голову.
|