LINUX.ORG.RU

До конференции YAPC::Russia «May Perl» осталось три дня

 ,


0

0
Кто не успел зарегистрироваться или же просто упустил из виду, спешите, еще есть время! Конференция пройдет в Москве, в эти выходные (17-18 мая).

Программа уже, видимо, меняться не будет. В программе конференции следующие интересные выступления:

День первый (17-го):

  • ‎IO::Lambda - асинхронный ввод-вывод в сложных задачах‎;
  • ‎Perl и Web 2.0‎;
  • профилирование Perl-кода‎;
  • POE - событийная машина Perl;
  • сайт на Jifty за пару часов‎;
  • построение совместимых Perl/mod_perl систем с веб-интерфейсом‎;
  • Eludia.pm: практичный MVC для корпоративных Intranet-систем‎;
  • аргументы в пользу XSLT‎.
День второй (18-го):
  • Moose - постмодернистская объектная система на Perl‎;
  • ООП. Parrot. Можно использовать;
  • разработка CMS для крупного портала на примере TRAVEL.RU‎;
  • применение ORM в Perl‎;
  • использование шаблона проектирования MVC в web-проектах‎;
  • использование web-based real-time графического вывода с использованием Perl‎.

Ну и, конечно же, масса общения с людьми, любящими Perl, профессионально использующими Perl и просто заинтересовавшимися Perl :)

>>> Подробности

★★★

Проверено: Shaman007 ()
Ответ на: комментарий от no-dashi
>> особенно если пол linux-а завязано на perl

> 75% задач, ныне как правило решаемых на perl, решается средствами AWK и
> Shell, а в web'е (mod_perl) не менее успешно покрываются php и Java :-)

А зачем?
Под каждую задачу брать свой язык?
Большинство языков, которые Вы назвали - нишевые.
Возможно в своей задаче они и хорошы, хотя есть, некоторые сомнения.
Попытка утянуть решение с пути универсальности - приводит к его удорожанию. Одна история с Коболом в банках чего стоит...
nempyxa ★★
()
Ответ на: комментарий от pinachet
> посмотрим что вы скажите когда отточат Rakudo(и Parrot соотвественно) :)

Ну конечно посмотрим. Parrot УЖЕ всем сливает.
У Java огромный спектр применения, ниибическое количество сторонних фреймворков и библиотек (открытых и нет), заинтересованность со стороны монстров индустрии, IDE на любой вкус и GPL в скором будущем.
anonymous
()
Ответ на: комментарий от anonymous
>Parrot УЖЕ всем сливает.

Как он может сливать, когда он ещё не вышел? Да и скорость собственно побоку, перл никогда не был быстрым, у него другие достоинства.

golodranez ★★★★
()
Ответ на: комментарий от anonymous
хорошо, нарисуй на питоне регвыражение чтобы удалить из текста все парные скобки

то есть например '((( текст ))) текст ))'

чтобы превратился в 'текст )) текст'

или если без жадности то в 'текст текст ))'

ну если фанаты явы/руби тут тоже самое на яве/руби нарисуют то я с удовольствием посмотрю

на перле это однострочником делается

а как на кастрированных регвыражений других языков это сделать хез

xargs ★★★
() автор топика
Ответ на: комментарий от anonymous
>Ну конечно посмотрим. Parrot УЖЕ всем сливает.

perl/parrot пока могут делать много чего такого что ни один язык еще не умеет

xargs ★★★
() автор топика
Ответ на: комментарий от xargs
Вы наверно в школе не проходили дискретную математику?
Данная задача не относица к классу регулярных выражений.
Может быть перл и может это делать в одну строку, но вот пример на Java:
(Если убрать инициализацию переменной и вывод то две строки ))

String s = "((( текст ))) текст ))";
Pattern p = Pattern.compile("\\(([^\\(\\)]*)\\)");
for(Matcher m = p.matcher(s); m.find(); m = p.matcher(s)) s = m.replaceFirst("$1");

