LINUX.ORG.RU
ФорумTalks

Претензии хейтеров к Питону

 ,


1

2

По результатам чтения ЛОР.

1) Отступы «легко ломаются при копипасте и редактировании». Этот пункт выглядит как форма фобии, все хейтеры ее упоминают, но нет ни одного воспроизводимого практического примера, когда что-то сломалось с отступами, и поэтому не понятно, есть проблема или нет. Может просто настроить редактор или взять правильный?

2) GIL. Для некоторых применений (numpy) это не проблема.

3) Нет многострочных лямбд. Но есть локальные функции и list comprehensions.

Что еще?

Я не говорю, что Питон надо толкать во все ниши, но просто некоторые высказывания ЛОРовских аналитиков звучат в таком стиле: «что, Питон? Посмотрел. Не_как_в_моêм любимом_языке. Закрыл. Нинужно.» А чего стоят однострочные комментарии экспертов типа «в 21м веке язык без фичи Х - не язык»...

★★★★★
Ответ на: комментарий от Deleted

Это называется «модель акторов».

Deleted
()
Ответ на: комментарий от Deleted

как сейчас модно

Эрланг давно не в моде. И насколько я знаю потоки там не настоящие, это вообще о другом. Тогда это скорее ближе к тем же greenlets и корутинам.

pawnhearts ★★★★★
()
Ответ на: комментарий от Shadow

Не только. Есть Akka, Functional Java, Cloud Haskell, реализаций очень много.

Deleted
()
Ответ на: комментарий от Deleted

Но ты же Понимаешь, что реализация такого для процедурного языка с развесистым типаооп - титанический труд!

Shadow ★★★★★
()
Ответ на: комментарий от Shadow

«Quasar is a library that provides high-performance lightweight threads, Go-like channels, Erlang-like actors, and other asynchronous programming tools for Java and Kotlin.»

Я java не знаю вообще, но под определение «процедурного языка с развесистым типаооп» она наверное подойдет.

Deleted
()
Ответ на: комментарий от Deleted

Ээээ... Там весь сок в jvm. Поэтому с потоками на jvm даже питон работает.

Shadow ★★★★★
()

Слишком низкий порог входа. Приходят Васи и говорят что батьки пайтона. А сами даже не понимают разницу между статической и динамической типизацией.

На самом деле порог входа гораздо выше чем позиционируется, т.к. что бы делать pythonic вещи нужно изрядно погнуть мозг в эту сторону.

Отсюда куча горе специалистов и проги которые падают в самых неожиданных местах со стектрейсами на 2 окна.

pon4ik ★★★★★
()
Ответ на: комментарий от shimshimshim

Как раз то, что нужно для обычной системы на 50-60ядер.

pon4ik ★★★★★
()
Ответ на: комментарий от pon4ik

Слишком низкий порог входа. Приходят Васи и говорят что батьки пайтона. А сами даже не понимают разницу между статической и динамической типизацией.

На самом деле порог входа гораздо выше чем позиционируется

Порог входа как раз низкий. Но вот язык сложнее, чем кажется на первый взгляд.

tailgunner ★★★★★
()
Ответ на: комментарий от tailgunner

Да, в таком изложении моя мысль звучит лучше, но теряется весь её пояснительный смысл.

pon4ik ★★★★★
()
Ответ на: комментарий от tailgunner

Так в рекламках Путон же весь такой простой и понятный, а на деле кукишь. Вот и выходит, что С++11 с STL — не намного сложнее Путхона.

BceM_IIpuBeT ★★☆☆☆
()
Ответ на: комментарий от BceM_IIpuBeT

Так в рекламках Путон же весь такой простой и понятный, а на деле кукишь.

Весь? Значит, реклама тебя обманула. Не верь рекламе и пиши «кукиш» без «ь».

Вот и выходит, что С++11 с STL — не намного сложнее Путхона.

Не выходит.

tailgunner ★★★★★
()
Ответ на: комментарий от BceM_IIpuBeT

Так в рекламках

Боюсь себе представить, как вы с яваскриптом...

Shadow ★★★★★
()

Мне в заголовке лютый нацпол показался, аж удивился, почему тред жив.

Deleted
()
Ответ на: комментарий от WitcherGeralt

Попы

В НАСА?

чтобы быстрее работало

Такой проблемы нет т.к. питон используется по назначению. т.е. управление кластерами, всякие devops задачи, ansible, web. Вычисления делаются на си++ и прочем.

Это только у тебя в воображении если переписать бизнес логику - небольшую прослойку между веб сервером и бд с одного языка на другой, базы данных и кэши волшебным образом станут быстрее ворочаться, но можно конечно фапать на синтетические тесты hello world'ов.

