2009-07-30 13:29:24 +09:00

38 lines
679 B
Perl

#!/usr/bin/perl
use strict;
use warnings;
use Data::MessagePack;
use Storable;
use Text::SimpleTable;
my @entries = (
'1',
'3.14',
'{}',
'[]',
"[('a')x10]",
"{('a')x10}",
"+{1,+{1,+{}}}",
"+[+[+[]]]",
);
my $table = Text::SimpleTable->new([15, 'src'], [9, 'storable'], [7, 'msgpack']);
for my $src (@entries) {
my $e = eval $src;
die $@ if $@;
$table->row(
$src,
length(Storable::nfreeze(ref $e ? $e : \$e)),
length(Data::MessagePack->pack($e)),
);
}
print "perl: $]\n";
print "Storable: $Storable::VERSION\n";
print "Data::MessagePack: $Data::MessagePack::VERSION\n";
print "\n";
print $table->draw;