System.out.println(s);
anonymous
()
Начались разборки в теме) Кому что нравится. Писал на Php получалось. Писал на perl тоже получалось и на java. ну какая хрен разница - в каждый определённый момент подходит больше один язык и неудобен другой. Иногда это может зависеть от внутреннего дао и разположения планет но всё бывает. Кто-нить писал сайт на ассемблере?) кстати тоже можно)). Интересная мысль попахивающая мазохизмом...
ASTAROT ★
()
Ответ на: комментарий от anonymous
Дискретной математики в большинстве школ нет - она в универах. но тем не менее у вас классно выходит.
ASTAROT ★
()
Ответ на: комментарий от troorl
>Чем он лучше питона? :)

1. некастрированными регулярными выражениями (так сказать нативными)

2. изящностью синтаксиса

xargs ★★★
() автор топика
Ответ на: комментарий от xargs
Ок, а тогда чем оно лучше Ruby? Если не считать производительность, которую в скором будущем подтянут.

captcha: tracer

anonymous
()
Ответ на: комментарий от anonymous
1. некастрированными регулярными выражениями (так сказать нативными)

2. изящностью синтаксиса

xargs ★★★
() автор топика
Ответ на: комментарий от pento
>Питон/Руби чем не устраивают?
Мертворождённые языки, которые так и не смогли попасть в мэйнстрим.
У Питон/Руби одна надежда на Parrot.
anonymous
()
Ответ на: комментарий от jodaka
>Ребят, я не понимаю -- откуда столько желчи? Не нравится перл -- не используйте! Можно подумать, что вас кто-то заставляет писать на перле вместо ruby/java/python/подставить_по_вкусу
Как правило ругаются 2 категории:
1. тормозы, сил у которых хватило освоить только 1 язык и теперь они пререживают, что их навки нахрен никому не нужны.
2. недлёкие, не понимающие разницы и преимуществ скриптовых(динамических) статических подходов в языкостроиении. У них мозг не может воспринять 2 парадигды :(
anonymous
()
профессионально люблю Perl. подскажите подходящего режиссера!
anonymous
()
Ответ на: комментарий от anonymous
> String s = "((( текст ))) текст ))";
> Pattern p = Pattern.compile("\\(([^\\(\\)]*)\\)");
> for(Matcher m = p.matcher(s); m.find(); m = p.matcher(s)) s = m.replaceFirst("$1");

> System.out.println(s);


мда... ужос как неэффективно. Для такой примитивщины еще и цикл писать надо ? а если текст более менее приличных размеров и число вхождений ~ 10000, сколько оно будет отрабатывать это на java ? И вообще сможет ли ?
Ky6uk-Py6uk
()
Ответ на: комментарий от anonymous
>> Там уже давно есть WSH до которого всяким bash'ам как до китая раком

>Это то самое овно, которое сразу при старте ~80 мегов отжирает? и которой чтоб работать нужен VB и еще хуча левого совта? малчик, ьы еще повершелл вспомни.

Нет, это тот самый основной скриптовый язык винды "в коробке", который умеет все, что можно сделать в винде. VB тут вообще не причем, и памяти он "жрет" поменьше всяких питонов.

vit122 ★
()
Ответ на: комментарий от xargs
> 1. некастрированными регулярными выражениями (так сказать нативными)

И все. Больше ни на что он не способен.

> 2. изящностью синтаксиса

Аргументы. У перла самый один из самых ебанутых синтаксисов. Сравнивать перл и питон по красоте синтаксиса - это как сравнивать молоток и китайскую вазу, тоже по красоте.

А так, кроме регулярных вырожений, ни одного аргумента не поступало. Красотой синтаксиса он сливает и руби, и питону.

anonymous
()
Ответ на: комментарий от vit122
> Нет, это тот самый основной скриптовый язык винды "в коробке", который умеет все, что можно сделать в винде. VB тут вообще не причем, и памяти он "жрет" поменьше всяких питонов.

> vit122

Петросян

anonymous
()
Ответ на: комментарий от anonymous
Анонимус, ваши тесты на потребление памяти WScript я не видел
vit122 ★
()
Ответ на: комментарий от anonymous
> У перла самый один из самых ебанутых синтаксисов.

Не трать свое время, анонимус. Бывает, что люди не только синтаксис перла считают изящным, но и товарища в попу шпарить нормой — извращенцев много.

anonymous
()
Ответ на: комментарий от j262
Вот из-за этой завязаности линекс умрет — "base system" зависит чуть ли не от большей тучи технологий нежели пресловутая винда с ком и проч. Причем если технологии венды пишутся одной фирмой, то в линексе только ядро и кде более менее структуризированы, все остальное это большая свалка из сторонних либ и экзешни коя связывается перлом, ибо в силу хорошей адгезии к фекалиям, оно является наилучшим клеем — иначе говоря перл лучшее средство для сращения униксвейных программок ибо позволяет легко работать с пресловутыми текстовыми потоками, но это прошлый век, ибо в этой свалке текстовые потоки читают только инфраглазые, следовательно смысла в текстовых потоках нет!
wfrr ★★☆
()
Ответ на: комментарий от wfrr
Хуясе откровение о_О

Логопед и психиатр уже не поможет. Может еще расскажешь про приемущество бинарных форматов перед текстовыми? ^_^

anonymous
()
Ответ на: комментарий от Ky6uk-Py6uk
>Для такой примитивщины еще и цикл писать надо ?

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

а то что синтаксис Пёрла уродский, write-only - это признает даже его создатель. скаляры, ссылки, объекты, разная "магия" и т.п. - все это говорит о реализации языка через одно место. короче, место ему на свалке рядом с пыхпыхами и т.п.

anonymous
()
Ответ на: комментарий от Ky6uk-Py6uk
вот еще задачка для одного регвыражения:

имеется текст в переменной нужно в начале каждой строки этого текста поставить ее номер.

желательно номер выровнять по ширине (скажем 5 символов)

ну что, любители python/java/ruby будете продолжать настаивать на некастрированности регвыражений в этих языках?

xargs ★★★
() автор топика
Ответ на: комментарий от anonymous
>Аргументы. У перла самый один из самых ебанутых синтаксисов.

еще один ниасиливший?

>Красотой синтаксиса он сливает и руби

ага end'ы в конце блока дико красиво сиди разбирай где блок начался и сколько раз закончился

>и питону.

это то зачем откапывать?

xargs ★★★
() автор топика
Ответ на: комментарий от anonymous
>а то что синтаксис Пёрла уродский, write-only - это признает даже его создатель.

4.2

> скаляры, ссылки, объекты, разная "магия" и т.п.

я понимаю, что программирование для тебя - магия

зачем ты в дискуссию-то ввязываешься?

xargs ★★★
() автор топика
Ответ на: комментарий от xargs
>имеется текст в переменной нужно в начале каждой строки этого текста поставить ее номер. желательно номер выровнять по ширине (скажем 5 символов)

import re

txt_in = 'abc\ndef\nghj\ndsaa'

s_cnt = 1; txt_out = '' for re_in in re.finditer('^.*?$', txt_in, re.I | re.M) : txt_out += str(s_cnt).rjust(2) + '. ' + re_in.group(0) + '\n'; s_cnt += 1

print txt_out

anonymous
()
Ответ на: комментарий от xargs
>вот еще задачка для одного регвыражения:

Вот таким образом в последнюю ночь делаются лабы в универах)) Стоит запостить на лор - тебе сразу все решат, еще и расскажут, почему это рулит.

