LINUX.ORG.RU

Re: Языку Perl исполнилось 16 лет!

Присоединяюсь к поздравлениям, долгих лет перлу !!!

anonymous ()

Re: Языку Perl исполнилось 16 лет!

Да здравствует Perl :)

anonymous ()

Re: Языку Perl исполнилось 16 лет!

Long live Perl!!!

Eldhenn ()

Re: Языку Perl исполнилось 16 лет!

Пусть живет & здравствует великий и могучий Perl!!!

sabonez ★☆☆☆ ()

Re: Языку Perl исполнилось 16 лет!

R.I.P.

anonymous ()

Re: Языку Perl исполнилось 16 лет!

Похоронить пора, и заменить, скажем, Питоном.

anonymous ()

Re: Языку Perl исполнилось 16 лет!

Perl конечно долбанутый язык, но всё равно рульный!

Поздравляю!

anonymous ()
Ответ на: Re: Языку Perl исполнилось 16 лет! от anonymous

Re: Re: Языку Perl исполнилось 16 лет!

>>Похоронить пора, и заменить, скажем, Питоном.
Похоронить надо п?здоболов aka онанимус.
Вот выйдет Perl6 - и жабу уделает.

sabonez ★☆☆☆ ()
Ответ на: Re: Re: Языку Perl исполнилось 16 лет! от sabonez

Re: Re: Re: Языку Perl исполнилось 16 лет!

Ну это ты чувак ваще загнууул. Ты где работаешь? Небось напару с лохматым дезигнером сайты лепишь показывающие прайс-лист из mysql'я? =)

anonymous ()
Ответ на: Re: Re: Re: Языку Perl исполнилось 16 лет! от anonymous

Re: Re: Re: Re: Языку Perl исполнилось 16 лет!

amazon.com powered by Perl (Mason).

"Mason elegantly solves the problem of large-scale web development, giving Amazon.com web developers the power of industry-standard Perl and the simplicity of re-usable components. This has made it easy to manage and evolve a very large mission-critical global codebase, and has halved the ramp-up time for new developers."

Sun-ch ()
Ответ на: Re: Re: Re: Re: Языку Perl исполнилось 16 лет! от Sun-ch

Re: Re: Re: Re: Re: Языку Perl исполнилось 16 лет!

Хоть саныч и бздун, но здесь прав. Скажите, ради чего приличному perl программисту переходить на питон ?

anonymous ()
Ответ на: Re: Re: Re: Языку Perl исполнилось 16 лет! от anonymous

Re: Re: Re: Re: Языку Perl исполнилось 16 лет!

>>Ну это ты чувак ваще загнууул. Ты где работаешь? Небось напару с >>лохматым дезигнером сайты лепишь показывающие прайс-лист из mysql'я? Нет, я работаю админом. Мускулем я правда пользуюсь, но не для прайсов. Ще я юзаю MSSQL и Оракл. И если б не было перла, я б наверно офигел уже давно. На чем еще можно быстро накидать полезный утиль?

sabonez ★☆☆☆ ()

Re: Re: Re: Re: Re: Re: Re: Re: Языку Perl исполнилось 16 лет!

2anonymous (*) (22.12.2003 14:26:11):

> Perl великая сила! многим языкам у него учиться и учиться....

Чему учиться? Уёбищному синтаксису?

anonymous ()

Re: Re: Re: Re: Re: Re: Re: Re: Re: Языку Perl исполнилось 16 лет!

Во первых сам ты уебище, а во вторых, напиши мне плиз, убирание строк из массива с посторяющимися числами в любом другом языке так коротко и просто без дополнительного использования подключаемых библиотек:

@uniq = grep {!$_{$1} if m!\d\d!} @mass;

перл в плане синтаксиса - идеален

anonymous ()

Re: Re: Re: Re: Re: Re: Re: Re: Re: Языку Perl исполнилось 16 лет!

>> Perl великая сила! многим языкам у него учиться и учиться....

>Чему учиться? Уёбищному синтаксису?

Тебе, уебищному онанимусу, учиться бесполезно, раз твоего интеллекта не хватило даже на синтаксис, который и правда, посложнее чем у других языков. Посложнее он потому, что это единственный язык со встроенными __НА_УРОВНЕ_СИНТАКСИСА__ типами данных МАССИВ (именно массив, а не индексированный указатель), ХЭШ (аналогично) и РЕГУЛЯРНОЕ_ВЫРАЖЕНИЕ. Именно этот синтаксис, который некоторым оказывается не по уму, и позволяет писать очень компактно, быстро и ясно. Именно эта комфортность программирования и доставляет так много радости любителям перла. Но те, кто безнадежно споткнулся о синтаксис этого не поймут никогда. Мне искренне жаль таких ...

anonymous ()
Ответ на: Re: Языку Perl исполнилось 16 лет! от Sun-ch

Re: Re: Языку Perl исполнилось 16 лет!

