LINUX.ORG.RU

Для программистов на Perl


0

0

"Building a Parrot Compiler" (http://www.onlamp.com/pub/a/onlamp/20...) - создания собственного языка для выполнения на виртуальной машине Parrot

"Rapid Web Application Deployment with Maypole"
(http://www.perl.com/pub/a/2004/04/15/...) - описание тулкита Maypole, для быстрого создания интерфейсов к БД

Ответ на: комментарий от anonymous

Дык и perl перестали называть языком-клеем только потом, когда он
хоть чего-то научился делать серьёзно. У всех языков была своя колыбель.
Кто же спорит?

anonymous
()
Ответ на: комментарий от anonymous

Так об этом и речь - php ещё в такой колыбели, что рассматривать его для больших
проектов просто нет смысла, он как раз только для home page и подходит

nuBo
()
Ответ на: комментарий от bormann

Ну, дык куда пропал геноссе bormann (*) (26.04.2004 11:23:12)??
Кто будет отвечать за базар про то, что "php - несистемно, любительски"?
Аргументы в студию.

anonymous
()
Ответ на: комментарий от anonymous

А можно пару примеров. А то тут мое начальство хочет запустить сервак на W2K3 server + IIS + ASP (ну фанаты винды они). Я их пытаюсь убедить
не делать етого, хотелось бы подсунуть им аргументов.

sabonez ★☆☆☆
()
Ответ на: комментарий от anonymous

>> о случае, когда время выполнения скрипта может значительно превышать timeout браузера

> Есть другой (и гораздо более надёжный способ) для обработки подобных
ситуаций. Причём, он не зависит от языка, платформы (кстати, в виндах
форк работает?), веб-сервера.

Расскажи мне пожалуйста, что же это за такой надёжный способ на PHP отработать данную ситуацию ?

nuBo
()
Ответ на: комментарий от nuBo

Ты, наверное, мало пива сегодня выпил ;) Обосновывай!
Ща будем разбираться, кто в колыбели, а кто уже пиво пьёт декалитрами ;)

anonymous
()
Ответ на: комментарий от nuBo

Уставновка флажка. Исполнение задания из планировщика - cron и т.п.

anonymous
()
Ответ на: комментарий от anonymous

>Ты, наверное, мало пива сегодня выпил ;) Обосновывай!
>Ща будем разбираться, кто в колыбели, а кто уже пиво пьёт декалитрами ;)

Расскажи мне как PHP работает
1. с BerkeleyDB
1. с битовыми строками

И заодно померяем CPAN vs PEAR

nuBo
()
Ответ на: комментарий от sabonez

А ты фанат линукса что ли?

Не, с начальством лучше не спорить, выгонят с работы нахер, и подсовывай
потом свои аргументы.

Sun-ch
() автор топика
Ответ на: комментарий от nuBo

> Расскажи мне как PHP работает
> 1. с BerkeleyDB
> 1. с битовыми строками

1) А я что, работаю пересказчиком мануалов, или мануалы уже не рулят?
http://www.php.net/manual/en/ref.dba.php
2) А что, поразрядные операции в php кто-то уже отменил?

> И заодно померяем CPAN vs PEAR
Ну и?

anonymous
()
Ответ на: комментарий от Sun-ch

> Не, с начальством лучше не спорить, выгонят с работы нахер

Мой опыт показывает, что в конечном итоге это выгодно! Как правило
после ухода из такой конторы находишь более образованное начальство и...
бОльшую з/п ;) Плюс, продолжаешь свой профессиональный рост, а не
останавливаешься навечно на серверах под виндой.

anonymous
()
Ответ на: комментарий от anonymous

Если чел уходит из-за того что вместо одной ос стали пользовать другую
или третью - это непрофессионал.

Sun-ch
() автор топика
Ответ на: комментарий от anonymous

>> Расскажи мне как PHP работает
>> 1. с BerkeleyDB
>> 1. с битовыми строками

>1) А я что, работаю пересказчиком мануалов, или мануалы уже не рулят?
>http://www.php.net/manual/en/ref.dba.php

Да, да, конечно, расскажи ка мне как сделать при помощи ЭТОГО вот это:
http://www.sleepycat.com/docs/ref/am/second.html

А потом сразу смотри perldoc BerkeleyDB, который это делает как 2 пальца, и вообще API практически идентичный сишному предоставляет.

