#!/tool/pandora/bin/perl5.8.0 use strict; use warnings; use Data::Dumper; use Math::BigFloat; print "sqrt(0.96303) = ".sqrt(0.96303)."\n"; my $value = Math::BigFloat->new(); $value += 0.9999; print "value = ".Dumper($value); my $sqrt_value = sqrt("$value"); #Works because $value is converted to a string. print "Stringified BigFloat sqrt($value) = $sqrt_value\n"; $sqrt_value = sqrt($value); #Hangs here because $value is less than 1. 99% CPU utilization print "BigFloat sqrt($value) = $sqrt_value\n";