кому надо это тормозное глюкало? еще один скриптовый язык всеголишь...

А этот кемел не нарисавался...

anonymous ()

Re: Re: Re: Re: Re: Re: Re: Re: Re: Re: Языку Perl исполнилось 16 лет!

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

Соласен что компактно, что быстро. Но ясно - это ты загнул малость. Если писать ясно, будет не очень компактно.

Лично я педпочитаю ясность :)

anonymous ()

Re: Языку Perl исполнилось 16 лет!

Поздравляю всех перлистов с сим знаменательным событием!

ЗЫ охренительный камель :)

ttyS0 ()

Re: Re: Re: Re: Re: Re: Re: Re: Re: Re: Языку Perl исполнилось 16 лет!

> убирание строк из массива с посторяющимися числами в любом другом языке так коротко и просто без дополнительного использования подключаемых библиотек:

> @uniq = grep {!$_{$1} if m!\d\d!} @mass;

баш:

cat file_name | sort | uniq

:)

anonymous ()

Re: Re: Re: Re: Re: Re: Re: Re: Re: Re: Языку Perl исполнилось 16 лет!

2anonymous (*) (22.12.2003 15:59:13):

> Во первых сам ты уебище, а во вторых, напиши мне плиз, убирание
> строк из массива с посторяющимися числами в любом другом языке так
> коротко и просто без дополнительного использования подключаемых
> библиотек:
> @uniq = grep {!$_{$1} if m!\d\d!} @mass;

Ну ты и глупая собака. Это ты называешь нормальным языком?!!
geek, ёптыть твою. ;-)

Несколько тысяч строк такой хуятени, и у тебя мозги наберкень будут.
Так "коротко и просто". Ню-ню. Мало ты языков программирования видел.

anonymous ()

Re: Re: Re: Re: Re: Re: Re: Re: Re: Re: Re: Re: Языку Perl исполнилось 16 лет!

> Это не bash а unix utils.

Да знаю я, что это. Хотел сказать, что для решения этой "задачи" можно использовать не только perl.

У перла есть одно огромное преимущество - CPAN. Других не вижу.

anonymous ()

Re: Re: Re: Re: Re: Re: Re: Re: Re: Re: Re: Re: Языку Perl исполнилось 16 лет!

насамом деле строка grep {!$_{$_}++} @mass убирает повторяющиеся строки из массива, а строка grep {!$_{$1}++ if m!(\d\d)!} @mass убирает строки с любым содержимым с повторяющимися двузначными числами

А пересечение двух массивов на других языках как?

Постановка задачи:

Есть два списка, каждый из которых содержит неповторяющиеся элементы, требуется узнать, какие элементы присутствуют в обоих списках(пересечение), присутствуют в одном и отсутствуют в другом (разность) или хотябы в одном из списков

@a=(1,3,5,6,7,8);
@b=(2,3,5,7,9);

@union=@isect=@diff=();
%union = %isect =();
%count = ();

# для объединения и пересечения:

foreach $e(@a) {$union{$e}=1}
foreach $e(@b){
if ($union{$e}){$isect{$e}=1}
@union = keys %union;
@isect = keys %isect;
}

еще одно решение:

foreach $e(@a, @b) {$union{$e}++ && $isect{$e}++}

@union = keys %union;
@isect = keys %isect;

и еще одно для объеденения, пересечения и симметричной разности:

foreach $e(@a, @b) {$count{$e}++}

foreach $e(keys %count) {
push @union => $e;
if ($count{$e} == 2) {
push @isect => $e;
} else {
push @diff => $e;
}
}

еще одно решение

@union=@isect=@diff=();

foreach $e(@a, @b) {$count{$e}++}

foreach $e(keys %count) {
push @union => $e;
push @{$count{$e} == 2 ? \@isect : \@diff } => $e;
}

симметричная разность, это набор всех элементов, являющихся членами либо @A, либо @B, но не обоих сразу. Простая разность - набор всех элементов @A, отсутствующих в @B.

