Ответы:
у всех свои взгляды на языки программирования..
я бы perl посоветовал :) хотя питон тоже неплох
Лучшего языка нет. И это хорошо. Монополии редко когда помогали прогрессу. А вот здоровая конкуренция - да.
Python по крайней мере хороший язык, но уж точно не самый универсальный :). Каждый ЯП занимает свою нишу, и, может быть, он как-раз таки "универсален" в ней.
Самый универсальный - пожалуй, С++, что подтверждается практикой. А питон хорош разве что по сравнению с другими поделками для начинающих типа PHP. Одной динамической типизации уже достаточно, чтобы лично я не называл такой язык хорошим.
Нет лучшего языка. Инструмент выбирается под задачу.
ИМХО C/C++ и Perl
Питон изучал... не понравился
to lightcaster о динамической типизации.
Итак, чем плоха динамическая типизация. Если кратко, то динамическая типизация плоха всем. Теперь развернуто. Одним из главных параметров качества языка является его способность предотвращать ошибки программиста, а допущенные - выявлять как можно раньше. Статическая типизация позволяет выявлять большинство ошибок, связанных с неправильными типами, еще на этапе компиляции. А так как большое количество других ошибок (например, поменял местами параметры вызова функции) часто приводят опять же к несовпадению типов, статическая типизация становится мощнейшим средством устранения ошибок еще на этапе компиляции или даже при написании кода в среде, если среда умеет сверять параметры. А что нам дает динамическая типизация? Ни-че-го. На первый взгляд кажется, что удобно, когда в переменную можно запихнуть все что хочешь, но на самом деле в большинстве алгоритмов четко известно, что именно и какого типа будет храниться, а случаи, когда это заранее неизвестно, встречаются _редко_ и решаются (гораздо более надежно) шаблонами проектирования или специальными библиотеками типа boost::any. Таким образом, динамическая типизация означает только то, что авторы языка поленились делать статическую.
На вопрос ответил, дискутировать дальше не буду. Так как я начинал еще с программирования в кодах, за которым шли FORTRAN, PL/1 и BASIC, боюсь, сегодня мои убеждения в области языков уже ничего не изменит.
На Питоне действительно не работал, несколько раз смотрел его, натыкался на очередной косяк в проектировании языка и забивал. Впрочем, это не имеет значения, так как опыта работы с такими языками, начиная с бэйсика, предостаточно.
У каждого языка есть достоинства и недостатки. Все зависит от поставленной задачи. Что-то лучше сделать на python. А что-то на С++ или PHP.
2crimaniak: вы бы таки попробовали
to lightcaster:
Да, действительно, "Дискутировать похоже смысла нет". Судя по тому, что Вы полностью проигнорировали мои аргументы в пользу статической типизации, Вам они пока непонятны. Ну ничего, придет с опытом. Пишу еще один ответ, так как просьба показать аналог - это конструктивно. Пожалуйста, аналог на С++:
>>> Одним из главных параметров качества языка является его способность предотвращать ошибки программиста, а допущенные - выявлять как можно раньше. Статическая типизация позволяет выявлять большинство ошибок, связанных с неправильными типами, еще на этапе компиляции.
Одним из важных критериев языка является возможность быстро и легко писать код. И если это избавляет от написания кучи декларативных конструкций, то почему бы и нет. К примеру, вы пользуетесь IDE? Я не пользуюсь. Мне достаточно vim'а. А вот на жаве я не могу писать в vim'е - слишком много кода.
Нету ни лучших ни худших языков.
Есть языки с разными уровнями абстракции. Питон как раз относится к языкам с очень высоким уровнем абстракции,
что позваляет быстро разрабатывать приложения, писать меньше кода( меньше кода - меньше ошибок ).
В отличии от С/C++(и прочих более низкоуровневых языках) - не нужно парится в выделением и удалением памяти, в питон встроен garbage collector.
Есть и свои минусы - программы на питоне работают в разы, а то и в десятки раз медленнее аналогичных программ на Си/Си++
15 лет назад