Skip to content

HTTPS clone URL

Subversion checkout URL

You can clone with HTTPS or Subversion.

Download ZIP
Perl
branch: master

Fetching latest commit…

Cannot retrieve the latest commit at this time

Failed to load latest commit information.
lib
t
.gitignore
BUGS
CHANGES
INSTALL
LICENSE
MANIFEST.SKIP
Makefile.PL
README
TODO

README

###############################################################################

(C) Copyright ..--- ----- ----- ..--- by - . .-.. ... .-.-.-

###############################################################################

This package attempts to make it easier to write scripts that use
BigInts/BigFloats in a transparent way. They use the rewritten versiosn of
Math::BigInt and Math::BigFloat, Math::BigRat (for bigrat) and optionally
Math::BigInt::Lite.

It's a great way for writing impressing onliners, which is almost enough
to justify any Perl package ;) Here are a couple of teasers:

	perl -Mbignum=v 
	perl -Mbignum -le 'print 2 ** 252'
	perl -Mbignum=a,25 -le 'print sqrt(2)' 
	perl -Mbignum -le 'print 2 ** 0.5' 
	perl -Mbignum -le 'print 2 ** 0.2' 
	perl -Mbignum -le 'print 23->bfac()'
	perl -Mbignum -le 'print inf+inf'
	perl -Mbignum -le 'print inf*inf'
 
Also try the following bigrat's as opposed to bignum:
 
	perl -Mbigrat -le 'print 2/3+5/7' 
	perl -Mbigrat -le 'print 1/3*3'		

	perl -Mbigint -le 'print 4.5 + 4.5' 
	perl -Mbigint -le 'print 123e-2+123e3'		

A more usefull usage of these modules is extending Perl to provide transparent
big number support. Instead of using some Math::Big* modules with ':constant'
you can do the following:

	use bignum;

	print 0x12345678901234567890 + 123456789.123456789;

and it will automatically work. In addition, when you switch in the future to
Perl 6, your program can be made to work exactly the same, without the need
for the Math::Big* modules. The reason is that Perl 6 will have build-in
support for big numbers and thus the need for the slow Math::Big* modules
could vanish.

More information on how it works and for the other options refer to
the pod documentation of bignum and bigrat.

More information including HTMLified help and benchmark results are
available under:

	http://bloodgate.com/perl/

Please send me test-reports, your experiences with this and your ideas - I love
to hear about my work!

Tels <http://bloodgate.com/>
Something went wrong with that request. Please try again.