C++: Вы случайно создаете дюжину копий объекта «вы» и всем им простреливаете ногу. Срочная медицинская помощь оказывается невозможной, так как вы не можете разобраться, где настоящие копии, а где — те, что только указывают на них и говорят: «А вот он я!»
Java: После импортаjava.awt.right.foot.*иjava.awt.gun.right.hand.*и написания классов и методов, необходимых для этих классов, вы забываете, что вы, чёрт возьми, хотели сделать.
C#: Вы пытаетесь прострелить себе ногу, но осознаете, что для этого вам нужен 5 диск MSDN с хелпом и Visual Studio .NET… и в любом случае решетка C# не дает прострелить вам ногу, так как тот код, который вы пишете для Mono, Microsoft уже запатентовала.
C# v2: Вы подсмотрели, как стреляют в ногу на Java, и теперь объясняете, как бы вы сделали это лучше.
SQL: INSERT INTO нога (ступня) SELECT патроны AS пуля FROM пистолет WHERE курок = 'СПУЩЕН'; COMMIT; SQL v2:SELECT @ammo:=bullet FROM gun WHERE trigger = ‘PULLED’; INSERT INTO leg (foot) VALUES (@ammo);
Delphi: Вы залезаете на форумы и слезно умоляете дать вам компонент для прострела ноги. После компиляции нога опухает, и её масса превышает массу тела.
JavaScript: Вы прочитали 3 книги, изучили 10 наглядных примеров, разработали потрясающий интерфейс и теперь, кажется, готовы к тому, чтобы выстрелить себе в ногу. Потом в процессе стрельбы обнаруживаете, что в вашем пистолете отключены пули.
CSS: Вы стреляете с одной руки в правую ногу, потом меняете руку, чтобы выстрелить в другую ногу, и обнаруживаете, что пистолет превратился в банан.
node.JS: Вы начинаете асинхронно стрелять из асинхронных рук в асинхронные ноги, асинхронно не попадаете и запутываетесь в этой каше.
Objective-C/Cocoa: Вы строите стильный интерфейс, соответствующий всем канонам Apple. Вы два раза копируете и ногу, и пистолет, чтобы они работали под архитектурами как Intel, так и PowerPC. Вы удостоверяетесь, что пистолет можно зарядить с помощью всего одного клика мышкой. Когда всё уже готово, вы понимаете, что при нажатии на спуск пистолет не стреляет. Перебрав весь код вашей программы вы обнаруживаете, что забыли указать, что графический объект спускового крючка — и есть спусковой крючок.
Ruby: Ваша нога готова к выстрелу примерно через пять минут, но вы не можете найти места, где можно стрелять.
PHP: Вы стреляете себе в ногу из пистолета, сделанного из частей 300 других пистолетов.
ASP.NET: Вы находите пистолет, но он разваливается. Вы его собираете, но он снова разваливается. Вы пытаетесь использовать платформу .GUN, но она разваливается.Вы режете себе ногу.
Perl: Вы стреляете себе в ногу, и никто не может понять, как вы сделали это. Через шесть месяцев не можете и вы.
Erlang: Вы описываете поведение стреляющего устройства, создаете десяток устройств от арбалета до КПВТ на его основе, одновременно стреляющее из тысячи разных мест и позволяющее горячую замену пуль прямо во время стрельбы. После поражения ноги она умирает и каскадно уносит с собой все тело. Супервизор отращивает новое тело с непораженной ногой. Вы офигеваете, что после такого залпа нога все еще целая, а также от блевотного Tk-интерфейса appmon, через который просматриваете состояние ноги.
Фортран: Итеративно вы простреливаете каждый палец ноги, а когда пальцы заканчиваются, загружаете следующую ногу и продолжаете. Когда пули заканчиваются, вы все равно продолжаете попытки прострелить себе ноги, потому что не имеете возможности обрабатывать исключения.
Modula2: Поняв, что с помощью этого языка ничего толком сделать нельзя, вы простреливаете себе голову.
Pascal: Компилятор не позволит вам прострелить себе ногу.
Ada: После тщательной сборки пакета «нога», вы пытаетесь одновременно зарядить пистолет, нажать курок, завопить и выстрелить себе в ногу. В ходе попыток обнаруживается, однако, что вас постигла неудача, так как ваша нога оказалась неверного типа.
Кобол: Наводите ПИСТОЛЕТ COLT 45 на НОГА.СТОПА, ТОГДА помещаете РУКА.КИСТЬ.ПАЛЕЦ на ПИСТОЛЕТ.КРЮЧОК и ПОЖАЛУЙСТА, НАЖИМАЕТЕ. ТОГДА возвращаете ПИСТОЛЕТ в КОБУРУ. ПОЖАЛУЙСТА, ПРОВЕРЬТЕ, нуждаются ли шнурки в повторном связывании.
LISP:Вы простреливаете себе отросток, который держит пистолет, с помощью которого вы простреливаете себе отросток, который держит пистолет, с помощью которого вы простреливаете себе отросток, который держит пистолет, с помощью которого вы простреливаете себе отросток, который держит пистолет, с помощью которого вы простреливаете себе отросток, который…
C: Вы простреливаете себе ногу.
C++: Вы случайно создаете дюжину копий объекта «вы» и всем им простреливаете ногу. Срочная медицинская помощь оказывается невозможной, так как вы не можете разобраться, где настоящие копии, а где — те, что только указывают на них и говорят: «А вот он я!»
Java: После импортаjava.awt.right.foot.*иjava.awt.gun.right.hand.*и написания классов и методов, необходимых для этих классов, вы забываете, что вы, чёрт возьми, хотели сделать.
C#: Вы пытаетесь прострелить себе ногу, но осознаете, что для этого вам нужен 5 диск MSDN с хелпом и Visual Studio .NET… и в любом случае решетка C# не дает прострелить вам ногу, так как тот код, который вы пишете для Mono, Microsoft уже запатентовала.
C# v2: Вы подсмотрели, как стреляют в ногу на Java, и теперь объясняете, как бы вы сделали это лучше.
SQL: INSERT INTO нога (ступня) SELECT патроны AS пуля FROM пистолет WHERE курок = 'СПУЩЕН'; COMMIT;
SQL v2:SELECT @ammo:=bullet FROM gun WHERE trigger = ‘PULLED’; INSERT INTO leg (foot) VALUES (@ammo);
Delphi: Вы залезаете на форумы и слезно умоляете дать вам компонент для прострела ноги. После компиляции нога опухает, и её масса превышает массу тела.
JavaScript: Вы прочитали 3 книги, изучили 10 наглядных примеров, разработали потрясающий интерфейс и теперь, кажется, готовы к тому, чтобы выстрелить себе в ногу. Потом в процессе стрельбы обнаруживаете, что в вашем пистолете отключены пули.
CSS: Вы стреляете с одной руки в правую ногу, потом меняете руку, чтобы выстрелить в другую ногу, и обнаруживаете, что пистолет превратился в банан.
node.JS: Вы начинаете асинхронно стрелять из асинхронных рук в асинхронные ноги, асинхронно не попадаете и запутываетесь в этой каше.
Objective-C/Cocoa: Вы строите стильный интерфейс, соответствующий всем канонам
Apple. Вы два раза копируете и ногу, и пистолет, чтобы они работали под архитектурами как Intel, так и PowerPC. Вы удостоверяетесь, что пистолет можно зарядить с помощью всего одного клика мышкой. Когда всё уже готово, вы понимаете, что при нажатии на спуск пистолет не стреляет. Перебрав весь код вашей программы вы обнаруживаете, что забыли указать, что графический объект спускового крючка — и есть спусковой крючок.
Ruby: Ваша нога готова к выстрелу примерно через пять минут, но вы не можете найти места, где можно стрелять.
PHP: Вы стреляете себе в ногу из пистолета, сделанного из частей 300 других пистолетов.
ASP.NET: Вы находите пистолет, но он разваливается. Вы его собираете, но он снова разваливается. Вы пытаетесь использовать платформу .GUN, но она разваливается.Вы режете себе ногу.
Perl: Вы стреляете себе в ногу, и никто не может понять, как вы сделали это. Через шесть месяцев не можете и вы.
Erlang: Вы описываете поведение стреляющего устройства, создаете десяток устройств от арбалета до КПВТ на его основе, одновременно стреляющее из тысячи разных мест и позволяющее горячую замену пуль прямо во время стрельбы. После поражения ноги она умирает и каскадно уносит с собой все тело. Супервизор отращивает новое тело с непораженной ногой. Вы офигеваете, что после такого залпа нога все еще целая, а также от блевотного Tk-интерфейса appmon, через который просматриваете состояние ноги.
Фортран: Итеративно вы простреливаете каждый палец ноги, а когда пальцы заканчиваются, загружаете следующую ногу и продолжаете. Когда пули заканчиваются, вы все равно продолжаете попытки прострелить себе ноги, потому что не имеете возможности обрабатывать исключения.
Modula2: Поняв, что с помощью этого языка ничего толком сделать нельзя, вы простреливаете себе голову.
Pascal: Компилятор не позволит вам прострелить себе ногу.
Ada: После тщательной сборки пакета «нога», вы пытаетесь одновременно зарядить пистолет, нажать курок, завопить и выстрелить себе в ногу. В ходе попыток обнаруживается, однако, что вас постигла неудача, так как ваша нога оказалась неверного типа.
Кобол: Наводите ПИСТОЛЕТ COLT 45 на НОГА.СТОПА, ТОГДА помещаете РУКА.КИСТЬ.ПАЛЕЦ на ПИСТОЛЕТ.КРЮЧОК и ПОЖАЛУЙСТА, НАЖИМАЕТЕ. ТОГДА возвращаете ПИСТОЛЕТ в КОБУРУ. ПОЖАЛУЙСТА, ПРОВЕРЬТЕ, нуждаются ли шнурки в повторном связывании.
LISP:Вы простреливаете себе отросток, который держит пистолет, с помощью которого вы простреливаете себе отросток, который держит пистолет, с помощью которого вы простреливаете себе отросток, который держит пистолет, с помощью которого вы простреливаете себе отросток, который держит пистолет, с помощью которого вы простреливаете себе отросток, который…
Forth v1: Нога себе прострелить.
Forth v2: Нога пистолет пуля зарядить прострелить.
Пролог: Вы сообщаете вашей программе, что вы хотите иметь простреленную ногу. Программа разрабатывает способ этого достич