pawnhearts ★★★★★
()

Свитча нет. Без этого всерьез рассматривать язык программирования могут только те, кто сложнее хелловорлда ничего не писал.

Igron ★★★★★
()
Ответ на: комментарий от mittorn

1. Блоки прекрасно ломаются с {}

2. Может Гвидо СПЕЦИАЛЬНО придумал GIL? Или взять себя за шкирку и прочесть откуда появился GIL?

но всё равно нагрузку распределяет не совсем оптимально

Подскажите ЯП который ОПТИМАЛЬНО распределяет нагрузку

dem ★★
()
Ответ на: комментарий от crutch_master

ни для чего серьёзного

Да что вы говорите, а пацаны не в курсе...

dem ★★
()
Ответ на: комментарий от TaV0x222

Вранье. Это однострочная лямбда.

AdvertisingActionEntity action = withTx(() -> {   AdvertisingActionEntity action1 = getActionByName(actionName);   boolean b = action1.getPlugins().isEmpty();   action1.setActive(!b);   return action1; });
dem ★★
()
Ответ на: комментарий от Jopich1

Так 99% прогеров не смогли осилить Zope

dem ★★
()
Ответ на: комментарий от Deleted

У тебя процессор способен исполнять 256 потоков параллельно,

Это у кого такой проц. Даже у моего ТОЛЬКО 80 ядер.

dem ★★
()
Ответ на: комментарий от pawnhearts

Проблема не в моём воображении, а в твоём, которое очень ограничено. И в логике, которая извращена. Ну и в отрицании реальности ещё.

Проблемы с воображением

Бизнес-логика может быть жирной и это нормально. И не надо пытаться переобуваться и говорить, что в этом случае нужен другой инструмент. Питон же не тормозит, да?

Проблемы с логикой

Если что бы то ни было теоритически не является узким местом, это не повод писать заведомо неоптимальное решение (потенциально делая его узким местом). Есть множество других инструментов, затраты на использование которых либо сравнимо с питоном, либо ниже.

Проблемы с реальностью

В отличие от твоего воображения, в реальности питон суют не только в «небольшую прослойку между веб сервером и бд», его, усилиями неосиляторов нормальных языков, прикрывающихся «преждевлеменной оптимизацией», суют везде. Ты выдумываешь кейсы где питон действительно может не быть проблемой, но игнорируешь все остальные, коих большинство.

WitcherGeralt ★★
()
Последнее исправление: WitcherGeralt (всего исправлений: 1)
Ответ на: комментарий от dem

А где он не сбоку припеку?

Ну в C++ же не так. Видно, что над этим сразу думали.

А тут у меня прям рот от удивления открывался, вот от этих приватных полей __field. К которым всё равно достучаться на раз и два можно.

Абстрактные классы тоже весьма отдельный пёрл. Начиная с того, что этого нет из коробки, и надо что-то импортировать (с боку)

Если говорить про более менее нормальное ООП, то тут только Python 4 и всё ломать на.

fornlr ★★★★★
()
Последнее исправление: fornlr (всего исправлений: 3)
Ответ на: комментарий от Igron

Тут про свич многостраничный срач недавно был, говорят if-elif-else хватит всем.

WitcherGeralt ★★
()
Ответ на: комментарий от shimshimshim

Гил становится заметным уже на обычном спайдере в 50-60 потоков

Что ты делаешь в этих 50-80 потоков?

dem ★★
()
Ответ на: комментарий от shimshimshim

Да даже перл и то проще читается.

Нет

dem ★★
()
Ответ на: комментарий от shimshimshim

Да любое приложение в котором много блокирующего i/o требует потоки для нормальной работы.

Нет.

Те же спайдеры и веб-серверы.

Бред

dem ★★
()
Ответ на: комментарий от shimshimshim

Просто в питоне этот способ по-человечески использовать нельзя.

Много лет так делаю, брат жив.

dem ★★
()
Ответ на: комментарий от mittorn
  1. Вкусовщина.
  2. GIL, в той или иной форме, есть в любой скриптоте.
RazrFalcon ★★★★★
()
Ответ на: комментарий от tailgunner

По-моему, это @Bobby_. Так же усиленно постит всякую дрянь в толксы. Ничем другим себя не выдаёт, но по времени регистрации и манере флудить очень на то похоже.

WitcherGeralt ★★
()
Ответ на: комментарий от fornlr

Если говорить про более менее нормальное ООП

Хоть кто-то вспомнил главную фичу: адски костыльные и неудобные средства ООП. Хуже из собратьев только в жс, но там и не претендовали на объектную ориентированность. Даже в перле есть прикольный moose, ептить.

bread
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.