Parrot "standard libraries"

Jonathan Leto jaleto at
Fri Jul 31 01:58:58 UTC 2009


I am very interested in adding bindings to the GNU Multiprecision
Library (GMP) to Parrot, escecially the mpz_* functions, which work on
bigints. I know that we currently have bigint.pmc that uses GMP, but
it does not expose enough the library to implement cryptography
algorithms on top of it.

For instance, to implement is_prime() for bigint's ( like
Math::Primality [0] for Perl 5), I need access to some bit-twiddling
functions that are not currently exposed by bigint.pmc . These
functions are also needed to write efficient factorization code for
bigints as well.

I can definitely work on this if I get feedback from the community
that this is wanted and if someone can push me in the right direction

Another aspect is that if Parrot has GMP bindings then any dynamic
language built on top of Parrot gets them for very little work, which
is quite exciting once you realize how much development and
maintenance time is spent on making bindings to GMP for all the
dynamic languages we have nowadays.


[0] -


Jonathan Leto
jonathan at

More information about the parrot-dev mailing list