Recent Posts
Recent Comments
11-30 00:00
관리 메뉴

동글동글 라이프

Acme::EyeDrops 본문

개발자 이야기/Perl

Acme::EyeDrops

동글동글라이프 2010. 3. 21. 02:33


CPAN 에서 한번씩 모듈을 검색하다 보면


별 5개가 가득 찬 모듈은 보기가 힘듭니다.

그런데 이 모듈은 별 5개를 받아도 모자라다는 느낌이 드네요^^

지금부터 소개할 모듈은 Acme::EyeDrops 라는 모듈로

예전에 Naver Perl 카페에서 Raymundo님이 한번 언급해 주셨습니다.


얼마전 읽었던 별찍기 에서 perl 스페셜 버전으로도 소개가 되었던 Acme::EyeDrops

저도 궁금해서 한번 사용해 보았는데 

아래 예제를 보도록 하겠습니다.


Acme::EyeDrops

Visual Programming in Perl 
Acme-EyeDrops-1.55***** (2 Reviews) - 01 Dec 2008 - Andrew J. Savige 





Perl
                              ''=~('('.
                            '?'.'{'.('`'|
                           '%').('['^'-').                        ('`'|'!')
                          .('`'|',')."\"".(                     '['^'+').('['
                          ^')').('`'|')').( '`'|'.').          ('['^'/').('{'^
                '[').'\\'.'"'.('`'^')').('{'^'[').('`'|',').( '`'|'/').('['^'-'
            ).('`'|'%').('{'^'[').(('`')^                 '"').('`'|'!').("\`"|
         '.').           ('{'^"\[").(                           '{'^'"').("\`"|
       '/')            .("\["^                                     '.').("\`"|
      '.')           .(('`')|                                        "'").(
    "\{"^           ('[')).(                                          '`'
   |'(')           .(('`')|                                            '%'
  ).''.           ('`'|'%'                                              ).(
  '{'^           '[').'^'.            '^'                                .((
 '\\')           ).('"').          ';'."\"".              '}'.            ')'
 );$:           ='.'^'~';         $~='@'|'(';           $^="\)"^           ((
'['))           ;$/="\`"|        '.';$,="\("^          '}';$\='`'           |+
"\!";           $:=(')')^       '}';$~=('*')|          '`';$^='+'^          ((
'_'))           ;$/="\&"|       '@';$,="\["&           '~';$\="\,"^        '|'
;($:)=          '.'^'~';$~      ='@'|"\(";             $^=')'^"\[";        ($/)
=('`')|         '.';$,="\("^      '}';$\                ='`'|'!';$:       =')'^
"\}";$~=         '*'|('`');$^=                           '+'^'_';        $/='&'
 |'@';$,=       '['&'~';$\=','^'|'          ;$:='.'        ^'~'        ;$~='@'|
 '(';$^=')'    ^'[';$/='`'|'.';$,='('^     '}';$\='`'               |'!';$:=')'
 ^'}';$~='*'|  '`';$^='+'^'_';$/='&'|'@'    ;$,="\["&      '~';$\=','^('|');$:=
  '.'^'~';$~='@'|'(';$^=')'^'[';$/='`'|'.'     ;(      $,)='('^'}';$\='`'|"\!";
  $:=')'^'}';$~='*'|'`';$^='+'^'_';$/='&'|'@';$,='['&'~';$\=','^'|';$:='.'^'~'
  ;$~='@'|'(';$^=')'^'[';$/='`'|'.';$,='('^'}';$\= '`'|'!';$:=')'^'}';$~="\*"|
  '`';$^='+'^'_';$/='&'|'@';$,='['&'~';$\=','^'|';$:='.'^'~';$~='@'|'(';$^=')'
  ^'[';$/='`'|'.';$,='('^'}';$\='`'|'!';$:=')'^'}';$~='*'|'`';$^='+'^"\_";$/=
  '&'|'@';$,='['&'~';$\=','^'|';$:='.'^'~';$~='@'|  '(';$^=')'^'[';$/='`'|'.'
  ;$,='('^'}';$\='`'|'!';$:=')'^'}';$~='*'|'`';$^     ='+'^'_';$/='&'|'@';$,
   ='['&'~';$\=(',')^ '|';$:='.'^'~';$~='@'|'(';       $^=')'^'[';$/='`'|'.'
    ;$,='('^('}');$\=  '`'|'!';$:=')'^'}';$~='*'|     '`';$^='+'^'_';$/='&'
     |'@';$,='['&"\~";  $\=','^'|';$:='.'^'~';$~=     '@'|'(';$^=')'^"\[";
       $/='`'|('.');$,=  '('^'}';$\='`'|('!');$:=     ')'^'}';$~='*'|'`';
         $^='+'^'_';$/=   '&'|'@';$,='['&"\~";$\=     ','^'|';$:='.'^'~'
            ;$~=('@')|     '(';$^=')'^'[';$/="\`"|    '.';$,='('^'}';$\
                             ='`'|'!';$:=')'^'}';$~   ='*'|'`';$^='+'
                              ^'_';$/='&'|('@');$,=   '['&"\~";$\=
                                ','^'|';$:='.'^'~';     $~='@'
                                  |'(';$^=')'^"\[";


