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....