LINUX.ORG.RU
ФорумTalks

История Python

 ,


0

2

Читал тут статью о возникновении Python и его воспарении практически над всеми устальными ЯП; оказалось, что есть некоторые общие моменты с историей возникновения C++ и Linux, а именно:

1) проект не появился бы на свет, если бы существовало какое-то конкретное ПО, которое тогда было востребовано в работе над конкретным проектом, т.е. инструмент не являлся результатом какой-либо исследовательской работы (типа Haskell), а преследовал чисто утилитарные цели (в случае с Python была необходимость работы с ОС Amoeba (проект Таненбаума!), для которой нормальной реализации шелла не было, а писать административные скрипты на С было, очевидно, лень);

2) автор поделился результатами своей работы с общественностью на самых ранних этапах разработки (т.e. никакого желания срубить бабла у него не было);

3) автор не предполагал, что инструмент получит мощный импульс развития и станет мега-популярным в самых разных областях применения.

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

P.S. ну и напоследок, стоит отметить, что эта тройка (С++, Python и Linux) оказали гигантское влияние на развитие индустрии ПО. Думаю, что не будет преувеличением сказать, что разбираясь в достаточной мере в этой тройке технологий, специалист всегда сможет найти себе работу, как минимум еще лет 20.

★★★★★

Последнее исправление: seiken (всего исправлений: 1)

То что написал оно и про Perl вполне себе также. Да и когда Perl был популярен python был в качестве бедного родственника.

Jopich1
()
Последнее исправление: Jopich1 (всего исправлений: 1)

По сути Unix/C, а потом и BSD так же появились. Первые два - плоды развлечения двух ребят в недрах корпорации, насколько я помню исключительно just for lulz. Третья - ковыряния студентоты типа Билла Джоя в Unix'е. Тоже не для «бабла срубить».

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

То что написал оно и про Perl вполне себе также. Да и когда Perl был популярен python был в качестве бедного родственника.

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

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

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

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

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

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

Здесь важно соотношение удобочитаемого ко всему объему существующего кода. Очевидно, что если ЯП запрещает писать крипто-однострочники, удобочитаемого кода на нем будет больше, чем на ЯП, подобные крипто-однострочники позволяющих.

seiken ★★★★★
() автор топика

Python и его воспарении практически над всеми устальными ЯП

круто!

как восприл, так и воспадёт.

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

В смысле, не нравятся Python/С++/Linux?

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

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

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

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

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

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

если ЯП запрещает писать крипто-однострочники

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

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

Однострочники - умышленная обфускация, её в расчёт не берём. А вот завернуть 100500 методов в классы, сто раз их наследовать и нихера уже непонятно. Тут и отступы не помогут.

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

Решающую роль играют не запреты, а возможности.

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

IPR ★★★★★
()

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

Потому, C/C++/Perl.

Deleted
()

и его воспарении практически над всеми устальными ЯП

ну прямо таки воспарил. обычный visual basic под unix, который не превращал 100 строк в не читаемую кашу и появился достаточно вовремя. только и всего.

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

Обоснуй.

См. табличку в разделе «Expressiveness»: https://en.wikipedia.org/wiki/Comparison_of_programming_languages#Expressiveness

избранные тэги: rust

А, нет. Не надо.

Для протокола: считаю, что у rust серьезные проблемы как с читабельностью, так и с выразительностью.

Manhunt ★★★★★
()
Последнее исправление: Manhunt (всего исправлений: 2)
Ответ на: комментарий от vtVitus

обычный visual basic под unix

Васик неплох, но по сравнению с питоном недоразвит. Примерно как мушкет по сравнению с гшг.

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

См. табличку в разделе «Expressiveness»

Тобишь python выразительный как perl? 😁

Колись, это ты нарисовал табличку перед тем как скинуть?

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

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

Ну мы видим на практике, на сколько перл популярен, со своим «есть множество путей сделать это». И я считаю, что именно из-за этой философии (частью которой, несомненно является возможность напыдания «криптострочников») перл так сдал по сравнению с питоном.

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

Ну мы видим на практике, на сколько перл популярен, со своим «есть множество путей сделать это»

О какой популярности ты говоришь, и чем её меряешь?

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

В задницу эти первоисточники

Ну, при таком отношении к делу, становится ясно, почему троица «C/C++/Perl» — твой выбор.

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

причём тут доразнит/недоразвит. пистон создан для тех же целей для которых создавался vb. что и определило его востребованность в среде *nix так как ниша пустовала. никаких чудес и магии.

vtVitus ★★★★★
()

унеру звали уже?

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

А как пишут на Фортране?

Можно пример известного проекта где код плохо оформлен и как нужно было оформить фрагмент того кода?

Upd, тут подсказали, что у тебя в тэгах rust, поэтому вопрос снимается.

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

На шелле красивый код не сделаешь. Там всё зависит от внешних утилит GNU типа ‘awk’, и параметры к ним для роботов писаны. Почитай слакбилды, там с ходу разобраться иной раз не просто.

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

Если речь о регулярках, то они ни в одном языке красиво не выглядят.

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

из-за этой философии, частью которой, несомненно является возможность напыдания «криптострочников»

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

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

И с тобой все ясно, если для тебя perl и python обладают равной выразительностью.

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

Да всем

Качеством экосистемы тоже?

Хотя бы кол-вом вакансий

На питоне больше чем на с++, питон популярнее с++?

и ассортиментом литературы.

И количеством хелловордов?

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

Да всем

Качеством экосистемы тоже?

О-оо, качество экосистемы ,) Мог бы ты показать мне полноценный pure-perl xml-парсер?

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

Я кажется понимаю для кого создавали питон и го. И системд.

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

тебе в перле хватит регекспов для парсинга xml

Мне перла уже хватило. Больше не нужно: горшочек, не вари.

ЗЫ а xml регулярками лопатить - это и есть true perl way? :D

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

Мне перла уже хватило.

Тебе не могло его хватить, если тебе хватает pypi. Это признак того, что безногому хватило бега, бомжу еды. Сюр. Не убедил.

ЗЫ а xml регулярками лопатить - это и есть true perl way? :D

Я хотел тебе предположить либу, думая что ты говоря о инфраструктуре скинешь чтото нормальное. Но pipy - если для тебя это инфраструктура, то регулярки к xml тебе хватит с головой. Даже overhead, мой неприхотливый друк.

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

пистон создан для тех же целей для которых создавался vb

А для каких целей создавалось то и другое? Допустим, в случае питона:

A general description of Python

Python is a high­level general purpose programming language:
● Because code is automatically compiled to byte code and executed, Python is suitable for use as a scripting language, Web application implementation language, etc.
● Because Python can be extended in C and C++, Python can provide the speed needed for even compute intensive tasks.
● Because of its strong structuring constructs (nested code blocks, functions, classes, modules, and packages) and its consistent use of objects and object­oriented programming, Python enables us to write clear, logical applications for small and large tasks

Неужели VB ровно под это же заточен? ;)

PS Впрочем, я не согласен с цитатой в той части, что «Python can provide the speed needed for even compute intensive tasks».

Manhunt ★★★★★
()
Последнее исправление: Manhunt (всего исправлений: 4)
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.