s="IyBUaGFua3MgZm9yIGxvb2tpbmcgYXQgbXkgY29kZ
S4KIwojIENvcHlyaWdodCAoQykgMjAwMiAgQ2hyaXN0a
WFuI E 5 l d Wtpc
mNoZ W 4 gP G N obmV
1a2l y Y 2hlb k B nbWF
pbC5 j b 20+CiM K I yBUa
GlzI H Byb2dyYW 0 gaXM
gZnJ l Z SBzb2Z0d2F y Z Tsge
W91I G NhbiByZWRpc3 R yaWJ
1dGU g aXQgYW5kL29yCi M g bW9k
aWZ5 I Gl0IHVuZGVyIHRoZ S B0ZX
Jtcy B vZiB0aGUgR05VIEdlb m VyYW
wgUH V ibGljIExpY 2 Vuc2
UuCg p T VERPVVQuc3lu Y y A9IH
RydW U KZDEsIGQyID0gM C 4xNS
wgMC 4 wNgpzID0gIk1lcnJ 5 IGNo
cmlz d G1hcywgLi4uIGFuZCB h IGhh
cHB5 I G5ldyB5ZWFyIgptID0gJ X d7LC
AuID ogISArICogMCBPIEB9CnUg P SAiI
CIgK i BzLnNpemUKCnByaW50ICJcci A gI3t
1fVx y IjsKCigwLi4ocy5z a XplL
TEpK S 50b19hLnNvcnRfYnkg e yByY
W5kI H 0uZWFjaCB7IHxyfAogIH N sZWV
wIGQ x CiAgbmV4dCBpZiBzW3JdID 0 9ICI
gIls wXQogIG0uZWFjaCB7IHxrfAo gICA
gdVt y XSA9IGsKICAgIHByaW50ICIgIC N 7dX1
cciI KICAgIHNsZWVwIGQyCiAgfQogIHV bcl0
gPSB zW3JdCiAgcHJpbnQgIiAgI3t1fVxyI g p9Cg
pzbG VlcCBkMgpwcmludCAiICAje3V9IVxyI jsKc
2xlZ X A gMwpwc m l udCA
iICA j e3V9IS A g LS1j
aHJp c z JcbiI7 C g ojIG
ZpbG x lciBzc G F jZSA
jIyM j I yMjIyM j I yMjI
yMjI y M j I yMjI
yMK";eval s.delete!(" \n").unpack("m*")[0]##
### Copyright (C) 2004 Christian Neukirchen
I wonder why this didn't come up sooner.
Clever! Thanks for the fun show. :)
- Jamis
--
Jamis Buck
jg...@email.byu.edu
http://www.jamisbuck.org/jamis
amazing :-)
--
Roeland
(eval):5: syntax error
@
^
--
( o _ カラチ
// trans.
/ \ tran...@runbox.com
[8,16,20,29,78,65,2,14,26,12,12,28,71,114,12,13,12,82,72,21,17,4,10,2,95].
each_with_index{|x,i| $><<(x^'Begin landing your troops'[i]).chr}
-Tadayoshi Funaba
*damn*, how'd you do that?!
Merry christmas to you too!:)
- Ct
> :( I get
>
> (eval):5: syntax error
> @
> ^
Is it a cut-and-paste issue with your terminal? Try putting it all in
a file, say foo, and then running
ruby foo
from the command line or
load 'foo'
from the irb prompt.
I hope this helps,
Tim
Yes it was a cut-and-paste nasty.
Thanks,
T.
Pretty easy (except drawing the tree :). Write the source-code first,
then base64 encode it, and insert newlines/whitespace to make the picture.
Merry christmas.
Michael
That's about how I did it. Except not manually, of course. :-)
# mkxmas.rb
template = <<EOF
s="*****************************************
********************************************
**** * * * * ****
**** * * ** * * ****
**** * * **** * * ****
**** * * ****** * * ****
**** * ******** * ****
**** * * ********** * * ****
**** * ************ * ****
**** * ************** * * ****
**** * **************** * ****
**** * ****************** * ****
**** * ********** * ****
**** * * ************ * * ****
**** * ************** * ****
**** * **************** * ****
**** * ****************** * ****
**** * ******************** * ****
**** ********************** * ****
**** * ************************ * ****
**** * **************** * ****
**** * ****************** * ****
**** * ******************** * ****
**** * ********************** * ****
**** ************************ ****
**** * ************************** * ****
**** **************************** ****
**** ****************************** * ****
**** ******************************* ****
**** * * ****** * * ****
**** * ****** * * ****
**** * * ****** * * ****
**** * ****** * * ****
**** * * ****** * * ****
**** * * * * ****
******************************************##
### Copyright (C) 2004 Christian Neukirchen
EOF
code = <<'EOF'
# Thanks for looking at my code.
#
# Copyright (C) 2002, 2004 Christian Neukirchen <chneuk...@gmail.com>
#
# This program is free software; you can redistribute it and/or
# modify it under the terms of the GNU General Public License.
STDOUT.sync = true
d1, d2 = 0.15, 0.06
s = "Merry christmas, ... and a happy new year"
m = %w{, . : ! + * 0 O @}
u = " " * s.size
print "\r #{u}\r";
(0..(s.size-1)).to_a.sort_by { rand }.each { |r|
sleep d1
next if s[r] == " "[0]
m.each { |k|
u[r] = k
print " #{u}\r"
sleep d2
}
u[r] = s[r]
print " #{u}\r"
}
sleep d2
print " #{u}!\r";
sleep 3
print " #{u}! --chris2\n";
# filler space ########################
EOF
hexcode = [code].pack("m*").delete("\n")
footer = '";eval s.delete!(" \\n").unpack("m*")[0]'
hexcode += footer
hcnt = 0
0.upto(template.size) { |tcnt|
if template[tcnt] == ?* && hcnt < hexcode.size
template[tcnt] = hexcode[hcnt]
hcnt += 1
end
}
puts template
> Merry christmas.
>
> Michael
The basic way of bubbling up characters is shamelessly stolen from a
similar obfu I saw at perlmonks, btw. ;-)
Merry Christmas,
Christian Neukirchen
Now *that's* cool - always wondered how you fellas did these....
> template = <<EOF
> s="*****************************************
> ********************************************
> **** * * * * ****
> **** * * ** * * ****
> **** * * **** * * ****
> **** * * ****** * * ****
> **** * ******** * ****
--
'Good news, everyone! I've taught the toaster to feel love!'
-- Prof. Farnsworth
Rasputin :: Jack of All Trades - Master of Nuns
Very smart. :-)
Cheers,
Antonio
--
The saddest thing life is a waste of talent, and the choices you make
will shape your life forever. - The Bronx Tale
It was nice xmas. Happy new year.
--
Simon Strandgaard
Umm, now that we are at it, is there some kinda official/unofficial
Ruby t-shirt available anywhere online?
> http://aeditor.rubyforge.org/neoneye/simon_strandgaards_shirt.png
>
> It was nice xmas. Happy new year.
>
> --
> Simon Strandgaard
>
>
--
Premshree Pillai
http://www.livejournal.com/~premshree
> From my sister I got a handmade ruby shirt.
> http://aeditor.rubyforge.org/neoneye/simon_strandgaards_shirt.png
That I can't top of course. :-)
But http://kronavita.de/chris/data/presents.jpg is pretty cool too.
> It was nice xmas. Happy new year.
Oh yes, it was. Happy new year to you all too.
> --
> Simon Strandgaard
Christian Neukirchen
<chneuk...@gmail.com>
I would like a speciment of that book too.
Maybe that should be my new years promise for 2005 to buy a book?
> > It was nice xmas. Happy new year.
>
> Oh yes, it was. Happy new year to you all too.
Yes happy new year to all ruby people.
btw: how is new year celebrated in japan?
--
Simon Strandgaard
Hi!
|>From my sister I got a handmade ruby shirt.
|>http://aeditor.rubyforge.org/neoneye/simon_strandgaards_shirt.png
Wow, seems a little bloody. :-)
- ----------------------------
Eustáquio "TaQ" Rangel
eustaqu...@yahoo.com
http://beam.to/taq
Usuário GNU/Linux no. 224050
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.2.6 (GNU/Linux)
Comment: Using GnuPG with Thunderbird - http://enigmail.mozdev.org
iD8DBQFB1Y7hb6UiZnhJiLsRAk8tAJ9ZS9wj6tUK66gF+DIdS1WNJ3GUggCdG3Rm
1uyoYhFqxTgW20dpauKOmpU=
=CqDK
-----END PGP SIGNATURE-----
(shirt(outstanding))
(James)
You didn't do any Lisp recently, did you?
(setf shirt 'outstanding)
(sign 'James)
Christian Neukirchen
<chneuk...@gmail.com>
Oh, it shows, does it?
I did go through this slick tutorial
http://www.lisperati.com/casting.html
which does a such a fine job of explaining basic Lisp that I could
readily parse your correction of my ersatz jumble of parens.
Lisp is moving up on my list of Things I Need to Finally Try to Learn
and Use For Real.
James
>> You didn't do any Lisp recently, did you?
>
> Oh, it shows, does it?
>
> I did go through this slick tutorial
>
> http://www.lisperati.com/casting.html
>
> which does a such a fine job of explaining basic Lisp that I could
> readily parse your correction of my ersatz jumble of parens.
>
> Lisp is moving up on my list of Things I Need to Finally Try to Learn
> and Use For Real.
You probably won't find a lot of practical use for it, but Lisp ought
to be learned by everyone.
> James
Christian Neukirchen
<chneuk...@gmail.com>