0: #! /usr/bin/perl -lw 1: 2: use strict; 3: 4: my $pi = do{ 5: my $w = 6*do { my $y=0; $y+=((sub { eval join(' 6: +', map{ eval eval join('/',$_[0], do{local $"= 7: "+";eval "@{[($_)x$_]}"}) } $_[0]+$_[1]*$_[2].. 8: $_[2]*($_[1]+$_[0]))}, sub { eval join('+', map 9: {eval eval join('/',$_[0], do{local $"="*";eval 10: "@{[$_,$_]}"}) } $_[0]+$_[1]*$_[2] ..$_[2]*($_[ 11: 1]+ $_[0]) ) })[$_>10])->(1,$_,100) foreach(0.. 12: 1000000); $y}; my $y=(1+$w/1)/2; $y=($y+$w/$y)/ 13: 2 foreach(0..100);$y}; 14: 15: print $pi;