Como imprimir um Perl bignum sem perder a precisão?

#!/usr/bin/perl
use strict;
use warnings;
my $s = "1234567890.123456789";
{   
    no bignum; printf "bignum==%s\n", bignum::in_effect() // 0;  
    my $x = $s; 
    printf "%29s\n", $x; 
    printf "%29.9f\n\n", $x; 
}   
{   
    use bignum; printf "bignum==%s\n", bignum::in_effect() // 0;
    my $x = $s; 
    printf "%29s\n", $x; 
    printf "%29.9f\n\n", $x; 
}   

O printf do My Perl (ActiveState v5.10.1 criado para darwin-thread-multi-2level) usando a conversão% f não honra meu valor além do dígito 1e-6, mesmo ao usar bignum:

$ t.pl
bignum==0
         1234567890.123456789
         1234567890.123456717

bignum==1
         1234567890.123456789
         1234567890.123456717

Como imprimir minhas entradas sem perder a precisão?

Minhasrea problema é que vou precisar manipular esse número (por exemplo, $ x / 0.000_000_001, ou, pior, $ x / 0.000_001_024, que não posso falsificar com as chamadas de função substr ()), mas a atual a redução me surpreendeu antes que eu pudesse chegar à parte "divertida".

questionAnswers(1)

yourAnswerToTheQuestion