![]() |
Модераторы: LSD |
![]() ![]() ![]() |
|
nerezus |
|
|||
![]() Вселенский отказник ![]() ![]() ![]() ![]() Профиль Группа: Участник Сообщений: 3330 Регистрация: 15.6.2005 Репутация: 13 Всего: 43 |
Однако большинство функций в пхп написано на сишнике, в перле же - в виде модулей на перле(я даже ради интереса с CPAN сачал XSLT и посмотрел, на чем написан он). Выводы сделаешь? ) P.S. А основные тормоза будут все равно из-за сервера, ФС и БД. |
|||
|
||||
korob2001 |
|
||||||||||
![]() Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Комодератор Сообщений: 2871 Регистрация: 29.12.2002 Репутация: нет Всего: 61 |
ООП конечно не такое как в Java. Хотя лично я пользуюсь всегда этим подходом. Пока ещё не столкнулся с какими-то задачами, которые нельзя было бы решить.
Питон сохраняет скомпилиную копию. Потому актуальным будет только первый запуск. Как ты запутываешь код, зависит только от тебя. Perl лишь даёт тебе свободу.
А откуда их интересно позаимствовали? Что-то не много людей пишет регулярные выражения в стиле POSIX.
Там где они нужны он их оставил.
Ты никому и ничего не должен, просто пользуешься Perl сам того не ведая, даже в том случае если пишешь на PHP, который так же был написан изначально на Perl. В Perl тоже много модулей написанных на C. Что-то автору языка не хватило этих утилит в своё время, что собственно и подтолкнуло его к созданию Perl. Почитай историю. Perl создавался не только для обработки текста. Это сообщение отредактировал(а) korob2001 - 30.1.2007, 16:05 -------------------- "Время проходит", - привыкли говорить вы по неверному пониманию. "Время стоит - проходите вы". |
||||||||||
|
|||||||||||
Hidrag |
|
|||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 877 Регистрация: 9.4.2005 Где: JDK Репутация: нет Всего: 25 |
Угу, гораздо удобнее написать все что нужно на одном языке и быстро получить результат чем использовать кучу утилит... -------------------- ![]() |
|||
|
||||
arto |
|
|||
Эксперт ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 1495 Регистрация: 31.10.2004 Репутация: нет Всего: 40 |
http://forum.sources.ru/index.php?showtopi...mp;view=showall -- вы там так и не ответили, почему перл и питон показывают одинаковую производительность....
может тут расскажете? |
|||
|
||||
nerezus |
|
|||
![]() Вселенский отказник ![]() ![]() ![]() ![]() Профиль Группа: Участник Сообщений: 3330 Регистрация: 15.6.2005 Репутация: 13 Всего: 43 |
arto, одинаковую? ну у меня была разница в 2.15 вроде раз )
Добавлено @ 17:02 Ааа, так это ты. Ну так поставь последнюю версию питона и сравни ) |
|||
|
||||
arto |
|
|||
Эксперт ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 1495 Регистрация: 31.10.2004 Репутация: нет Всего: 40 |
пока пакет не сделают -- лень
а с той версией что не так? обещали 30%... |
|||
|
||||
nerezus |
|
||||
![]() Вселенский отказник ![]() ![]() ![]() ![]() Профиль Группа: Участник Сообщений: 3330 Регистрация: 15.6.2005 Репутация: 13 Всего: 43 |
Пакеты были уже сразу, а в репозиториях они были уже через неделю(на примере дебиана) или сразу же(дженту). Или у тебя дистр эксклюзивный, а его единственный ментейнер забросил полгода назад? Ну тогда скачай пакет из репозитория чужого дистрибутива. Или собери пакет сам.
|
||||
|
|||||
arto |
|
|||
Эксперт ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 1495 Регистрация: 31.10.2004 Репутация: нет Всего: 40 |
я про python2.4 vs. perl 5.8.8
а собирать самому пакет -- лень. |
|||
|
||||
skyboy |
|
|||
неОпытный ![]() ![]() ![]() ![]() Профиль Группа: Модератор Сообщений: 9820 Регистрация: 18.5.2006 Где: Днепропетровск Репутация: 1 Всего: 260 |
||||
|
||||
korob2001 |
|
|||
![]() Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Комодератор Сообщений: 2871 Регистрация: 29.12.2002 Репутация: нет Всего: 61 |
В POSIX тоже есть регулярные выражения, только ими практически никто не пользуется. Речь идёт о регулярных выражениях в стиле Perl.
Это сообщение отредактировал(а) korob2001 - 30.1.2007, 18:32 -------------------- "Время проходит", - привыкли говорить вы по неверному пониманию. "Время стоит - проходите вы". |
|||
|
||||
pythonwin |
|
||||||||
![]() Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Участник Сообщений: 2529 Регистрация: 18.4.2006 Где: за компом Репутация: 1 Всего: 36 |
из скриптовых php не самый быстрый -
я подобное в питоне делал в интерпритаторе, правда у меня это вышло строк на 10, но если применить ФП, то думаю строи в две-три можно было сделать, хотя если немного напрячся, то и в 1 строку (хотя много ума не нужно чтобы написать очень плохо читаемый код)
|
||||||||
|
|||||||||
diam |
|
|||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 348 Регистрация: 23.1.2005 Где: Екатеринбург Репутация: нет Всего: 16 |
grep/sed/awk годятся до определённой степени сложности анализа и предоставления информации, perl гораздо удобнее их. В том же самом php, кстати, функции ряд функций обработки текста взят из perl, например, регулярные выражения. Так же можно сказать и про php, который ты упомянул. Кому-то и Haskell кажется сложным, а кому-то даже python и ruby. Каждому своё.
У любого ЯП есть особенности, если тебе они кажутся сделанными через "отверстие", то это значит только то, что тебе эти особенности не нравятся. Подводя итог, хочу сказать, что нет плохих или хороших языков. Любой язык хорош для решения определённых задач с точки зрения определённой философии, заложенной в язык. И если тебе не нравится язык, то ты просто не приемлешь его философию, вот и всё. Конструктивная критика и философии, и любого языка чаще всего приветствуется людьми, а тупое поливание помоями - есть признак некультурности. Ведь ты же не оскорбляешь человека за то, что он не придерживается твоей точки зрения (хотя бывают и исключения, конечно, везде есть некий порог, после которого польются некрасивые слова)? Так и с языком и его философией. Если же взглянуть с точки зрения профессионального программиста, это вообще неправильно - говорить, что ЯП - плохой. У профессионала чаще всего есть определённые ограничения на выбор инструментария, но с выбранным инструментарием он работает не смотря на свои предпочтения. Бывает даже немного неприятно, но се ля ви, как говорится. |
|||
|
||||
nerezus |
|
||||
![]() Вселенский отказник ![]() ![]() ![]() ![]() Профиль Группа: Участник Сообщений: 3330 Регистрация: 15.6.2005 Репутация: 13 Всего: 43 |
|
||||
|
|||||
Shaggie |
|
|||
![]() Опытный ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 570 Регистрация: 21.12.2006 Где: outer space Репутация: нет Всего: 72 |
В Перл регулярные выражения встроены в сам язык, а не вызываются из функций/модулей (как в любом другом). Такой подход был принят вследствие общей направленности языка. И даже сейчас, когда Перл перерос в ЯП общего назначения, встроенные и потому очень простые в применении регулярки являются одной из отличительных его особенностей. Про обобщающую и расширяющую роль Перл по сравнении с вышеупомянутыми утилитами было уже много сказано. А вот насчет функций PHP... В PHP действительно очень много функций для работы с регулярными выражениями. Вот только это его вечное стремление для каждой операции иметь по пять мало различимых функций не есть проявление богатства, имхо конечно. Смотрим: стандартные функции - 1) ereg(), 2) eregi(), 3)ereg_replace(), 4) eregi_replace(), 5) split(), 6) spliti(). Спросите, зачем так много? На самом деле здесь три функции - поиск, замена, разделение на подстроки. Только в двух вариантах - с учетом регистра и без учета. А если в одной строке нужно найти часть в верхнем регистре, часть неважно в каком, и часть в нижнем? Придумаем что-нибудь, где наша не пропадала ![]() А что же тогда использовать? О, разработчики пошли нам навстречу и реализовали в языке поддержку регулярных выражений, аналогичных использующимся в Перл. Они и работают пошустрее, и возможностей у них поболее... Вот они: 1) preg_grep(), 2) preg_match(), 3) preg_match_all(), 4) preg_quote(), 5) preg_replace(), 6) preg_replace_callback(), 7) preg_split(). Опять много? Но, кажется, они побольше могут... Там тоже есть много интересного, в частности, непонятно, зачем в функции preg_match_all() возвращать совпадения в хитрющщий двухмерный массив? Плюс неудобные для прописывания флаги, к примеру, PREG_SPLIT_DELIM_CAPTURE. Или кому-то так удобнее вводить? Все это к тому, что Перл очень логичен в работе с регулярными выражениями. К сожалению, в нем нереализованы такие полезные фичи, как жадный безвозвратный режим глотания строки с помощью модификаторов *+, ++ и ?+ ... Но это частности. Более того - как уже подтвердили участники форума, именно Перл превратил регулярные выражения в обыденную для программирования вещь. Python, Java, C# - везде применяются регулярки в стиле Перл. И нигде они не поддерживаются на уровне встроенных функций языка. Увы... |
|||
|
||||
GoodBoy |
|
|||
![]() Главный джедай ![]() ![]() ![]() ![]() Профиль Группа: Модератор Сообщений: 3886 Регистрация: 8.1.2003 Где: КМВ Репутация: нет Всего: 83 |
Для Перла есть утилиты, позволяещие компилировать скрипты в исполняемые файлы... Правда только для Винды... |
|||
|
||||
![]() ![]() ![]() |
Правила ведения Религиозных войн | |
|
1. Уважайте собеседника 2. Собеседник != враг 3. Старайтесь воздерживаться от тем вида "Windows Rulez" или "Linux Rulez" С уважением, Smartov. |
1 Пользователей читают эту тему (1 Гостей и 0 Скрытых Пользователей) | |
0 Пользователей: | |
« Предыдущая тема | Религиозные войны | Следующая тема » |
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |