Форум сайта python.su
> Какие проблемы в самом языке?
Я про это ещё год назад писал.
Школапень - У python-а низкий “порог вхождения” по этому часто приходится сталкиваться с разработчиками низкой квалификации.
Динамическая типизация - Для школапени она в радость, но для больших проектов наиболее подходит статическая типизация с выведением типов.
Многопоточность - Можно писать только конкурентные приложения.
Интерпретатор - Приходится таскать интерпретатор, проблемы с дистрибьюцией.
Тормоза - Скорость не очень.
Офлайн
FishHookТы путаешь понятия “язык” и “реализация языка”. Интерпретатор - это реализация языка. А язык - это просто грамматика. Язык есть, а реализаций может вообще не быть ни одной. И вот у языка есть ядро, а есть периферия. Ядро - то, что остаётся неизменным, а периферия - то, что может меняться. Без ядра язык существовать не может, а без периферии - может.
Ядро - это все таки интерпретатор
RodegastНа C, и особенно на C++, я повидал немало таких ребят. От популярности языка это зависит только.
Школапень - У python-а низкий “порог вхождения” по этому часто приходится сталкиваться с разработчиками низкой квалификации.
RodegastДинамическая типизация имеет ряд преимуществ над статической типизацией. Как минимум, код на питоне короче кодов на других языках. А то, что короче, пишется быстрее в несколько раз. Поэтому когда у тебя на одном языке пишется первый компонент, на питоне он не только будет уже написан, но и будут написаны второй и третий компоненты. А где больше компонентов, то и готовее. Короче, больше программ на питоне можно написать за то же время за счёт и, в том числе, динамической типизации.
Динамическая типизация - Для школапени она в радость, но для больших проектов наиболее подходит статическая типизация с выведением типов.
RodegastСделали async - что-то меняется в лучшую сторону. Да часто ли ты на питоне параллелишь программы? Для параллельных программ лучше другие языки брать.
Многопоточность - Можно писать только конкурентные приложения.
RodegastЕсть и другая сторона - развитый REPL, не сравнить с другими языками. Хотя REPL'ы есть и у Ruby, Perl, Lisp, Erlang, Haskell. Но питоновский гораздо развитее этих реплов, по UX он их обгоняет. Очень часто мы подолгу сидим в репле питона и даже этого не замечаем. А сидим мы в нём потому, что он удобный (высокий UX).
Интерпретатор - Приходится таскать интерпретатор, проблемы с дистрибьюцией.
RodegastЧто у тебя тормозит?
Тормоза - Скорость не очень.
Отредактировано py.user.next (Авг. 10, 2017 00:57:30)
Офлайн
py.user.nextЭто ты путаешь и сам себе противоречишь. У языка, как набора синтаксических правил, не может быть “ядра” и “периферии”. Набору правил глубоко пофигу, будет ли какая-то функция стандартной или подключаемой и будет ли она реализована вообще. Язык оперирует самим понятием “функция” и только. “Ядро” и “периферия” лежат исключительно в плоскости реализации.
Ты путаешь понятия “язык” и “реализация языка”. Интерпретатор - это реализация языка. А язык - это просто грамматика. Язык есть, а реализаций может вообще не быть ни одной. И вот у языка есть ядро, а есть периферия. Ядро - то, что остаётся неизменным, а периферия - то, что может меняться. Без ядра язык существовать не может, а без периферии - может.
Офлайн
FishHookВот язык
“Ядро” и “периферия” лежат исключительно в плоскости реализации.
Отредактировано py.user.next (Авг. 10, 2017 07:14:28)
Офлайн
py.user.next
Ты опять не видишь, как сам себе противоречишь? Ну на здоровье.
Офлайн
FishHookНу на этот раз он прав. Язык определяется описанием синтаксиса и семантики. Описание стандартных библиотек это другой документ.
Ты опять не видишь, как сам себе противоречишь?
Офлайн
doza_andКто именно?
Ну на этот раз он прав.
doza_andС точки зрения py.user.next, язык определяется еще и составом встроенных функций, так сказать (цитата) ядром.
Язык определяется описанием синтаксиса и семантики.
Офлайн
> На C, и особенно на C++, я повидал немало таких ребят. От популярности языка это зависит только.
Зависит от “порога вхождения”. Все учителя, врачи, водопроводчики и прочие люди решившие стать программистами (в основном из-за того что программисты типа много зарабатывают) начинают учить python.
> Динамическая типизация имеет ряд преимуществ над статической типизацией
Вот по этому я указал что должен быть автоматический вывод типов.
> Сделали async - что-то меняется в лучшую сторону
Ну async это ни разу не параллельность.
> Есть и другая сторона - развитый REPL, не сравнить с другими языками
Что-то я этого не замечал.
> Что у тебя тормозит?
Нет, но только потому что для ресурсоёмких задач я python не использую.
Офлайн
> интересно получить ссылки на исследования в которых показана более низкая средняя квалификация разработчиков на питоне.
Мы сейчас проблемы Python-а обсуждает. И проблема низкой квалификации вполне актуальна, а исследование тебе никто не проведёт. Это не возможно.
> Я не вижу разницы в таскании интерпретатора или таскании динамических библиотек.
Тогда посмотри на количество тем в которых спрашивают про то как сделать exe-шник. А всё потому что программа для запуска которой нужно что-то доустанавливать выглядит неполноценной.
Офлайн
RodegastЧто же, по-твоему, такое “параллельность”?
Ну async это ни разу не параллельность.
RodegastПрограммистами пытаются стать чаще всего экономисты. Лингвистов-гуманитариев в расчёт не берём, так как они, как правило, просто хотят одну программку написать, потому что она им нужна. Экономисты же пытаются на этом сделать денег и очень фонтанируют идеями, не понимая, что простое окно программы и содержимое под капотом - совершенно разные вещи.
Зависит от “порога вхождения”. Все учителя, врачи, водопроводчики и прочие люди решившие стать программистами (в основном из-за того что программисты типа много зарабатывают) начинают учить python.
Rodegastipython3 попробуй поюзать, там можно и время через timeit внутри замерять, и редактировать предыдущие коды.
Что-то я этого не замечал.
RodegastТы должен знать, что у тебя тормозит. Очень часто питон переводят на сишный бэкграунд. В пример можно привести collections.Counter(), который раньше я не юзал из-за его 17-кратной медленности по сравнению с обычным словарным включением. Но сегодня он переписан уже и нужно юзать только его.
Нет, но только потому что для ресурсоёмких задач я python не использую.
Отредактировано py.user.next (Авг. 10, 2017 12:48:08)
Офлайн