Output:
1
I love Ban Young hee ^^




위와 같이 perl 코드를 실행시키면 아래와 같은 출력물이 나타납니다.

파일은 총 3개가 필요합니다.

프로그램을 돌리기 위한 파일, 옵션을 지정할 파일

이 두 파일을 통해 새로운 코드 파일이 생성이 됩니다.




Perl, 
''=~('(?{'.('`'|'%').('['^'-').('`'|'!').('`'|"\,").'"\\$-=!\\$%<<('.(
 '['^'+').('`'|'/').('['^'+').'||'.('^'^('`'|'*')).');'.('['^'+').('['^
 ((                                                                  ((
 ((                                ((                                ((
 ((                               ')')                               ))
 ))                              ))  ))                              ))
 ))                             .(('`')|                             ((
 ((                            ((      ((                            ((
 ((                           ')')    ))))                           ))
 ))                          ))  ))  .(  ((                          ((
 ((                         '`'))))))|'.').(                         ((
 ((                        ((              ((                        ((
 ((                       '[')            ))))                       ))
 ))                      ))  )^          ((  ((                      ((
 ((                     '/')))))        )))).''.                     ((
 ((                    ((      ((      ((      ((                    ((
 ((                   '\\'    ))))    ))))    ))))                   ))
 ))                  .+  ((  ((  ((  ((  ((  ((  ((                  ((
 ((                 '$')))))))))))))))))).'\\"'.('['                 ^+
 ((                ((                              ((                ((
 ((               '#')                            ))))               ))
 ))              ))  .+                          ((  ((              ((
 ((             '\\'))))                        )))).'$'             .+
 ((            ((      ((                      ((      ((            ((
 ((           '-')    ))))                    ))))    ))))           ).
 ((          ((  ((  ((  ((                  ((  ((  ((  ((          ((
 ((         ',')))))))))))))                ))))))))).("\`"|         ((
 ((        ((              ((              ((              ((        ((
 ((       '-')            ))))            ))))            ))))       ))
 ))      .(  ((          ((  ((          ((  ((          ((  ((      ((
 ((     '`')))))        ))))))))        )))))|((        '!'))).(     ((
 ((    ((      ((      ((      ((      ((      ((      ((      ((    ((
 ((   '[')    ))))    ))))    ))))    ))))    ))))    )))^    '+')   .+
 ((  ((  ((  ((  ((  ((  ((  ((  ((  ((  ((  ((  ((  ((  ((  ((  ((  ((
 (( '(')))))))))))))))))))))))))))))))))))))).'\\$-&\\$_?'."'".('{'^ ((
 ((                                                                  ((
 '['))))))).('{'^'[')."'".':'."'".'/\\\\\\\\'."'".',\\$%..\\$.++),\\$/'
 .('['^',').('`'|'(').('`'|')').('`'|',').('`'|'%').'\\$---"})');$:='.'


Output:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
               /\
              /\/\
             /\  /\
            /\/\/\/\
           /\      /\
          /\/\    /\/\
         /\  /\  /\  /\
        /\/\/\/\/\/\/\/\
       /\              /\
      /\/\            /\/\
     /\  /\          /\  /\
    /\/\/\/\        /\/\/\/\
   /\      /\      /\      /\
  /\/\    /\/\    /\/\    /\/\
 /\  /\  /\  /\  /\  /\  /\  /\
/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\





perl Hacker 들이 만든 Acme:::EyeDrops 모듈...

사용법이 어렵지 않으니

여자친구 있으신 분들은 어서 예쁜 메세지와 함께 마음을 전달 하시길^^


Perl, 
1
2
3
map(($r=$_,map(($y=$r-$_/3,$l[24-$r]
.=(' ','@')[$y**2-20*$y+($_**2)/3<0]),(0..30)),),(0..24)),
print join("\n", map(reverse($_).$_, @l)), "\n";


Output:
                                                              
                                                              
                                                              
                  @@@@@@@@@        @@@@@@@@@                  
                @@@@@@@@@@@@@@  @@@@@@@@@@@@@@                
              @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@              
              @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@              
             @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@             
             @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@             
             @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@             
             @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@             
              @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@              
              @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@              
               @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@               
                @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@                
                @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@                
                 @@@@@@@@@@@@@@@@@@@@@@@@@@@@                 
                  @@@@@@@@@@@@@@@@@@@@@@@@@@                  
                   @@@@@@@@@@@@@@@@@@@@@@@@                   
                     @@@@@@@@@@@@@@@@@@@@                     
                      @@@@@@@@@@@@@@@@@@                      
                        @@@@@@@@@@@@@@                        
                          @@@@@@@@@@                          
                            @@@@@@                            
                                                              





'개발자 이야기 > Perl' 카테고리의 다른 글

드디어 "Perl 6"이 출시 되었습니다 :)  (4) 2010.07.30
소스 다이어트의 적절한 예  (4) 2010.06.16
Gtk2::Calendar  (1) 2009.09.01
[Tool] Cava Packager  (4) 2009.06.06
차트를 만들어 보자. [ SWF::Chart ]  (3) 2009.04.22
Comments