Программист python
0,0
рейтинг
2 сентября 2014 в 09:29

Разработка → Каким оружием могли бы быть разные языки программирования из песочницы

Предлагаю вниманию хабражителей перевод забавной статьи Бьорна Типлинга о том, какими видами оружия ему кажутся разные языки программирования. Понятное дело, все его уже читали в оригинале, но теперь можно поделиться ссылкой и с коллегами не очень владеющими английским. Да и просто на русском приятно прочесть.

m1.png

C — это берданка (orig. M1 Garand). Старая, но надежная.

numchucks.png

C++ — нунчаки, очень крутые в руках Брюса Ли, но прежде чем овладеть ими получаешь столько синяков и тратишь столько времени, что невольно задумываешься о том, почему не выбрал что-нибудь другое.

molotov.png

Perl — коктейль молотова. Был вполне себе применим в стародавние времена, но радикалы даже сейчас иногда используют.

240G.png

Java — крутой пулемет 240G, но если лента с патронами заедает на NullPointerException, то оружие взрывается и убивает стрелка.

manual.png

Scala — это тот же пулемет 240G, но руководство для него написано на каком-то непонятном диалекте. Настолько непонятном, что многие считают его просто какой-то ахинеей.

sword.png

JavaScript — меч без ручки. (Прим. переводчика: чтобы не резаться, люди иногда обматывают ручку изолентой типа CoffeeScript, но все-равно что-то не то.)

starterpistol.png

Go — это собраный вручную из найденых на свалке кусков “if err != nil” пистолет. Также он стреляет табами вместо пробелов.

3dprintedgun.png

Rust — это пистолет, напечатанный на 3D-принтере. Пока что сыро и ненадежно, но когда-нибудь обязательно выстрелит!

hammer.png

bash — это тот самый проклятый молоток, для которого при работе все выглядит как гвозди, даже ваши пальцы.

doublebarrel.png

Python — это двустволка “v2/v3”, но стрелять можно только из одного ствола. Каждый стреляет из того, который ему больше нравится и никогда не знаешь наверняка, из какого придется стрелять в следующий раз.

rubysword.png

Ruby — украшенный рубинами меч. В общем ничего особенного, но выглядит круто — поэтому его и выбирают.

hose.png

PHP — шланг, которым нужно соединить выхлопную трубу с салоном авто и запустить двигатель, чтобы убить (Прим. переводчика: соответственно и попахивает не очень).

spaceweapon.png

Mathematica — низкоорбитальная лазерная пушка. Может делать много прикольных вещей, но далеко не всякий может ее себе позволить.

donkeylaser.png

C# — мощная лазерная пушка, установленная на тщедушном ослике. И да, без ослика она практически не работает.

ai.png

Prolog — это оружие с искусственным интеллектом. Оно, конечно, выполняет поставленную задачу, но заодно создает несколько терминаторов, которые возвращаются в прошлое и охотятся за вашей матерью.

shiv.png

Lisp — это целый подкласс опасных бритв и заточек разного типа. Используется только весьма опасными, зачастую сумасшедшими, типами.
@alrusdi
карма
125,2
рейтинг 0,0
Программист python
Реклама помогает поддерживать и развивать наши сервисы

Подробнее
Реклама

Самое читаемое Разработка

