```{index} single: bfac; Math::GMP function ``` ```{index} single: Math::GMP::bfac; Perl function ``` # bfac Return `$n!` — the factorial of a non-negative integer. ## Synopsis ```perl my $x = Math::GMP->new(5); print $x->bfac; # 1*2*3*4*5 = 120 ``` The receiver is read as an `unsigned long` — factorials larger than that range are out of reach of a single call. In practice this is rarely limiting: `libgmp` struggles with memory long before `LONG_MAX` enters the picture.