foxhound_lj (foxhound_lj) wrote,
foxhound_lj
foxhound_lj

Categories:

Моё отношение к ООП известно. Моё отношение к функциональной ереси ещё хуже.

Тут дело в чём. На "объектной парадигме" ещё можно худо-бедно писать — кривенько, косенько, хаотично, через жопу, с кучей лишних строк, но можно. Поэтому её всё-таки навязали. Функциональную парадигму уже лет двадцать пытаются раскурить, но оно всё никак не взлетает. И не взлетит. Потому что владение ею требует от быдлокодера знания специфического матана, "лямбды и манды", который, вообще говоря, в разработке что пятое колесо. Это лишняя, мусорная информация. Если вам для игры на скрыпочке требуется учить преобразование Фурье и волновое уравнение, а сольфеджию с позициями только во вторую очередь — у вас в консерватории что-то сильно не в порядке.

Задача быдлокодинга — написать программу, которая решала бы поставленную задачу и работала с приемлемой скоростью и надёжностью. Программу выполняет процессор. Он не понимает ни "экземпляры класса", ни "зависимые типы", ни "лямбды", он понимает только ноль и единицу, а точнее, напряжение на контактах.

То есть исходный код сперва должен быть скомпилирован/интерпретирован в машинный. И тот код, что реально выполняется процессором, не имеет никакого отношения к тому, что накорябал быдлокодер. Неважно, как у него в исходнике вычисляется факториал, через цикл или рекурсию, — компилятор напишет как ему удобнее.

И быдлокодеры почему-то в принципе не понимают эту простую истину. Что написанный ими красивенький неговнокод™ — всего лишь представление (одно из возможных) какой-то логики, он существует только у них перед глазами, его видят и читают только они и другие человеки. Потому что он существует только для человеков, и больше он не существует нигде. Это такая художественная литература. Для машин его нет, для них существуют только нули и единицы предопределённых команд процессора. Им плевать на ваши безумные навыки быдлокодинга. Произвести впечатление своими навыками вы можете только на других людей, читающих ваш исходник.

Логика подсказывает, что если исходник будут читать посторонние люди, то писать его следует как можно проще, яснее и лаконичнее. Чтобы никакого "брейнфака". Но в реальности "брейнфак" в виде ООП торжествует, а в виде функциональщины настойчиво пытается повторить успех ООП и занять его место. Причина тут очевидна: быдлокодеры всё-таки людишки, им логика не указ. Им указ понты. Вот потому функциональщина и прочий линукс так популярны у определённой категории населения: делай долго, сложно и через жопу то, что можно сделать просто и быстро — и по выполнении задачи моск наградит тебя эндорфиновым камшотом — ты будешь некоторое время гордиться собой, вон ты какой умный! И ещё можно перед другими хомячками понты раскинуть.

К практическим задачам все эти понты не имеют ни малейшего отношения. Но почему же тогда случается, что иные московские программисты лоббируют в своей говнофирме разработку на Хаскеле? Потому что людишки — внезапно — идиоты. Как бы хорошо они ни владели своей профессией (есть такой тип — учёный идиот). Вот давеча попавшийся на глаза пример:

Программы на Haskell быстрее python, php, ruby (и других интерпретируемых языков). Быстрее Erlang/Java (и других vm-based языков). Обычно медленнее Си, хотя я видел несколько случаев, когда компилятор Haskell выдал результат, превосходящий сишный.

Для любых практических применений производительности Haskell — за глаза и за уши.


Мне здесь непонятно, о какой ещё "производительности" Хаскеля может идти речь, если подразумевается скорость выполнения уже скомпилированной программы? Она ведь уже не на Хаскеле, она в кодах. Если аналогичная скомпилированная программа с исходником на Си работает быстрее, то это показывает не "производительность" языка, а разное качество компиляторов. Или автор имел в виду именно скорость компиляции с Си и с Хаскеля? Но тогда почему он так и не написал? Что вообще такое "производительность языка"?

А просто он мудак.

З.Ы. А кстати, дальше там:

Haskell использует память сравнимо с программами на питоне. Демоны (та часть из них, которая не хранит существенного объёма данных) у нас занимают от 9 до 20 мегабайт. Питоновские демоны — примерно столько же.

Демоны, ёпт. Наверное, я всё-таки был прав об истинных причинах форсинга всего этого говна.

Tags: ИТ, идиоты
Subscribe

  • Big Data

    И к слову, насчёт "всеобщей слежки" и "электронного концлагеря". Я, когда про это слышу, то всегда вспоминаю: ...Мордон же сидел, опершись о…

  • (no subject)

    ( отсюда) Дебилофон (aka быдлофон или дуркафон) — приблуда для идиотов типа prosto_vova: "в нём почта" — у идиотов нет настольного или…

  • (no subject)

    У анал-мануала любопытное: Если по числу крупных боевых кораблей (линкоров, крейсеров, авианосцев) советский флот был флотом маленьким, то по…

  • Post a new comment

    Error

    Anonymous comments are disabled in this journal

    default userpic

    Your IP address will be recorded 

  • 20 comments

  • Big Data

    И к слову, насчёт "всеобщей слежки" и "электронного концлагеря". Я, когда про это слышу, то всегда вспоминаю: ...Мордон же сидел, опершись о…

  • (no subject)

    ( отсюда) Дебилофон (aka быдлофон или дуркафон) — приблуда для идиотов типа prosto_vova: "в нём почта" — у идиотов нет настольного или…

  • (no subject)

    У анал-мануала любопытное: Если по числу крупных боевых кораблей (линкоров, крейсеров, авианосцев) советский флот был флотом маленьким, то по…