Два робота

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

Робот для извлечения структур данных

Программа. Кадр из фильма Tron (1982).

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

Вскоре после его создания, мы с ним расстались. Я стал разрабатывать новые программы, а его передал вместе с остальной частью системы в управление отдельной команде разработки. До меня доходили слухи, что его разбирали, пытаясь понять как он работает, но в любом виде он справлялся со своей работой.

Я снова встретил его и восстановил в исходном виде. Выглядит он следующим образом:


                      #I, Robot#
    my $reg_pat =         qr^
                    <(  [ \w  ]+ )>
                          ###
                         (.*?)
                         #####
                        < \/\1>
                        #     #
                        #     #
                        #     #
                        ^xs;  #xs;
    #...
    
    my %attr = $vals =~ m/$reg_pat/g; #Run robot, run !

Социальный робот

Еще одного робота [1] я создал, в прошлом году. Мне необходима была помощь в освещении хода конференции по свободному ПО [2], и поэтому получившийся робот обладает рядом полезных свойств:

  • обучен работе в социальных сетях Twitter и FriendFeed;

  • умеет отличить обычного пользователя группы FriendFeed от администратора;

  • особое внимание уделяет записям в группе, которые понравились администраторам;

  • местообитание этого робота - группа в FriendFeed [3].

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

[1]Робот, обученный работе в FriendFeed. lveeboteg

[2]Mеждународная конференция разработчиков и пользователей свободного программного обеспечения. http://lvee.org/

[3]Конференция Lvee в FriendFeed. http://friendfeed.com/lvee/