Beefy Boxes and Bandwidth Generously Provided by pair Networks
Do you know where your variables are?
 
PerlMonks  

DNA is Life

by tucano (Scribe)
on May 12, 2005 at 16:20 UTC ( [id://456454]=obfuscated: print w/replies, xml ) Need Help??

DNA is LIFE

Desc:
You have to know that in biology DNA CODE (ATCG)
is converted into Aminoacids with a code like GGA - G
Transform your name in DNA!
Usage:
perl dna.pl yourname
Spiral algorhitm from How to (ab)use substr, but is not a clone!
#!/usr/bin/perl use strict; $_=' @I NC=s plit (/ /,uc( $AR GV[0 ]));o pen( DATA," <$0" );und ef$/ ;$_=<D ATA>;$_=~s/(.*)GGG/GG G/gsm;$/="\n";forea ch$_(keys%ENV){del ete$ENV{$_};}for each(@_= sp lit(/\./, $_)){@AR GV=split(/$ "/)unless($_Zeq Z1);$A RGV[1]=~s/\ s//Zif($ARGV[1]);$A RGV[0]=~s/\s//Zif($A RGV [0]);$_=r and ;nextZi f$_ >0.5and$ ARGV [1]andZe xists $ENV{ $ARGV[1]};$ ENV{$ARGV [1]}=$AR GV[0]if($AR GV[0]and$ARGV[1 ]);} @ARGV=();f oreach(@INC){push( @ARGV,Z$EN V{$_}) ;}f ore ach ("@ARGV"x 3)Z{ @_=split (//,$_);fo reach(@ _){$^O= $"x75;if($ _Zn eZ$"){su bst r($^O,sin (++ $a/8)*32 +32,1)=$_;tr/ATGC/ TACG/;substr($^O ,sin($a/4)* 14+32,1) =$_;pri nt"$^O $/";sel ectZ$b,$b ,$b,0.0 5;}}}'; $_=~s/\s//gm;$_=~s/Z/$"/gm;eval $_;exit; GGG G.GGA G.GGC G.GGT G.GAG E.GAA E.GAC D.GAT D.GCG A. GCA A.GCC A.GCT A.GTG V.GTA V.GTC V.GTT V.AGG R.AGA R. AGC S.AGT S.AAG K.AAA K.AAC N.AAT N.ACG T.ACA T.ACC T. ACT T.ATG M.ATA I.ATC I.ATT I.CGG R.CGA R.CGC R.CGT R. CAG Q.CAA Q.CAC H.CAT H.CCG P.CCA P.CCC P.CCT P.CTG L. CTA L.CTC L.CTT L.TGG W.TGC C.TGT C.TAC Y.TAT Y.TCG S. TCA S.TCC S.TCT S.TTG L.TTA L.TTC F.TTT F.XXX O.TGA U. TAG B.TAA Z. 1

by Tucano
You can change the genetic code if you want:
GGG G.GGA G.GGC G.GGT G.GAG E.GAA E.GAC D.GAT D.GCG A. GCA A.GCC A.GCT A.GTG V.GTA V.GTC V.GTT V.AGG R.AGA R. AGC S.AGT S.AAG K.AAA K.AAC N.AAT N.ACG T.ACA T.ACC T. ACT T.ATG M.ATA I.ATC I.ATT I.CGG R.CGA R.CGC R.CGT R. CAG Q.CAA Q.CAC H.CAT H.CCG P.CCA P.CCC P.CCT P.CTG L. CTA L.CTC L.CTT L.TGG W.TGC C.TGT C.TAC Y.TAT Y.TCG S. TCA S.TCC S.TCT S.TTG L.TTA L.TTC F.TTT F.XXX O.TGA U. TAG B.TAA Z.

other features are

  • Singular char like 'f' are converted into codons 'ACG'
  • Cause there are more codons for a single char (redundance) a rand algorhitm was implemented
  • Render algorhitm are inspired by the fantastic node: How to (ab)use substrby Erudil
    Note: to a better rendering the name are reapeted 3 times

Replies are listed 'Best First'.
Re: DNA is Life
by ktross (Deacon) on May 12, 2005 at 16:37 UTC
    This almost makes me wish I had a longer name, so I could see it go on more. Nice!

    Spem Successus Alit
Re: DNA is Life
by cristian (Hermit) on May 12, 2005 at 17:19 UTC
    Obfu is really : perl -e "print 'interesting very ' while 1"; perl dna.pl xjñ My name not is "xjñ" but result this is good?
      no char ñ is not implemented yet, you can use n instead?
Re: DNA is Life
by Tommy (Chaplain) on May 16, 2005 at 02:11 UTC

    THAT...

    IS SO COOL!

    --
    Tommy Butler, a.k.a. Tommy

Log In?
Username:
Password:

What's my password?
Create A New User
Domain Nodelet?
Node Status?
node history
Node Type: obfuscated [id://456454]
Approved by hardburn
Front-paged by hardburn
help
Chatterbox?
and the web crawler heard nothing...

How do I use this?Last hourOther CB clients
Other Users?
Others learning in the Monastery: (6)
As of 2024-03-19 09:15 GMT
Sections?
Information?
Find Nodes?
Leftovers?
    Voting Booth?

    No recent polls found