МАТЕМАТИЧЕСКИЕ ОСНОВЫ ИНФОРМАТИКИ
Суббота, 20.04.2024, 03:35
ГлавнаяРегистрацияВход Приветствую Вас Гость | RSS

Меню сайта

Категории раздела
Учимся оформлять задачи [6]
Практика [9]
Это интересно [2]
ЗАДАНИЕ 1 [1]

Наш опрос
Какой язык программирования Вы изучаете
Всего ответов: 1027

Статистика

Онлайн всего: 1
Гостей: 1
Пользователей: 0

Форма входа


Главная » Файлы » МОИ ПЕРВЫЕ ЗАДАЧИ » Это интересно

Какой язык программирования лучше?
25.11.2012, 22:31

Какой язык программирования лучше?

«Выстрелить себе в ногу» — фраза из старой цитаты отца языка C++ Бьярне Строуструпа:

На искомую тему был написан забавный текст, автор которого теряется в веках (помнит ли ещё кто-нибудь про revelation и euclid?):

ЗАДАЧА: Прострелить себе ногу.

  • С: Вы простреливаете себе ногу.
  • С++: Вы случайно создаете дюжину копий объекта «вы» и всем им простреливаете ногу. Срочная медицинская помощь оказывается невозможной, так как вы не можете разобраться, где настоящие копии, а где — те, что только указывают на них и говорят: «А вот он я!»
  • Java: После импорта java.awt.right.foot.* и java.awt.gun.right.hand.* и написания классов и методов, необходимых для этих классов, вы забываете, что вы, чёрт возьми, хотели сделать.
  • C# : Вы пытаетесь прострелить себе ногу, но осознаете, что для этого вам нужен 5 диск MSDN с хелпом и Visual Studio .NET… и в любом случае решетка C# не дает прострелить вам ногу, так как тот код, который вы пишете для Mono, Microsoft уже запатентовала.
  • C# v2: Вы подсмотрели, как стреляют в ногу на Java, и теперь объясняете, как бы вы сделали это лучше.
  • Delphi: Вы залезаете на форумы и слезно умоляете дать вам компонент для прострела ноги. После компиляции нога опухает, и её масса превышает массу тела.
  • JavaScript: Вы прочитали 3 книги, изучили 10 наглядных примеров, разработали потрясающий интерфейс и теперь, кажется, готовы к тому, чтобы выстрелить себе в ногу. Потом в процессе стрельбы обнаруживаете, что в вашем пистолете отключены пули.
  • CSS: Вы стреляете с одной руки в правую ногу, потом меняете руку, чтобы выстрелить в другую ногу, и обнаруживаете, что пистолет превратился в банан.
  • Objective-C/Cocoa: Вы строите стильный интерфейс, соответствующий всем канонам Apple. Вы два раза копируете и ногу, и пистолет, чтобы они работали под архитектурами как Intel, так и PowerPC. Вы удостоверяетесь, что пистолет можно зарядить с помощью всего одного клика мышкой. Когда всё уже готово, вы понимаете, что при нажатии на спуск пистолет не стреляет. Перебрав весь код вашей программы, вы обнаруживаете, что забыли указать, что графический объект спускового крючка — и есть спусковой крючок.
  • PHP: Вы стреляете себе в ногу из пистолета, сделанного из частей 300 других пистолетов.
  • ASP.NET: Вы находите пистолет, но он разваливается. Вы его собираете, но он снова разваливается. Вы пытаетесь использовать платформу .GUN, но она разваливается. Вы режете себе ногу.
  • Фортран: Итеративно вы простреливаете каждый палец ноги, а когда пальцы заканчиваются, загружаете следующую ногу и продолжаете. Когда пули заканчиваются, вы все равно продолжаете попытки прострелить себе ноги, потому что не имеете возможности обрабатывать исключения.
  • Modula2: Поняв, что с помощью этого языка ничего толком сделать нельзя, вы простреливаете себе голову.
  • Pascal: Компилятор не позволит вам прострелить себе ногу.
  • Ada: После тщательной сборки пакета «нога», вы пытаетесь одновременно зарядить пистолет, нажать курок, завопить и выстрелить себе в ногу. В ходе попыток обнаруживается, однако, что вас постигла неудача, так как ваша нога оказалась неверного типа.
  • Кобол: Наводите ПИСТОЛЕТ COLT 45 на НОГА.СТОПА, ТОГДА помещаете РУКА.КИСТЬ.ПАЛЕЦ на ПИСТОЛЕТ.КРЮЧОК и ПОЖАЛУЙСТА, НАЖИМАЕТЕ. ТОГДА возвращаете ПИСТОЛЕТ в КОБУРУ. ПОЖАЛУЙСТА, ПРОВЕРЬТЕ, нуждаются ли шнурки в повторном связывании.
  • LISP: Вы простреливаете себе отросток, который держит пистолет, с помощью которого вы простреливаете себе отросток, который держит пистолет, с помощью которого вы простреливаете себе отросток, который держит пистолет, с помощью которого вы простреливаете себе отросток, который держит пистолет, с помощью которого вы простреливаете себе отросток, который…
  • LISP v2: Вы описываете правила и функции, после чего стреляете себе в ногу, но обнаруживаете, что из ноги торчит пистолет. Вы думаете, что знаете, где ошибка, и что забыли поставить QUOTE, чтобы раскрыть пистолет. Быстро вносите исправления и, без проверки всей функции, повторяете выстрел в ногу, теперь нога прострелена пистолетом, и оторвана рука, держащая его.
  • Пролог: Вы сообщаете вашей программе, что хотите иметь простреленную ногу. Программа разрабатывает способ этого достичь, но синтаксис языка не позволяет объяснить этот способ вам.
  • Basic: Вы простреливаете себе ногу из водяного пистолета. В расширенных реализациях языка продолжайте, пока вся нижняя часть тела не промокнет. В реализациях с возможностью делать вставки из ассемблера вы используете ранее созданные типы и уже в ассемблерной части простреливаете ногу дробовиком.
  • Visual Basic: На самом деле вы будете только выглядеть, как будто ваша нога прострелена. Однако в процессе реализации вы получите столько удовольствия, что подобные мелочи вас не озаботят.
  • Visual BASIC.NET: Вы тратите целое состояние на мощнейший, самоочищающийся, самонаводящийся, автоматический пистолет с бесконечным боезапасом и только тогда понимаете, что спуск курка занимает около года
  • HyperTalk: Поместите первую пулю пистолета в ступню левой ноги вас. Сообщите результат.
  • Smalltalk: Мой нога стреляй себя.
  • Motif: Вы затрачиваете несколько дней на построение UIL — описания вашей ноги, пули, её траектории и замысловатой резьбы по слоновой кости на рукоятке пистолета. Когда вы наконец-то управились и готовы нажать на курок, затвор заклинивает.
  • APL: Вы простреливаете себе ногу, затем тратите весь день на то, чтобы представить себе, как это сделать с меньшим количеством символов.
  • Снобол: Если вам удастся, прострелите себе левую ногу. Если не удастся, то прострелите себе правую ногу.
  • BASH: От скуки вы стреляете себе в ногу ежом из арбалета, а потом думаете, как отрастить новую ногу и чем на этот раз её откромсать.
  • Параллельный Euclid: Вы простреливаете себе чью-то чужую ногу.
  • Язык управления заданиями IBM/370: Вы посылаете свою ногу в управляющую информационную систему с приложением документа на 400 страниц, точно описывающего, как именно вы хотите быть простреленным. Через три года ваша нога возвращается с глубоким ожогом.
  • Paradox: Не только вы можете прострелить себе ногу, но и ваши пользователи.
  • Access: Вы пытаетесь прицелиться в вашу ногу, но в результате простреливаете все Борландовские дистрибутивные дискеты.
  • Revelation: Вы уверены, что сможете прострелить себе ногу, как только разберетесь, для чего служат эти маленькие хорошенькие пульки.
  • Ассемблер: Вы пытаетесь прострелить себе ногу, но обнаруживаете, что прежде вам придется изобрести пистолет, пулю, курок и вашу ногу. После чего вы нажимаете на курок, пистолет издаёт пару писков, после чего выдаёт BSoD. (англ. blue screen of death — синий экран смерти).
  • Ассемблер v2: Вы находите программу на Delphi, которая должна стрелять в птицу. Пишете Loader для этой программы, перехватываете функцию выстрела, меняете координаты конца траектории пули на координаты вашей ноги. Запускаете лоадер, ничего не происходит. Вы долго отлаживаете программу, переписываете код. Но программа всё равно не работает. Через некоторое время вы догадываетесь запустить исходную программу на Delphi. ТАМ ОНА ТОЖЕ НЕ РАБОТАЕТ!
  • Ассемблер v3: Вы пытаетесь прострелить себе ногу, но наступаете ею на грабли.
  • Python: Вы пытаетесь выстрелить себе в ногу, но то и дело попадаете промеж пальцев. А всё потому, что Питон настолько гибкий — что из рук выскальзывает.
  • BrainFuck: Вы палите наугад из безумной смеси пистолета и экскаватора урановыми медведями. В конце концов вам удается попасть в изогнутую по синусоиде «ногу».
  • VHDL: Вы аккуратно описываете компоненты «нога», «рука», «пистолет» и «пуля». Любовно их отлаживаете и моделируете по отдельности. После синтеза всей системы обнаруживается, что нога и пистолет активируются на чётных тактах сигнала синхронизации, а рука и пуля на нечётных.
  • Redcode: Вы стреляете себе в ногу, но у пули на сей счет иные планы. Она постоянно ищет себя, стреляет себе в ногу, удивляется результату…
  • ABAP/4: В стандартном пистолете предусмотрена возможность стрелять из-под колена в белку на расстоянии 3 км, но выстрелить в ногу нельзя. После годовой доработки можно стрелять в ногу. На второй минуте использования выясняется, что стрелять нужно было, только если нога левая, а фаза луны четвертая.
  • ColdFusion: Программа снимает за вас ваши туфли, заряжает ваш пистолет и назначает вам прием к доктору. Вы успешно стреляете себе в ногу, но вам никто не верит.
  • XSLT: Вы гуглите весь день, пытаясь узнать, как же выстрелить себе в ногу. Узнав решение, вы не понимаете его синтаксис и берете чужой шаблон. Он не работает.
  • Lua: Если разработчик пистолета предусмотрел возможность выстрела в ногу — достаточно вызвать одну функцию. Если нет — хоть убейтесь, но ничего не выйдет.
  • Apple Script: Вы простреливаете себе ногу, но перед этим вам придётся сделать автоматическую запись ваших действий в компилятор — прострел собственной ноги, и в итоге вы автоматически простреливаете себе ногу вторично.
  • FoxPro: Вы хотите выстрелить себе в ногу, но обнаруживаете, что нога уже прострелена, и вам приходится искать пользователя, который это сделал.

 

Категория: Это интересно | Добавил: i_elf
Просмотров: 1259 | Загрузок: 0 | Комментарии: 1 | Рейтинг: 0.0/0
Всего комментариев: 0
Имя *:
Email *:
Код *:
Поиск

Друзья сайта
  • Творческий учитель
  • Сайт ООАКМР
  • Школьный сайт
  • Информатика учебник
  • МОИ

  • Copyright MyCorp © 2024 Сделать бесплатный сайт с uCoz