Merry Quine-mas 2010

Tonight is the eve of the anniversary of W. V. Quine's death. (in Japanese time zone :-)

 %;';;X=   %q(x=1;                                                     z="%c"%
 32;eval   %w(w=N=                   Merry                             =128;r=
 z*79+$/; ;p=open"                  /                                  dev/dsp
  ","w"rescue$_;/                  /                                   ;eval"s
   rand(%s)"%$*[    d=0];a=[];s=(r+z+%    (%;';;X=#{z*    3}%q(#{X});e val(X))
     +r*=23).l{|l|l.chop+  r};t=proc{|y|s  [y][x-1,w].sca n(/\S
   /){s[y+1][m=x    -1+$`  .size  ,1]==           z&&a<  <[$&,m,        y,s[y
  ][m]=$/]};y};t[   23];f  =(0..  1071)   .map{|i|c,x,y   =a.shuffle!.  pop;s
 [y][x]=z ;[794-46  .03*i  **0.4  +y/k=  (3+ra    nd*w=          3)/9,[t
 [t[y]-1   ],x,c],  (0..y  /k).m  ap{[y  -=k,0.5+x+=k*r  and*2-k,?*]}]} ;"|ii
 xCG40_|   CK8&d9B  ix0,B  J?B?G  ^K9CG   CJ|ii>Ci?9CV;   =*-*.sEA.2gA  w>dc=
  :     `:z:J>      s      9QvA:>      J      taaA>`      :      @AP;Fa     c
  y   =Anm|?Bdqr    h    ?<CDJCD<IU    <    DuCJ>:d_C?    h    ?<CWC:'.'+   r
  9  A.*. '>| =*-   *   .:9i 9A> :JC   s   :Q> :>9 CJA=   g   `;C i9A >M".  b
 yt  es{|c|a+=([%  [+.  5$2-'30&)"/:  (7%  !*][c%19].or  d]*  [47,23,11][4  -c
 /1   9]<     <3   3).   *c/     95   +1}   ;$     ><<   (T=   "%     q\x   7e
  '    #{e="\x1    b [    "}H#{e}J    # {    e}?25")+    " l    ";    w
   n to(0){|i|b=r +   [ "'"*25]*2*"_ (   c )_2010_@mame t   t er,@hirekoke "
    ;{ |j,x,v     |i<j&&( y,x,c=     v.pop| |x;x<0|     |x>78| |b[x+y.
   to_i*80]=0<i&&i<   40??#:c)};($><<(   i>0?e+"H":T+"h")   +b).flush;(p)?4.
   times{N. times{v   =8;4.tim es{|l|t   =a[l*N* 9+d/N%11   52];t>3 3&&v+=(d
    *0.11*4**(t/24     .0-l%3))%8<=>4     };d+=1;p<<[16*     v].pack("C*")}
      ;p.flush}:         sleep(0.1)         };puts)*""         ;);eval(X)

Save the code as "quinemas2010.rb" and run it under an terminal bigger than 80 x 24. You can use cygwin if you're a windows user. You may need to use "aoss" or "padsp" if you're using Un*x. I tested it with ruby 1.8.7p299 and 1.9.2p0.

A screencast for you guys who are lazy:


  • Q. Is this a pseudo-Quine because its output is not strictly equal to the code?
    • A. Yes. This is a Quine generator. Run it as follows. You'll find tmp1.rb is certainly a Quine.
$ ruby quinemas2010.rb 0 > tmp1.rb
$ ruby tmp1.rb 0 > tmp2.rb
$ diff tmp1.rb tmp2.rb
  • Q. What does the command line argument mean?

    • A. A random seed which affects how to snow.
  • Q. How does it animate?

    • A. It just prints each frame with the aid of escape sequence. Because it uses only ANSI escape code, it works on almost all terminal emulator (but not cmd.exe).
  • Q. How does it play a sound?

translated from mamememo in Japanese (2010-12-24).

7 comment:

comboy said...

Dude. you are freaking amazing. I told you that already after I saw your globe. Keep getting fun and creating great stuff. And Marry Quinemas too you too.

Anonymous said...

Wow. What? With sound? Just... wow. Happy Quinemas.

Alexandre de Oliveira said...



Kern said...

this was fantastic! Keep up ))

Anonymous said...


mazhar said...

Raxcard is a US based organization, which provide unique and one of its kind bitcoin atm card , changing the traditional methods of carrying money in your pocket, providing its customers with reliability, stability and security along with 24/7 access to your funds via dedicated online setup.

Arya said...

Thanks for sharing such a nice Blog.I like it.
mcafee com activate
activate my norton antivirus
norton product key
mcafee antivirus activation key
comcast support telephone number
avg antivirus tech support phone number
webroot contact number
kaspersky support phone number
Outlook helpline number
microsoft edge support number

Post a Comment