>2) А что, поразрядные операции в php кто-то уже отменил?
вобщем не отменяли, но вот как бы ты выделил скажем подстроку с 2 000 000 по 3 000 000 бит, из строки скажем 10 млн бит на PHP ? Сначала бы маску построил из 1 миллиона бит, потом AND со строкой и дальше сдвигами ? Здесь я, честно говоря, не знаю, просвяти, буду благодарен.

>> И заодно померяем CPAN vs PEAR
>Ну и?
Сомневаешься ? :)

nuBo
()
Ответ на: комментарий от Sun-ch

Нет, это как раз таки профессионал! Он сделал экспертное заключение,
а лохи начали настаивать на своём. Он принимает решение не работать на
настойчивых лохов ;) В противном случае получается, что лохи знают
больше ;) А это значит, что он - не профессионал!

anonymous
()
Ответ на: комментарий от nuBo

Secondary indices? А тебе не кажется, что ты выбрал не тот инструмент?
Нет, это, конечно, не оправдывает отсутствия данной фичи в php, но всё
же... Не проще ли (и надёжней и быстрее) использовать sql-сервер?
А если уж нужно именно файл-серверный вариант db, то я бы использовал
sqlight. Там тебе и секондари, и сколько хочешь индексов построить
можно. Плюс, стандартно и переносимо на большие sql-серверы.

> но вот как бы ты выделил скажем подстроку с 2 000 000 по 3 000 000 бит

Ну, я бы нашёл способ, если бы проблема встала ребром. Но! Мы точно
говорим о веб-приложениях? И можно пример, где оно понадобилось?

anonymous
()
Ответ на: комментарий от anonymous

> Нет, это как раз таки профессионал!

Возможно.

> Он сделал экспертное заключение, а лохи начали настаивать на своём.

Свобода волеизъявления?

> Он принимает решение не работать на настойчивых лохов ;)

Обиделся? :)

> В противном случае получается, что лохи знают больше ;)

Не-а, не получается.

> А это значит, что он - не профессионал!

Это ничего не значит.

P.S. И, вот, такие "специалисты" начинают писать свои программы. ("Обработка исключений", говорите... ну-ну. :)

P.P.S. Тебе, парень, прямая дорога в менеджеры - "забивать баки" недалёким клиентам.

anonymous
()
Ответ на: комментарий от anonymous

>И заодно померяем CPAN vs PEAR
>Ну и?

Простой пример:
http://pear.php.net/package-search.php?pkg_name=mail&bool=AND&submit=...
http://search.cpan.org/search?query=mail&mode=module

5 vs 621 - почувствуйте разницу. А ведь несколько лет назад пэхэпэшники клялись что догонят и перегонят CPAN :)

chucha ★★★☆
()
Ответ на: комментарий от anonymous

Со своим экспертным заключением он идет фпопу.

Заключение сделали до него и выбрали опред. технолог. решение

с точки зрения оптимальности вложения и возврата инвестиций.

У меня бизнес-план уже готов, а он мне тут начинает рассказывать как

замечательно апач работает под лялихом, можно подумать, что я этого не

знаю :)

Sun-ch
() автор топика
Ответ на: комментарий от anonymous

Скажем полнотекстовая поисковая система... эдак на 10 миллионов документов.
Ну не прокатит ни sqlight, ни mysql, ни postgres, а вот berkeleydb/btree очень даже, при правильном подходе. Здесь же и битовые операции можно использовать, например для поиска по 2 и более словам (AND/OR)...


Вобще спор завязался вокруг слова "колыбель", аргументы ты получил, CPAN vs PEAR смотри выше. Хочу услышать контраргументы.

nuBo
()
Ответ на: комментарий от Sun-ch

> Заключение сделали до него и выбрали опред. технолог. решение

Здесь сразу стоп. Какого уровня специалист сделал заключение?

а) никакого. Тогда дальнейшее твоё рассуждение отправляем в топку

б) это был действительно специалист. Но тогда что вообще там делает
наш герой "профессионал"? Опишите его роль в процессе. А чтоб умерить
фантации и не сильно удаляться от темы, напомню условие, которое
дословно выглядит так:

"мое начальство хочет запустить сервак на W2K3 server + IIS + ASP"
"Я их пытаюсь убедить не делать етого"

