vitus_wagner: My photo 2005 (Default)
[personal profile] vitus_wagner
А ведь на вопрос:

- Откуда вы взяли, что три великих добродетели программиста это Лень, Гордыня и Нетерпение?

- От «Верблюда» - вполне содержательный ответ.

Date: 2020-05-03 04:11 pm (UTC)
dzz: Dizzy の冬 (Default)
From: [personal profile] dzz
А мне перл как-то не зашёл. Т.е. я его, в принципе, умею, но много лет избегаю по возможности.

Date: 2020-05-03 04:33 pm (UTC)
nasse: (Default)
From: [personal profile] nasse
У меня питон в голове не укладывается :(

Date: 2020-05-03 06:51 pm (UTC)
dzz: Dizzy の冬 (Default)
From: [personal profile] dzz
Я с 1.5.2 начинал, так что эволюция уже не пугает.

Но с учётом того, 2 сейчас стабилен, а в 3-й приезжают новые фичи, знание "трёшки вообще" тоже не спасает, всё равно приходится либо учиться, либо оставаться на двойке.

Учиться, IMHO, интереснее.
Edited Date: 2020-05-03 06:52 pm (UTC)

Date: 2020-05-03 06:28 pm (UTC)
filin: (Default)
From: [personal profile] filin
Есть некоторый критический объем кода, до которого питон работает плохо. И некоторый критический объем кода, после которого на практике питон работает плохо. Довольно маленький. В смысле, если видишь программу на питоне больше этого размера — она будет работать плохо. Эмпирическое наблюдение.

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

Date: 2020-05-03 11:10 pm (UTC)
ext_646638: (Default)
From: [identity profile] rdia.livejournal.com
Это, кстати, офигенная идея - взять Объективного Верблюда (который, по-сути, для пользователя - это компилируемый Питон) и совместить с Питоном интерпретируемым. То есть, сделать хороший FFI для Питона в ML.

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

Date: 2020-05-03 07:06 pm (UTC)
dzz: Dizzy の冬 (Default)
From: [personal profile] dzz
> до которого питон работает плохо

Развве что в случаях, когда интерпретатор стартует дольше, чем работает сам код. Но это в большей степени проблема маломощных компьютеров на ARM-платформе.

> если видишь программу на питоне больше этого размера — она будет работать плох

Тут от кода сугубо зависит. Выполнение линейного кода в 10к и даже в 100к строк при соблюдении ряда условий будет работать отлично, но это, скорее, академический пример. Но, на практике, монолиты в 2-3к строк в наших проектах работают без проблем.

Date: 2020-05-03 07:23 pm (UTC)
filin: (Default)
From: [personal profile] filin
> > до которого питон работает плохо

> Развве что в случаях, когда интерпретатор стартует дольше, чем работает сам код. Но это в большей степени проблема маломощных компьютеров на ARM-платформе.

Не, я скорее про писание на питоне. До некоторого размера получается намного больше кода, чем на перле, шелле или tcl, что пропорционально увеличивает количество ошибок и ухудшает читаемость кода.

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

> > если видишь программу на питоне больше этого размера — она будет работать плох

> Тут от кода сугубо зависит

Разумеется. Но опыт показывает, что начиная с некоторой границы управляемости питона становится недостаточно, и (чужая) программа на нём хорошо работает только пока в окружающей среде всё хорошо. А как только хорошо не всё, так сразу эти ситуации начинают обрабатываться некорректно. Это по сравнению с примерно того же объёма функциональности и области применения программами, написанными даже на C, который, по идее, существенно многословнее.

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

Date: 2020-05-03 07:48 pm (UTC)
dzz: Dizzy の冬 (Default)
From: [personal profile] dzz
Сугубо IMHO, компактность перлового кода на небольших объёмах достигается за счёт подхода "write only", когда приносится в жертву читаемость. Мейнтейнить такой код неавтору (да и автору через год-два после прекращения разработки) тяжело и часто бессмысленно, проще заново написать.

Сейчас, кстати, ест занятный тренд разработки системных скриптов на питоне вместо шелла, и в ряде случаев это бывает оправдано. Шелл-скрипт на 300 строк, безусловно, явление неуникальное (у нас в 1996 году целый интернет-биллинг на ksh работал, а HP в бытность живым разрабатывал сложные кросс-платформенные среды на sh), но переход через границу десятка осмысленных команд подряд обычно уже заставляет задуматься о смене языка.

> написанными даже на C, который, по идее, существенно многословнее.

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

Date: 2020-05-05 01:24 am (UTC)
dzz: Dizzy の冬 (Default)
From: [personal profile] dzz
Дык, "все компиляторы C/C++ прекрасны одинаково, а безобразен каждый по-своему" :)

Date: 2020-05-03 11:07 pm (UTC)
ext_646638: (Default)
From: [identity profile] rdia.livejournal.com
Там роялит количество ветвлений. Грубо говоря, одно ветвление - это два варианта, а десять ветвлений - это от 11 до 1024 вариантов.

Date: 2020-05-04 06:53 am (UTC)
From: [identity profile] tzirechnoy [lj.rossia.org]
А что, есть какой-то объём кода, на котором питон работает хорошо?

PS За что я нелюблю питон -- на нём все программы падают.
Вот на Си -- не все, есть хорошо написанные. На C++ тожэ. На перле, опять жэ. А на питоне -- все, никто не смог преодолеть обработку стандартных исключительных ситуацый на питоне.

Date: 2020-05-05 12:33 am (UTC)
dzz: Dizzy の冬 (Default)
From: [personal profile] dzz
(*facepalm*)

Обработка exception-ов в питоне не есть сокровенное знание и чёрная магия, это просто часть культуры языка, которой, увы, не все владеют :)

Ну есть же туча гайдов на эту тему, и для начинающих, и для продвинутых питонеров.

Profile

vitus_wagner: My photo 2005 (Default)
vitus_wagner

July 2025

S M T W T F S
  12345
6789 1011 12
13141516 17 1819
20212223 242526
2728293031  

Most Popular Tags

Page Summary

Style Credit

Expand Cut Tags

No cut tags
Page generated Jul. 29th, 2025 05:13 am
Powered by Dreamwidth Studios