anonymous
()
Ответ на: комментарий от anonymous
ну и сравни свой велосипед с циклами и птичьими изысками с изящным Perl:

$txt="abc\nef\njhj\nsklsklk\njskjsk";

$txt=~s/^(.)/sprintf "%5d $1", ++$lno/gem;

print "$txt\n";

xargs ★★★
() автор топика
Ответ на: комментарий от anonymous
nbw:[~]$ cat test.py 
import re

txt_in = 'abc\ndef\nghj\ndsaa'

s_cnt = 1; txt_out = '' for re_in in re.finditer('^.*?$', txt_in, re.I | re.M) : txt_out += str(s_cnt).rjust(2) + '. ' + re_in.group(0) + '\n'; s_cnt += 1

print txt_out 
nbw:[~]$ python test.py 
  File "test.py", line 5
    s_cnt = 1; txt_out = '' for re_in in re.finditer('^.*?$', txt_in, re.I | re.M) : txt_out += str(s_cnt).rjust(2) + '. ' + re_in.group(0) + '\n'; s_cnt += 1
                              ^
SyntaxError: invalid syntax
xargs ★★★
() автор топика
Ответ на: комментарий от xargs
даж попроще можно:

nbw:[~]$ perl test.pl  
    1 abc
    2 ef
    3 jhj
    4 sklsklk
    5 jskjsk
