![]() |
Модераторы: LSD |
![]() ![]() ![]() |
|
Logo |
|
|||
Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 694 Регистрация: 22.7.2008 Репутация: нет Всего: 10 |
Почему до сих пор нет этой темы?
![]() Языки очень разные по дизайну, но пересекающиеся по областям применения. Я перлист, питон представляю только в общих чертах, поэтому опишу преимущества и недостатки с точки зрения перловика.
З.Ы. Сейчас мой выбор, хоть и не с легким сердцем - Perl. |
|||
|
||||
k0rvin |
|
|||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 442 Регистрация: 24.1.2010 Репутация: 1 Всего: 5 |
что это? -------------------- “Object-oriented design is the roman numerals of computing.” — Rob Pike All software sucks |
|||
|
||||
gcc |
|
|||
![]() Агент алкомафии ![]() ![]() ![]() ![]() Профиль Группа: Участник Сообщений: 2691 Регистрация: 25.4.2008 Где: %&й Репутация: нет Всего: 17 |
это наверное eval http://perldoc.perl.org/functions/eval.html (можно еще кусок кода вставить )
вот пример (если тут речь про это) http://forum.vingrad.ru/forum/topic-290936.html Это сообщение отредактировал(а) gcc - 10.5.2010, 21:22 |
|||
|
||||
qweqwe |
|
|||
Шустрый ![]() Профиль Группа: Участник Сообщений: 55 Регистрация: 31.1.2007 Репутация: нет Всего: 0 |
мне оба языка не нравятся, python меньше не нравится
|
|||
|
||||
Logo |
|
||||
Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 694 Регистрация: 22.7.2008 Репутация: нет Всего: 10 |
кемелбук, глава 18. В кратце, в процессе работы программы, то компилятор в байт-код вызывает интерпретатор байт-кода, то наоборот, интерпретатор вызывает компилятор. Интерпретатор вызывает компилятор при eval. Компилятор же вызывает интерпретатор с помощью специальных блоков BEGIN {} или загрузки модуля use Module(... params ...), или no Module(... params ...) (редко используется). Когда компилятор доходит до use, он прерывает компиляцию остальной программы, загружает, компилирует, и исполняет модуль (если это первое использование модуля), вызывает функцию import модуля с параметрами. Лишь после того, как use, BEGIN, или no отработают, компилятор продолжит компиляцию программы. Алсо, есть магический хеш, привязанные к лексической области видимости блоков, он позволяет создавать директивы с лексической областью видимости. В него могут писать use, BEGIN, или no, и значения его видны в лексической области видимости блока. Алсо, разные дополнительные приблуды, вроде перехвата компиляции ключегого слова, или перехвата конца компиляции лексического блока. |
||||
|
|||||
Фантом |
|
|||
![]() Вы это прекратите! ![]() ![]() ![]() Профиль Группа: Участник Клуба Сообщений: 1516 Регистрация: 23.3.2008 Репутация: нет Всего: 49 |
Самая известная (и, на мой взгляд, точная) характеристика Perl - это язык, программу на котором через месяц после написания не сможет понять даже тот человек, который ее писал.
С дпугой стороны, пресловутые табуляторы Python - это тоже ужас. Так что из всех языков этой ниши, на мой взгляд, лучший - Lua. |
|||
|
||||
k0rvin |
|
||||||||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 442 Регистрация: 24.1.2010 Репутация: 1 Всего: 5 |
как всё сложно... то ли дело CL:
-------------------- “Object-oriented design is the roman numerals of computing.” — Rob Pike All software sucks |
||||||||
|
|||||||||
Logo |
|
|||
Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 694 Регистрация: 22.7.2008 Репутация: нет Всего: 10 |
Это шутка ![]() Ни что не мешает написать понятную программу. С другой стороны, если тебе надо написать такой код, чтобы через месяц после его написания самому не понять, в Perl тоже ничего не будет мешать. В отличии от Python. |
|||
|
||||
qweqwe |
|
|||
Шустрый ![]() Профиль Группа: Участник Сообщений: 55 Регистрация: 31.1.2007 Репутация: нет Всего: 0 |
||||
|
||||
gcc |
|
|||
![]() Агент алкомафии ![]() ![]() ![]() ![]() Профиль Группа: Участник Сообщений: 2691 Регистрация: 25.4.2008 Где: %&й Репутация: нет Всего: 17 |
k0rvin, я что-то этого не видел раньше и гугл не говорит:
http://www.google.com.ua/search?hl=uk&...q=&gs_rfai= http://www.google.com.ua/search?q=python+%...art=10&sa=N т.е. можно загрузить любые классы или пропустить те которые сейчас не нужны (не загружать их, чтобы они не занимали ресурсы) и выполниять их где угодно? т.е. загружать классы на этапе выполнения? (хотя, говорят, в web это не очень часто нужно делать если работает в mod_* ...) Это сообщение отредактировал(а) gcc - 11.5.2010, 03:47 |
|||
|
||||
gcc |
|
|||
![]() Агент алкомафии ![]() ![]() ![]() ![]() Профиль Группа: Участник Сообщений: 2691 Регистрация: 25.4.2008 Где: %&й Репутация: нет Всего: 17 |
еще тема была тут http://forum.vingrad.ru/forum/topic-281755.../freebsd/0.html
я бы на обоих программировал в принципе, если надо... и еще есть: java, php, etc... Это сообщение отредактировал(а) gcc - 11.5.2010, 03:06 |
|||
|
||||
Фантом |
|
|||
![]() Вы это прекратите! ![]() ![]() ![]() Профиль Группа: Участник Клуба Сообщений: 1516 Регистрация: 23.3.2008 Репутация: нет Всего: 49 |
Как показывает опыт, если язык разрешает писать плохой код, то 99% написанного на нем кода будет плохим. ![]()
Пробелы или табуляция - это уже мелочи, но сам по себе этот "двумерный синтаксис", на мой взгляд, крайне неудобен - слишком велика вероятность ошибки, которую трудно заметить. |
|||
|
||||
A5uKa |
|
|||
TЋ♥s F1rȜ iƧ BurȠiƞg ![]() ![]() ![]() Профиль Группа: Awaiting Authorisation Сообщений: 1928 Регистрация: 30.8.2008 Репутация: 1 Всего: 16 |
||||
|
||||
k0rvin |
|
|||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 442 Регистрация: 24.1.2010 Репутация: 1 Всего: 5 |
то было лирическое отступление, к питону никакого отношения не имеющее. впрочем как и к перлу =) -------------------- “Object-oriented design is the roman numerals of computing.” — Rob Pike All software sucks |
|||
|
||||
JackYF |
|
|||
![]() полуавантюрист ![]() ![]() ![]() ![]() Профиль Группа: Участник Сообщений: 5814 Регистрация: 28.8.2004 Где: страна тысячи озё р Репутация: 2 Всего: 162 |
||||
|
||||
djamshud |
|
|||
![]() Пердупержденный ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 1655 Регистрация: 23.11.2009 Репутация: 1 Всего: 39 |
>Любой язык позволяет писать нечитаемое и не работающее месиво.
Ну как сказать... Перл в этом смысле все же даст фору многим. http://www.linux.org.ru/forum/development/392747/page-1 -------------------- 'Cuz I never walk away from what I know is right Alice Cooper - Freedom |
|||
|
||||
Logo |
|
||||||
Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 694 Регистрация: 22.7.2008 Репутация: нет Всего: 10 |
В принципе, ничего сложного. Это часть модульного механизма Perl, и используется повсеместно.
Для пользователя и вовсе пожалуй достаточно знать, что use это comple-time директива.
Если специально писать, то будет ![]() Это сообщение отредактировал(а) Logo - 11.5.2010, 22:06 |
||||||
|
|||||||
W4FhLF |
|
|||
![]() found myself ![]() ![]() ![]() ![]() Профиль Группа: Участник Клуба Сообщений: 2831 Регистрация: 2.12.2006 Репутация: 2 Всего: 121 |
Я никогда особо не писал на перле, но всё чаще пользуюсь питоном. Среди всех достоинств и синтаксического сахара, стоит отметить, что у питона гораздо шире спектр задач. Все популярные фреймфорки и библиотеки с которыми я работал имеют биндинги для питона.
Хочешь гуй? Qt, GTK, Wx... Хочешь графику? Mathplotlib, OpenInventor, PyOpenGL... Работа с изображениями? PIL, OpenCV... Распознавание образов? pyFANN, pySVM... Параллельное программирование? mpi4py, pyCUDA (для GPU)... Математика? NumPy, SciPy... Кроме того python достаточно легко позволяет работать на уровне OS API. На нём легко можно писать системные утилиты. -------------------- "Бог умер" © Ницше "Ницше умер" © Бог |
|||
|
||||
qweqwe |
|
|||
Шустрый ![]() Профиль Группа: Участник Сообщений: 55 Регистрация: 31.1.2007 Репутация: нет Всего: 0 |
||||
|
||||
GoldFinch |
|
|||
![]() ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 2141 Регистрация: 30.11.2008 Репутация: нет Всего: 26 |
я бы их скрестил.
|
|||
|
||||
A5uKa |
|
|||
TЋ♥s F1rȜ iƧ BurȠiƞg ![]() ![]() ![]() Профиль Группа: Awaiting Authorisation Сообщений: 1928 Регистрация: 30.8.2008 Репутация: 1 Всего: 16 |
Главное, что есть Iron Python и уже сделали для VS 2010 )
|
|||
|
||||
GoldFinch |
|
|||
![]() ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 2141 Регистрация: 30.11.2008 Репутация: нет Всего: 26 |
A5uKa, вот когда IronPython3 сделают, тогда будет от него польза, правда небольшая
|
|||
|
||||
gcc |
|
||||
![]() Агент алкомафии ![]() ![]() ![]() ![]() Профиль Группа: Участник Сообщений: 2691 Регистрация: 25.4.2008 Где: %&й Репутация: нет Всего: 17 |
это все есть давным давно, и на других языках ruby, java, etc... все или многое из перечисленного, скорее всего... ![]() количество модулей на cpan 80 000 в 20 000 дистрибутивах, список авторов 8000 у perl на порядок больше готового для применения в различных задачах... (но это не значит что это все нельзя написать на python ![]() Добавлено @ 13:59
я видел разрабатывался транслятор байткода .NET в представление байткода Parrot, и обратно и для использования библиотек из других языков и, в том числе и проприетарных. Это сообщение отредактировал(а) gcc - 12.5.2010, 16:15 |
||||
|
|||||
Logo |
|
||||
Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 694 Регистрация: 22.7.2008 Репутация: нет Всего: 10 |
Если заметь здесь "Python" на "Perl" почти ничего не изменится. + CPAN хороший репозиторий, а как в питоне, есть ли подобная вещь, мне не известно.
К Perl это имет отношение чуть меньше, чем никакого) |
||||
|
|||||
W4FhLF |
|
|||
![]() found myself ![]() ![]() ![]() ![]() Профиль Группа: Участник Клуба Сообщений: 2831 Регистрация: 2.12.2006 Репутация: 2 Всего: 121 |
Тем не менее в задачах связанных с вычислениями и расчётами предпочтение отдают Python'y. -------------------- "Бог умер" © Ницше "Ницше умер" © Бог |
|||
|
||||
GoldFinch |
|
|||
![]() ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 2141 Регистрация: 30.11.2008 Репутация: нет Всего: 26 |
в питоне есть встроенная поддержка больших числел.
а в перле есть? |
|||
|
||||
bems |
|
|||
![]() Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Комодератор Сообщений: 3400 Регистрация: 5.1.2006 Репутация: 0 Всего: 88 |
А на перле еще кто-то пишет?
-------------------- Обижено школьников: 8 |
|||
|
||||
Shaggie |
|
|||
![]() Опытный ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 570 Регистрация: 21.12.2006 Где: outer space Репутация: нет Всего: 72 |
bems, ты не поверишь... но я могу это сказать про любой язык.
|
|||
|
||||
Logo |
|
|||
Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 694 Регистрация: 22.7.2008 Репутация: нет Всего: 10 |
А на дельфях еще кто-то пишет (: ? |
|||
|
||||
Logo |
|
|||
Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 694 Регистрация: 22.7.2008 Репутация: нет Всего: 10 |
Встроенной нету. Но, понятно, есть отдельные классы, они входят в стандартную поставку, и прагмы для перегрузки констант на создание объектов, выше как раз пример кода с use bigrat. Это сообщение отредактировал(а) Logo - 18.5.2010, 21:50 |
|||
|
||||
bems |
|
|||
![]() Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Комодератор Сообщений: 3400 Регистрация: 5.1.2006 Репутация: 0 Всего: 88 |
Shaggie, конечно можешь. Свобода слова же. Ну я спросил просто, думал кто ответит
Logo, нет. Это как-то отвечает на мой вопрос? -------------------- Обижено школьников: 8 |
|||
|
||||
Logo |
|
|||
Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 694 Регистрация: 22.7.2008 Репутация: нет Всего: 10 |
Если это был не троллинг, то - программирует. С работой на perl проще. См. например hh.ru 46 вакансий perl, 23 python.
Это сообщение отредактировал(а) Logo - 18.5.2010, 22:32 |
|||
|
||||
bems |
|
|||
![]() Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Комодератор Сообщений: 3400 Регистрация: 5.1.2006 Репутация: 0 Всего: 88 |
Logo, а зачем, если есть РНР?
-------------------- Обижено школьников: 8 |
|||
|
||||
W4FhLF |
|
|||
![]() found myself ![]() ![]() ![]() ![]() Профиль Группа: Участник Клуба Сообщений: 2831 Регистрация: 2.12.2006 Репутация: 2 Всего: 121 |
bems, php де-факто для веб-разработки, однако сфера применения скриптовых языков какбэ немного шире. Там, где рулит питон php тихо отсасывает в сторонке.
![]() -------------------- "Бог умер" © Ницше "Ницше умер" © Бог |
|||
|
||||
bems |
|
|||
![]() Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Комодератор Сообщений: 3400 Регистрация: 5.1.2006 Репутация: 0 Всего: 88 |
W4FhLF, дык я именно про перл на фоне рнр говорил, а не на фоне питона. Так что не в кассу
-------------------- Обижено школьников: 8 |
|||
|
||||
JackYF |
|
|||
![]() полуавантюрист ![]() ![]() ![]() ![]() Профиль Группа: Участник Сообщений: 5814 Регистрация: 28.8.2004 Где: страна тысячи озё р Репутация: 2 Всего: 162 |
||||
|
||||
Logo |
|
|||
Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 694 Регистрация: 22.7.2008 Репутация: нет Всего: 10 |
[
Возможно, но Perl тоже используется. У меня например стоит случайно поставленная программа из репозитория ubuntu, PerlPrimer, ДНК какие-то. Как и Perl чаще используется для веб, хотя у Python тоже юзабелен. То есть, как я и писал в первом посте, области применения сильно пересекаются. |
|||
|
||||
![]() ![]() ![]() |
Правила ведения Религиозных войн | |
|
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. |