#!/usr/bin/perl 
use bigint; 

my ($a, $b) = (0, 1); 
for (; 
{ 
print "$an"; 
($a,$b) = ($b,$a+$b); 
} 
sub fibo; 
sub fibo {$_ [0] < 2 ? $_ [0] : fibo ($_ [0] - 1) + fibo ($_ [0] - 2)} 

Iterative 

sub fibo 
{ 
my ($n, $a, $b) = (shift, 0, 1); 
($a, $b) = ($b, $a + $b) while $n-- > 0; 
$a; 
} 