вот такие вот вещи умеет perl (конечно, их умеет и C/C++/Java/Pythoon/Ruby/Tcl/Tk/C#/Ada/Awk/Sed/, но вопрос, какой кровью :)

anonymous ()

Re: Re: Re: Re: Re: Re: Re: Re: Re: Re: Re: Языку Perl исполнилось 16 лет!

"Несколько тысяч строк такой хуятени" А если форкнуться грамотно и разбить программу на кусочки, то несколько тысяч строк хеятени превратятся в несколько сот строк... Хотя чтобы форк на перле грамотно сделать (пул форкающихся серверов с _правильным_ отловом зомби), надо перловый IPC по минимуму год прогать... ИМХО.

anonymous ()

Re: Re: Re: Re: Re: Re: Re: Re: Re: Re: Re: Re: Re: Языку Perl исполнилось 16 лет!

вот такие вот вещи умеет perl (конечно, их умеет и
C/C++/Java/Pythoon/Ruby/Tcl/Tk/C#/Ada/Awk/Sed/,
но вопрос, какой кровью :)


Python 2.3:

Here's a simple example: 

>>> import sets
>>> S = sets.Set([1,2,3])
>>> S
Set([1, 2, 3])
>>> 1 in S
True
>>> 0 in S
False
>>> S.add(5)
>>> S.remove(3)
>>> S
Set([1, 2, 5])
>>>

The union and intersection of sets can be computed with the union()
and intersection() methods; an alternative notation uses the bitwise
operators & and |. Mutable sets also have in-place versions of these
methods, union_update() and intersection_update().
 

>>> S1 = sets.Set([1,2,3])
>>> S2 = sets.Set([4,5,6])
>>> S1.union(S2)
Set([1, 2, 3, 4, 5, 6])
>>> S1 | S2                  # Alternative notation
Set([1, 2, 3, 4, 5, 6])
>>> S1.intersection(S2)
Set([])
>>> S1 & S2                  # Alternative notation
Set([])
>>> S1.union_update(S2)
>>> S1
Set([1, 2, 3, 4, 5, 6])
>>>

It's also possible to take the symmetric difference of two sets. This
is the set of all elements in the union that aren't in the 
intersection. Another way of putting it is that the symmetric 
difference contains all elements that are in exactly one set. Again, 
there's an alternative notation (^), and an in-place version with the 
ungainly name symmetric_difference_update(). 


>>> S1 = sets.Set([1,2,3,4])
>>> S2 = sets.Set([3,4,5,6])
>>> S1.symmetric_difference(S2)
Set([1, 2, 5, 6])
>>> S1 ^ S2
Set([1, 2, 5, 6])
>>>

There are also issubset() and issuperset() methods for checking whether one set is a subset or superset of another: 

>>> S1 = sets.Set([1,2,3])
>>> S2 = sets.Set([2,3])
>>> S2.issubset(S1)
True
>>> S1.issubset(S2)
False
>>> S1.issuperset(S2)
True
>>>

Тупо выдрал из доки.
Где сдесь кровь?

anonymous ()

Re: Re: Re: Re: Re: Re: Re: Re: Re: Re: Re: Re: Re: Языку Perl исполнилось 16 лет!

>Есть два списка, каждый из которых содержит неповторяющиеся элементы, требуется узнать, какие элементы присутствуют в обоих списках(пересечение), присутствуют в одном и отсутствуют в другом (разность) или хотябы в одном из списков

На SQL это пишется в одну строку,

токо я забыл как :)

Sun-ch ()

Re: Re: Re: Re: Re: Re: Re: Re: Re: Re: Re: Re: Re: Языку Perl исполнилось 16 лет!

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

И еще есть важный минус, который неперечеркивает разве что цпан - перл просто сосет по скорости с любым нескриптовым языком...

anonymous ()

Re: Языку Perl исполнилось 16 лет!

Некоторые вещи, если бы не появились на свет, сделали бы мир лучше и чище ;)
Уж лучше бы этот "язык" на свет не появлялся совсем!

anonymous ()

Re: Re: Re: Re: Re: Re: Re: Re: Re: Re: Re: Re: Re: Re: Языку Perl исполнилось 16 лет!

>перл просто сосет по скорости с любым нескриптовым языком...

Для больших программ это неверно, причем надо учесть, что многие

модули написана на C.

Реализуй функционал IMAP::Client на С :)

Sun-ch ()

Re: Re: Re: Re: Re: Re: Re: Re: Re: Re: Re: Re: Re: Языку Perl исполнилось 16 лет!

> А пересечение двух массивов на других языках как?
> foreach $e(@a) {$union{$e}=1}

Кхе-кхе ;)
В пхп это делается так:
array_intersect()
array_merge()

А как на счет array_diff() ? Работа с массивами в перл - полнейший отстой. Чего стоит несоблюдение последовательности обхода ключей
в массиве в цикле foreach. Костыли, костыли... Весь язык - один большой
костыль.

anonymous ()
Ответ на: Re: Языку Perl исполнилось 16 лет! от anonymous

Re: Re: Re: Re: Re: Re: Re: Re: Re: Re: Re: Языку Perl исполнилось 16 лет!

некоторые ананимусы, если бы они не появились на свет, сделали бы мир лучше и чище ;)
уж лучше бы тебе не появляться на свет с таким именем!

HellAngel ★★ ()
Ответ на: Re: Re: Re: Re: Re: Языку Perl исполнилось 16 лет! от anonymous

Re: Re: Re: Re: Re: Re: Языку Perl исполнилось 16 лет!

кто такой перл (питон/пхп/хтмл) программист? вот перл (питон/пхп/хтмл) кодер, это я понимаю. а программист, ему язык пофиг, какой надо тот и использует.

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