Я не наблюдаю:
a) заключения как такового
б) упоминания о рассчётах с точки зрения оптимальности вложения и
возврата инвестиций
в) готового бизнес-плана...

Так штааа ты всё это придумал, и на костях ложных данных пытаешься
развивать свою безлимитную фантазию. А между тем, пример был дан из
жизни... без всяких "если".

anonymous
()
Ответ на: комментарий от chucha

> 5 vs 621 - почувствуйте разницу

Ну и что? Во-первых, не числом, а умением ;) А во-вторых, это известное
дело, что в перле на каждый чих подавай модуль. Ты хотя бы в уме
прикинь, насколько разгрузился бы cpan, если бы в перле был встроен
тот набор функций, какой встроен в php.

anonymous
()
Ответ на: комментарий от anonymous

> Какого уровня специалист сделал заключение?

Моего.

>Опишите его роль в процессе.

Он должен:

Выбрать и купить железо, W2K3 server + IIS + ASP, прогнать крэш

тесты, обеспечить безопастность.

Исталлировать и настроить купленное бизнес ПО.

Sun-ch
() автор топика
Ответ на: комментарий от anonymous

>> 5 vs 621 - почувствуйте разницу

>Ну и что? Во-первых, не числом, а умением ;) А во-вторых, это известное
дело, что в перле на каждый чих подавай модуль. Ты хотя бы в уме
прикинь, насколько разгрузился бы cpan, если бы в перле был встроен
тот набор функций, какой встроен в php.


ага! Знамо дело! что бы добавить драйвер ДБ - перекомпилим весь пхп! чумАвой подход! вопрос, как скоро пхп с таким подходом превратиться в сборище функций, которые или длинной будут в 100 симоволов или читаться не будут, потому что их количество будет зашкаливать?
имхо, в пхп рано или поздно создат свой аналог DBI.

К слову, mysql_num_rows - классная функция. ОО подход так и прет.


а CPAN совершенно не загружен.

anonymous
()
Ответ на: комментарий от nuBo

> Скажем полнотекстовая поисковая система... эдак на 10 миллионов документов.

Уже придумана. И используется там явно не berkeleydb!

> Ну не прокатит ни sqlight, ни mysql, ни postgres

Всё это чушь. База - это хранилище любых данных. Какой алгоритм напишешь, так оно и будет работать. Если твой алгоритм завязан на специфические фичи какой-то одной бд - твой алгоритм отстойный.
Ты изобрёл велосипед с кривыми колёсами.

anonymous
()
Ответ на: комментарий от Sun-ch

> > Какого уровня специалист сделал заключение?
> Моего.

Спасибо. Я уже убежал из этой конторы не оглядываясь ;)

> тесты, обеспечить безопастность.

Ну, народ, сами посудите уровень этого "специалиста", который вот так
пишет слово "безопастность" ;)) И это не придирка к правописанию.
Как вы думаете, он хоть что-нибудь читал о безопасности? Вряд ли.
Иначе крепко запомнил бы это слово ;)

anonymous
()
Ответ на: комментарий от Sun-ch

2 Syn-ch
> В perl pack/unpack что ли использовать али модуль какой хитрый?
perldoc -f vec

2 anon
> Ну и что? Во-первых, не числом, а умением ;) А во-вторых, это известное
> дело, что в перле на каждый чих подавай модуль. Ты хотя бы в уме
> прикинь, насколько разгрузился бы cpan, если бы в перле был встроен
> тот набор функций, какой встроен в php.
1, мне знаешь ли впадлу запоминать порядок аргументов в функции (например mysql_* vs pgsql_*). Ты же имел ввиду именно встроенные в PHP функции, правда ?
2. Я предпочитаю править сам глюки в чужом коде (читай модулях), а не ждать патчей, чего PHP программер не может себе позволить (аль PHP программеры уже все на сях научились писать ?)
3. нахрена козе баян ? зачем языку нативно работать с БД ?
4. perl DBI всё равно быстрее работает чем встроенные в PHP функи
5. все что может понадобиться всё равно не встроишь. Поэтому не надо даже пытаться это сделать

nuBo
()
Ответ на: комментарий от anonymous

> ага! Знамо дело! что бы добавить драйвер ДБ - перекомпилим весь пхп!

