nixp.ru v3.0

19 января 2017,
четверг,
18:14:44 MSK

DevOps с компанией «Флант»
slice написал 21 июля 2004 года в 11:39 (487 просмотров) Ведет себя как мужчина; открыл 39 тем в форуме, оставил 244 комментария на сайте.

Почему многие сторонники Python говорят о том, что в Perl много ненужного, что у него сложный синтаксис и что у него куча ограничений? Причем авторы перл-руководств ничего о Питоне не говорят.

«Python применим к более широкому кругу задач чем awk и даже Perl»

Цитата одной из книг по программированию на Питоне.

Другой автор утверждает, что в perl ему не нравится отсутствие «средств каскадной обработки исключений, множественного наследования и пространства имен». Что у найдя для себя Питон он обнаружил в нем легкий синтаксис, удобство работы и собирался его преподавать детям. Я же пробежавшись по книге не увидел ничего такого чего нельзя было бы реализовать в Perl.

Я понимаю что наверно это их личное ИМХО, и все же складывается впечатление, что Питон просто идеальный язык для web-программирования и автоматизации рутинной работы. Что же интересно такого в нем есть, чего нет в Perl?

В питоне есть правильный ООП. Лямбда функции, более грамотная работа со списками. Высокий уровень абстракции. Питон годится для сложных проектов, код на питоне более прозрачный. А перл — для задач, делаемых «на коленке». Кстати, из-за своих средств по обработке списков питон близок к функциональным языкам. А это уже отдельная песня…

myst

С другой стороны Perl незаменим при обработке текста. А ещё лучше юзать Ruby — это что-то среднее между Python & Perl.

anonymous
myst
С другой стороны Perl незаменим при обработке текста.

На мой взгляд, и PERL и PYTHON предоставляют одинаковые возможности для обработки текста.

Uncle Theodore

Почитайте у Реймонда. http://www.linuxjournal.com/article.php?sid=3882 В общем-то, он все правильно сказал.

Good Luck,

UT

myst

А я с Рэймондом не согласен. Вот например как на Python проверить, что файл существует и является symlink’ой? На Perl легко и просто (-l «filename»). А на Python?

anonymous

Легко

os.path.exists(path) — существует или нет

os.path.islink(path) — сим. ссылка или нет

myst

Хм… и вправду. А я всегда делал:

import os

from stat import *

S_ISLNK(os.stat(«filename»)[ST_MODE])

onrue

> Лямбда функции, более грамотная работа со списками.

Это то, чего в лиспе еще в 50-ых годах было?.. Фи…

http://paulgraham.com/diff.html

ecobeingecobeing.ru
Экология и вегетарианство на благо всем живым существам Планеты.