http://www.perlmonks.org?node_id=59715


in reply to Pi calculator

That's very nice. I might squirrel that way for an OPC contest entry. I once played around with a polynomial expansion, but after many hours CPU time the code got as far as 3.14159264

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;

Plus it chewed up core like crazy....