Ок, претензия принята. Встречный вопрос: скока раз в день ты добавляешь
новый драйвер БД?

> имхо, в пхп рано или поздно создат свой аналог DBI.

С возвращением на Землю! Я знаю с десяток различных реализаций.
Некоторые живут с самого рождения php.

anonymous
()
Ответ на: комментарий от anonymous

> что бы добавить драйвер ДБ - перекомпилим весь пхп!

В догонку. Для добавления драйвера _не_нужно_ перекомпилять весь php!!!
Нужно собрать подключаемый модуль!
http://www.php.net/manual/en/zend.creating.php

anonymous
()
Ответ на: комментарий от anonymous

>> Скажем полнотекстовая поисковая система... эдак на 10 миллионов документов.
>Уже придумана. И используется там явно не berkeleydb!

А в ней есть все фичи что мне нужно ???

>> Ну не прокатит ни sqlight, ни mysql, ни postgres

>Всё это чушь. База - это хранилище любых данных. Какой алгоритм напишешь, так >оно и будет работать. Если твой алгоритм завязан на специфические фичи какой-то >одной бд - твой алгоритм отстойный.
>Ты изобрёл велосипед с кривыми колёсами.

Скажи это разработчикам google, у них вапще своя БД и на неё всё завязано. Они же ламеры тупые.

nuBo
()
Ответ на: комментарий от nuBo

> 1, мне знаешь ли впадлу запоминать порядок аргументов в функции (например mysql_* vs pgsql_*). Ты же имел ввиду именно встроенные в PHP функции, правда ?

Э, дарагой. Не путай божий дар с яичницей. Надстройка для абстракции
доступа к БД в php тоже есть.

> 4. perl DBI всё равно быстрее работает чем встроенные в PHP функи

А вот это наглая ложь. Покажешь бенчмарки? Ты ещё скажи, что
QUERY_STRING в перле парсится быстрее.

> 5. все что может понадобиться всё равно не встроишь.

Согласен. Никто и не пытается встроить всё. Для того и есть pear.
Но то, что встроенные функции покрывают 90% потребностей, которые
в перле реалицуются только подключением модулей из cpan - это факт.
А потому предъявлять разницу в объёме между cpan и pear - по меньшей
мере бессмысленно.

anonymous
()
Ответ на: комментарий от nuBo

> Скажи это разработчикам google, у них вапще своя БД и на неё всё завязано. Они же ламеры тупые.

Что я им должен сказать? Чтоб они, тупые ламеры, послушали тебя и
задействовали berkeleydb?

anonymous
()
Ответ на: комментарий от anonymous

>>> В perl есть исключения и еще много чего есть.

>> Поподробнее, пожалуйста :)

> Use Google!!!

> Первая же ссылка на http://www.google.com/search?&q=exceptions%20perl даёт нужную статью:

http://www.perl.com/pub/a/2002/11/14/exception.html
$ perl -MError
Can't locate Error.pm in @INC (@INC contains: /usr/lib/perl5/5.8.1/i586-linux-thread-multi /usr/lib/perl5/5.8.1 /usr/lib/perl5/site_perl/5.8.1/i586-linux-thread-multi /usr/lib/perl5/site_perl/5.8.1 /usr/lib/perl5/site_perl /usr/lib/perl5/vendor_perl/5.8.1/i586-linux-thread-multi /usr/lib/perl5/vendor_perl/5.8.1 /usr/lib/perl5/vendor_perl .).
BEGIN failed--compilation aborted.
$ perl --version

This is perl, v5.8.1 built for i586-linux-thread-multi

CybOrc
()
Ответ на: комментарий от anonymous

>> 1, мне знаешь ли впадлу запоминать порядок аргументов в функции (например mysql_* vs pgsql_*). Ты же имел ввиду именно встроенные в PHP функции, правда ?

>Э, дарагой. Не путай божий дар с яичницей. Надстройка для абстракции
доступа к БД в php тоже есть.

Ты действительно скудоумный или прикидываешься ? Мы говорили про ВСТРОЕННЫЕ ФУНКЦИИ, цитирую тебя : "если бы в перле был встроен тот набор функций, какой встроен в php", причём здесь PEAR, или он встроен уже в PHP ?

nuBo
()
Ответ на: комментарий от anonymous

