- как избежать замены переменной, A, 08:18 , 19-Июл-07 (1)
>вот затупил: > >sub rep{ >$_[0] =~ s/\_//g; >return $_[0]; >} >$d1='2007_05_27'; >$d2='2007_06_27'; >print "$d1 - $d2\n"; >print "FF $d1 - $d2\n", if rep($d1) <= rep($d2); > >$ ./test01.pl >2007_05_27 - 2007_06_27 >FF 20070527 - 20070627 > >по идее, печать переменных будет если над ними выполнено условие, но почему >сами переменные тут изменяются?написано в любой книжке по Perl >я же делаю подпрограммой их подмену только >для условия.. как этого избежать? sub rep { my ($s)=@_; $s =~ s/\_//g; return $s; } PS: а лучше бросайте вы этот перл -- у этого языка нет будущего.
- как избежать замены переменной, Cyrus_user, 09:35 , 19-Июл-07 (2)
>написано в любой книжке по Perl > >>я же делаю подпрограммой их подмену только >>для условия.. как этого избежать? > >sub rep { > my ($s)=@_; > $s =~ s/\_//g; > return $s; >} >спасибо >PS: а лучше бросайте вы этот перл -- у этого языка нет >будущего. для моих задачек мне его хватает.. а в какую сторону начинать строиться? :)
- как избежать замены переменной, A, 10:26 , 19-Июл-07 (3)
>для моих задачек мне его хватает.. а в какую сторону начинать строиться? >:) Какой необычный вопрос :-) Респект! (я думал ругаться будете :-) простите, плохо подумал :-)) Если у вас простые задачи (типа этой), то рекомендую awk. Полное его изучение займёт у вас один день за-то вы получите всё необходимое, чтобы решать такие задачи (найти, заменить, вывести если...). Я работаю над проектами масштаба 100000 строк. От Perl в конце концов отказываюсь. Резонов несколько, но лидеры: 1) анархичность кода и не достататочная поддержка ОО 2) после изучения и плотной работы с XS я в ужОсе от того, как перл устроен внутри, не удивительно, что его решили полностью переработать (perl6 -- фактически новый язык) и не удивительно, что эта переработка буксует уже почти десять лет. Я заруливаю в сторону Python. Резонов опять же несколько: 1) нормальные объекты 2) код на порядок лучше читается и поддерживается 3) производительность выше (часто на порядок!) 4) активно развивается (через лет пять, я думаю, питон сильно потеснит перл, уже сейчас питонщики предлагают очень вкусные решения, а сам язык портирован даже на сотовые; думаю, что "скоро" знатоков питона будет очень много; тут правда, надо понимать, что для меня "скоро" это несколько лет, разрабатывая такие большие продукты приходится закладываться на всё самое перспективное, чтобы когда продукт созреет он был современым, а не устаревшим) Правда есть Ruby, очень молодой, серьёзный конкурент Python. Правда многие библиотеки Ruby портированы на питон, а разработчки сотрудничают. Perl стоит в стороне от этого всего и топчится на месте. Вот такие пироги :-)
- как избежать замены переменной, Cyrus_user, 15:04 , 19-Июл-07 (4)
>>для моих задачек мне его хватает.. а в какую сторону начинать строиться? >>:) > >Какой необычный вопрос :-) Респект! (я думал ругаться будете :-) простите, плохо >подумал :-)) > >Если у вас простые задачи (типа этой), то рекомендую awk. Полное его >изучение займёт у вас один день за-то вы получите всё необходимое, >чтобы решать такие задачи (найти, заменить, вывести если...). Я работаю над >проектами масштаба 100000 строк. От Perl в конце концов отказываюсь. > >Резонов несколько, но лидеры: >1) анархичность кода и не достататочная поддержка ОО >2) после изучения и плотной работы с XS я в ужОсе от >того, как перл устроен внутри, не удивительно, что его решили полностью >переработать (perl6 -- фактически новый язык) и не удивительно, что эта >переработка буксует уже почти десять лет. > >Я заруливаю в сторону Python. Резонов опять же несколько: >1) нормальные объекты >2) код на порядок лучше читается и поддерживается >3) производительность выше (часто на порядок!) >4) активно развивается (через лет пять, я думаю, питон сильно потеснит перл, >уже сейчас питонщики предлагают очень вкусные решения, а сам язык портирован >даже на сотовые; думаю, что "скоро" знатоков питона будет очень много; >тут правда, надо понимать, что для меня "скоро" это несколько лет, >разрабатывая такие большие продукты приходится закладываться на всё самое перспективное, чтобы >когда продукт созреет он был современым, а не устаревшим) > >Правда есть Ruby, очень молодой, серьёзный конкурент Python. Правда многие библиотеки Ruby >портированы на питон, а разработчки сотрудничают. Perl стоит в стороне от >этого всего и топчится на месте. > >Вот такие пироги :-) спасибо за развёрнутый ответ. до ОО мои задачи не дотягивают. awk почему-то бесит. смотреть в сторону python давно себя заставляю, но пока ленюсь. Видимо пора, слишком часто о нём лестно отзываются в сравнении с perl, ну и пока я не залезу в тонкости программирования, видимо не пойму в чём конфета. - как избежать замены переменной, andy, 06:11 , 20-Июл-07 (5)
>1) анархичность кода это чего такое? Может она в голове у вас, эта анархичность? По мне все стройно и просто.. > и не достататочная поддержка ОО чего не хватает? (интересно просто) В perl cookbook позабавило высказывание (по памяти, неточно): "ОО в перле не плохое, оно просто другое". >2) после изучения и плотной работы с XS я в ужОсе от >того, как перл устроен внутри, опять же, хотелось бы более развернуто, в чем конкретно ужас, может тоже бояться буду >не удивительно, что его решили полностью >переработать (perl6 -- фактически новый язык) и не удивительно, что эта >переработка буксует уже почти десять лет. буксует, ага. А пятая ветка развивается. Меня такое положение вещей устраивает ---------------- 4Cyrus-user: Не слушайте вы этого товарища (да и меня заодно), пользуйте то, что подходит _под задачу_, а не то, что модно/круто по мнению некоего X
- как избежать замены переменной, A, 09:39 , 20-Июл-07 (6)
неблагодарное это дело, спорить с человеком, которого всё устраивает :-) Короткий ответ: устраивает -- пользуйтесь. (без шуток и тени издёвки) Меня тоже лет десять устраивало и я вас понимаю.Более полный ответ можете лучше почитать тут http://michurin.com.ru/python-vs-perl.shtml >>1) анархичность кода > >это чего такое? Может она в голове у вас, эта анархичность? По >мне все стройно и просто.. грубо. и довольно глупо, так как вы не знаете ни масштаба моих задачь, ни коллектива в котором я работаю (голова-то не одна). в целом же, анархичность это отсутствие законов. в Perl силшком много обходных путей и многие ими пользуются. код становится нечитаем. >> и не достататочная поддержка ОО > >чего не хватает? (интересно просто) >В perl cookbook позабавило высказывание (по памяти, неточно): "ОО в перле не >плохое, оно просто другое". не xватает ничего :-) ни компактного синтаксиса, ни нормальных конструкторов... кроме того, когда количество классов начинает приближаться к 1000, начинает бесить то, что все они распиханы по разным файлам, а пара десятков запиханы в другие файлы (под две package в одном файле) и найти их невозможно. >>2) после изучения и плотной работы с XS я в ужОсе от >>того, как перл устроен внутри, > >опять же, хотелось бы более развернуто, в чем конкретно ужас, может тоже >бояться буду читайте документацию (которая, кстати, местами просто недописана и брошена на полуслове, типичный Perl-way), почитайте, как работает сборщик мусора в перл и сколько к нему приделано костылей типа мортализации. кстати то, что в перл назвается "сборщиком мусора", в питон назвается "механизм подсчёта ссылок", а сборщик мусора в питон это то, чего в принципе нет в перле. читайте документацию. >>не удивительно, что его решили полностью >>переработать (perl6 -- фактически новый язык) и не удивительно, что эта >>переработка буксует уже почти десять лет. > >буксует, ага. А пятая ветка развивается. Меня такое положение вещей устраивает Только развивают не googlе и не IBM, её не портируют на симбиан... Посмотрите на мир с высоты причьего полёта, перл уже сейчас никому не интересен. Корпорации от него уже отвернулись и сейчас начинают отворачиваться и крупные компании (пока больше западные, я работаю в американской компании, до россии это доползёт как всегда с запаздыванием лет на 20, когда книжки переведут на русский). >---------------- > >4Cyrus-user: Не слушайте вы этого товарища (да и меня заодно), пользуйте то, >что подходит _под задачу_, а не то, что модно/круто по мнению >некоего X Это точно, но и вперёд заглянуть не повредит :-) Просто для общего развития.
- как избежать замены переменной, andy, 12:09 , 20-Июл-07 (7)
>Короткий ответ: устраивает -- пользуйтесь. (без шуток и тени издёвки) ну так и я про это >Меня тоже лет десять устраивало и я вас понимаю. у меня поменьше, с 5.003 начинал :) > >грубо. и довольно глупо, так как вы не знаете ни масштаба моих >задачь, ни коллектива в котором я работаю (голова-то не одна). >в целом же, анархичность это отсутствие законов. в Perl силшком >много обходных путей и многие ими пользуются. код становится нечитаем. ну у меня тоже масштабы нормальные, но в целом понял. Это не проблема именно перла, а проблема определения правил игры в команде. У вас вот, простите, довольно много орфографических ошибок в тексте, так что теперь, опеннет плохой? Хотя перл со своим "полиморфным" синтаксисом ставит эту проблему гораздо острее, согласен 100% >кроме того, когда количество классов начинает приближаться к 1000, начинает >бесить то, что все они распиханы по разным файлам, а пара десятков >запиханы в другие файлы (под две package в одном файле) и найти их невозможно. если количество классов приближается к 1000, надо за полгода до этого момента перевести проект с перла на язык, специально предназначенный для ОО. Ну и, опять же, на первый план выходит проблема определения правил игры в команде. Разве у вас не будет таких же проблем на яве, к примеру? Или что у вас, питон... >читайте документацию (которая, кстати, местами просто недописана и брошена >на полуслове, типичный Perl-way), почитайте, как работает сборщик мусора в >перл и сколько к нему приделано костылей типа мортализации. >кстати то, что в перл назвается "сборщиком мусора", в питон назвается >"механизм подсчёта ссылок", а сборщик мусора в питон это то, чего в >принципе нет в перле. читайте документацию. rtfm forever, этим и живу. Обсуждать сборщики мусора не буду, просто не успею. Однако стоит заметить, что документация к перлу отменная. Как по структуре, так и по качеству. >Только развивают не googlе и не IBM, её не портируют на симбиан... перл на симбиане, имхо, нужен точно так же, как и питон. Тормозно уж больно получается. У меня, по крайней мере :) Опять же, встает вопрос, зачем он там нужен? >Посмотрите на мир с высоты причьего полёта, перл уже сейчас никому не >интересен. Корпорации от него уже отвернулись и сейчас начинают отворачиваться и крупные >компании (пока больше западные, я работаю в американской компании, до россии это >доползёт как всегда с запаздыванием лет на 20, когда книжки переведут на >русский). нормальный процесс развития. Сначала разрабатывают специализированные языки, потом собирают из них универсальный, потом он жиреет и опять хочется что-то более заточенное под конкретную задачу... Лично для меня перл сейчас - это идеальный вариант. Станет напрягать - найду более подходящее решение, делов-то. >Это точно, но и вперёд заглянуть не повредит :-) Просто для общего развития.
спасибо за заботу о моем развитии, но через час оно остановится ровно на две недели. Ибо отпуск.
- как избежать замены переменной, A, 15:15 , 20-Июл-07 (8)
>Это не проблема именно перла, а проблема определения правил игры в команде. Проблема даже шире. Дело в том, что когда проект развивается десятилетиями, меняются и требования и железо и версии, а разработчики неминумо меняются практически все. Сейчас уже нет никого, что был бы здесь с самого начала и только двое, кто уже давно и хорошо всё представлет. Эта проблема неизбежна. И головы у всех очень хорошие, но, к сожалению, разные :-) А перл прям-таки поощряет, чтобы у каждого был свой стиль. В результате жутковатый код получается. По нему у нас целая wiki есть внутренняя :-) помогает здорово, но не достаточно. >У вас вот, простите, довольно много орфографических ошибок в тексте, так >что теперь, опеннет плохой? Извиняюсь :-) С русским у меня хуже чем с перлом :-) Хорошо, что хоть понимаете :-) >если количество классов приближается к 1000, надо за полгода до этого момента >перевести проект с перла на язык, специально предназначенный для ОО. Вот и я о том же. И в google и в IBM так же думают :-) >Однако стоит заметить, что документация к перлу отменная. Как по >структуре, так и по качеству. По базовому языку -- да. Но вы, похоже, не пробовали писать расширения на C и не сталкивались с mod_perl2. Здесь ваша уверенность в превосходности перловой документации сильно бы пошатнулась. >перл на симбиане, имхо, нужен точно так же, как и питон. Тормозно >уж больно получается. У меня, по крайней мере :) Опять же, >встает вопрос, зачем он там нужен? За тем же, зачем и Java :-) http://opensource.nokia.com/projects/pythonfors60/ >>Посмотрите на мир >нормальный процесс развития. не спорю >>Это точно, но и вперёд заглянуть не повредит :-) Просто для общего развития. >спасибо за заботу о моем развитии, но через час оно остановится ровно >на две недели. Ибо отпуск. :-) да я не о вашем развитии беспокоюсь :-) просто человек спросил мнение, я ему сказал мнение
|