nbw:[~]$ cat test.pl 
#!/usr/bin/perl

my $txt="abc\nef\njhj\nsklsklk\njskjsk";
$txt=~s/^/sprintf "%5d ", ++$lno/gem;

print "$txt\n";
xargs ★★★
() автор топика
Ответ на: комментарий от fi
>Так что perl язык системного программиста

А я то наивно пологал что C..

P.S. перл фтопку, python рулит

anonymous
()
Ответ на: комментарий от xargs
Это ли изящество? Ну серъёзно, встретив такое в коде какого-нить продукта, надо программисту по пальцам бить. Особенно, если планируется продукт поддерживать и дальше развивать. Это лишний раз доказывает, что конечно можно и на перле писать нормальный код, но программистов он приучает к write-only кодингу.

P.S. Хотя и пример с питоном выше тоже не красивее.

pento ★★★★★
()
Ответ на: комментарий от xargs
>SyntaxError: invalid syntax

после txt_out = '' - новая строка, исчезла в сообщении

конечно это можно еще сократить, вариантов много

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

anonymous
()
Ответ на: комментарий от pento
>P.S. Хотя и пример с питоном выше тоже не красивее.

конечно. потому и не стоит гнаться за однострочным кодом.

anonymous
()
Ответ на: комментарий от anonymous
> конечно. потому и не стоит гнаться за однострочным кодом.
Именно!
pento ★★★★★
()
Ответ на: комментарий от wfrr
> линекс

линекс - средство от запоров, ну сколько уже повторять можно.

А линукс - ядро одной широкоизвестной операционной системы. :)

Ky6uk-Py6uk
()
Ответ на: комментарий от xargs
Синтетические задачки, придуманные чтоб неискушенные погромисты открывали рты от "изящества" перла - фтопку. Реши реальную задачку:

Файл вида:

----

Номер счета Сумма Фамилия

12345600000 5000 Иванов

00001 4000 Сидоров А.П .... 00002 400 ООО "Петр"

40005500000 3333 Петрова А.В.

---

Приведи однострочником к структурированному виду, а мы посмотрим.

vit122 ★
()
Ответ на: комментарий от vit122
Номер счета Сумма Фамилия

12345600000 5000 Иванов

      00001 4000 Сидоров А.П .... 
      00002 400 ООО "Петр"

40005500000 3333 Петрова А.В. 
vit122 ★
()
Увидел эту фразу на одном блоге, в котором автор наезжал на Перл.Мне она понравилась, что я записал её : "Larry says God talks to him, and tells him that He hates non-Perl programmers."
anonymous
()
Ответ на: комментарий от xargs
> #!/usr/bin/perl

> my $txt="abc\nef\njhj\nsklsklk\njskjsk"; > $txt=~s/^/sprintf "%5d ", ++$lno/gem;

> print "$txt\n";

накуя так длинно ?

#!/usr/bin/perl

$_="abc\nef\njhj\nsklsklk\njskjsk";

s/^/++$lno.' '/gem; print "$_\n";

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