>> Скажи это разработчикам google, у них вапще своя БД и на неё всё завязано. Они же ламеры тупые.

>Что я им должен сказать? Чтоб они, тупые ламеры, послушали тебя и
задействовали berkeleydb?

Ты - флеймер, причём хуёвый. Ты же сам сказал что привязка к конкретной базе есть зло : "Если твой алгоритм завязан на специфические фичи какой-то одной бд - твой алгоритм отстойный". У Google как раз такая ситуация, поэтому твоё утверждение НЕ верно.

nuBo
()
Ответ на: комментарий от nuBo

> Мы говорили про ВСТРОЕННЫЕ ФУНКЦИИ, [...] причём здесь PEAR, или он встроен уже в PHP ?

Разъясняю для недогоняющих: pear - это аналог cpan. довольно большое количество функциональности модулей cpan уже встроено в php. Поэтому
нет смысла сравнивать разницу в объёме cpan. Ты привёл пример с модулями
для работы с mail. Практически большинство из них в той или иной мере -
парсеры. Давай посмотрим, что у нас есть в php встроенного на эту тему:
http://www.php.net/manual/en/ref.mailparse.php

Теперь ясно?

anonymous
()
Ответ на: комментарий от CybOrc

> Can't locate Error.pm in @INC

Ну и к чему вы это привели? Типа лень модуль из CPAN доставить?

Да и вообще, первоначальный вопрос был о том, есть ли исключения, или нет. Так вот - есть, builtin. Исключения в ОО стиле - да, из CPAN.

anonymous
()
Ответ на: комментарий от nuBo

> Ты - флеймер, причём хуёвый.

О, ты меня недооцениваешь. То, что я не подписываюсь, не мешает мне
рубить очень мудрые головы ;)

> Ты же сам сказал что привязка к конкретной базе есть зло

Ага. Но вот проблема: общаясь с тобой, я и представить себе не мог, что
ты поставишь себя на одну ступень с гугл ;) Я думал, общаюсь с
обыкновенным программером, чья контора вряд ли выложит миллионы баксов
на разработку своей БД... Извини, если это не так.

anonymous
()
Ответ на: комментарий от anonymous

Да бог с ними, с модулями.

В php есть аналоги механизмов

tainted data - меченные данные, или возможность свясязать через

tie хеш с базой данной, чтобы все операции с хешем актуализировались

в базе?

Sun-ch
() автор топика
Ответ на: комментарий от anonymous

http://www.php.net/manual/en/ref.mailparse.php
1. PHP программер может вмешаться в работу этой функи (поправить её) или функа априори правильно работает ?
2. Видно ты очень experienced программер, раз тебе хватает 13 функций для работы с почтой... маладца !

nuBo
()
Ответ на: комментарий от anonymous

>> Ты - флеймер, причём хуёвый.
>О, ты меня недооцениваешь. То, что я не подписываюсь, не мешает мне
>рубить очень мудрые головы ;)
Не то что бы не мешает - помогает :) Понимаешь, если тебя как бы нет, то и голову срубить ты как бы не можешь :) В худшем случае это будет как если бы стихийным бедствием оппонента снесло или там мост обрушился, или перданул кто из-за угла, форс мажор вобщем... :)

>> Ты же сам сказал что привязка к конкретной базе есть зло
> Ага. Но вот проблема: общаясь с тобой, я и представить себе не мог, что
> ты поставишь себя на одну ступень с гугл ;) Я думал, общаюсь с
> обыкновенным программером, чья контора вряд ли выложит миллионы баксов
> на разработку своей БД... Извини, если это не так.

С обыкновенным. Прости, а чего в гугле такого волшебного чего не могут сделать другие ?

nuBo
()
Ответ на: комментарий от nuBo

> 13 функций для работы с почтой... маладца !

Опять перевираешь. Я говорил только про парсинг, как аналог кучи
cpan'овского хлама, который дублирует себя сплошь и рядом.
Ну а чего с модулями заглох? Всё? Наступило полное прозрение? Ура.

anonymous
()
Ответ на: комментарий от chucha

> Ну расскажи как на php excel табличку распарсить

Ok, я беру $10 за решение вопроса такой уровня. Много дешевле, чем
платить за тот мусор, который пишет твой знакомый (в чём я абсолютно уверен).

anonymous
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.