Краткое руководство по всем языкам программирования
Бурное размножение современных языков программирования
(которые, похоже,просто заимствуют друг у друга бессчетные нововведения)
приводит к тому, что иногда бывает трудно вспомнить, какой язык вы в настоящее время используете.
Это удобное руководство предлагается для общего использования в целях помощи
программистам, оказавшимся перед такой дилеммой.
ЗАДАЧА: Прострелить себе ногу.
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: После того, как вы понимаете, что фактически ничего не можете сделать на этом языке, вы простреливаете себе голову.
Опубликовано: 2012.09.25, последняя правка: 2019.01.28 20:49
Добавить свой отзыв
Написать автору можно на электронную почту mail(аt)compiler.su
|