X-Google-Language: ENGLISH,ASCII-7-bit X-Google-Thread: f996b,fd4f3d79f18d7426 X-Google-Attributes: gidf996b,public X-Google-ArrivalTime: 2003-07-16 06:17:10 PST Path: archiver1.google.com!news1.google.com!newsfeed.stanford.edu!logbridge.uoregon.edu!usenet01.sei.cmu.edu!bb3.andrew.cmu.edu!lmtp2nntp!not-for-mail From: "Arthur J. O'Dwyer" Newsgroups: alt.ascii-art Subject: Re: ASCII art from sourcecode as image Date: Wed, 16 Jul 2003 09:13:32 -0400 (EDT) Organization: Carnegie Mellon, Pittsburgh, PA Lines: 40 Message-ID: References: NNTP-Posting-Host: smtp5.andrew.cmu.edu Mime-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII X-Trace: bb3.andrew.cmu.edu 1058361212 12586 128.2.10.85 (16 Jul 2003 13:13:32 GMT) X-Complaints-To: advisor@andrew.cmu.edu NNTP-Posting-Date: 16 Jul 2003 13:13:32 GMT In-Reply-To: Xref: archiver1.google.com alt.ascii-art:24221 On Wed, 16 Jul 2003, Harry Mason wrote: > > Erik Itter wrote: > > I have seen both linux source codes and some scripts for my company rendered > > as images - reads formated with extra blanks line feeds etc. to look like > > some image if displayed using small enough letters. (without > > inserting/deleting anything changing the source from the compilers point of > > view) > > For perl there is Acme::EyeDrops. It doesn't just format the program, it > obfuscates it too. > #!/usr/bin/perl -w > eval eval '"'. ('#'). > '!'.'/' .('[' > ^'.' ) .('['^'('). ("\["^ > ')')."\/".( '`'|'"').('`'| ')').( > '`'|'.') .'/'. ( '['^'+').('`'|'%').('[' > ^')').('`'|',').('{' ^'[').'-'.('['^',').('!' > "\}"; $:='.'^'~';$~= ('@')| > "\("; $^="\)"^ '['; $/='`'| > '.';$_= '('^'}'; > $,="\`"| '!';#; Very nice! The OP has told me via e-mail that he really wants Java, of course. So unfortunately the 'eval big_long_string' trick that I think is at the root of EyeDrops' approach wouldn't work. Out of curiosity: Why *two* nested 'eval's at the start of this program? And what does ('['^'.') mean? 0x5B^0x2E = 0x75 = 'u', or is there some deeper magic at work here? :) -Arthur __ __ _ . \-' \-_ \<_ \_ --------------