Комментарии (53)

  • +8
    Erlang, Haskell, D к заточкам? Боюсь даже спрашивать про Ассемблер или Brainfuck :)
    • +21
      Brainfuck это пояс шахида. Используешь 1 раз и то чтоб поржать.
    • +8
      Ассемблер — меч катана. Для того, чтобы изготовить сам меч нужно потратить тучу времени и если ты не разбираешься во всех мельчайших тонкостях — у тебя ничего не получится. Но выполненный мастерами меч превосходит все ожидания.
      • +7
        ну и мастеров изготовляющих ассемблерные мечи — два с половиной человека
        • +1
          Третий половину потерял в процессе заточки?
      • 0
        <зануда>Сама по себе сабля — ерунда. Делалась из дешевых металлов(некачественных), трофейного оружия и всякого хлама. Крошилась и ломалась с завидной регулярностью. </зануда>
      • 0
        В таком случае, ассемблером должны быть:
        Уголь, Меха, Камни (для постройки доменной печи), молоты, наковальня, разные наборы напильников и точильных камней, а так же ОЧЕНЬ большой толмуд по тому, детально описывающий процесс каждого удара на различных типах металла и наковален. Причём, будет идти для каждой наковальни в комплекте и несколько отличаться толщиной для разных версий наковален.
        Вероятно, я добавил что-то лишнего, но в целом… собирать это как-то нужно =)
    • +8
      > Brainfuck
      Вы палите наугад из безумной смеси пистолета и экскаватора урановыми медведями. В конце концов вам удается попасть в изогнутую по синусоиде «ногу».
    • +1
      Ассемблер — это грабли, но на них можно наступать несколько миллионов раз в секунду ;)
      • 0
        Или ядерная бомба :)

        А ещё это write-only язык :)
        • 0
          Конвертеры никто не отменял :-)
  • +7
    PHP обидели, а Prolog превратили в «I'm sorry, Dave...» какой-то… Тоже мне HAL.
  • +2
    Вечноживая классика про выстрел в ногу.
  • +1
    Ada — Винтовка Мосина — не все помнят, но есть и ценители, зато надежно и безопасно.
    • +2
      помнят не все, но мало кто может ценить
      • –1
        Вернее ценить могут не только лишь все, мало кто может это делать.

        Простите, не удержался xD
  • –4
    Freepascal — ППШ. Странный пулемет для мелкокалиберного 7x62 кода, используется в России, Вьетнаме и прочих забытых уголках земного шарика.
    • –1
      паскаль — это автомат калашникова — используется в России и всяких угандах по инерции, больше нигде не нужен
      • –5
        в 14:00 в интернет вернулись из школы семиклассники и заминусовали наши комментарии и карму :)
        • +5
          Имхо, безосновательная ненависть к языку программирования, потому что он не пропиарен, и его, «о боже», используют в школах для обучения, и есть удел семиклассников.
          Ведь все крутые дяди программируют на c++ !!!111
          • –2
            возвращайтесь в эту тему через 7 лет :)
            • 0
              Почему через 7 именно?
      • 0
        Не, АК активно используют в продакшене.
        А Pascal это лазерный тир типа электноника ЭЛТ-1 (если кто помнит такие вещи).
      • 0
        В контексте оригинальной статьи, АКМ — это как раз C имхо:

        «C is an M1 Garand standard issue rifle, old but reliable.»

        «C — как армейский АКМ: старый, но надежный.»

        Берданка тут вообще непонятно с какого боку.
        • +1
          Garand все-таки карабин, а не штурмовая автоматическая винтовка.
          • 0
            Тут это совершенно не важно — важен аналогичный культурный стереотип. В России, «старый, но надежный» — это однозначно АК. Берданка, да и мосинка — это уже антиквариат.

            По вашему критерию там должен быть СВТ, но я не думаю, что много народу (из тех, кто не в теме) вообще помнит, что это такое.
            • 0
              Скорее СКС, но в целом и правда пофигу.
    • 0
      Я бы сказал, что Паскаль это воздушка :)
      • –1
        мне этой воздушкой 5 кармы отковыряли сразу после ресета )
  • +26
    фигня какая то
  • +5
    улыбнуло, почему забыли Delphi? =)
  • +4
    Перевод ужасный. Перечитайте оригинал и сделайте нормально. Cursed — проклятый, а не чертов. Про Python вообще отсебятина.
  • +1
    Зря вы так про Scala-то. «Programming in Scala» от Одерски и Ко. одна из лучших официальных книг-введений в язык программирования, сайт и документация отличные, да и в сети уже куча материалов в виде различных статей и бложиков. Не засчитывается.

    P.S. С утра пораньше разговариваем-с с переводом, да.
  • +8
    Очередная статья про то «как выглядели бы языки программирования...», имеющая мало общего с реальностью.
  • 0
    Все сравнения имели что-то общее с реальностью… до тех пор, пока не оказались собранными в один пост. С++, к примеру, получился менее дальнобойным, чем Си. Почему?
    • 0
      Пули тяжелее
      • 0
        Хорошо, а почему тогда он менее дальнобойный, чем Python?
  • 0
    Python для меня как какая нибудь крутая ионая пушка. Стреляет точно по цели, но перезарядка занимает время. Чтобы ускорить перезарядку придумали PyPy, cpython, jpython — но с риском что пушка в любой момент развалится.
  • +3
    Вы упустили ключевой момент о PHP:

    then you sit in the car and turn the engine on
  • 0
    Спасибо за статью. А почему бы ещё и источник не указть?
    bjorn.tipling.com/if-programming-languages-were-weapons
    • 0
      Указал же в самом начале статьи)
  • 0
    Спасибо за статью, Вы продлили мне жизнь лет на 5))))
  • 0
    C# — мощная лазерная пушка, установленная на тщедушном ослике. И да, без ослика она практически не работает.

    А можно про ослика поподробней?
    • 0
      yet another выпад в сторону Windows, полагаю. Но лучше у автора уточнить.
    • 0
      Наверно имелось «Работает только под windows». Mono не в счет.
      • –1
        Почему не в счет?
  • –6
    Жалко девелоперов из Днепра…
    image
    • 0
      Что вы хотели сказать этой картинкой — и почему она оказалась именно тут?
      • 0
        «но если лента с патронами заедает на NullPointerException, то оружие взрывается и убивает стрелка.» девы стрелки, шутка-же…
  • 0
    Немного «притянуто за уши», как мне показалось.
    Однако есть, пожалуй, одно сравнение, которое мне кажется вполне логичным.

    LabVIEW — это однозначно колючая проволока:

  • +1
    Про Python немного неверный перевод. Напишу сюда свою попытку:

    «Python is the “v2/v3” double barrel shotgun, only one barrel will shoot at a time, and you never end up shooting the recommended one. Also I probably should have used a line tool to draw that.»

    «Python “v2/v3” — двуствольное дробовик, но стрелять получится только каждым стволом по-отдельности, но вам никогда не удасться пострелять из предпочтительного. И мне, наверное, следовал использовать специальный скрипт, чтобы нарисовать его.»

    Надеюсь я правильно понял шутку про «line tool», что имелось ввиду удобство написания на питоне утилит командной строки («command line tool»), в виду чего их полно на все случаи жизни, и порой на самые нетривиальные задачи (такие, как нарисовать дробовик) их уже кто-то да написал — надо только найти.

    ЗЫ: вообещ расшифровка некоторых шуток не помешала бы. Я, например, про Prolog не понял. Требую КО в комментах =)
  • 0
    Обосрали все скриптовые языки)
  • 0
    Автор ещё просто не знаком с такой штукой, языки IEC_61131-3 :)))

    Релейная логика и функциональные диаграммы — это натурально Visual Assembler :)

    А уж если пользоваться IL (который, в сущности, ассемблер) — то прострелить себе ногу в трёх местах одним выстрелом можно легко и непринуждённо. Даже не придётся, как в оригинальной статье, самому собирать ногу и дробовик :)

Только зарегистрированные пользователи могут оставлять комментарии. Войдите, пожалуйста.