in reply to Fibo Golf challenge on 3 monkeys

How about:
perl -e '$a-=$b=1;for(A..T){print$c=$a+$b,"\n";$a=$b;$b=$c;}'
Or:
perl -e '$b-=$a=1;for(A..T){$c=$a;print$a+=$b,"\n";$b=$c}'

Replies are listed 'Best First'.
Re^2: Fibo Golf challenge on 3 monkeys
by chargrill (Parson) on Jul 13, 2007 at 19:40 UTC
    A tiny improvement, substituting $/ for "\n":
    perl -e '$b-=$a=1;for(A..T){$c=$a;print$a+=$b,$/;$b=$c}'

    --chargrill
    s**lil*; $*=join'',sort split q**; s;.*;grr; &&s+(.(.)).+$2$1+; $; = qq-$_-;s,.*,ahc,;$,.=chop for split q,,,reverse;print for($,,$;,$*,$/)
      I can shave off a couple characters by leveraging the fact that the length of the sequence is even. Also, the OP's sequence starts with F1=1, so if I start there too I don't have to initialize both variables.
      perl -e '$a=1;for(A..J){print$a+=$b,$/,$b+=$a,$/}'
      Update: Now that the loop is down to 1 statement I can switch to a postfix for. I can also fold the initialization into the loop.
      perl -e 'print$a+=$b||1,$/,$b+=$a,$/for A..J'
      ... and if you feel strongly about starting with F0=0,
      perl -e 'print$a+=$b,$/,$b+=$a||1,$/for A..J'
        perl -le'print$a+=$b,$/,$b+=$a||1for A..J'